comparison libcommon/CMakeLists.txt @ 0:8991989c4708

Initial import
author David Demelier <markand@malikania.fr>
date Tue, 22 Mar 2016 18:26:05 +0100
parents
children 67edc8b3e5e9
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/Application.h
22 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Directory.h
23 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Game.h
24 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/ElapsedTimer.h
25 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Game.h
26 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Hash.h
27 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Id.h
28 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Js.h
29 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Json.h
30 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/ResourcesLoader.h
31 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/ResourcesLocator.h
32 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Util.h
33 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Sockets.h
34 )
35
36 set(
37 SOURCES
38 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Application.cpp
39 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Directory.cpp
40 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/ElapsedTimer.cpp
41 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Hash.cpp
42 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Js.cpp
43 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Json.cpp
44 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/ResourcesLoader.cpp
45 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/ResourcesLocator.cpp
46 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Util.cpp
47 ${CMAKE_CURRENT_SOURCE_DIR}/malikania/Sockets.cpp
48 )
49
50 if (WITH_BACKEND_SDL)
51 find_package(SDL2 REQUIRED)
52
53 list(APPEND HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/malikania/backend/sdl/CommonSdl.h)
54 list(APPEND SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/malikania/backend/sdl/CommonSdl.cpp)
55 list(APPEND INCLUDES ${SDL2_INCLUDE_DIRS})
56 list(APPEND LIBRARIES ${SDL2_LIBRARIES})
57 endif ()
58
59 if (WIN32)
60 list(APPEND LIBRARIES ws2_32)
61 endif ()
62
63 malikania_create_library(
64 PROJECT libcommon
65 TARGET libcommon
66 SOURCES ${HEADERS} ${SOURCES}
67 FLAGS "MALIKANIA_COMMON_BUILD"
68 PUBLIC_INCLUDES
69 ${CMAKE_CURRENT_SOURCE_DIR}
70 ${Jansson_INCLUDE_DIRS}
71 ${ZIP_INCLUDE_DIRS}
72 ${OPENSSL_INCLUDE_DIR}
73 ${INCLUDES}
74 LIBRARIES
75 extern-jansson
76 ${LIBRARIES}
77 ${Jansson_LIBRARIES}
78 ${ZIP_LIBRARIES}
79 ${OPENSSL_LIBRARIES}
80 )
81
82 set_target_properties(libcommon PROPERTIES PREFIX "")