scripts: Respect CC when using CMake
only when TERMUX_PKG_ENABLE_CLANG16_PORTING is true for now, to provide backward compatibility and to avoid unexpected build problems.
This commit is contained in:
parent
5d71311261
commit
0ead023121
|
@ -9,6 +9,14 @@ termux_step_configure_cmake() {
|
|||
CMAKE_PROC=$TERMUX_ARCH
|
||||
test $CMAKE_PROC == "arm" && CMAKE_PROC='armv7-a'
|
||||
|
||||
local CMAKE_TERMUX_TOOL_C_COMPILER=False
|
||||
if [ "$TERMUX_PKG_ENABLE_CLANG16_PORTING" = "true" ]; then
|
||||
local _cc
|
||||
if _cc="$(command -v ${CC-})"; then
|
||||
CMAKE_TERMUX_TOOL_C_COMPILER="$_cc"
|
||||
fi
|
||||
fi
|
||||
|
||||
local CMAKE_ADDITIONAL_ARGS=()
|
||||
if [ "$TERMUX_ON_DEVICE_BUILD" = "false" ]; then
|
||||
CXXFLAGS+=" --target=$CCTERMUX_HOST_PLATFORM"
|
||||
|
@ -20,6 +28,7 @@ termux_step_configure_cmake() {
|
|||
CMAKE_ADDITIONAL_ARGS+=("-DCMAKE_SYSTEM_NAME=Android")
|
||||
CMAKE_ADDITIONAL_ARGS+=("-DCMAKE_SYSTEM_VERSION=$TERMUX_PKG_API_LEVEL")
|
||||
CMAKE_ADDITIONAL_ARGS+=("-DCMAKE_SYSTEM_PROCESSOR=$CMAKE_PROC")
|
||||
CMAKE_ADDITIONAL_ARGS+=("-DCMAKE_TERMUX_TOOL_C_COMPILER=$CMAKE_TERMUX_TOOL_C_COMPILER")
|
||||
CMAKE_ADDITIONAL_ARGS+=("-DCMAKE_ANDROID_STANDALONE_TOOLCHAIN=$TERMUX_STANDALONE_TOOLCHAIN")
|
||||
else
|
||||
CMAKE_ADDITIONAL_ARGS+=("-DCMAKE_LINKER=$(command -v $LD) $LDFLAGS")
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
--- a/share/cmake-3.26/Modules/Platform/Android/Determine-Compiler.cmake
|
||||
+++ b/share/cmake-3.26/Modules/Platform/Android/Determine-Compiler.cmake
|
||||
@@ -71,6 +71,10 @@
|
||||
set(_ANDROID_TOOL_CXX_TOOLCHAIN_SUFFIX "")
|
||||
endif()
|
||||
|
||||
+if(CMAKE_TERMUX_TOOL_C_COMPILER)
|
||||
+ set(_ANDROID_TOOL_C_COMPILER ${CMAKE_TERMUX_TOOL_C_COMPILER})
|
||||
+endif()
|
||||
+
|
||||
unset(_ANDROID_HOST_EXT)
|
||||
|
||||
macro(__android_determine_compiler lang)
|
|
@ -19,6 +19,13 @@ termux_setup_cmake() {
|
|||
b1dfd11d50e2dfb3d18be86ca1a369da1c1131badc14b659491dd42be1fed704
|
||||
rm -Rf "$TERMUX_PKG_TMPDIR/cmake-${TERMUX_CMAKE_VERSION}-linux-x86_64"
|
||||
tar xf "$TERMUX_CMAKE_TARFILE" -C "$TERMUX_PKG_TMPDIR"
|
||||
shopt -s nullglob
|
||||
local f
|
||||
for f in "$TERMUX_SCRIPTDIR"/scripts/build/setup/cmake-*.patch; do
|
||||
echo "[${FUNCNAME[0]}]: Applying $(basename "$f")"
|
||||
patch --silent -p1 -d "$TERMUX_PKG_TMPDIR/cmake-${TERMUX_CMAKE_VERSION}-linux-x86_64" < "$f"
|
||||
done
|
||||
shopt -u nullglob
|
||||
mv "$TERMUX_PKG_TMPDIR/cmake-${TERMUX_CMAKE_VERSION}-linux-x86_64" \
|
||||
"$TERMUX_CMAKE_FOLDER"
|
||||
fi
|
||||
|
|
Loading…
Reference in New Issue