From: Hyeongseok Oh Date: Tue, 4 Apr 2017 12:07:09 +0000 (+0900) Subject: Pass crossbuild and linux-id to CMakeLists.txt using CMake arguments (#10686) X-Git-Tag: accepted/tizen/base/20180629.140029~1592 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=dfce3af2ee5967ae53c7b47135f150f59452ded3;p=platform%2Fupstream%2Fcoreclr.git Pass crossbuild and linux-id to CMakeLists.txt using CMake arguments (#10686) Remove in CMakeLists.txt 1) read cross-build from environment variable 2) read linux-id from file system Instead, pass cross-build and linux-id from gen-buildsys-clang.sh using cmake arguments --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 6327a14..66b0255 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -104,7 +104,7 @@ else (WIN32) else (CMAKE_SYSTEM_NAME STREQUAL Darwin) # Ensure that objcopy is present - if (DEFINED ENV{CROSSCOMPILE} AND NOT DEFINED CLR_CROSS_COMPONENTS_BUILD) + if (CLR_UNIX_CROSS_BUILD AND NOT DEFINED CLR_CROSS_COMPONENTS_BUILD) if (CMAKE_SYSTEM_PROCESSOR STREQUAL armv7l OR CMAKE_SYSTEM_PROCESSOR STREQUAL aarch64 OR CMAKE_SYSTEM_PROCESSOR STREQUAL arm) find_program(OBJCOPY ${TOOLCHAIN}-objcopy) elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL i686) @@ -164,15 +164,12 @@ if(CMAKE_SYSTEM_NAME STREQUAL Linux) endif() set(CLR_CMAKE_PLATFORM_LINUX 1) - # Detect Alpine Linux - SET(OS_RELEASE_FILENAME "/etc/os-release") - if (EXISTS ${OS_RELEASE_FILENAME}) - file(READ ${OS_RELEASE_FILENAME} OS_RELEASE) - string(FIND "${OS_RELEASE}" "ID=alpine" CLR_CMAKE_PLATFORM_ALPINE_LINUX) - if(CLR_CMAKE_PLATFORM_ALPINE_LINUX EQUAL -1) - unset(CLR_CMAKE_PLATFORM_ALPINE_LINUX) - endif(CLR_CMAKE_PLATFORM_ALPINE_LINUX EQUAL -1) - endif(EXISTS ${OS_RELEASE_FILENAME}) + # Detect Linux ID + if(DEFINED CLR_CMAKE_LINUX_ID) + if(CLR_CMAKE_LINUX_ID STREQUAL alpine) + set(CLR_CMAKE_PLATFORM_ALPINE_LINUX) + endif() + endif(DEFINED CLR_CMAKE_LINUX_ID) endif(CMAKE_SYSTEM_NAME STREQUAL Linux) if(CMAKE_SYSTEM_NAME STREQUAL Darwin) diff --git a/src/pal/tools/gen-buildsys-clang.sh b/src/pal/tools/gen-buildsys-clang.sh index 6c264cb..924a365 100755 --- a/src/pal/tools/gen-buildsys-clang.sh +++ b/src/pal/tools/gen-buildsys-clang.sh @@ -139,6 +139,17 @@ if [[ -n "$CROSSCOMPILE" ]]; then fi cmake_extra_defines="$cmake_extra_defines -C $CONFIG_DIR/tryrun.cmake" cmake_extra_defines="$cmake_extra_defines -DCMAKE_TOOLCHAIN_FILE=$CONFIG_DIR/toolchain.cmake" + cmake_extra_defines="$cmake_extra_defines -DCLR_UNIX_CROSS_BUILD=1" +fi +if [ $OS == "Linux" ]; then + linux_id_file="/etc/os-release" + if [[ -n "$CROSSCOMPILE" ]]; then + linux_id_file="$ROOTFS_DIR/$linux_id_file" + fi + if [[ -e $linux_id_file ]]; then + source $linux_id_file + cmake_extra_defines="$cmake_extra_defines -DCLR_CMAKE_LINUX_ID=$ID" + fi fi if [ "$build_arch" == "armel" ]; then cmake_extra_defines="$cmake_extra_defines -DARM_SOFTFP=1"