1
0
forked from 0ad/0ad

Allow system cxxtest

Add option to build-source-libs and premake to uses system provided
cxxtest.

Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
This commit is contained in:
Ralph Sennhauser 2024-09-18 19:49:16 +02:00
parent 09fa46fd06
commit 54a54a6409
Signed by: sera
SSH Key Fingerprint: SHA256:peL4nxsVEHY8tOsBHev85LILY2TqpfHeutw4LUbOFPQ
3 changed files with 17 additions and 6 deletions

View File

@ -254,10 +254,12 @@ extern_lib_defs = {
},
cxxtest = {
compile_settings = function()
if externalincludedirs then
externalincludedirs { libraries_source_dir .. "cxxtest-4.4" }
else
sysincludedirs { libraries_source_dir .. "cxxtest-4.4" }
if not _OPTIONS["with-system-cxxtest"] then
if externalincludedirs then
externalincludedirs { libraries_source_dir .. "cxxtest-4.4" }
else
sysincludedirs { libraries_source_dir .. "cxxtest-4.4" }
end
end
end,
},

View File

@ -6,6 +6,7 @@ newoption { trigger = "icc", description = "Use Intel C++ Compiler (Linux only;
newoption { trigger = "jenkins-tests", description = "Configure CxxTest to use the XmlPrinter runner which produces Jenkins-compatible output" }
newoption { trigger = "minimal-flags", description = "Only set compiler/linker flags that are really needed. Has no effect on Windows builds" }
newoption { trigger = "outpath", description = "Location for generated project files" }
newoption { trigger = "with-system-cxxtest", description = "Search standard paths for cxxtest, instead of using bundled copy" }
newoption { trigger = "with-system-mozjs", description = "Search standard paths for libmozjs91, instead of using bundled copy" }
newoption { trigger = "with-system-nvtt", description = "Search standard paths for nvidia-texture-tools library, instead of using bundled copy" }
newoption { trigger = "with-valgrind", description = "Enable Valgrind support (non-Windows only)" }
@ -1399,7 +1400,11 @@ function setup_tests()
if os.istarget("windows") then
cxxtest.setpath(rootdir.."/build/bin/cxxtestgen.exe")
else
cxxtest.setpath(rootdir.."/libraries/source/cxxtest-4.4/bin/cxxtestgen")
if _OPTIONS["with-system-cxxtest"] then
cxxtest.setpath("/usr/bin/cxxtestgen")
else
cxxtest.setpath(rootdir.."/libraries/source/cxxtest-4.4/bin/cxxtestgen")
end
end
local runner = "ErrorPrinter"

View File

@ -22,6 +22,7 @@ case "$(realpath .)" in
esac
without_nvtt=false
with_system_cxxtest=false
with_system_nvtt=false
with_system_mozjs=false
@ -30,6 +31,7 @@ JOBS=${JOBS:="-j2"}
for i in "$@"; do
case $i in
--without-nvtt) without_nvtt=true ;;
--with-system-cxxtest) with_system_cxxtest=true ;;
--with-system-nvtt) with_system_nvtt=true ;;
--with-system-mozjs) with_system_mozjs=true ;;
-j*) JOBS=$i ;;
@ -53,7 +55,9 @@ export MAKE JOBS
echo "Building third-party dependencies..."
echo
./source/cxxtest-4.4/build.sh || die "cxxtest build failed"
if [ "$with_system_cxxtest" = "false" ]; then
./source/cxxtest-4.4/build.sh || die "cxxtest build failed"
fi
echo
./source/fcollada/build.sh || die "FCollada build failed"
echo