From 977f0318b76081e8dfa492bd5ffe19a0409f7a25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-Philippe=20Bruy=C3=A8re?= Date: Thu, 17 Aug 2017 20:40:52 +0200 Subject: [PATCH] make base as library --- CMakeLists.txt | 18 ++++++++++-------- base/CMakeLists.txt | 4 ++++ 2 files changed, 14 insertions(+), 8 deletions(-) create mode 100644 base/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 02a7a06e..bd59f0c1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -82,12 +82,12 @@ endif(CMAKE_COMPILER_IS_GNUCXX) add_definitions(-D_CRT_SECURE_NO_WARNINGS) add_definitions(-std=c++11) -file(GLOB SOURCE *.cpp base/*.cpp) +file(GLOB SOURCE *.cpp ) # Function for building single example function(buildExample EXAMPLE_NAME) # Main - file(GLOB SOURCE *.cpp base/*.cpp ${EXAMPLE_NAME}/*.cpp) + file(GLOB SOURCE *.cpp ${BASE_HEADERS} ${EXAMPLE_NAME}/*.cpp) SET(MAIN_CPP ${EXAMPLE_NAME}/${EXAMPLE_NAME}.cpp) if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${EXAMPLE_NAME}/main.cpp) SET(MAIN_CPP ${EXAMPLE_NAME}/main.cpp) @@ -101,12 +101,12 @@ function(buildExample EXAMPLE_NAME) set(SHADER_DIR data/shaders/${EXAMPLE_NAME}) file(GLOB SHADERS "${SHADER_DIR}/*.vert" "${SHADER_DIR}/*.frag" "${SHADER_DIR}/*.geom" "${SHADER_DIR}/*.tesc" "${SHADER_DIR}/*.tese") source_group("Shaders" FILES ${SHADERS}) - if(WIN32) + if(WIN32) add_executable(${EXAMPLE_NAME} WIN32 ${MAIN_CPP} ${SOURCE} ${SHADERS}) - target_link_libraries(${EXAMPLE_NAME} ${Vulkan_LIBRARY} ${ASSIMP_LIBRARIES} ${WINLIBS}) + target_link_libraries(${EXAMPLE_NAME} base ${Vulkan_LIBRARY} ${ASSIMP_LIBRARIES} ${WINLIBS}) else(WIN32) add_executable(${EXAMPLE_NAME} ${MAIN_CPP} ${SOURCE} ${SHADERS}) - target_link_libraries(${EXAMPLE_NAME} ${Vulkan_LIBRARY} ${ASSIMP_LIBRARIES} ${WAYLAND_CLIENT_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) + target_link_libraries(${EXAMPLE_NAME} base ) endif(WIN32) endfunction(buildExample) @@ -125,12 +125,14 @@ ENDIF(MSVC) IF(WIN32) # Nothing here (yet) ELSE(WIN32) - link_libraries(${XCB_LIBRARIES} ${Vulkan_LIBRARY}) + link_libraries(${XCB_LIBRARIES} ${Vulkan_LIBRARY} ${Vulkan_LIBRARY} ${ASSIMP_LIBRARIES} ${WAYLAND_CLIENT_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) ENDIF(WIN32) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_SOURCE_DIR}/bin/") -set(EXAMPLES +add_subdirectory(base) + +set(EXAMPLES bloom computecloth computecullandlod @@ -148,7 +150,7 @@ set(EXAMPLES geometryshader hdr imgui - indirectdraw + indirectdraw instancing mesh multisampling diff --git a/base/CMakeLists.txt b/base/CMakeLists.txt new file mode 100644 index 00000000..bf8b324d --- /dev/null +++ b/base/CMakeLists.txt @@ -0,0 +1,4 @@ +file(GLOB BASE_SRC *.cpp) +file(GLOB BASE_HEADERS *.hpp) + +add_library(base SHARED ${BASE_SRC})