Mercurial > malikania
diff libclient/CMakeLists.txt @ 49:2804ae55c70f
CMake: big cleanup, closes #598
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 09 Dec 2016 13:28:45 +0100 |
parents | 3be179ba3226 |
children | 4bc4732fa1dd |
line wrap: on
line diff
--- a/libclient/CMakeLists.txt Thu Dec 08 20:19:02 2016 +0100 +++ b/libclient/CMakeLists.txt Fri Dec 09 13:28:45 2016 +0100 @@ -16,56 +16,68 @@ # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # +project(libclient) + set( HEADERS - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/animation.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/animator.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/color.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/font.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/image.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/line.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/point.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/rectangle.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/size.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/sprite.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/window.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/${WITH_BACKEND_DIRECTORY}/font_backend.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/${WITH_BACKEND_DIRECTORY}/image_backend.hpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/${WITH_BACKEND_DIRECTORY}/window_backend.hpp + ${libclient_SOURCE_DIR}/malikania/animation.hpp + ${libclient_SOURCE_DIR}/malikania/animator.hpp + ${libclient_SOURCE_DIR}/malikania/color.hpp + ${libclient_SOURCE_DIR}/malikania/font.hpp + ${libclient_SOURCE_DIR}/malikania/image.hpp + ${libclient_SOURCE_DIR}/malikania/line.hpp + ${libclient_SOURCE_DIR}/malikania/point.hpp + ${libclient_SOURCE_DIR}/malikania/rectangle.hpp + ${libclient_SOURCE_DIR}/malikania/size.hpp + ${libclient_SOURCE_DIR}/malikania/sprite.hpp + ${libclient_SOURCE_DIR}/malikania/window.hpp + ${libclient_SOURCE_DIR}/malikania/${WITH_BACKEND_DIR}/font_backend.hpp + ${libclient_SOURCE_DIR}/malikania/${WITH_BACKEND_DIR}/image_backend.hpp + ${libclient_SOURCE_DIR}/malikania/${WITH_BACKEND_DIR}/window_backend.hpp ) set( SOURCES - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/animator.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/client_resources_loader.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/color.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/font.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/image.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/sprite.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/window.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/${WITH_BACKEND_DIRECTORY}/font_backend.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/${WITH_BACKEND_DIRECTORY}/image_backend.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/malikania/${WITH_BACKEND_DIRECTORY}/window_backend.cpp + ${libclient_SOURCE_DIR}/malikania/animator.cpp + ${libclient_SOURCE_DIR}/malikania/client_resources_loader.cpp + ${libclient_SOURCE_DIR}/malikania/color.cpp + ${libclient_SOURCE_DIR}/malikania/font.cpp + ${libclient_SOURCE_DIR}/malikania/image.cpp + ${libclient_SOURCE_DIR}/malikania/sprite.cpp + ${libclient_SOURCE_DIR}/malikania/window.cpp + ${libclient_SOURCE_DIR}/malikania/${WITH_BACKEND_DIR}/font_backend.cpp + ${libclient_SOURCE_DIR}/malikania/${WITH_BACKEND_DIR}/image_backend.cpp + ${libclient_SOURCE_DIR}/malikania/${WITH_BACKEND_DIR}/window_backend.cpp ) -find_package(SDL2 REQUIRED) -find_package(SDL2_image REQUIRED) -find_package(SDL2_ttf REQUIRED) +if (WITH_BACKEND MATCHES "SDL") + find_package(SDL2 REQUIRED) + find_package(SDL2_image REQUIRED) + find_package(SDL2_ttf REQUIRED) -malikania_create_library( + list( + APPEND + INCLUDES + ${SDL2_INCLUDE_DIRS} + ${SDL2_IMAGE_INCLUDE_DIRS} + ${SDL2_TTF_INCLUDE_DIRS} + ) + list( + APPEND + LIBRARIES + ${SDL2_LIBRARIES} + ${SDL2_IMAGE_LIBRARIES} + ${SDL2_TTF_LIBRARIES} + ) +endif () + +malikania_define_library( PROJECT libclient TARGET libclient SOURCES ${HEADERS} ${SOURCES} PUBLIC_INCLUDES - $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/malikania> - ${SDL2_INCLUDE_DIRS} - ${SDL2_IMAGE_INCLUDE_DIRS} - ${SDL2_TTF_INCLUDE_DIRS} - LIBRARIES - libcommon - ${SDL2_LIBRARIES} - ${SDL2_IMAGE_LIBRARIES} - ${SDL2_TTF_LIBRARIES} + $<BUILD_INTERFACE:${libclient_SOURCE_DIR}/malikania/${WITH_BACKEND_DIR}> + $<BUILD_INTERFACE:${libclient_SOURCE_DIR}/malikania> + ${INCLUDES} + LIBRARIES libcommon ${LIBRARIES} ) - -target_compile_definitions(libclient PUBLIC ${DEFINITIONS})