CMakeLists.txt 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. cmake_minimum_required (VERSION 2.6)
  2. project(IncludeDirectories)
  3. file(WRITE ${CMAKE_BINARY_DIR}/Flags/Flags.h
  4. "//Flags.h
  5. ")
  6. file(WRITE ${CMAKE_BINARY_DIR}/IncDir/IncDir.h
  7. "//IncDir.h
  8. ")
  9. file(WRITE ${CMAKE_BINARY_DIR}/SrcProp/SrcProp.h
  10. "//SrcProp.h
  11. ")
  12. file(WRITE ${CMAKE_BINARY_DIR}/TarProp/TarProp.h
  13. "//TarProp.h
  14. ")
  15. # default to testing with full path
  16. # some compilers can not handle the escape for directories
  17. # with spaces in them.
  18. set(USE_FULLPATH TRUE)
  19. if(WATCOM OR MSVC60)
  20. set(USE_FULLPATH FALSE)
  21. endif()
  22. if(USE_FULLPATH)
  23. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} \"-I${CMAKE_BINARY_DIR}/Flags\"")
  24. else()
  25. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -IFlags")
  26. endif()
  27. include_directories(${CMAKE_BINARY_DIR}/IncDir)
  28. if(USE_FULLPATH)
  29. set_source_files_properties(main.cpp PROPERTIES COMPILE_FLAGS
  30. "\"-I${CMAKE_BINARY_DIR}/SrcProp\"")
  31. else()
  32. set_source_files_properties(main.cpp PROPERTIES COMPILE_FLAGS
  33. "-ISrcProp")
  34. endif()
  35. add_executable(IncludeDirectories main.cpp)
  36. if(USE_FULLPATH)
  37. set_target_properties(IncludeDirectories
  38. PROPERTIES COMPILE_FLAGS "\"-I${CMAKE_BINARY_DIR}/TarProp\"")
  39. else()
  40. set_target_properties(IncludeDirectories
  41. PROPERTIES COMPILE_FLAGS "-ITarProp")
  42. endif()