diff options
Diffstat (limited to 'DevIL/src-IL/CMakeLists.txt')
-rw-r--r-- | DevIL/src-IL/CMakeLists.txt | 48 |
1 files changed, 39 insertions, 9 deletions
diff --git a/DevIL/src-IL/CMakeLists.txt b/DevIL/src-IL/CMakeLists.txt index 433f3b7b..0941ea1d 100644 --- a/DevIL/src-IL/CMakeLists.txt +++ b/DevIL/src-IL/CMakeLists.txt @@ -13,6 +13,18 @@ file(GLOB DevIL_INC include/*.h ../include/config.h ../include/IL/devil_internal file(GLOB DevIL_RSRC) file(GLOB DevIL_TXT) +# From http://stackoverflow.com/questions/17317350/compiling-32-and-64-bit +MESSAGE(" ") +if( CMAKE_SIZEOF_VOID_P EQUAL 8 ) + MESSAGE( "64 bit compiler detected" ) + SET( EX_PLATFORM 64 ) + SET( EX_PLATFORM_NAME "x64" ) +else( CMAKE_SIZEOF_VOID_P EQUAL 8 ) + MESSAGE( "32 bit compiler detected" ) + SET( EX_PLATFORM 32 ) + SET( EX_PLATFORM_NAME "x86" ) +endif( CMAKE_SIZEOF_VOID_P EQUAL 8 ) + include_directories( include ../include ) # for windows add the .def and .rc files to the source list @@ -133,15 +145,33 @@ else(SQUISH_FOUND) set(IL_USE_DXTC_SQUISH 0) endif(SQUISH_FOUND) -if(UNICODE) - set_target_properties(IL PROPERTIES RUNTIME_OUTPUT_DIRECTORY "../lib/unicode") - set_target_properties(IL PROPERTIES LIBRARY_OUTPUT_DIRECTORY "../lib/unicode") - set_target_properties(IL PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "../lib/unicode") -else(UNICODE) - set_target_properties(IL PROPERTIES RUNTIME_OUTPUT_DIRECTORY "../lib") - set_target_properties(IL PROPERTIES LIBRARY_OUTPUT_DIRECTORY "../lib") - set_target_properties(IL PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "../lib") -endif(UNICODE) +if(EX_PLATFORM EQUAL 64) + if(UNICODE) + set_target_properties(IL PROPERTIES RUNTIME_OUTPUT_DIRECTORY "../lib/x64/unicode") + set_target_properties(IL PROPERTIES LIBRARY_OUTPUT_DIRECTORY "../lib/x64/unicode") + set_target_properties(IL PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "../lib/x64/unicode") + else(UNICODE) + set_target_properties(IL PROPERTIES RUNTIME_OUTPUT_DIRECTORY "../lib/x64") + set_target_properties(IL PROPERTIES LIBRARY_OUTPUT_DIRECTORY "../lib/x64") + set_target_properties(IL PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "../lib/x64") + endif(UNICODE) +else(EX_PLATFORM EQUAL 64) + if(UNICODE) + set_target_properties(IL PROPERTIES RUNTIME_OUTPUT_DIRECTORY "../lib/x86/unicode") + set_target_properties(IL PROPERTIES LIBRARY_OUTPUT_DIRECTORY "../lib/x86/unicode") + set_target_properties(IL PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "../lib/x86/unicode") + else(UNICODE) + set_target_properties(IL PROPERTIES RUNTIME_OUTPUT_DIRECTORY "../lib/x86") + set_target_properties(IL PROPERTIES LIBRARY_OUTPUT_DIRECTORY "../lib/x86") + set_target_properties(IL PROPERTIES ARCHIVE_OUTPUT_DIRECTORY "../lib/x86") + endif(UNICODE) +endif(EX_PLATFORM EQUAL 64) + +set(OUTFOLDER "../lib") +if(EX_PLATFORM EQUAL 64) + set(OUTFOLDER ${OUTFOLDER}) +else(EX_PLATFORM EQUAL 64) +endif(EX_PLATFORM EQUAL 64) if(WIN32) # Linux uses libIL.so, libILU.so, and libILUT.so, but Windows uses |