Fixed nmake parameter.

Disabled debug_* targets for MSVC_IDE (they already exist).
Removed the make usage message for MSVC_IDE.
This commit is contained in:
Hauke Heibel 2009-10-09 14:09:25 +02:00
parent 81a70cef5c
commit e5bf72679c
3 changed files with 27 additions and 9 deletions

View File

@ -142,6 +142,7 @@ if(EIGEN_BUILD_BTL)
endif(EIGEN_BUILD_BTL) endif(EIGEN_BUILD_BTL)
ei_testing_print_summary() ei_testing_print_summary()
if(NOT MSVC_IDE)
message("") message("")
message("Configured Eigen ${EIGEN_VERSION_NUMBER}") message("Configured Eigen ${EIGEN_VERSION_NUMBER}")
message("You can now do the following:") message("You can now do the following:")
@ -158,3 +159,4 @@ message("make debug_qr | Build a test with full debug info. To run it: test/debu
message("make blas | Build BLAS library (not the same thing as Eigen)") message("make blas | Build BLAS library (not the same thing as Eigen)")
message("make doc | Generate the API documentation, requires Doxygen & LaTeX") message("make doc | Generate the API documentation, requires Doxygen & LaTeX")
message("--------------+----------------------------------------------------------------") message("--------------+----------------------------------------------------------------")
endif(NOT MSVC_IDE)

View File

@ -40,18 +40,24 @@ endmacro(ei_add_property)
macro(ei_add_test testname) macro(ei_add_test testname)
set(targetname test_${testname}) set(targetname test_${testname})
set(debug_targetname debug_${testname}) if(NOT MSVC_IDE)
set(debug_targetname debug_${testname})
endif(NOT MSVC_IDE)
set(filename ${testname}.cpp) set(filename ${testname}.cpp)
add_executable(${targetname} ${filename}) add_executable(${targetname} ${filename})
add_dependencies(btest ${targetname}) add_dependencies(btest ${targetname})
add_executable(${debug_targetname} EXCLUDE_FROM_ALL ${filename}) if(NOT MSVC_IDE)
add_executable(${debug_targetname} EXCLUDE_FROM_ALL ${filename})
endif(NOT MSVC_IDE)
if(NOT EIGEN_NO_ASSERTION_CHECKING) if(NOT EIGEN_NO_ASSERTION_CHECKING)
if(MSVC) if(MSVC)
set_target_properties(${targetname} PROPERTIES COMPILE_FLAGS "/EHsc") set_target_properties(${targetname} PROPERTIES COMPILE_FLAGS "/EHsc")
set_target_properties(${debug_targetname} PROPERTIES COMPILE_FLAGS "/EHsc") if(NOT MSVC_IDE)
set_target_properties(${debug_targetname} PROPERTIES COMPILE_FLAGS "/EHsc")
endif(NOT MSVC_IDE)
else(MSVC) else(MSVC)
set_target_properties(${targetname} PROPERTIES COMPILE_FLAGS "-fexceptions") set_target_properties(${targetname} PROPERTIES COMPILE_FLAGS "-fexceptions")
set_target_properties(${debug_targetname} PROPERTIES COMPILE_FLAGS "-fexceptions") set_target_properties(${debug_targetname} PROPERTIES COMPILE_FLAGS "-fexceptions")
@ -60,13 +66,17 @@ macro(ei_add_test testname)
option(EIGEN_DEBUG_ASSERTS "Enable debuging of assertions" OFF) option(EIGEN_DEBUG_ASSERTS "Enable debuging of assertions" OFF)
if(EIGEN_DEBUG_ASSERTS) if(EIGEN_DEBUG_ASSERTS)
ei_add_target_property(${targetname} COMPILE_FLAGS "-DEIGEN_DEBUG_ASSERTS=1") ei_add_target_property(${targetname} COMPILE_FLAGS "-DEIGEN_DEBUG_ASSERTS=1")
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "-DEIGEN_DEBUG_ASSERTS=1") if(NOT MSVC_IDE)
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "-DEIGEN_DEBUG_ASSERTS=1")
endif(NOT MSVC_IDE)
endif(EIGEN_DEBUG_ASSERTS) endif(EIGEN_DEBUG_ASSERTS)
else(NOT EIGEN_NO_ASSERTION_CHECKING) else(NOT EIGEN_NO_ASSERTION_CHECKING)
ei_add_target_property(${targetname} COMPILE_FLAGS "-DEIGEN_NO_ASSERTION_CHECKING=1") ei_add_target_property(${targetname} COMPILE_FLAGS "-DEIGEN_NO_ASSERTION_CHECKING=1")
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "-DEIGEN_NO_ASSERTION_CHECKING=1") if(NOT MSVC_IDE)
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "-DEIGEN_NO_ASSERTION_CHECKING=1")
endif(NOT MSVC_IDE)
endif(NOT EIGEN_NO_ASSERTION_CHECKING) endif(NOT EIGEN_NO_ASSERTION_CHECKING)
@ -80,11 +90,15 @@ macro(ei_add_test testname)
# O0 is in principle redundant here, but doesn't hurt # O0 is in principle redundant here, but doesn't hurt
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "-O0 -g3") ei_add_target_property(${debug_targetname} COMPILE_FLAGS "-O0 -g3")
elseif(MSVC) elseif(MSVC)
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "/Od /Zi") if(NOT MSVC_IDE)
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "/Od /Zi")
endif(NOT MSVC_IDE)
endif(CMAKE_COMPILER_IS_GNUCXX) endif(CMAKE_COMPILER_IS_GNUCXX)
ei_add_target_property(${targetname} COMPILE_FLAGS "-DEIGEN_TEST_FUNC=${testname}") ei_add_target_property(${targetname} COMPILE_FLAGS "-DEIGEN_TEST_FUNC=${testname}")
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "-DEIGEN_TEST_FUNC=${testname}") if(NOT MSVC_IDE)
ei_add_target_property(${debug_targetname} COMPILE_FLAGS "-DEIGEN_TEST_FUNC=${testname}")
endif(NOT MSVC_IDE)
target_link_libraries(${targetname} ${EXTERNAL_LIBS}) target_link_libraries(${targetname} ${EXTERNAL_LIBS})
if(${ARGC} GREATER 2) if(${ARGC} GREATER 2)
@ -92,7 +106,9 @@ macro(ei_add_test testname)
string(LENGTH "${ARGV2_stripped}" ARGV2_stripped_length) string(LENGTH "${ARGV2_stripped}" ARGV2_stripped_length)
if(${ARGV2_stripped_length} GREATER 0) if(${ARGV2_stripped_length} GREATER 0)
target_link_libraries(${targetname} ${ARGV2}) target_link_libraries(${targetname} ${ARGV2})
target_link_libraries(${debug_targetname} ${ARGV2}) if(NOT MSVC_IDE)
target_link_libraries(${debug_targetname} ${ARGV2})
endif(NOT MSVC_IDE)
endif(${ARGV2_stripped_length} GREATER 0) endif(${ARGV2_stripped_length} GREATER 0)
endif(${ARGC} GREATER 2) endif(${ARGC} GREATER 2)

View File

@ -175,7 +175,7 @@ if(WIN32 AND NOT UNIX)
else(EIGEN_GENERATOR_TYPE) else(EIGEN_GENERATOR_TYPE)
set(CTEST_CMAKE_COMMAND "${CTEST_CMAKE_COMMAND} -G \"NMake Makefiles\" -DCMAKE_MAKE_PROGRAM=nmake") set(CTEST_CMAKE_COMMAND "${CTEST_CMAKE_COMMAND} -G \"NMake Makefiles\" -DCMAKE_MAKE_PROGRAM=nmake")
SET (CTEST_INITIAL_CACHE " SET (CTEST_INITIAL_CACHE "
MAKECOMMAND:STRING=nmake -i MAKECOMMAND:STRING=nmake /i
CMAKE_MAKE_PROGRAM:FILEPATH=nmake CMAKE_MAKE_PROGRAM:FILEPATH=nmake
CMAKE_GENERATOR:INTERNAL=NMake Makefiles CMAKE_GENERATOR:INTERNAL=NMake Makefiles
CMAKE_BUILD_TYPE:STRING=Release CMAKE_BUILD_TYPE:STRING=Release