Merge branch 'master' of https://github.com/xenia-project/xenia into canary_experimental
This commit is contained in:
commit
bc315d21e0
69
.drone.star
69
.drone.star
|
@ -8,7 +8,7 @@ def main(ctx):
|
||||||
]
|
]
|
||||||
|
|
||||||
def image_linux_x86_64():
|
def image_linux_x86_64():
|
||||||
return 'xeniaproject/buildenv:2022-01-01'
|
return 'xeniaproject/buildenv:2022-07-15'
|
||||||
|
|
||||||
def volume_build(toolchain, path='/drone/src/build'):
|
def volume_build(toolchain, path='/drone/src/build'):
|
||||||
return {
|
return {
|
||||||
|
@ -23,56 +23,9 @@ def command_cc(cc):
|
||||||
def command_ndk_build(platform, configuration, target):
|
def command_ndk_build(platform, configuration, target):
|
||||||
return '$ANDROID_NDK_ROOT/build/ndk-build NDK_PROJECT_PATH:=./bin/{configuration} NDK_APPLICATION_MK:=./xenia.Application.mk PREMAKE_ANDROIDNDK_PLATFORMS:={platform} PREMAKE_ANDROIDNDK_CONFIGURATIONS:={configuration} -j$(nproc) {target}'.format(platform=platform, configuration=configuration, target=target)
|
return '$ANDROID_NDK_ROOT/build/ndk-build NDK_PROJECT_PATH:=./bin/{configuration} NDK_APPLICATION_MK:=./xenia.Application.mk PREMAKE_ANDROIDNDK_PLATFORMS:={platform} PREMAKE_ANDROIDNDK_CONFIGURATIONS:={configuration} -j$(nproc) {target}'.format(platform=platform, configuration=configuration, target=target)
|
||||||
|
|
||||||
def targets_android(platform):
|
def xenia_base_tests_filters():
|
||||||
targets = [
|
# https://github.com/xenia-project/xenia/issues/2036
|
||||||
'aes_128',
|
return 'exclude:"Wait on Timer" exclude:"Wait on Multiple Timers"'
|
||||||
'capstone',
|
|
||||||
'dxbc',
|
|
||||||
'discord-rpc',
|
|
||||||
'cxxopts',
|
|
||||||
'cpptoml',
|
|
||||||
'avcodec',
|
|
||||||
'avutil',
|
|
||||||
'fmt',
|
|
||||||
'glslang-spirv',
|
|
||||||
'imgui',
|
|
||||||
'mspack',
|
|
||||||
'snappy',
|
|
||||||
'xxhash',
|
|
||||||
'xenia-app',
|
|
||||||
# 'xenia-app-discord',
|
|
||||||
'xenia-apu',
|
|
||||||
'xenia-apu-nop',
|
|
||||||
'xenia-base',
|
|
||||||
'xenia-base-tests',
|
|
||||||
'xenia-core',
|
|
||||||
'xenia-cpu',
|
|
||||||
'xenia-cpu-tests',
|
|
||||||
'xenia-cpu-ppc-tests',
|
|
||||||
# 'xenia-cpu-backend-x64',
|
|
||||||
# 'xenia-debug-ui',
|
|
||||||
'xenia-gpu',
|
|
||||||
'xenia-gpu-shader-compiler',
|
|
||||||
'xenia-gpu-null',
|
|
||||||
'xenia-gpu-vulkan',
|
|
||||||
'xenia-gpu-vulkan-trace-viewer',
|
|
||||||
'xenia-gpu-vulkan-trace-dump',
|
|
||||||
'xenia-hid',
|
|
||||||
'xenia-hid-demo',
|
|
||||||
'xenia-hid-nop',
|
|
||||||
'xenia-kernel',
|
|
||||||
'xenia-ui',
|
|
||||||
'xenia-ui-vulkan',
|
|
||||||
'xenia-ui-window-vulkan-demo',
|
|
||||||
'xenia-vfs',
|
|
||||||
'xenia-vfs-dump',
|
|
||||||
]
|
|
||||||
if platform == 'Android-x86_64':
|
|
||||||
targets.extend([
|
|
||||||
'xenia-cpu-backend-x64',
|
|
||||||
'xenia-debug-ui',
|
|
||||||
])
|
|
||||||
return targets
|
|
||||||
|
|
||||||
# Run lint in a separate pipeline so that it will try building even if lint fails
|
# Run lint in a separate pipeline so that it will try building even if lint fails
|
||||||
def pipeline_lint():
|
def pipeline_lint():
|
||||||
|
@ -160,9 +113,7 @@ def pipeline_linux_desktop(name, image, arch, cc, build_release_all):
|
||||||
for c in Debug Release
|
for c in Debug Release
|
||||||
do
|
do
|
||||||
mkdir cmake-$c
|
mkdir cmake-$c
|
||||||
cd cmake-$c
|
cmake -S . -B cmake-$c -G Ninja -DCMAKE_BUILD_TYPE=$c
|
||||||
cmake -DCMAKE_BUILD_TYPE=$c ..
|
|
||||||
cd ..
|
|
||||||
done
|
done
|
||||||
'''.format(cc),
|
'''.format(cc),
|
||||||
],
|
],
|
||||||
|
@ -265,7 +216,7 @@ def pipeline_linux_desktop(name, image, arch, cc, build_release_all):
|
||||||
'image': image,
|
'image': image,
|
||||||
'volumes': [volume_build('premake')],
|
'volumes': [volume_build('premake')],
|
||||||
'commands': [
|
'commands': [
|
||||||
'valgrind --error-exitcode=99 ./build/bin/Linux/Debug/xenia-base-tests --durations yes',
|
'valgrind --error-exitcode=99 ./build/bin/Linux/Debug/xenia-base-tests --durations yes ' + xenia_base_tests_filters(),
|
||||||
],
|
],
|
||||||
'depends_on': ['build-premake-debug-tests'],
|
'depends_on': ['build-premake-debug-tests'],
|
||||||
},
|
},
|
||||||
|
@ -275,7 +226,7 @@ def pipeline_linux_desktop(name, image, arch, cc, build_release_all):
|
||||||
'image': image,
|
'image': image,
|
||||||
'volumes': [volume_build('premake')],
|
'volumes': [volume_build('premake')],
|
||||||
'commands': [
|
'commands': [
|
||||||
'./build/bin/Linux/Release/xenia-base-tests --success --durations yes',
|
'./build/bin/Linux/Release/xenia-base-tests --success --durations yes ' + xenia_base_tests_filters(),
|
||||||
],
|
],
|
||||||
'depends_on': ['build-premake-release-tests'],
|
'depends_on': ['build-premake-release-tests'],
|
||||||
},
|
},
|
||||||
|
@ -285,7 +236,7 @@ def pipeline_linux_desktop(name, image, arch, cc, build_release_all):
|
||||||
'image': image,
|
'image': image,
|
||||||
'volumes': [volume_build('cmake')],
|
'volumes': [volume_build('cmake')],
|
||||||
'commands': [
|
'commands': [
|
||||||
'./build/bin/Linux/Release/xenia-base-tests --success --durations yes',
|
'./build/bin/Linux/Release/xenia-base-tests --success --durations yes ' + xenia_base_tests_filters(),
|
||||||
],
|
],
|
||||||
'depends_on': ['build-cmake-release-tests'],
|
'depends_on': ['build-cmake-release-tests'],
|
||||||
},
|
},
|
||||||
|
@ -389,7 +340,7 @@ def pipeline_android(name, image, arch, platform):
|
||||||
'image': image,
|
'image': image,
|
||||||
'commands': [
|
'commands': [
|
||||||
'cd build',
|
'cd build',
|
||||||
command_ndk_build(platform, 'Debug', ' '.join(targets_android(platform))),
|
command_ndk_build(platform, 'Debug', 'all'),
|
||||||
],
|
],
|
||||||
'depends_on': ['toolchain'],
|
'depends_on': ['toolchain'],
|
||||||
},
|
},
|
||||||
|
@ -399,7 +350,7 @@ def pipeline_android(name, image, arch, platform):
|
||||||
'image': image,
|
'image': image,
|
||||||
'commands': [
|
'commands': [
|
||||||
'cd build',
|
'cd build',
|
||||||
command_ndk_build(platform, 'Release', ' '.join(targets_android(platform))),
|
command_ndk_build(platform, 'Release', 'all'),
|
||||||
],
|
],
|
||||||
'depends_on': ['toolchain'],
|
'depends_on': ['toolchain'],
|
||||||
},
|
},
|
||||||
|
|
|
@ -603,14 +603,6 @@ bool GetResolveInfo(const RegisterFile& regs, const Memory& memory,
|
||||||
bool fixed_rgba16_truncated_to_minus_1_to_1,
|
bool fixed_rgba16_truncated_to_minus_1_to_1,
|
||||||
ResolveInfo& info_out);
|
ResolveInfo& info_out);
|
||||||
|
|
||||||
// Taking user configuration - stretching or letterboxing, overscan region to
|
|
||||||
// crop to fill while maintaining the aspect ratio - into account, returns the
|
|
||||||
// area where the frame should be presented in the host window.
|
|
||||||
void GetPresentArea(uint32_t source_width, uint32_t source_height,
|
|
||||||
uint32_t window_width, uint32_t window_height,
|
|
||||||
int32_t& target_x_out, int32_t& target_y_out,
|
|
||||||
uint32_t& target_width_out, uint32_t& target_height_out);
|
|
||||||
|
|
||||||
} // namespace draw_util
|
} // namespace draw_util
|
||||||
} // namespace gpu
|
} // namespace gpu
|
||||||
} // namespace xe
|
} // namespace xe
|
||||||
|
|
15
xenia-build
15
xenia-build
|
@ -431,6 +431,7 @@ def get_clang_format_binary():
|
||||||
attempts = [
|
attempts = [
|
||||||
'C:\\Program Files\\LLVM\\bin\\clang-format.exe',
|
'C:\\Program Files\\LLVM\\bin\\clang-format.exe',
|
||||||
'C:\\Program Files (x86)\\LLVM\\bin\\clang-format.exe',
|
'C:\\Program Files (x86)\\LLVM\\bin\\clang-format.exe',
|
||||||
|
'clang-format-14',
|
||||||
'clang-format-13',
|
'clang-format-13',
|
||||||
'clang-format',
|
'clang-format',
|
||||||
]
|
]
|
||||||
|
@ -673,11 +674,11 @@ class SetupCommand(Command):
|
||||||
print('')
|
print('')
|
||||||
|
|
||||||
print('- running premake...')
|
print('- running premake...')
|
||||||
if run_platform_premake(target_os_override=args['target_os']) == 0:
|
ret = run_platform_premake(target_os_override=args['target_os'])
|
||||||
print('')
|
print('')
|
||||||
print('Success!')
|
print('Success!' if ret == 0 else 'Error!')
|
||||||
|
|
||||||
return 0
|
return ret
|
||||||
|
|
||||||
|
|
||||||
class PullCommand(Command):
|
class PullCommand(Command):
|
||||||
|
@ -755,11 +756,11 @@ class PremakeCommand(Command):
|
||||||
# Update premake. If no binary found, it will be built from source.
|
# Update premake. If no binary found, it will be built from source.
|
||||||
print('Running premake...')
|
print('Running premake...')
|
||||||
print('')
|
print('')
|
||||||
if run_platform_premake(target_os_override=args['target_os'],
|
ret = run_platform_premake(target_os_override=args['target_os'],
|
||||||
cc=args['cc'], devenv=args['devenv']) == 0:
|
cc=args['cc'], devenv=args['devenv'])
|
||||||
print('Success!')
|
print('Success!' if ret == 0 else 'Error!')
|
||||||
|
|
||||||
return 0
|
return ret
|
||||||
|
|
||||||
|
|
||||||
class BaseBuildCommand(Command):
|
class BaseBuildCommand(Command):
|
||||||
|
|
Loading…
Reference in New Issue