comparison libclient/CMakeLists.txt @ 0:8991989c4708

Initial import
author David Demelier <markand@malikania.fr>
date Tue, 22 Mar 2016 18:26:05 +0100
parents
children 2418900a1cc5
comparison
equal deleted inserted replaced
-1:000000000000 0:8991989c4708
1 #
2 # CMakeLists.txt -- CMake build system for malikania
3 #
4 # Copyright (c) 2013-2016 Malikania Authors
5 #
6 # Permission to use, copy, modify, and/or distribute this software for any
7 # purpose with or without fee is hereby granted, provided that the above
8 # copyright notice and this permission notice appear in all copies.
9 #
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 #
18
19 set(
20 HEADERS
21 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Animation.h
22 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Animator.h
23 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/ClientResourcesLoader.h
24 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Color.h
25 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Font.h
26 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Image.h
27 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Label.h
28 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Line.h
29 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Point.h
30 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Rectangle.h
31 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Size.h
32 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Sprite.h
33 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Window.h
34 )
35
36 set(
37 SOURCES
38 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Animator.cpp
39 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/ClientResourcesLoader.cpp
40 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Color.cpp
41 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Label.cpp
42 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Sprite.cpp
43 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Window.cpp
44 )
45
46 if (WITH_BACKEND_SDL)
47 list(
48 APPEND
49 HEADERS
50 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/backend/sdl/ImageSdl.h
51 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/backend/sdl/WindowSdl.h
52 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/backend/sdl/FontSdl.h
53 )
54 list(
55 APPEND
56 SOURCES
57 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/backend/sdl/ImageSdl.cpp
58 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/backend/sdl/WindowSdl.cpp
59 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/backend/sdl/FontSdl.cpp
60 )
61 list(APPEND DEFINITIONS SDL_MAIN_HANDLED)
62 endif ()
63
64 find_package(SDL2 REQUIRED)
65 find_package(SDL2_image REQUIRED)
66 find_package(SDL2_ttf REQUIRED)
67
68 malikania_create_library(
69 PROJECT libclient
70 TARGET libclient
71 SOURCES ${HEADERS} ${SOURCES}
72 PUBLIC_INCLUDES
73 ${CMAKE_CURRENT_SOURCE_DIR}
74 ${SDL2_INCLUDE_DIRS}
75 ${SDL2_IMAGE_INCLUDE_DIRS}
76 ${SDL2_TTF_INCLUDE_DIRS}
77 LIBRARIES
78 libcommon
79 ${SDL2_LIBRARIES}
80 ${SDL2_IMAGE_LIBRARIES}
81 ${SDL2_TTF_LIBRARIES}
82 )
83
84 target_compile_definitions(libclient PUBLIC ${DEFINITIONS})