add option ASSIMP_HEADERCHECK (defaults to off):
when enabled it adds the target "headercheck" to verify if all headers compilepull/536/head
parent
873ae5db3f
commit
7e9c48e1ae
|
@ -59,3 +59,5 @@ target_link_libraries( unit assimp
|
|||
debug ${GTEST_DEBUG_LIBRARIES}
|
||||
optimized ${GTEST_RELEASE_LIBRARIES}
|
||||
)
|
||||
add_subdirectory(headercheck)
|
||||
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
src-generated/
|
|
@ -0,0 +1,37 @@
|
|||
# This file is part of the Spring engine (GPL v2 or later), see LICENSE.html
|
||||
|
||||
OPTION(ASSIMP_HEADERCHECK "adds the target headercheck which compiles every header file, default disabled because it adds many targets" OFF)
|
||||
if(ASSIMP_HEADERCHECK)
|
||||
include_directories(
|
||||
${Assimp_SOURCE_DIR}/code/BoostWorkaround
|
||||
)
|
||||
|
||||
FILE(GLOB_RECURSE headers
|
||||
${Assimp_SOURCE_DIR}/code/*.h
|
||||
)
|
||||
|
||||
set(headerchecklibs "")
|
||||
|
||||
FOREACH( HEADER ${headers} )
|
||||
|
||||
#pseudo unique name
|
||||
string(REPLACE "${Spring_SOURCE_DIR}" "" PLIST "${HEADER}")
|
||||
string(REPLACE "/" ";" PLIST "${PLIST}")
|
||||
SET(TEST_NAME "headercheck_")
|
||||
|
||||
foreach(name ${PLIST})
|
||||
SET(TEST_NAME "${TEST_NAME}_${name}")
|
||||
endforeach()
|
||||
|
||||
SET(TEST_FILE ${CMAKE_CURRENT_BINARY_DIR}/src-generated/${TEST_NAME}.cpp)
|
||||
|
||||
# create test file
|
||||
configure_file( headercheck.cpp.in ${TEST_FILE} )
|
||||
# add library
|
||||
add_library( ${TEST_NAME} EXCLUDE_FROM_ALL ${TEST_FILE} )
|
||||
list(APPEND headerchecklibs ${TEST_NAME})
|
||||
ENDFOREACH( HEADER )
|
||||
|
||||
add_custom_target(headercheck DEPENDS ${headerchecklibs})
|
||||
|
||||
endif()
|
|
@ -0,0 +1,6 @@
|
|||
#include "@HEADER@"
|
||||
|
||||
int main(int,char**)
|
||||
{
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue