[cmake-commits] alex committed CMakeDetermineCCompiler.cmake 1.39.2.6
1.39.2.7 CMakeDetermineCXXCompiler.cmake 1.34.2.5 1.34.2.6
CMakeFindBinUtils.cmake 1.1.2.1 1.1.2.2
CMakeGenericSystem.cmake 1.13.4.1 1.13.4.2
cmake-commits at cmake.org
cmake-commits at cmake.org
Tue May 15 13:30:41 EDT 2007
Update of /cvsroot/CMake/CMake/Modules
In directory public:/mounts/ram/cvs-serv30220/Modules
Modified Files:
Tag: CMake-CrossCompileBasic
CMakeDetermineCCompiler.cmake CMakeDetermineCXXCompiler.cmake
CMakeFindBinUtils.cmake CMakeGenericSystem.cmake
Log Message:
ENH: some adjustments as suggested by Brad: only check for the various
"binutils" on the respective platform, hardcode the strip command, make the
return variable of include() available also without OPTIONAL, honor DESTDIR
for strip and ranlib
-use FIND_PROGRAM(CMAKE_LINKER link) for the MSVC linker
Alex
Index: CMakeDetermineCXXCompiler.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeDetermineCXXCompiler.cmake,v
retrieving revision 1.34.2.5
retrieving revision 1.34.2.6
diff -u -d -r1.34.2.5 -r1.34.2.6
--- CMakeDetermineCXXCompiler.cmake 14 May 2007 15:07:59 -0000 1.34.2.5
+++ CMakeDetermineCXXCompiler.cmake 15 May 2007 17:30:38 -0000 1.34.2.6
@@ -86,8 +86,6 @@
ENDIF (COMPILER_BASENAME MATCHES "^(.+-)[gc]\\+\\+")
ENDIF (NOT CMAKE_TOOLCHAIN_PREFIX)
-INCLUDE(CMakeFindBinUtils)
-
# some exotic compilers have different extensions (e.g. sdcc uses .rel)
# so don't overwrite it if it has been already defined by the user
IF(NOT CMAKE_CXX_OUTPUT_EXTENSION)
@@ -139,6 +137,8 @@
ENDIF("${CMAKE_CXX_PLATFORM_ID}" MATCHES "MinGW")
ENDIF(NOT CMAKE_CXX_COMPILER_ID_RUN)
+INCLUDE(CMakeFindBinUtils)
+
# configure all variables set in this file
CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeCXXCompiler.cmake.in
${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeCXXCompiler.cmake IMMEDIATE)
Index: CMakeFindBinUtils.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/Attic/CMakeFindBinUtils.cmake,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -d -r1.1.2.1 -r1.1.2.2
--- CMakeFindBinUtils.cmake 14 May 2007 15:07:59 -0000 1.1.2.1
+++ CMakeFindBinUtils.cmake 15 May 2007 17:30:38 -0000 1.1.2.2
@@ -10,27 +10,43 @@
# Sets the following variables:
# CMAKE_AR
# CMAKE_RANLIB
+# CMAKE_LINKER
# CMAKE_STRIP
# CMAKE_INSTALL_NAME_TOOL
+# on UNIX, cygwin and mingw
+IF(UNIX OR CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
+ FIND_PROGRAM(CMAKE_AR NAMES ${CMAKE_TOOLCHAIN_PREFIX}ar PATHS ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
+ FIND_PROGRAM(CMAKE_AR NAMES ${CMAKE_TOOLCHAIN_PREFIX}ar)
-FIND_PROGRAM(CMAKE_AR NAMES ${CMAKE_TOOLCHAIN_PREFIX}ar PATHS ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
-FIND_PROGRAM(CMAKE_AR NAMES ${CMAKE_TOOLCHAIN_PREFIX}ar)
+ FIND_PROGRAM(CMAKE_RANLIB NAMES ${CMAKE_TOOLCHAIN_PREFIX}ranlib ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
+ FIND_PROGRAM(CMAKE_RANLIB NAMES ${CMAKE_TOOLCHAIN_PREFIX}ranlib)
+ IF(NOT CMAKE_RANLIB)
+ SET(CMAKE_RANLIB : CACHE INTERNAL "noop for ranlib")
+ ENDIF(NOT CMAKE_RANLIB)
-FIND_PROGRAM(CMAKE_RANLIB NAMES ${CMAKE_TOOLCHAIN_PREFIX}ranlib ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
-FIND_PROGRAM(CMAKE_RANLIB NAMES ${CMAKE_TOOLCHAIN_PREFIX}ranlib)
-IF(NOT CMAKE_RANLIB)
- SET(CMAKE_RANLIB : CACHE INTERNAL "noop for ranlib")
-ENDIF(NOT CMAKE_RANLIB)
+ FIND_PROGRAM(CMAKE_STRIP NAMES ${CMAKE_TOOLCHAIN_PREFIX}strip PATHS ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
+ FIND_PROGRAM(CMAKE_STRIP NAMES ${CMAKE_TOOLCHAIN_PREFIX}strip)
-# used in cpack
-FIND_PROGRAM(CMAKE_STRIP NAMES ${CMAKE_TOOLCHAIN_PREFIX}strip PATHS ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
-FIND_PROGRAM(CMAKE_STRIP NAMES ${CMAKE_TOOLCHAIN_PREFIX}strip)
+ FIND_PROGRAM(CMAKE_LINKER NAMES ${CMAKE_TOOLCHAIN_PREFIX}ld PATHS ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
+ FIND_PROGRAM(CMAKE_LINKER NAMES ${CMAKE_TOOLCHAIN_PREFIX}ld)
-# should only exist on OSX, used for installing
-FIND_PROGRAM(CMAKE_INSTALL_NAME_TOOL NAMES install_name_tool PATHS ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
-FIND_PROGRAM(CMAKE_INSTALL_NAME_TOOL NAMES install_name_tool)
+ MARK_AS_ADVANCED(CMAKE_AR CMAKE_RANLIB CMAKE_STRIP CMAKE_LINKER)
-MARK_AS_ADVANCED(CMAKE_AR CMAKE_RANLIB CMAKE_STRIP CMAKE_INSTALL_NAME_TOOL)
+ENDIF(UNIX OR CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
+
+IF(APPLE)
+ FIND_PROGRAM(CMAKE_INSTALL_NAME_TOOL NAMES install_name_tool PATHS ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
+ FIND_PROGRAM(CMAKE_INSTALL_NAME_TOOL NAMES install_name_tool)
+
+ MARK_AS_ADVANCED(CMAKE_INSTALL_NAME_TOOL)
+ENDIF(APPLE)
+
+IF("${CMAKE_CXX_COMPILER_ID}" MATCHES "MSVC" OR "${CMAKE_C_COMPILER_ID}" MATCHES "MSVC")
+ FIND_PROGRAM(CMAKE_LINKER NAMES link PATHS ${CMAKE_TOOLCHAIN_LOCATION} NO_DEFAULT_PATH)
+ FIND_PROGRAM(CMAKE_LINKER NAMES link)
+
+ MARK_AS_ADVANCED(CMAKE_LINKER)
+ENDIF("${CMAKE_CXX_COMPILER_ID}" MATCHES "MSVC" OR "${CMAKE_C_COMPILER_ID}" MATCHES "MSVC")
# maybe check for more tools ?
Index: CMakeGenericSystem.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeGenericSystem.cmake,v
retrieving revision 1.13.4.1
retrieving revision 1.13.4.2
diff -u -d -r1.13.4.1 -r1.13.4.2
--- CMakeGenericSystem.cmake 14 May 2007 20:28:07 -0000 1.13.4.1
+++ CMakeGenericSystem.cmake 15 May 2007 17:30:38 -0000 1.13.4.2
@@ -73,7 +73,10 @@
CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
ENDIF(UNIX)
-SET(CMAKE_INSTALL_DO_STRIP FALSE CACHE BOOL "If set to true, executables and libraries will be stripped when installing.")
+IF(CMAKE_STRIP)
+ SET(CMAKE_INSTALL_DO_STRIP FALSE CACHE BOOL "If set to true, executables and libraries will be stripped when installing.")
+ MARK_AS_ADVANCED(CMAKE_INSTALL_DO_STRIP)
+ENDIF(CMAKE_STRIP)
MARK_AS_ADVANCED(
CMAKE_SKIP_RPATH
Index: CMakeDetermineCCompiler.cmake
===================================================================
RCS file: /cvsroot/CMake/CMake/Modules/CMakeDetermineCCompiler.cmake,v
retrieving revision 1.39.2.6
retrieving revision 1.39.2.7
diff -u -d -r1.39.2.6 -r1.39.2.7
--- CMakeDetermineCCompiler.cmake 14 May 2007 15:07:59 -0000 1.39.2.6
+++ CMakeDetermineCCompiler.cmake 15 May 2007 17:30:38 -0000 1.39.2.7
@@ -70,7 +70,7 @@
SET(CMAKE_C_COMPILER ${CMAKE_C_COMPILER_WITH_PATH} CACHE FILEPATH "C compiler" FORCE)
ENDIF(NOT CMAKE_C_COMPILER_PATH)
ENDIF(NOT CMAKE_C_COMPILER)
-MARK_AS_ADVANCED(CMAKE_C_COMPILER)
+MARK_AS_ADVANCED(CMAKE_C_COMPILER)
IF (NOT CMAKE_TOOLCHAIN_LOCATION)
GET_FILENAME_COMPONENT(CMAKE_TOOLCHAIN_LOCATION "${CMAKE_C_COMPILER}" PATH)
@@ -86,8 +86,6 @@
ENDIF (COMPILER_BASENAME MATCHES "^(.+-)g?cc")
ENDIF (NOT CMAKE_TOOLCHAIN_PREFIX)
-INCLUDE(CMakeFindBinUtils)
-
# some exotic compilers have different extensions (e.g. sdcc uses .rel)
# so don't overwrite it if it has been already defined by the user
IF(NOT CMAKE_C_OUTPUT_EXTENSION)
@@ -128,8 +126,12 @@
ENDIF("${CMAKE_C_PLATFORM_ID}" MATCHES "MinGW")
ENDIF(NOT CMAKE_C_COMPILER_ID_RUN)
+INCLUDE(CMakeFindBinUtils)
+
# configure variables set in this file for fast reload later on
CONFIGURE_FILE(${CMAKE_ROOT}/Modules/CMakeCCompiler.cmake.in
"${CMAKE_PLATFORM_ROOT_BIN}/CMakeCCompiler.cmake" IMMEDIATE)
SET(CMAKE_C_COMPILER_ENV_VAR "CC")
+
+
More information about the Cmake-commits
mailing list