You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.2 KiB

  1. cmake_minimum_required(VERSION 2.8.11)
  2. project(ROSACE_Posix C)
  3. if (NOT CMAKE_BUILD_TYPE)
  4. message(STATUS "No build type selected, default to Debug")
  5. set(CMAKE_BUILD_TYPE "Debug")
  6. endif(NOT CMAKE_BUILD_TYPE)
  7. set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Werror")
  8. # Find external libraries
  9. find_library(MATH_LIBRARY m)
  10. find_package(Threads REQUIRED)
  11. add_executable(rosace_posix
  12. rosace.c
  13. io.c io.h
  14. assemblage_includes.c assemblage_includes.h
  15. assemblage.c assemblage.h
  16. threads.c threads.h
  17. types.h)
  18. add_executable(rosace_posix-float
  19. rosace.c
  20. io.c io.h
  21. assemblage_includes.c assemblage_includes.h
  22. assemblage.c assemblage.h
  23. threads.c threads.h
  24. types.h)
  25. set_target_properties(rosace_posix-float
  26. PROPERTIES COMPILE_FLAGS -DUSE_FLOAT)
  27. if(THREADS_HAVE_PTHREAD_ARG)
  28. target_compile_options(PUBLIC rosace_posix "-pthread")
  29. target_compile_options(PUBLIC rosace_posix-float "-pthread")
  30. endif()
  31. if(CMAKE_THREAD_LIBS_INIT)
  32. target_link_libraries(rosace_posix "${CMAKE_THREAD_LIBS_INIT}")
  33. target_link_libraries(rosace_posix-float "${CMAKE_THREAD_LIBS_INIT}")
  34. endif()
  35. target_link_libraries(rosace_posix ${MATH_LIBRARY})
  36. target_link_libraries(rosace_posix-float ${MATH_LIBRARY})