1 FILE(GLOB SRC *.cpp *.h config_file/*.cpp config_file/*.h)
2 FILE(GLOB HEADERS ../../include/nel/misc/*.h)
5 cdb.cpp ../../include/nel/misc/cdb.h
6 cdb_*.cpp ../../include/nel/misc/cdb_*.h
10 events.cpp ../../include/nel/misc/events.h
11 event_*.cpp ../../include/nel/misc/event_*.h
12 *_event_*.cpp ../../include/nel/misc/*_event_*.h
15 FILE(GLOB NLMISC_DEBUG
16 debug.cpp ../../include/nel/misc/debug.h
17 report.cpp ../../include/nel/misc/report.h
18 log.cpp ../../include/nel/misc/log.h
21 FILE(GLOB NLMISC_FILESYSTEM
22 async_file_manager.cpp ../../include/nel/misc/async_file_manager.h
23 file.cpp ../../include/nel/misc/file.h
24 path.cpp ../../include/nel/misc/path.h
25 big_file.cpp ../../include/nel/misc/big_file.h
26 *_xml.cpp ../../include/nel/misc/*_xml.h
27 xml_*.cpp ../../include/nel/misc/xml_*.h
28 streamed_*.cpp ../../include/nel/misc/streamed_*.h
29 seven_zip.cpp ../../include/nel/misc/seven_zip.h
32 FILE(GLOB NLMISC_STREAM
33 *_stream.cpp ../../include/nel/misc/*_stream.h
34 stream.cpp ../../include/nel/misc/stream.h
35 stream_*.cpp ../../include/nel/misc/stream_*.h
38 FILE(GLOB NLMISC_DISPLAYER
39 displayer.cpp ../../include/nel/misc/displayer.h
40 *_displayer.cpp ../../include/nel/misc/*_displayer.h
44 plane.cpp ../../include/nel/misc/plane.h
45 ../../include/nel/misc/plane_inline.h
46 polygon.cpp ../../include/nel/misc/polygon.h
47 ../../include/nel/misc/quad.h
48 quat.cpp ../../include/nel/misc/quat.h
49 rect.cpp ../../include/nel/misc/rect.h
50 rgba.cpp ../../include/nel/misc/rgba.h
51 triangle.cpp ../../include/nel/misc/triangle.h
52 ../../include/nel/misc/uv.h
53 vector*.cpp ../../include/nel/misc/vector*.h
54 aabbox.cpp ../../include/nel/misc/aabbox.h
55 algo.cpp ../../include/nel/misc/algo.h
56 bsphere.cpp ../../include/nel/misc/bsphere.h
57 fast_floor.cpp ../../include/nel/misc/fast_floor.h
58 ../../include/nel/misc/geom_ext.h
59 line.cpp ../../include/nel/misc/line.h
60 matrix.cpp ../../include/nel/misc/matrix.h
63 FILE(GLOB NLMISC_PLATFORM
64 *_nl.cpp ../../include/nel/misc/*_nl.h
65 common.cpp ../../include/nel/misc/common.h
66 app_context.cpp ../../include/nel/misc/app_context.h
67 check_fpu.cpp ../../include/nel/misc/check_fpu.h
68 cpu_time_stat.cpp ../../include/nel/misc/cpu_time_stat.h
69 dummy_window.cpp ../../include/nel/misc/dummy_window.h
70 dynloadlib.cpp ../../include/nel/misc/dynloadlib.h
71 fast_mem.cpp ../../include/nel/misc/fast_mem.h
72 inter_window_msg_queue.cpp ../../include/nel/misc/inter_window_msg_queue.h
73 system_*.cpp ../../include/nel/misc/system_*.h
74 win32_util.cpp ../../include/nel/misc/win32_util.h
77 FILE(GLOB NLMISC_GENERIC
78 ../../include/nel/misc/array_2d.h
79 *_memory.cpp ../../include/nel/misc/*_memory.h
80 buf_fifo.cpp ../../include/nel/misc/buf_fifo.h
81 ../../include/nel/misc/callback.h
82 *_allocator.cpp ../../include/nel/misc/*_allocator.h
83 ../../include/nel/misc/enum_bitset.h
84 ../../include/nel/misc/fast_id_map.h
85 hierarchical_timer.cpp ../../include/nel/misc/hierarchical_timer.h
86 ../../include/nel/misc/historic.h
87 ../../include/nel/misc/mutable_container.h
88 ../../include/nel/misc/random.h
89 smart_ptr.cpp ../../include/nel/misc/smart_ptr.h
90 ../../include/nel/misc/smart_ptr_inline.h
91 ../../include/nel/misc/resource_ptr.h
92 ../../include/nel/misc/resource_ptr_inline.h
93 bit_set.cpp ../../include/nel/misc/bit_set.h
94 stop_watch.cpp ../../include/nel/misc/stop_watch.h
95 ../../include/nel/misc/twin_map.h
96 ../../include/nel/misc/object_vector.h
97 ../../include/nel/misc/singleton.h
98 speaker_listener.cpp ../../include/nel/misc/speaker_listener.h
99 ../../include/nel/misc/static_map.h
100 ../../include/nel/misc/stl_block_list.h
103 FILE(GLOB NLMISC_UTILITY
104 config_file.cpp ../../include/nel/misc/config_file.h
105 cf_*.cpp ../../include/nel/misc/cf_*.h
106 config_file/config_file.cpp config_file/config_file.h
107 config_file/cf_*.cpp config_file/cf_*.h
108 class_id.cpp ../../include/nel/misc/class_id.h
109 class_registry.cpp ../../include/nel/misc/class_registry.h
110 cmd_args.cpp ../../include/nel/misc/cmd_args.h
111 command.cpp ../../include/nel/misc/command.h
112 eid_translator.cpp ../../include/nel/misc/eid_translator.h
113 entity_id.cpp ../../include/nel/misc/entity_id.h
114 eval_num_expr.cpp ../../include/nel/misc/eval_num_expr.h
115 factory.cpp ../../include/nel/misc/factory.h
116 grid_traversal.cpp ../../include/nel/misc/grid_traversal.h
117 mouse_smoother.cpp ../../include/nel/misc/mouse_smoother.h
118 noise_value.cpp ../../include/nel/misc/noise_value.h
119 progress_callback.cpp ../../include/nel/misc/progress_callback.h
120 sheet_id.cpp ../../include/nel/misc/sheet_id.h
121 variable.cpp ../../include/nel/misc/variable.h
122 ../../include/nel/misc/value_smoother.h
125 FILE(GLOB NLMISC_STRING
126 string_*.cpp ../../include/nel/misc/string_*.h
127 ../../include/nel/misc/ucstring.h
129 sstring.cpp ../../include/nel/misc/sstring.h
132 FILE(GLOB NLMISC_I18N
133 diff_tool.cpp ../../include/nel/misc/diff_tool.h
134 i18n.cpp ../../include/nel/misc/i18n.h
135 words_dictionary.cpp ../../include/nel/misc/words_dictionary.h
138 FILE(GLOB NLMISC_THREAD
139 co_task.cpp ../../include/nel/misc/co_task.h
140 mutex.cpp ../../include/nel/misc/mutex.h
141 *_thread.cpp ../../include/nel/misc/*_thread.h
142 task_*.cpp ../../include/nel/misc/task_*.h
143 reader_writer.cpp ../../include/nel/misc/reader_writer.h
144 tds.cpp ../../include/nel/misc/tds.h
145 thread.cpp ../../include/nel/misc/thread.h
148 FILE(GLOB NLMISC_BITMAP
149 bitmap.cpp ../../include/nel/misc/bitmap.h
153 FILE(GLOB NLMISC_CRYPT
154 md5.cpp ../../include/nel/misc/md5.h
155 sha1.cpp ../../include/nel/misc/sha1.h
156 ../../include/nel/misc/wang_hash.h
159 SOURCE_GROUP("" FILES ${SRC} ${HEADERS})
160 SOURCE_GROUP("cdb" FILES ${NLMISC_CDB})
161 SOURCE_GROUP("event" FILES ${NLMISC_EVENT})
162 SOURCE_GROUP("debug" FILES ${NLMISC_DEBUG})
163 SOURCE_GROUP("platform" FILES ${NLMISC_PLATFORM})
164 SOURCE_GROUP("filesystem" FILES ${NLMISC_FILESYSTEM})
165 SOURCE_GROUP("stream" FILES ${NLMISC_STREAM})
166 SOURCE_GROUP("displayer" FILES ${NLMISC_DISPLAYER})
167 SOURCE_GROUP("math" FILES ${NLMISC_MATH})
168 SOURCE_GROUP("generic" FILES ${NLMISC_GENERIC})
169 SOURCE_GROUP("utility" FILES ${NLMISC_UTILITY})
170 SOURCE_GROUP("bitmap" FILES ${NLMISC_BITMAP})
171 SOURCE_GROUP("thread" FILES ${NLMISC_THREAD})
172 SOURCE_GROUP("i18n" FILES ${NLMISC_I18N})
173 SOURCE_GROUP("crypt" FILES ${NLMISC_CRYPT})
174 SOURCE_GROUP("string" FILES ${NLMISC_STRING})
176 NL_TARGET_LIB(nelmisc ${HEADERS} ${SRC})
180 INCLUDE_DIRECTORIES(${GTK2_INCLUDE_DIRS})
181 ADD_DEFINITIONS(-DNL_USE_GTK)
182 TARGET_LINK_LIBRARIES(nelmisc ${GTK2_LIBRARIES})
187 HUNTER_ADD_PACKAGE(Jpeg)
188 FIND_PACKAGE(JPEG CONFIG REQUIRED)
189 SET(JPEG_LIBRARY JPEG::jpeg)
191 HUNTER_ADD_PACKAGE(giflib)
192 FIND_PACKAGE(giflib CONFIG REQUIRED)
193 SET(GIF_LIBRARY giflib::giflib)
195 HUNTER_ADD_PACKAGE(PNG)
196 FIND_PACKAGE(PNG CONFIG REQUIRED)
197 SET(PNG_LIBRARY PNG::png)
198 SET(PNG_LIBRARIES PNG::png)
202 INCLUDE_DIRECTORIES(${JPEG_INCLUDE_DIR})
203 ADD_DEFINITIONS(-DUSE_JPEG)
204 TARGET_LINK_LIBRARIES(nelmisc ${JPEG_LIBRARY})
208 INCLUDE_DIRECTORIES(${GIF_INCLUDE_DIR})
209 ADD_DEFINITIONS(-DUSE_GIF)
210 TARGET_LINK_LIBRARIES(nelmisc ${GIF_LIBRARY})
213 IF(WITH_STATIC OR WIN32)
214 TARGET_LINK_LIBRARIES(nelmisc ${PNG_LIBRARIES})
216 # Link only with libpng shared library
217 TARGET_LINK_LIBRARIES(nelmisc ${PNG_LIBRARY})
220 #TODO: needed for hunter aswell?
222 TARGET_LINK_LIBRARIES(nelmisc -lc -ldl)
224 TARGET_LINK_LIBRARIES(nelmisc ${CARBON_FRAMEWORK})
226 TARGET_LINK_LIBRARIES(nelmisc -lrt)
230 INCLUDE_DIRECTORIES(../../3rdparty)
231 INCLUDE_DIRECTORIES(${LIBXML2_INCLUDE_DIR} ${PNG_INCLUDE_DIR} config_file)
233 TARGET_LINK_LIBRARIES(nelmisc ${CMAKE_THREAD_LIBS_INIT} ${LIBXML2_LIBRARIES} ${ZLIB_LIBRARY} nel_sevenzip)
235 NL_DEFAULT_PROPS(nelmisc "NeL, Library: NeL Misc")
236 NL_ADD_RUNTIME_FLAGS(nelmisc)
238 NL_ADD_LIB_SUFFIX(nelmisc)
240 ADD_DEFINITIONS(${LIBXML2_DEFINITIONS})
243 ADD_NATIVE_PRECOMPILED_HEADER(nelmisc ${CMAKE_CURRENT_SOURCE_DIR}/stdmisc.h ${CMAKE_CURRENT_SOURCE_DIR}/stdmisc.cpp)
246 NL_GEN_PC(nel-misc.pc)
248 IF((WITH_INSTALL_LIBRARIES AND WITH_STATIC) OR NOT WITH_STATIC)
249 INSTALL(TARGETS nelmisc LIBRARY DESTINATION ${NL_LIB_PREFIX} ARCHIVE DESTINATION ${NL_LIB_PREFIX} COMPONENT libraries)