mirror of
https://github.com/RYDE-WORK/ballistica.git
synced 2026-02-08 16:53:49 +08:00
Cleaned up prefab builds
This commit is contained in:
parent
fc2ece3b29
commit
62e8549286
116
Makefile
116
Makefile
@ -114,12 +114,12 @@ clean-list:
|
|||||||
# Prebuilt binaries for various platforms.
|
# Prebuilt binaries for various platforms.
|
||||||
|
|
||||||
# Assemble/run a debug build for this platform.
|
# Assemble/run a debug build for this platform.
|
||||||
prefab-debug:
|
prefab-debug: prefab-debug-build
|
||||||
@tools/snippets make_prefab debug
|
${${shell tools/snippets prefab_run_var debug}}
|
||||||
|
|
||||||
# Assemble/run a release build for this platform.
|
# Assemble/run a release build for this platform.
|
||||||
prefab-release:
|
prefab-release: prefab-release-build
|
||||||
@tools/snippets make_prefab release
|
${${shell tools/snippets prefab_run_var release}}
|
||||||
|
|
||||||
# Assemble a debug build for this platform.
|
# Assemble a debug build for this platform.
|
||||||
prefab-debug-build:
|
prefab-debug-build:
|
||||||
@ -130,8 +130,8 @@ prefab-release-build:
|
|||||||
@tools/snippets make_prefab release-build
|
@tools/snippets make_prefab release-build
|
||||||
|
|
||||||
# Assemble/run a server debug build for this platform.
|
# Assemble/run a server debug build for this platform.
|
||||||
prefab-server-debug:
|
prefab-server-debug: prefab-server-debug-build
|
||||||
@tools/snippets make_prefab server-debug
|
${${shell tools/snippets prefab_run_var server-debug}}
|
||||||
|
|
||||||
# Assemble/run a server release build for this platform.
|
# Assemble/run a server release build for this platform.
|
||||||
prefab-server-release:
|
prefab-server-release:
|
||||||
@ -147,8 +147,11 @@ prefab-server-release-build:
|
|||||||
|
|
||||||
# Specific platform prefab targets:
|
# Specific platform prefab targets:
|
||||||
|
|
||||||
|
RUN_PREFAB_MAC_DEBUG = cd build/prefab/mac/debug && ./ballisticacore
|
||||||
|
|
||||||
prefab-mac-debug: prefab-mac-debug-build
|
prefab-mac-debug: prefab-mac-debug-build
|
||||||
@cd build/prefab/mac/debug && ./ballisticacore
|
@tools/snippets ensure_prefab_platform mac
|
||||||
|
@${RUN_PREFAB_MAC_DEBUG}
|
||||||
|
|
||||||
prefab-mac-debug-build: prereqs assets-cmake \
|
prefab-mac-debug-build: prereqs assets-cmake \
|
||||||
build/prefab/mac/debug/ballisticacore
|
build/prefab/mac/debug/ballisticacore
|
||||||
@ -157,8 +160,11 @@ prefab-mac-debug-build: prereqs assets-cmake \
|
|||||||
build/prefab/mac/debug/ballisticacore: .efrocachemap
|
build/prefab/mac/debug/ballisticacore: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
|
RUN_PREFAB_MAC_RELEASE = cd build/prefab/mac/release && ./ballisticacore
|
||||||
|
|
||||||
prefab-mac-release: prefab-mac-release-build
|
prefab-mac-release: prefab-mac-release-build
|
||||||
@cd build/prefab/mac/release && ./ballisticacore
|
@tools/snippets ensure_prefab_platform mac
|
||||||
|
@${RUN_PREFAB_MAC_RELEASE}
|
||||||
|
|
||||||
prefab-mac-release-build: prereqs assets-cmake \
|
prefab-mac-release-build: prereqs assets-cmake \
|
||||||
build/prefab/mac/release/ballisticacore
|
build/prefab/mac/release/ballisticacore
|
||||||
@ -167,8 +173,12 @@ prefab-mac-release-build: prereqs assets-cmake \
|
|||||||
build/prefab/mac/release/ballisticacore: .efrocachemap
|
build/prefab/mac/release/ballisticacore: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
|
RUN_PREFAB_MAC_SERVER_DEBUG = cd build/prefab/mac-server/debug \
|
||||||
|
&& ./ballisticacore_server
|
||||||
|
|
||||||
prefab-mac-server-debug: prefab-mac-server-debug-build
|
prefab-mac-server-debug: prefab-mac-server-debug-build
|
||||||
@cd build/prefab/mac-server/debug && ./ballisticacore_server
|
@tools/snippets ensure_prefab_platform mac
|
||||||
|
@${RUN_PREFAB_MAC_SERVER_DEBUG}
|
||||||
|
|
||||||
prefab-mac-server-debug-build: prereqs assets-cmake \
|
prefab-mac-server-debug-build: prereqs assets-cmake \
|
||||||
build/prefab/mac-server/debug/dist/ballisticacore_headless \
|
build/prefab/mac-server/debug/dist/ballisticacore_headless \
|
||||||
@ -178,17 +188,21 @@ prefab-mac-server-debug-build: prereqs assets-cmake \
|
|||||||
|
|
||||||
build/prefab/mac-server/debug/ballisticacore_server: \
|
build/prefab/mac-server/debug/ballisticacore_server: \
|
||||||
assets/src/server/server.py
|
assets/src/server/server.py
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/mac-server/debug/config_template.yaml: \
|
build/prefab/mac-server/debug/config_template.yaml: \
|
||||||
assets/src/server/config.yaml
|
assets/src/server/config.yaml
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/mac-server/debug/dist/ballisticacore_headless: .efrocachemap
|
build/prefab/mac-server/debug/dist/ballisticacore_headless: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
|
RUN_PREFAB_MAC_SERVER_RELEASE = cd build/prefab/mac-server/release \
|
||||||
|
&& ./ballisticacore_server
|
||||||
|
|
||||||
prefab-mac-server-release: prefab-mac-server-release-build
|
prefab-mac-server-release: prefab-mac-server-release-build
|
||||||
@cd build/prefab/mac-server/release && ./ballisticacore_server
|
@tools/snippets ensure_prefab_platform mac
|
||||||
|
@${RUN_PREFAB_MAC_SERVER_RELEASE}
|
||||||
|
|
||||||
prefab-mac-server-release-build: prereqs assets-cmake \
|
prefab-mac-server-release-build: prereqs assets-cmake \
|
||||||
build/prefab/mac-server/release/dist/ballisticacore_headless \
|
build/prefab/mac-server/release/dist/ballisticacore_headless \
|
||||||
@ -198,17 +212,20 @@ prefab-mac-server-release-build: prereqs assets-cmake \
|
|||||||
|
|
||||||
build/prefab/mac-server/release/ballisticacore_server: \
|
build/prefab/mac-server/release/ballisticacore_server: \
|
||||||
assets/src/server/server.py
|
assets/src/server/server.py
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/mac-server/release/config_template.yaml: \
|
build/prefab/mac-server/release/config_template.yaml: \
|
||||||
assets/src/server/config.yaml
|
assets/src/server/config.yaml
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/mac-server/release/dist/ballisticacore_headless: .efrocachemap
|
build/prefab/mac-server/release/dist/ballisticacore_headless: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
|
RUN_PREFAB_LINUX_DEBUG = cd build/prefab/linux/debug && ./ballisticacore
|
||||||
|
|
||||||
prefab-linux-debug: prefab-linux-debug-build
|
prefab-linux-debug: prefab-linux-debug-build
|
||||||
@cd build/prefab/linux/debug && ./ballisticacore
|
@tools/snippets ensure_prefab_platform linux
|
||||||
|
@${RUN_PREFAB_LINUX_DEBUG}
|
||||||
|
|
||||||
prefab-linux-debug-build: prereqs assets-cmake \
|
prefab-linux-debug-build: prereqs assets-cmake \
|
||||||
build/prefab/linux/debug/ballisticacore
|
build/prefab/linux/debug/ballisticacore
|
||||||
@ -217,8 +234,11 @@ prefab-linux-debug-build: prereqs assets-cmake \
|
|||||||
build/prefab/linux/debug/ballisticacore: .efrocachemap
|
build/prefab/linux/debug/ballisticacore: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
|
RUN_PREFAB_LINUX_RELEASE = cd build/prefab/linux/release && ./ballisticacore
|
||||||
|
|
||||||
prefab-linux-release: prefab-linux-release-build
|
prefab-linux-release: prefab-linux-release-build
|
||||||
@cd build/prefab/linux/release && ./ballisticacore
|
@tools/snippets ensure_prefab_platform linux
|
||||||
|
@${RUN_PREFAB_LINUX_RELEASE}
|
||||||
|
|
||||||
prefab-linux-release-build: prereqs assets-cmake \
|
prefab-linux-release-build: prereqs assets-cmake \
|
||||||
build/prefab/linux/release/ballisticacore
|
build/prefab/linux/release/ballisticacore
|
||||||
@ -227,8 +247,12 @@ prefab-linux-release-build: prereqs assets-cmake \
|
|||||||
build/prefab/linux/release/ballisticacore: .efrocachemap
|
build/prefab/linux/release/ballisticacore: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
|
RUN_PREFAB_LINUX_SERVER_DEBUG = cd build/prefab/linux-server/debug \
|
||||||
|
&& ./ballisticacore_server
|
||||||
|
|
||||||
prefab-linux-server-debug: prefab-linux-server-debug-build
|
prefab-linux-server-debug: prefab-linux-server-debug-build
|
||||||
@cd build/prefab/linux-server/debug && ./ballisticacore_server
|
@tools/snippets ensure_prefab_platform linux
|
||||||
|
@${RUN_PREFAB_LINUX_SERVER_DEBUG}
|
||||||
|
|
||||||
prefab-linux-server-debug-build: prereqs assets-cmake \
|
prefab-linux-server-debug-build: prereqs assets-cmake \
|
||||||
build/prefab/linux-server/debug/dist/ballisticacore_headless \
|
build/prefab/linux-server/debug/dist/ballisticacore_headless \
|
||||||
@ -238,17 +262,21 @@ prefab-linux-server-debug-build: prereqs assets-cmake \
|
|||||||
|
|
||||||
build/prefab/linux-server/debug/ballisticacore_server: \
|
build/prefab/linux-server/debug/ballisticacore_server: \
|
||||||
assets/src/server/server.py
|
assets/src/server/server.py
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/linux-server/debug/config_template.yaml: \
|
build/prefab/linux-server/debug/config_template.yaml: \
|
||||||
assets/src/server/config.yaml
|
assets/src/server/config.yaml
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/linux-server/debug/dist/ballisticacore_headless: .efrocachemap
|
build/prefab/linux-server/debug/dist/ballisticacore_headless: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
|
RUN_PREFAB_LINUX_SERVER_RELEASE = cd build/prefab/linux-server/release \
|
||||||
|
&& ./ballisticacore_server
|
||||||
|
|
||||||
prefab-linux-server-release: prefab-linux-server-release-build
|
prefab-linux-server-release: prefab-linux-server-release-build
|
||||||
@cd build/prefab/linux-server/release && ./ballisticacore_server
|
@tools/snippets ensure_prefab_platform linux
|
||||||
|
@${RUN_PREFAB_LINUX_SERVER_RELEASE}
|
||||||
|
|
||||||
prefab-linux-server-release-build: prereqs assets-cmake \
|
prefab-linux-server-release-build: prereqs assets-cmake \
|
||||||
build/prefab/linux-server/release/dist/ballisticacore_headless \
|
build/prefab/linux-server/release/dist/ballisticacore_headless \
|
||||||
@ -258,19 +286,22 @@ prefab-linux-server-release-build: prereqs assets-cmake \
|
|||||||
|
|
||||||
build/prefab/linux-server/release/ballisticacore_server: \
|
build/prefab/linux-server/release/ballisticacore_server: \
|
||||||
assets/src/server/server.py
|
assets/src/server/server.py
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/linux-server/release/config_template.yaml: \
|
build/prefab/linux-server/release/config_template.yaml: \
|
||||||
assets/src/server/config.yaml
|
assets/src/server/config.yaml
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/linux-server/release/dist/ballisticacore_headless: .efrocachemap
|
build/prefab/linux-server/release/dist/ballisticacore_headless: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
PREFAB_WINDOWS_PLATFORM = x64
|
PREFAB_WINDOWS_PLATFORM = x64
|
||||||
|
|
||||||
|
RUN_PREFAB_WINDOWS_DEBUG = cd build/prefab/windows/debug && ./BallisticaCore.exe
|
||||||
|
|
||||||
prefab-windows-debug: prefab-windows-debug-build
|
prefab-windows-debug: prefab-windows-debug-build
|
||||||
build/prefab/windows/debug/BallisticaCore.exe
|
@tools/snippets ensure_prefab_platform windows
|
||||||
|
@{RUN_PREFAB_WINDOWS_DEBUG}
|
||||||
|
|
||||||
prefab-windows-debug-build: prereqs assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
prefab-windows-debug-build: prereqs assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
||||||
build/prefab/windows/debug/BallisticaCore.exe
|
build/prefab/windows/debug/BallisticaCore.exe
|
||||||
@ -279,8 +310,12 @@ prefab-windows-debug-build: prereqs assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
|||||||
build/prefab/windows/debug/BallisticaCore.exe: .efrocachemap
|
build/prefab/windows/debug/BallisticaCore.exe: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
|
RUN_PREFAB_WINDOWS_RELEASE = cd build/prefab/windows/release \
|
||||||
|
&& ./BallisticaCore.exe
|
||||||
|
|
||||||
prefab-windows-release: prefab-windows-release-build
|
prefab-windows-release: prefab-windows-release-build
|
||||||
build/prefab/windows/release/BallisticaCore.exe
|
@tools/snippets ensure_prefab_platform windows
|
||||||
|
@{RUN_PREFAB_WINDOWS_RELEASE}
|
||||||
|
|
||||||
prefab-windows-release-build: prereqs \
|
prefab-windows-release-build: prereqs \
|
||||||
assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
||||||
@ -290,10 +325,13 @@ prefab-windows-release-build: prereqs \
|
|||||||
build/prefab/windows/release/BallisticaCore.exe: .efrocachemap
|
build/prefab/windows/release/BallisticaCore.exe: .efrocachemap
|
||||||
@tools/snippets efrocache_get $@
|
@tools/snippets efrocache_get $@
|
||||||
|
|
||||||
prefab-windows-server-debug: prefab-windows-server-debug-build
|
RUN_PREFAB_WINDOWS_SERVER_DEBUG = cd build/prefab/windows-server/debug \
|
||||||
cd build/prefab/windows-server/debug \
|
|
||||||
&& dist/python.exe ballisticacore_server.py
|
&& dist/python.exe ballisticacore_server.py
|
||||||
|
|
||||||
|
prefab-windows-server-debug: prefab-windows-server-debug-build
|
||||||
|
@tools/snippets ensure_prefab_platform windows
|
||||||
|
@{RUN_PREFAB_WINDOWS_SERVER_DEBUG}
|
||||||
|
|
||||||
prefab-windows-server-debug-build: prereqs \
|
prefab-windows-server-debug-build: prereqs \
|
||||||
assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
||||||
build/prefab/windows-server/debug/dist/ballisticacore_headless.exe \
|
build/prefab/windows-server/debug/dist/ballisticacore_headless.exe \
|
||||||
@ -308,19 +346,22 @@ build/prefab/windows-server/debug/dist/ballisticacore_headless.exe: .efrocachema
|
|||||||
|
|
||||||
build/prefab/windows-server/debug/ballisticacore_server.py: \
|
build/prefab/windows-server/debug/ballisticacore_server.py: \
|
||||||
assets/src/server/server.py
|
assets/src/server/server.py
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/windows-server/debug/launch_ballisticacore_server.bat: \
|
build/prefab/windows-server/debug/launch_ballisticacore_server.bat: \
|
||||||
assets/src/server/server.bat
|
assets/src/server/server.bat
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/windows-server/debug/config_template.yaml: \
|
build/prefab/windows-server/debug/config_template.yaml: \
|
||||||
assets/src/server/config.yaml
|
assets/src/server/config.yaml
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
|
RUN_PREFAB_WINDOWS_SERVER_RELEASE = cd build/prefab/windows-server/release \
|
||||||
|
&& dist/python.exe ballisticacore_server.py
|
||||||
|
|
||||||
prefab-windows-server-release: prefab-windows-server-release-build
|
prefab-windows-server-release: prefab-windows-server-release-build
|
||||||
cd build/prefab/windows-server/release \
|
@tools/snippets ensure_prefab_platform windows
|
||||||
&& dist/python.exe ballisticacore_server.py
|
@{RUN_PREFAB_WINDOWS_SERVER_RELEASE}
|
||||||
|
|
||||||
prefab-windows-server-release-build: prereqs \
|
prefab-windows-server-release-build: prereqs \
|
||||||
assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
assets-windows-${PREFAB_WINDOWS_PLATFORM} \
|
||||||
@ -336,15 +377,18 @@ build/prefab/windows-server/release/dist/ballisticacore_headless.exe: .efrocache
|
|||||||
|
|
||||||
build/prefab/windows-server/release/ballisticacore_server.py: \
|
build/prefab/windows-server/release/ballisticacore_server.py: \
|
||||||
assets/src/server/server.py
|
assets/src/server/server.py
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/windows-server/release/launch_ballisticacore_server.bat: \
|
build/prefab/windows-server/release/launch_ballisticacore_server.bat: \
|
||||||
assets/src/server/server.bat
|
assets/src/server/server.bat
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
build/prefab/windows-server/release/config_template.yaml: \
|
build/prefab/windows-server/release/config_template.yaml: \
|
||||||
assets/src/server/config.yaml
|
assets/src/server/config.yaml
|
||||||
cp $< $@
|
@cp $< $@
|
||||||
|
|
||||||
|
prefab-clean:
|
||||||
|
rm -rf build/prefab
|
||||||
|
|
||||||
# Tell make which of these targets don't represent files.
|
# Tell make which of these targets don't represent files.
|
||||||
.PHONY: prefab-debug prefab-debug-build prefab-release prefab-release-build \
|
.PHONY: prefab-debug prefab-debug-build prefab-release prefab-release-build \
|
||||||
@ -359,7 +403,7 @@ build/prefab/windows-server/release/config_template.yaml: \
|
|||||||
prefab-windows-debug-build prefab-windows-release \
|
prefab-windows-debug-build prefab-windows-release \
|
||||||
prefab-windows-release-build prefab-windows-server-debug \
|
prefab-windows-release-build prefab-windows-server-debug \
|
||||||
prefab-windows-server-debug-build prefab-windows-server-release \
|
prefab-windows-server-debug-build prefab-windows-server-release \
|
||||||
prefab-windows-server-release-build
|
prefab-windows-server-release-build prefab-clean
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
@ -505,7 +549,7 @@ test: prereqs
|
|||||||
# Run tests with any caching disabled.
|
# Run tests with any caching disabled.
|
||||||
test-full: test
|
test-full: test
|
||||||
|
|
||||||
# Iterating on individual tests with extra debug output enabled.
|
# Iterate on individual tests with extra debug output enabled.
|
||||||
test-assetmanager:
|
test-assetmanager:
|
||||||
@tools/snippets pytest -o log_cli=true -o log_cli_level=debug -s -v \
|
@tools/snippets pytest -o log_cli=true -o log_cli_level=debug -s -v \
|
||||||
tests/test_ba/test_assetmanager.py::test_assetmanager
|
tests/test_ba/test_assetmanager.py::test_assetmanager
|
||||||
|
|||||||
@ -321,4 +321,4 @@ if __name__ == '__main__':
|
|||||||
try:
|
try:
|
||||||
main()
|
main()
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
sys.exit(-1)
|
pass
|
||||||
|
|||||||
@ -432,36 +432,38 @@ def gen_fulltest_buildfile_linux() -> None:
|
|||||||
outfile.write('\n'.join(lines))
|
outfile.write('\n'.join(lines))
|
||||||
|
|
||||||
|
|
||||||
def make_prefab(target: PrefabTarget) -> None:
|
def get_current_prefab_platform() -> str:
|
||||||
"""Run prefab builds for the current platform."""
|
"""Get the name of the running platform.
|
||||||
from efrotools import run
|
|
||||||
import platform
|
|
||||||
|
|
||||||
|
Throws a RuntimeError on unsupported platforms.
|
||||||
|
"""
|
||||||
|
import platform
|
||||||
system = platform.system()
|
system = platform.system()
|
||||||
machine = platform.machine()
|
machine = platform.machine()
|
||||||
|
|
||||||
if system == 'Darwin':
|
if system == 'Darwin':
|
||||||
# Currently there's just x86_64 on mac; will need to revisit when arm
|
# Currently there's just x86_64 on mac; will need to revisit when arm
|
||||||
# cpus happen.
|
# cpus happen.
|
||||||
base = 'mac'
|
return 'mac'
|
||||||
elif system == 'Linux':
|
if system == 'Linux':
|
||||||
# If it looks like we're in Windows Subsystem for Linux,
|
# If it looks like we're in Windows Subsystem for Linux,
|
||||||
# go with the Windows version.
|
# go with the Windows version.
|
||||||
if 'microsoft' in platform.uname()[3].lower():
|
if 'microsoft' in platform.uname()[3].lower():
|
||||||
base = 'windows'
|
return 'windows'
|
||||||
else:
|
|
||||||
# We currently only support x86_64 linux.
|
|
||||||
if machine == 'x86_64':
|
|
||||||
base = 'linux'
|
|
||||||
else:
|
|
||||||
raise RuntimeError(
|
|
||||||
f'make_prefab: unsupported linux machine type:'
|
|
||||||
f' {machine}.')
|
|
||||||
else:
|
|
||||||
raise RuntimeError(f'make_prefab: unrecognized platform:'
|
|
||||||
f' {platform.system()}.')
|
|
||||||
|
|
||||||
run(f'make prefab-{base}-{target.value}')
|
# We currently only support x86_64 linux.
|
||||||
|
if machine == 'x86_64':
|
||||||
|
return 'linux'
|
||||||
|
raise RuntimeError(f'make_prefab: unsupported linux machine type:'
|
||||||
|
f' {machine}.')
|
||||||
|
raise RuntimeError(f'make_prefab: unrecognized platform:'
|
||||||
|
f' {platform.system()}.')
|
||||||
|
|
||||||
|
|
||||||
|
def make_prefab(target: PrefabTarget) -> None:
|
||||||
|
"""Make a prefab build for the current platform."""
|
||||||
|
from efrotools import run
|
||||||
|
platform = get_current_prefab_platform()
|
||||||
|
run(f'make prefab-{platform}-{target.value}')
|
||||||
|
|
||||||
|
|
||||||
def _vstr(nums: Sequence[int]) -> str:
|
def _vstr(nums: Sequence[int]) -> str:
|
||||||
|
|||||||
@ -528,6 +528,34 @@ def checkenv() -> None:
|
|||||||
raise CleanError(exc)
|
raise CleanError(exc)
|
||||||
|
|
||||||
|
|
||||||
|
def ensure_prefab_platform() -> None:
|
||||||
|
"""Ensure we are running on a particular prefab platform."""
|
||||||
|
import batools.build
|
||||||
|
if len(sys.argv) != 3:
|
||||||
|
raise CleanError('Expected 1 platform name arg.')
|
||||||
|
needed = sys.argv[2]
|
||||||
|
current = batools.build.get_current_prefab_platform()
|
||||||
|
if current != needed:
|
||||||
|
raise CleanError(
|
||||||
|
f'Incorrect platform: we are {current}, this requires {needed}.')
|
||||||
|
|
||||||
|
|
||||||
|
def prefab_run_var() -> None:
|
||||||
|
"""Print a variable for running a prefab run for the current platform.
|
||||||
|
|
||||||
|
We use this mechanism instead of just having a command recursively run
|
||||||
|
a make target so that ctrl-c can be handled cleanly and directly by the
|
||||||
|
command getting run instead of generating extra errors in the recursive
|
||||||
|
processes.
|
||||||
|
"""
|
||||||
|
import batools.build
|
||||||
|
if len(sys.argv) != 3:
|
||||||
|
raise RuntimeError('Expected 1 arg.')
|
||||||
|
base = sys.argv[2].replace('-', '_').upper()
|
||||||
|
platform = batools.build.get_current_prefab_platform().upper()
|
||||||
|
print(f'RUN_PREFAB_{platform}_{base}', end='')
|
||||||
|
|
||||||
|
|
||||||
def make_prefab() -> None:
|
def make_prefab() -> None:
|
||||||
"""Run prefab builds for the current platform."""
|
"""Run prefab builds for the current platform."""
|
||||||
import batools.build
|
import batools.build
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user