[cmake-commits] king committed CMakeLists.txt 1.6 1.7
cmake-commits at cmake.org
cmake-commits at cmake.org
Fri Dec 28 23:07:28 EST 2007
Update of /cvsroot/CMake/CMake/Tests/ExternalOBJ
In directory public:/mounts/ram/cvs-serv27239/Tests/ExternalOBJ
Modified Files:
CMakeLists.txt
Log Message:
BUG: Do not remove the source file extension when computing an object file name. This addresses bug #6169. If CMAKE_BACKWARDS_COMPATIBILITY is 2.4 or lower maintain the old behavior so that existing build trees and old project releases are not affected.
Index: CMakeLists.txt
===================================================================
RCS file: /cvsroot/CMake/CMake/Tests/ExternalOBJ/CMakeLists.txt,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- CMakeLists.txt 18 May 2007 19:11:20 -0000 1.6
+++ CMakeLists.txt 29 Dec 2007 04:07:26 -0000 1.7
@@ -18,37 +18,26 @@
external
OUTPUT_VARIABLE OUTPUT
)
-SET(EXTERNAL_OBJECT_NAME "external_object${CMAKE_CXX_OUTPUT_EXTENSION}")
IF(EXTERNAL_OBJECT_BUILT)
MESSAGE(
- "Building ${EXTERNAL_OBJECT_NAME} succeeded with the following output:\n"
+ "Building external_object.cxx succeeded with the following output:\n"
"[${OUTPUT}]"
)
ELSE(EXTERNAL_OBJECT_BUILT)
MESSAGE(FATAL_ERROR
- "Building ${EXTERNAL_OBJECT_NAME} failed with the following output:\n"
+ "Building external_object.cxx failed with the following output:\n"
"[${OUTPUT}]"
)
ENDIF(EXTERNAL_OBJECT_BUILT)
# Find the external object file.
-SET(BASE ${ExternalOBJ_BINARY_DIR}/Object)
-SET(EXTERNAL_OBJECT)
-FOREACH(dir external.dir . ${CMAKE_CONFIGURATION_TYPES})
- IF(NOT EXTERNAL_OBJECT)
- IF(EXISTS ${BASE}/${dir}/${EXTERNAL_OBJECT_NAME})
- SET(EXTERNAL_OBJECT ${BASE}/${dir}/${EXTERNAL_OBJECT_NAME})
- ENDIF(EXISTS ${BASE}/${dir}/${EXTERNAL_OBJECT_NAME})
- ENDIF(NOT EXTERNAL_OBJECT)
-ENDFOREACH(dir)
-IF(NOT EXTERNAL_OBJECT)
- FILE(GLOB_RECURSE EXTERNAL_OBJECT
- "${ExternalOBJ_BINARY_DIR}/Object/${EXTERNAL_OBJECT_NAME}")
-ENDIF(NOT EXTERNAL_OBJECT)
+SET(DIR ${ExternalOBJ_BINARY_DIR}/Object)
+FILE(GLOB_RECURSE EXTERNAL_OBJECT
+ "${DIR}/external_object*${CMAKE_CXX_OUTPUT_EXTENSION}")
IF(EXTERNAL_OBJECT)
MESSAGE("Found \"${EXTERNAL_OBJECT}\".")
ELSE(EXTERNAL_OBJECT)
- MESSAGE(FATAL_ERROR "Could not find ${EXTERNAL_OBJECT_NAME}.")
+ MESSAGE(FATAL_ERROR "Could not find external object.")
ENDIF(EXTERNAL_OBJECT)
# Test creation of external objects by custom commands.
More information about the Cmake-commits
mailing list