CMake/Tests/Complex/Executable/CMakeLists.txt

93 lines
3.2 KiB
CMake
Raw Normal View History

2002-04-22 19:51:26 +04:00
CMAKE_MINIMUM_REQUIRED(VERSION 1.3)
#
# Create exe.
#
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DTEST_CXX_FLAGS")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DTEST_C_FLAGS")
2005-08-01 06:25:39 +04:00
SET(CMAKE_C_FLAGS "${CMAKE_ANSI_CFLAGS} ${CMAKE_C_FLAGS}")
# Link to CMake lib
LINK_DIRECTORIES(${Complex_BINARY_DIR}/../../Source)
2003-06-23 16:58:58 +04:00
LINK_DIRECTORIES(${Complex_BINARY_DIR}/../../Source/kwsys)
2005-01-19 02:11:24 +03:00
LINK_DIRECTORIES(${Complex_BINARY_DIR}/../../Utilities/cmexpat)
2005-01-27 18:13:38 +03:00
LINK_DIRECTORIES(${Complex_BINARY_DIR}/../../Utilities/cmzlib)
2005-12-29 04:04:13 +03:00
LINK_DIRECTORIES(${Complex_BINARY_DIR}/../../Utilities/cmtar)
2002-04-11 19:30:05 +04:00
# Use LINK_LIBRARIES instead of TARGET_LINK_LIBRARIES to
SET(COMPLEX_LIBS CMakeTestLibrary;CMakeTestLibraryShared;CMakeTestCLibraryShared)
2002-04-11 19:30:05 +04:00
LINK_LIBRARIES(${COMPLEX_LIBS})
2001-08-23 21:57:45 +04:00
ADD_EXECUTABLE(A A.cxx)
ADD_EXECUTABLE(complex complex testcflags.c)
ADD_EXECUTABLE(complex.file complex.file.cxx)
TARGET_LINK_LIBRARIES(complex CMakeLib cmsys cmexpat cmzlib cmtar)
2002-08-29 00:33:38 +04:00
IF (UNIX)
2005-01-19 01:29:25 +03:00
TARGET_LINK_LIBRARIES(complex ${CMAKE_DL_LIBS})
2002-08-29 00:33:38 +04:00
ELSE(UNIX)
IF (NOT BORLAND)
IF(NOT MINGW)
TARGET_LINK_LIBRARIES(complex rpcrt4.lib)
ENDIF(NOT MINGW)
ENDIF(NOT BORLAND)
2002-08-29 00:33:38 +04:00
ENDIF (UNIX)
2002-08-22 23:58:22 +04:00
# Test pre-build/pre-link/post-build rules for an executable.
ADD_CUSTOM_COMMAND(TARGET complex PRE_BUILD
COMMAND ${CREATE_FILE_EXE}
ARGS "${Complex_BINARY_DIR}/Executable/prebuild.txt")
ADD_CUSTOM_COMMAND(TARGET complex PRE_BUILD
COMMAND ${CREATE_FILE_EXE}
ARGS "${Complex_BINARY_DIR}/Executable/prelink.txt")
ADD_CUSTOM_COMMAND(TARGET complex POST_BUILD
COMMAND ${CREATE_FILE_EXE}
ARGS "${Complex_BINARY_DIR}/Executable/postbuild.txt")
ADD_CUSTOM_COMMAND(TARGET complex POST_BUILD
COMMAND ${CMAKE_COMMAND}
ARGS -E copy
"${Complex_BINARY_DIR}/Executable/postbuild.txt"
"${Complex_BINARY_DIR}/Executable/postbuild2.txt")
SET_SOURCE_FILES_PROPERTIES(complex
COMPILE_FLAGS "-DFILE_HAS_EXTRA_COMPILE_FLAGS"
OBJECT_DEPENDS ${Complex_BINARY_DIR}/cmTestGeneratedHeader.h
)
ADD_CUSTOM_COMMAND(
TARGET complex
SOURCE ${Complex_SOURCE_DIR}/cmTestGeneratedHeader.h.in
COMMAND ${CMAKE_COMMAND}
ARGS -E copy ${Complex_SOURCE_DIR}/cmTestGeneratedHeader.h.in
${Complex_BINARY_DIR}/cmTestGeneratedHeader.h
OUTPUTS ${Complex_BINARY_DIR}/cmTestGeneratedHeader.h
DEPENDS ${CMAKE_COMMAND}
)
2002-01-20 08:12:27 +03:00
#
# Output the files required by 'complex' to a file.
#
2002-01-22 21:30:06 +03:00
# This test has been moved to the 'required' subdir so that it
# has no side-effects on the current Makefile (duplicated source file
# due to source list expansion done twice).
#
2005-06-08 20:26:32 +04:00
ADD_SUBDIRECTORY(Temp)
2002-01-20 08:12:27 +03:00
2002-01-19 04:32:06 +03:00
#
# Extra coverage.Not used.
2002-01-19 04:32:06 +03:00
#
2002-01-19 03:21:43 +03:00
INSTALL_TARGETS(/tmp complex)
INSTALL_PROGRAMS(/tmp complex)
2002-04-22 19:51:26 +04:00
CONFIGURE_FILE(
${Complex_SOURCE_DIR}/Executable/cmVersion.h.in
${Complex_BINARY_DIR}/cmVersion.h)
SOURCE_GROUP(A_GROUP ".cxx")
2003-08-08 00:07:23 +04:00
SOURCE_GROUP(B_GROUP REGULAR_EXPRESSION "cxx")
SOURCE_GROUP(C_GROUP FILES complex.cxx)
FILE(WRITE ${Complex_BINARY_DIR}/A/libA.a "test")
FILE(WRITE ${Complex_BINARY_DIR}/A/libC.a "test")
FILE(WRITE ${Complex_BINARY_DIR}/B/libB.a "test")
FILE(WRITE ${Complex_BINARY_DIR}/B/libA.a "test")
FILE(WRITE ${Complex_BINARY_DIR}/C/libC.a "test")
FILE(WRITE ${Complex_BINARY_DIR}/C/libB.a "test")