skunkworks-c/CMakeLists.txt

31 lines
1.3 KiB
CMake
Raw Normal View History

2022-12-19 21:59:02 +01:00
# CMakeList.txt : Top-level CMake project file, do global configuration
# and include sub-projects here.
#
cmake_minimum_required (VERSION 3.8)
2022-12-20 04:41:03 +01:00
set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
add_subdirectory(lib/glfw-3.3.8)
project ("glew")
add_library(glew STATIC "lib/glew-2.1.0/src/glew.c" "lib/glew-2.1.0/include/GL/glew.h")
target_link_libraries(glew opengl32)
target_include_directories(glew PRIVATE lib/glew-2.1.0/include)
set_target_properties(glew PROPERTIES C_STANDARD 11 C_STANDARD_REQUIRED YES C_EXTENSIONS YES)
set_target_properties(glew PROPERTIES COMPILE_FLAGS "-Wno-everything")
target_compile_definitions(glew PUBLIC GLEW_STATIC)
2022-12-19 21:59:02 +01:00
project ("skunkworks")
add_executable (skunkworks "src/skunkworks.c" "src/skunkworks.h" "src/test.c")
2022-12-20 04:41:03 +01:00
target_link_libraries(skunkworks glfw glew)
target_include_directories(skunkworks PRIVATE lib/glfw-3.8.8/include lib/glew-2.1.0/include)
2022-12-19 21:59:02 +01:00
set_target_properties(skunkworks PROPERTIES C_STANDARD 90 C_STANDARD_REQUIRED YES C_EXTENSIONS NO)
2022-12-20 04:41:03 +01:00
set_target_properties(skunkworks PROPERTIES COMPILE_FLAGS "-Wall -Werror -pedantic")
add_custom_command(TARGET skunkworks POST_BUILD
COMMAND $<$<CONFIG:release>:llvm-strip>
ARGS --strip-all $<TARGET_FILE:skunkworks>)