ALib C++ Library
Library Version: 2412 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
ALibSources.cmake
1# ##################################################################################################
2# ALibSources.cmake - CMake file for projects using ALib
3#
4# Copyright 2015-2024 A-Worx GmbH, Germany
5# Published under 'Boost Software License' (a free software license, see LICENSE.txt)
6#
7# Notes:
8# Selects source and header files in lists ALIB_SOURCE_FILES and ALIB_INCLUDE_FILES, depending
9# on the selected modules listed in ALIB_DISTRIBUTION.
10#
11# If variable ALIB_SOURCE_COPY_TARGET_DIR is defined, then the sources are copied to the
12# directory specified.
13#
14# This CMake file is included by "ALib.cmake" automatically and is not intended for manual
15# inclusion. Its contents was separated into a separated cmake file solely for clarity.
16# ##################################################################################################
17if( NOT DEFINED ALIB_SOURCE_DIR )
18 set ( ALIB_SOURCE_DIR ${ALIB_BASE_DIR}/src )
19endif()
20
21SET( ALIB_SOURCE_FILES "" )
22SET( ALIB_INCLUDE_FILES "" )
23
24# ---------- general files, always included -------
25
26# alib
27list( APPEND ALIB_INCLUDE_FILES alib/alib.hpp )
28list( APPEND ALIB_INCLUDE_FILES alib/alib_precompile.hpp )
29list( APPEND ALIB_INCLUDE_FILES alib/alox.hpp )
30list( APPEND ALIB_SOURCE_FILES alib/alib.cpp )
31
32# alib::lang
33list( APPEND ALIB_INCLUDE_FILES alib/lang/allocation.hpp )
34list( APPEND ALIB_INCLUDE_FILES alib/lang/bidilist.hpp )
35list( APPEND ALIB_INCLUDE_FILES alib/lang/bits.hpp )
36list( APPEND ALIB_INCLUDE_FILES alib/lang/bitset.hpp )
37list( APPEND ALIB_INCLUDE_FILES alib/lang/callerinfo_functions.hpp )
38list( APPEND ALIB_INCLUDE_FILES alib/lang/callerinfo_methods.hpp )
39list( APPEND ALIB_INCLUDE_FILES alib/lang/commonenumdefs.hpp )
40list( APPEND ALIB_INCLUDE_FILES alib/lang/commonenums.hpp )
41list( APPEND ALIB_INCLUDE_FILES alib/lang/dbgcriticalsections.hpp )
42list( APPEND ALIB_INCLUDE_FILES alib/lang/dbgtypedemangler.hpp )
43list( APPEND ALIB_INCLUDE_FILES alib/lang/integers.hpp )
44list( APPEND ALIB_INCLUDE_FILES alib/lang/owner.hpp )
45list( APPEND ALIB_INCLUDE_FILES alib/lang/placeholder.hpp )
46list( APPEND ALIB_INCLUDE_FILES alib/lang/platformincludes.hpp )
47list( APPEND ALIB_INCLUDE_FILES alib/lang/plugins.hpp )
48list( APPEND ALIB_INCLUDE_FILES alib/lang/rttrallocator.hpp )
49list( APPEND ALIB_INCLUDE_FILES alib/lang/sidilist.hpp )
50list( APPEND ALIB_INCLUDE_FILES alib/lang/stdcontainerallocator.hpp )
51list( APPEND ALIB_INCLUDE_FILES alib/lang/tmp.hpp )
52
53list( APPEND ALIB_SOURCE_FILES alib/lang/dbgcriticalsections.cpp )
54
55
56#--------- compatibility headers ---------
57if( "CHARACTERS" IN_LIST ALIB_DISTRIBUTION )
58 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/std_strings.hpp )
59 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/qt_characters.hpp )
60endif()
61
62if( "BOXING" IN_LIST ALIB_DISTRIBUTION )
63 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/std_boxing.hpp )
64 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/std_boxing_functional.hpp )
65 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/qt_boxing.hpp )
66endif()
67
68if( "BOXING" IN_LIST ALIB_DISTRIBUTION
69 OR "SINGLETONS" IN_LIST ALIB_DISTRIBUTION )
70 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/std_typeinfo.hpp )
71endif()
72
73
74if( "STRINGS" IN_LIST ALIB_DISTRIBUTION )
75 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/std_strings_functional.hpp)
76 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/std_strings_iostream.hpp )
77 list( APPEND ALIB_SOURCE_FILES alib/compatibility/std_strings_iostream.cpp )
78 list( APPEND ALIB_INCLUDE_FILES alib/compatibility/qt_strings.hpp )
79endif()
80
81################################# Normal Modules #############################
82
83if( "BITBUFFER" IN_LIST ALIB_DISTRIBUTION )
84 list( APPEND ALIB_INCLUDE_FILES alib/bitbuffer/arraycompressor.hpp )
85 list( APPEND ALIB_INCLUDE_FILES alib/bitbuffer/bitbuffer.hpp )
86 list( APPEND ALIB_INCLUDE_FILES alib/bitbuffer/ac_v1/acalgos.inl )
87 list( APPEND ALIB_INCLUDE_FILES alib/bitbuffer/ac_v1/ac.hpp )
88 list( APPEND ALIB_INCLUDE_FILES alib/bitbuffer/ac_v1/huffman.hpp )
89
90 list( APPEND ALIB_SOURCE_FILES alib/bitbuffer/bitbuffer.cpp )
91 list( APPEND ALIB_SOURCE_FILES alib/bitbuffer/ac_v1/ac.cpp )
92 list( APPEND ALIB_SOURCE_FILES alib/bitbuffer/ac_v1/huffman.cpp )
93endif()
94
95if( "BOXING" IN_LIST ALIB_DISTRIBUTION )
96 list( APPEND ALIB_INCLUDE_FILES alib/boxing/box.inl )
97 list( APPEND ALIB_INCLUDE_FILES alib/boxing/boxes.inl )
98 list( APPEND ALIB_INCLUDE_FILES alib/boxing/boxing.hpp )
99 list( APPEND ALIB_INCLUDE_FILES alib/boxing/customizations.inl )
100 list( APPEND ALIB_INCLUDE_FILES alib/boxing/dbgboxing.hpp )
101 list( APPEND ALIB_INCLUDE_FILES alib/boxing/enum.hpp )
102 list( APPEND ALIB_INCLUDE_FILES alib/boxing/fwds.hpp )
103 list( APPEND ALIB_INCLUDE_FILES alib/boxing/functions.inl )
104 list( APPEND ALIB_INCLUDE_FILES alib/boxing/functiondefs.inl )
105 list( APPEND ALIB_INCLUDE_FILES alib/boxing/placeholder.inl )
106 list( APPEND ALIB_INCLUDE_FILES alib/boxing/typetraits.inl )
107 list( APPEND ALIB_INCLUDE_FILES alib/boxing/detail/vtable.inl )
108
109 list( APPEND ALIB_SOURCE_FILES alib/boxing/boxes.cpp )
110 list( APPEND ALIB_SOURCE_FILES alib/boxing/boxing.cpp )
111 list( APPEND ALIB_SOURCE_FILES alib/boxing/dbgboxing.cpp )
112 list( APPEND ALIB_SOURCE_FILES alib/boxing/detail/vtable.cpp )
113
114endif()
115
116if( "CHARACTERS" IN_LIST ALIB_DISTRIBUTION )
117 list( APPEND ALIB_INCLUDE_FILES alib/characters/chartraits.hpp )
118 list( APPEND ALIB_INCLUDE_FILES alib/characters/characters.hpp )
119 list( APPEND ALIB_SOURCE_FILES alib/characters/characters.cpp )
120endif()
121
122if( "ENUMS" IN_LIST ALIB_DISTRIBUTION )
123 list( APPEND ALIB_INCLUDE_FILES alib/enums/arithmetical.hpp )
124 list( APPEND ALIB_INCLUDE_FILES alib/enums/bitwise.hpp )
125 list( APPEND ALIB_INCLUDE_FILES alib/enums/bitwise_iterable_conversion.hpp )
126 list( APPEND ALIB_INCLUDE_FILES alib/enums/iterable.hpp )
127 list( APPEND ALIB_INCLUDE_FILES alib/enums/records.hpp )
128 list( APPEND ALIB_INCLUDE_FILES alib/enums/recordbootstrap.hpp )
129 list( APPEND ALIB_INCLUDE_FILES alib/enums/underlyingintegral.hpp )
130 list( APPEND ALIB_INCLUDE_FILES alib/enums/detail/enumrecords.inl )
131
132 list( APPEND ALIB_SOURCE_FILES alib/enums/records.cpp )
133
134 if( "STRINGS" IN_LIST ALIB_DISTRIBUTION )
135 list( APPEND ALIB_INCLUDE_FILES alib/enums/recordparser.hpp )
136 list( APPEND ALIB_INCLUDE_FILES alib/enums/serialization.hpp )
137 endif()
138endif()
139
140if( "CONTAINERS" IN_LIST ALIB_DISTRIBUTION )
141 list( APPEND ALIB_INCLUDE_FILES alib/containers/fixedcapacityvector.hpp )
142 list( APPEND ALIB_INCLUDE_FILES alib/containers/hashtable.hpp )
143 list( APPEND ALIB_INCLUDE_FILES alib/containers/list.hpp )
144 list( APPEND ALIB_INCLUDE_FILES alib/containers/lrucachetable.hpp )
145 list( APPEND ALIB_INCLUDE_FILES alib/containers/recycler.hpp )
146 list( APPEND ALIB_INCLUDE_FILES alib/containers/recycling.hpp )
147 list( APPEND ALIB_INCLUDE_FILES alib/containers/sharedptr.hpp )
148 list( APPEND ALIB_INCLUDE_FILES alib/containers/sharedval.hpp )
149 list( APPEND ALIB_INCLUDE_FILES alib/containers/detail/valuedescriptor.hpp )
150 list( APPEND ALIB_INCLUDE_FILES alib/containers/detail/hashtablebase.inl )
151 list( APPEND ALIB_SOURCE_FILES alib/containers/detail/hashtablebase.cpp )
152 if( "STRINGS" IN_LIST ALIB_DISTRIBUTION )
153 list( APPEND ALIB_INCLUDE_FILES alib/containers/stringtree.hpp )
154 list( APPEND ALIB_INCLUDE_FILES alib/containers/detail/stringtreebase.inl )
155 endif()
156endif()
157
158if( "MONOMEM" IN_LIST ALIB_DISTRIBUTION )
159 list( APPEND ALIB_INCLUDE_FILES alib/monomem/globalallocator.hpp )
160 list( APPEND ALIB_INCLUDE_FILES alib/monomem/localallocator.hpp )
161 list( APPEND ALIB_INCLUDE_FILES alib/monomem/monoallocator.hpp )
162 list( APPEND ALIB_INCLUDE_FILES alib/monomem/monoallocator.t.hpp )
163 list( APPEND ALIB_INCLUDE_FILES alib/monomem/poolallocator.hpp )
164 list( APPEND ALIB_INCLUDE_FILES alib/monomem/poolallocator.t.hpp )
165 list( APPEND ALIB_INCLUDE_FILES alib/monomem/sharedmonoval.hpp )
166
167 list( APPEND ALIB_SOURCE_FILES alib/monomem/monoallocator.cpp )
168 list( APPEND ALIB_SOURCE_FILES alib/monomem/poolallocator.cpp )
169
170 if( "STRINGS" IN_LIST ALIB_DISTRIBUTION )
171 list( APPEND ALIB_INCLUDE_FILES alib/monomem/aliases/astringma.hpp )
172 list( APPEND ALIB_INCLUDE_FILES alib/monomem/aliases/astringpa.hpp )
173 list( APPEND ALIB_INCLUDE_FILES alib/monomem/aliases/localstringma.hpp )
174 list( APPEND ALIB_INCLUDE_FILES alib/monomem/aliases/localstringpa.hpp )
175 list( APPEND ALIB_INCLUDE_FILES alib/monomem/aliases/stddeque.hpp )
176 list( APPEND ALIB_INCLUDE_FILES alib/monomem/aliases/stdlist.hpp )
177 list( APPEND ALIB_INCLUDE_FILES alib/monomem/aliases/stdvector.hpp )
178 list( APPEND ALIB_INCLUDE_FILES alib/monomem/aliases/stringvector.hpp )
179 list( APPEND ALIB_SOURCE_FILES alib/monomem/aliases/astringmapa.cpp )
180 endif()
181endif()
182
183if( "SINGLETONS" IN_LIST ALIB_DISTRIBUTION )
184 list( APPEND ALIB_INCLUDE_FILES alib/singletons/dbgsingletons.hpp )
185 list( APPEND ALIB_INCLUDE_FILES alib/singletons/singleton.hpp )
186 list( APPEND ALIB_SOURCE_FILES alib/singletons/singleton.cpp )
187endif()
188
189if( "STRINGS" IN_LIST ALIB_DISTRIBUTION )
190 list( APPEND ALIB_INCLUDE_FILES alib/strings/appendables.inl )
191 list( APPEND ALIB_INCLUDE_FILES alib/strings/astring.hpp )
192 list( APPEND ALIB_INCLUDE_FILES alib/strings/chararraytraits.inl )
193 list( APPEND ALIB_INCLUDE_FILES alib/strings/cstring.hpp )
194 list( APPEND ALIB_INCLUDE_FILES alib/strings/format.inl )
195 list( APPEND ALIB_INCLUDE_FILES alib/strings/fwds.hpp )
196 list( APPEND ALIB_INCLUDE_FILES alib/strings/numberformat.hpp )
197 list( APPEND ALIB_INCLUDE_FILES alib/strings/localstring.hpp )
198 list( APPEND ALIB_INCLUDE_FILES alib/strings/string.hpp )
199 list( APPEND ALIB_INCLUDE_FILES alib/strings/stringnzt.hpp )
200 list( APPEND ALIB_INCLUDE_FILES alib/strings/substring.hpp )
201 list( APPEND ALIB_INCLUDE_FILES alib/strings/detail/tastring.inl )
202 list( APPEND ALIB_INCLUDE_FILES alib/strings/detail/tastringimpl.inl )
203 list( APPEND ALIB_INCLUDE_FILES alib/strings/detail/tastring_ca_decl.inl )
204 list( APPEND ALIB_INCLUDE_FILES alib/strings/detail/tastring_ca_impl.inl )
205
206
207 list( APPEND ALIB_SOURCE_FILES alib/strings/astring.cpp )
208 list( APPEND ALIB_SOURCE_FILES alib/strings/numberformat.cpp )
209 list( APPEND ALIB_SOURCE_FILES alib/strings/string.cpp )
210 list( APPEND ALIB_SOURCE_FILES alib/strings/substring.cpp )
211
212 list( APPEND ALIB_INCLUDE_FILES alib/strings/detail/numberconversion.hpp )
213 list( APPEND ALIB_SOURCE_FILES alib/strings/detail/numberconversion.cpp )
214
215
216 list( APPEND ALIB_INCLUDE_FILES alib/strings/util/autosizes.hpp )
217 list( APPEND ALIB_INCLUDE_FILES alib/strings/util/escaper.hpp )
218 list( APPEND ALIB_INCLUDE_FILES alib/strings/util/regexmatcher.hpp )
219 list( APPEND ALIB_INCLUDE_FILES alib/strings/util/subsearch.hpp )
220 list( APPEND ALIB_INCLUDE_FILES alib/strings/util/stringvector.hpp )
221 list( APPEND ALIB_INCLUDE_FILES alib/strings/util/token.hpp )
222 list( APPEND ALIB_INCLUDE_FILES alib/strings/util/tokenizer.hpp )
223 list( APPEND ALIB_INCLUDE_FILES alib/strings/util/wildcardmatcher.hpp )
224
225 list( APPEND ALIB_SOURCE_FILES alib/strings/util/autosizes.cpp )
226 list( APPEND ALIB_SOURCE_FILES alib/strings/util/escaper.cpp )
227 list( APPEND ALIB_SOURCE_FILES alib/strings/util/regexmatcher.cpp )
228 list( APPEND ALIB_SOURCE_FILES alib/strings/util/subsearch.cpp )
229 list( APPEND ALIB_SOURCE_FILES alib/strings/util/token.cpp )
230 list( APPEND ALIB_SOURCE_FILES alib/strings/util/tokenizer.cpp )
231 list( APPEND ALIB_SOURCE_FILES alib/strings/util/wildcardmatcher.cpp )
232
233endif()
234
235if( "THREADS" IN_LIST ALIB_DISTRIBUTION )
236 list( APPEND ALIB_INCLUDE_FILES alib/threads/condition.hpp )
237 list( APPEND ALIB_INCLUDE_FILES alib/threads/dbglockasserter.hpp )
238 list( APPEND ALIB_INCLUDE_FILES alib/threads/lock.hpp )
239 list( APPEND ALIB_INCLUDE_FILES alib/threads/promise.hpp )
240 list( APPEND ALIB_INCLUDE_FILES alib/threads/recursivelock.hpp )
241 list( APPEND ALIB_INCLUDE_FILES alib/threads/recursivetimedlock.hpp )
242 list( APPEND ALIB_INCLUDE_FILES alib/threads/sharedlock.hpp )
243 list( APPEND ALIB_INCLUDE_FILES alib/threads/sharedtimedlock.hpp )
244 list( APPEND ALIB_INCLUDE_FILES alib/threads/thread.hpp )
245 list( APPEND ALIB_INCLUDE_FILES alib/threads/timedlock.hpp )
246 list( APPEND ALIB_INCLUDE_FILES alib/threads/detail/threadmap.hpp )
247
248 list( APPEND ALIB_SOURCE_FILES alib/threads/thread.cpp )
249 list( APPEND ALIB_SOURCE_FILES alib/threads/locks.cpp )
250endif()
251
252if( "THREADMODEL" IN_LIST ALIB_DISTRIBUTION )
253 list( APPEND ALIB_INCLUDE_FILES alib/threadmodel/dedicatedworker.hpp )
254 list( APPEND ALIB_INCLUDE_FILES alib/threadmodel/jobs.hpp )
255 list( APPEND ALIB_INCLUDE_FILES alib/threadmodel/threadpool.hpp )
256 list( APPEND ALIB_INCLUDE_FILES alib/threadmodel/trigger.hpp )
257
258 list( APPEND ALIB_SOURCE_FILES alib/threadmodel/dedicatedworker.cpp )
259 list( APPEND ALIB_SOURCE_FILES alib/threadmodel/threadpool.cpp )
260 list( APPEND ALIB_SOURCE_FILES alib/threadmodel/trigger.cpp )
261endif()
262
263if( "TIME" IN_LIST ALIB_DISTRIBUTION )
264 list( APPEND ALIB_INCLUDE_FILES alib/time/datetime.hpp )
265 list( APPEND ALIB_INCLUDE_FILES alib/time/stopwatch.hpp )
266 list( APPEND ALIB_INCLUDE_FILES alib/time/tickconverter.hpp )
267 list( APPEND ALIB_INCLUDE_FILES alib/time/ticks.hpp )
268 list( APPEND ALIB_INCLUDE_FILES alib/time/time.hpp )
269 list( APPEND ALIB_INCLUDE_FILES alib/time/timepointbase.hpp )
270
271 list( APPEND ALIB_SOURCE_FILES alib/time/time.cpp )
272endif()
273
274
275######################################### Camp Modules #########################################
276
277################################## BASE ##################################
278if( "CAMP" IN_LIST ALIB_DISTRIBUTION )
279
280 #### BASE ###
281 list( APPEND ALIB_INCLUDE_FILES alib/lang/basecamp/basecamp.hpp )
282 list( APPEND ALIB_INCLUDE_FILES alib/lang/basecamp/camp.hpp )
283 list( APPEND ALIB_INCLUDE_FILES alib/lang/basecamp/camp_inlines.hpp )
284 list( APPEND ALIB_INCLUDE_FILES alib/lang/basecamp/bootstrap.hpp )
285
286 list( APPEND ALIB_SOURCE_FILES alib/lang/basecamp/basecamp.cpp )
287 list( APPEND ALIB_SOURCE_FILES alib/lang/basecamp/bootstrap.cpp )
288
289 #### BASE/system ###
290 list( APPEND ALIB_INCLUDE_FILES alib/lang/system/calendar.hpp )
291 list( APPEND ALIB_INCLUDE_FILES alib/lang/system/console.hpp )
292 list( APPEND ALIB_INCLUDE_FILES alib/lang/system/environment.hpp )
293 list( APPEND ALIB_INCLUDE_FILES alib/lang/system/path.hpp )
294 list( APPEND ALIB_INCLUDE_FILES alib/lang/system/processinfo.hpp )
295 list( APPEND ALIB_INCLUDE_FILES alib/lang/system/systemerrors.hpp )
296
297 list( APPEND ALIB_SOURCE_FILES alib/lang/system/calendar.cpp )
298 list( APPEND ALIB_SOURCE_FILES alib/lang/system/console.cpp )
299 list( APPEND ALIB_SOURCE_FILES alib/lang/system/environment.cpp )
300 list( APPEND ALIB_SOURCE_FILES alib/lang/system/path.cpp )
301 list( APPEND ALIB_SOURCE_FILES alib/lang/system/processinfo.cpp )
302 if ( ${APPLE} )
303 list( APPEND ALIB_SOURCE_FILES alib/lang/system/path.mm )
304 endif()
305
306
307
308 #### BASE/resources ###
309 list( APPEND ALIB_INCLUDE_FILES alib/lang/resources/localresourcepool.hpp )
310 list( APPEND ALIB_INCLUDE_FILES alib/lang/resources/resources.hpp )
311 list( APPEND ALIB_INCLUDE_FILES alib/lang/resources/detail/resourcemap.hpp )
312
313 list( APPEND ALIB_SOURCE_FILES alib/lang/resources/localresourcepool.cpp )
314
315
316 #### BASE/message ###
317 list( APPEND ALIB_INCLUDE_FILES alib/lang/message/exception.hpp )
318 list( APPEND ALIB_INCLUDE_FILES alib/lang/message/message.hpp )
319 list( APPEND ALIB_INCLUDE_FILES alib/lang/message/report.hpp )
320
321 list( APPEND ALIB_SOURCE_FILES alib/lang/message/exception.cpp )
322 list( APPEND ALIB_SOURCE_FILES alib/lang/message/report.cpp )
323
324 #### BASE/Format ###
325 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/bytesize.hpp )
326 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/fmtcallerinfo.hpp )
327 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/fmtexceptions.hpp )
328 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/formatter.hpp )
329 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/formatterjavastyle.hpp )
330 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/formatterpythonstyle.hpp )
331 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/formatterstdimpl.hpp )
332 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/fwds.hpp )
333 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/propertyformatter.hpp )
334 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/propertyformatters.hpp )
335 list( APPEND ALIB_INCLUDE_FILES alib/lang/format/paragraphs.hpp )
336
337 list( APPEND ALIB_SOURCE_FILES alib/lang/format/fmtcallerinfo.cpp )
338 list( APPEND ALIB_SOURCE_FILES alib/lang/format/formatter.cpp )
339 list( APPEND ALIB_SOURCE_FILES alib/lang/format/formatterjavastyle.cpp )
340 list( APPEND ALIB_SOURCE_FILES alib/lang/format/formatterpythonstyle.cpp )
341 list( APPEND ALIB_SOURCE_FILES alib/lang/format/formatterstdimpl.cpp )
342 list( APPEND ALIB_SOURCE_FILES alib/lang/format/propertyformatter.cpp )
343 list( APPEND ALIB_SOURCE_FILES alib/lang/format/paragraphs.cpp )
344endif()
345
346if( "ALOX" IN_LIST ALIB_DISTRIBUTION )
347 list( APPEND ALIB_INCLUDE_FILES alib/alox/alox.hpp )
348 list( APPEND ALIB_INCLUDE_FILES alib/alox/aloxcamp.hpp )
349 list( APPEND ALIB_INCLUDE_FILES alib/alox/log.inl )
350 list( APPEND ALIB_INCLUDE_FILES alib/alox/logtools.hpp )
351 list( APPEND ALIB_INCLUDE_FILES alib/alox/lox.inl )
352 list( APPEND ALIB_INCLUDE_FILES alib/alox/macros.inl )
353 list( APPEND ALIB_INCLUDE_FILES alib/alox/reportwriter.hpp )
354
355 list( APPEND ALIB_SOURCE_FILES alib/alox/aloxcamp.cpp )
356 list( APPEND ALIB_SOURCE_FILES alib/alox/log.cpp )
357 list( APPEND ALIB_SOURCE_FILES alib/alox/logtools.cpp )
358 list( APPEND ALIB_SOURCE_FILES alib/alox/reportwriter.cpp )
359
360 list( APPEND ALIB_INCLUDE_FILES alib/alox/detail/domain.inl )
361 list( APPEND ALIB_INCLUDE_FILES alib/alox/detail/logger.hpp )
362 list( APPEND ALIB_INCLUDE_FILES alib/alox/detail/loxpimpl.inl )
363 list( APPEND ALIB_INCLUDE_FILES alib/alox/detail/scopedump.inl )
364 list( APPEND ALIB_INCLUDE_FILES alib/alox/detail/scopeinfo.inl )
365 list( APPEND ALIB_INCLUDE_FILES alib/alox/detail/scopestore.inl )
366
367 list( APPEND ALIB_SOURCE_FILES alib/alox/detail/domain.cpp )
368 list( APPEND ALIB_SOURCE_FILES alib/alox/detail/loxpimpl.cpp )
369 list( APPEND ALIB_SOURCE_FILES alib/alox/detail/scopedump.cpp )
370 list( APPEND ALIB_SOURCE_FILES alib/alox/detail/scopeinfo.cpp )
371 list( APPEND ALIB_SOURCE_FILES alib/alox/detail/scopestore.cpp )
372
373 list( APPEND ALIB_INCLUDE_FILES alib/alox/textlogger/plaintextlogger.hpp )
374 list( APPEND ALIB_INCLUDE_FILES alib/alox/textlogger/textlogger.hpp )
375 list( APPEND ALIB_INCLUDE_FILES alib/alox/textlogger/variables.hpp )
376 list( APPEND ALIB_SOURCE_FILES alib/alox/textlogger/plaintextlogger.cpp )
377 list( APPEND ALIB_SOURCE_FILES alib/alox/textlogger/textlogger.cpp )
378 list( APPEND ALIB_SOURCE_FILES alib/alox/textlogger/variables.cpp )
379
380 list( APPEND ALIB_INCLUDE_FILES alib/alox/loggers/ansilogger.hpp )
381 list( APPEND ALIB_INCLUDE_FILES alib/alox/loggers/consolelogger.hpp )
382 list( APPEND ALIB_INCLUDE_FILES alib/alox/loggers/memorylogger.hpp )
383 list( APPEND ALIB_INCLUDE_FILES alib/alox/loggers/textfilelogger.hpp )
384 list( APPEND ALIB_INCLUDE_FILES alib/alox/loggers/vstudiologger.hpp )
385 list( APPEND ALIB_INCLUDE_FILES alib/alox/loggers/windowsconsolelogger.hpp )
386
387 list( APPEND ALIB_SOURCE_FILES alib/alox/loggers/ansilogger.cpp )
388 list( APPEND ALIB_SOURCE_FILES alib/alox/loggers/consolelogger.cpp )
389 list( APPEND ALIB_SOURCE_FILES alib/alox/loggers/textfilelogger.cpp )
390 list( APPEND ALIB_SOURCE_FILES alib/alox/loggers/vstudiologger.cpp )
391 list( APPEND ALIB_SOURCE_FILES alib/alox/loggers/windowsconsolelogger.cpp )
392
393endif()
394
395if( "CONFIGURATION" IN_LIST ALIB_DISTRIBUTION )
396 list( APPEND ALIB_INCLUDE_FILES alib/config/configcamp.hpp )
397 list( APPEND ALIB_INCLUDE_FILES alib/config/configresourcepool.hpp )
398 list( APPEND ALIB_INCLUDE_FILES alib/config/configuration.hpp )
399 list( APPEND ALIB_INCLUDE_FILES alib/config/declaration.hpp )
400 list( APPEND ALIB_INCLUDE_FILES alib/config/inifile.hpp )
401 list( APPEND ALIB_INCLUDE_FILES alib/config/inifilefeeder.hpp )
402 list( APPEND ALIB_INCLUDE_FILES alib/config/plugins.hpp )
403 list( APPEND ALIB_INCLUDE_FILES alib/config/priority.hpp )
404 list( APPEND ALIB_INCLUDE_FILES alib/config/vmeta.hpp )
405
406 list( APPEND ALIB_SOURCE_FILES alib/config/configcamp.cpp )
407 list( APPEND ALIB_SOURCE_FILES alib/config/configresourcepool.cpp )
408 list( APPEND ALIB_SOURCE_FILES alib/config/configuration.cpp )
409 list( APPEND ALIB_SOURCE_FILES alib/config/inifile.cpp )
410 list( APPEND ALIB_SOURCE_FILES alib/config/inifilefeeder.cpp )
411 list( APPEND ALIB_SOURCE_FILES alib/config/plugins.cpp )
412 list( APPEND ALIB_SOURCE_FILES alib/config/variable.cpp )
413 list( APPEND ALIB_SOURCE_FILES alib/config/vmeta.cpp )
414
415endif()
416
417if( "CLI" IN_LIST ALIB_DISTRIBUTION )
418 list( APPEND ALIB_INCLUDE_FILES alib/cli/arguments.hpp )
419 list( APPEND ALIB_INCLUDE_FILES alib/cli/clicamp.hpp )
420 list( APPEND ALIB_INCLUDE_FILES alib/cli/cliutil.hpp )
421 list( APPEND ALIB_INCLUDE_FILES alib/cli/commandline.hpp )
422
423 list( APPEND ALIB_SOURCE_FILES alib/cli/arguments.cpp )
424 list( APPEND ALIB_SOURCE_FILES alib/cli/clicamp.cpp )
425 list( APPEND ALIB_SOURCE_FILES alib/cli/cliutil.cpp )
426 list( APPEND ALIB_SOURCE_FILES alib/cli/commandline.cpp )
427endif()
428
429if( "EXPRESSIONS" IN_LIST ALIB_DISTRIBUTION )
430 list( APPEND ALIB_INCLUDE_FILES alib/expressions/expressionscamp.hpp )
431 list( APPEND ALIB_INCLUDE_FILES alib/expressions/compiler.hpp )
432 list( APPEND ALIB_INCLUDE_FILES alib/expressions/compilerplugin.hpp )
433 list( APPEND ALIB_INCLUDE_FILES alib/expressions/expression.hpp )
434 list( APPEND ALIB_INCLUDE_FILES alib/expressions/scope.hpp )
435
436 list( APPEND ALIB_SOURCE_FILES alib/expressions/expressionscamp.cpp )
437 list( APPEND ALIB_SOURCE_FILES alib/expressions/compiler.cpp )
438 list( APPEND ALIB_SOURCE_FILES alib/expressions/expression.cpp )
439
440 list( APPEND ALIB_INCLUDE_FILES alib/expressions/detail/ast.hpp )
441 list( APPEND ALIB_INCLUDE_FILES alib/expressions/detail/parser.hpp )
442 list( APPEND ALIB_INCLUDE_FILES alib/expressions/detail/parser_impl.hpp )
443 list( APPEND ALIB_INCLUDE_FILES alib/expressions/detail/program.hpp )
444 list( APPEND ALIB_INCLUDE_FILES alib/expressions/detail/virtualmachine.hpp )
445
446 list( APPEND ALIB_SOURCE_FILES alib/expressions/detail/ast.cpp )
447 list( APPEND ALIB_SOURCE_FILES alib/expressions/detail/parser.cpp )
448 list( APPEND ALIB_SOURCE_FILES alib/expressions/detail/parser_impl.cpp )
449 list( APPEND ALIB_SOURCE_FILES alib/expressions/detail/program.cpp )
450 list( APPEND ALIB_SOURCE_FILES alib/expressions/detail/virtualmachine.cpp )
451
452 list( APPEND ALIB_INCLUDE_FILES alib/expressions/plugins/arithmetics.hpp )
453 list( APPEND ALIB_INCLUDE_FILES alib/expressions/plugins/autocast.hpp )
454 list( APPEND ALIB_INCLUDE_FILES alib/expressions/plugins/calculus.hpp )
455 list( APPEND ALIB_INCLUDE_FILES alib/expressions/plugins/elvisoperator.hpp )
456 list( APPEND ALIB_INCLUDE_FILES alib/expressions/plugins/math.hpp )
457 list( APPEND ALIB_INCLUDE_FILES alib/expressions/plugins/strings.hpp )
458
459 list( APPEND ALIB_SOURCE_FILES alib/expressions/plugins/arithmetics.cpp )
460 list( APPEND ALIB_SOURCE_FILES alib/expressions/plugins/autocast.cpp )
461 list( APPEND ALIB_SOURCE_FILES alib/expressions/plugins/calculus.cpp )
462 list( APPEND ALIB_SOURCE_FILES alib/expressions/plugins/elvisoperator.cpp )
463 list( APPEND ALIB_SOURCE_FILES alib/expressions/plugins/math.cpp )
464 list( APPEND ALIB_SOURCE_FILES alib/expressions/plugins/strings.cpp )
465
466 list( APPEND ALIB_INCLUDE_FILES alib/expressions/util/expressionformatter.hpp)
467 list( APPEND ALIB_SOURCE_FILES alib/expressions/util/expressionformatter.cpp)
468
469 if( "CAMP" IN_LIST ALIB_DISTRIBUTION )
470 list( APPEND ALIB_INCLUDE_FILES alib/expressions/plugins/dateandtime.hpp )
471 list( APPEND ALIB_SOURCE_FILES alib/expressions/plugins/dateandtime.cpp )
472 endif()
473 if( "CONFIGURATION" IN_LIST ALIB_DISTRIBUTION )
474 list( APPEND ALIB_INCLUDE_FILES alib/expressions/standardrepository.hpp )
475 list( APPEND ALIB_SOURCE_FILES alib/expressions/standardrepository.cpp )
476 endif()
477
478 endif()
479
480if( "FILES" IN_LIST ALIB_DISTRIBUTION )
481 list( APPEND ALIB_INCLUDE_FILES alib/files/filescamp.hpp )
482 list( APPEND ALIB_INCLUDE_FILES alib/files/ffilter.hpp )
483 list( APPEND ALIB_INCLUDE_FILES alib/files/finfo.hpp )
484 list( APPEND ALIB_INCLUDE_FILES alib/files/fscanner.hpp )
485 list( APPEND ALIB_INCLUDE_FILES alib/files/ftree.hpp )
486 list( APPEND ALIB_INCLUDE_FILES alib/files/textfile.hpp )
487
488 list( APPEND ALIB_SOURCE_FILES alib/files/filescamp.cpp )
489 list( APPEND ALIB_SOURCE_FILES alib/files/file.cpp )
490 list( APPEND ALIB_SOURCE_FILES alib/files/finfo.cpp )
491 list( APPEND ALIB_SOURCE_FILES alib/files/fscanner.cpp )
492 list( APPEND ALIB_SOURCE_FILES alib/files/ftree.cpp )
493
494 if( "EXPRESSIONS" IN_LIST ALIB_DISTRIBUTION )
495 list( APPEND ALIB_INCLUDE_FILES alib/files/fileexpressions.hpp )
496 list( APPEND ALIB_SOURCE_FILES alib/files/fileexpressions.cpp )
497 endif()
498
499endif()
500
501
502
503
504# ##################################################################################################
505# Check for duplicates. This is a pure double-check to detect that this script needs changes.
506# ##################################################################################################
507
508CollectAndRemoveDuplicates( "ALIB_INCLUDE_FILES" "duplicates" )
509LIST( LENGTH duplicates cntDuplicates )
510
511IF( ${cntDuplicates} GREATER 0 )
512 message( WARNING "Internal script error ALIBSources.cmake: "
513 "DUPLICATE HEADER FILES FOUND.\nSee list below! "
514 "(Processing continues with de-duplicated list)" )
515 message( STATUS "LIST OF DUPLICATE HEADER FILES:" )
516 LIST(SORT duplicates)
517 FOREACH( entry IN LISTS duplicates )
518 message( STATUS " ${entry}" )
519 ENDFOREACH()
520 message( STATUS "(end of list)" )
521ENDIF()
522
523CollectAndRemoveDuplicates( "ALIB_SOURCE_FILES" "duplicates" )
524LIST( LENGTH duplicates cntDuplicates )
525IF( ${cntDuplicates} GREATER 0 )
526 message( WARNING "Internal script error ALIBSources.cmake: "
527 "DUPLICATE SOURCE FILES FOUND.\nSee list below! "
528 "(Processing continues with de-duplicated list)" )
529 message( STATUS "LIST OF DUPLICATE SOURCE FILES:" )
530 LIST(SORT duplicates)
531 FOREACH( entry IN LISTS duplicates )
532 message( STATUS " ${entry}" )
533 ENDFOREACH()
534 message( STATUS "(end of list)" )
535ENDIF()
536
537# ##################################################################################################
538# Check for ".hpp" in header files or ".cpp" in sources
539# ##################################################################################################
540FOREACH( entry IN LISTS ALIB_INCLUDE_FILES )
541 IF( NOT ${entry} MATCHES "([.]hpp$)|([.]inl$)" )
542 message( FATAL_ERROR "Non-header file (wrong extension) found in header file list: ${entry}" )
543 ENDIF()
544ENDFOREACH()
545
546FOREACH( entry IN LISTS ALIB_SOURCE_FILES )
547 IF( NOT ${entry} MATCHES "([.]mm$)|([.]cpp$)" )
548 message( FATAL_ERROR "File with wrong extension found in source file list: ${entry}" )
549 ENDIF()
550ENDFOREACH()
551
552# ##################################################################################################
553# Copy sources if requested
554# ##################################################################################################
555if( ALIB_SOURCE_COPY_TARGET_DIR )
556
557 if( ${ALIB_SOURCE_COPY_TARGET_DIR} EQUAL ${ALIB_SOURCE_DIR})
558 MESSAGE(FATAL_ERROR "Variable ALIB_SOURCE_COPY_TARGET_DIR=\"${ALIB_SOURCE_COPY_TARGET_DIR}\" "
559 "is set and equals ALIB_SOURCE_DIR. This would delete origninal sources!")
560 endif()
561
562 # Add the build type to the directory name. Otherwise, if CMake was executed for different
563 # configurations in parallel, a clash of file copy/delete operations may happen.
564 if( NOT IS_DIRECTORY ${ALIB_SOURCE_COPY_TARGET_DIR})
565 MESSAGE(FATAL_ERROR "Variable ALIB_SOURCE_COPY_TARGET_DIR=\"${ALIB_SOURCE_COPY_TARGET_DIR}\" "
566 "is set but is not a valid directory. Stopping here!" )
567 endif()
568
569 SET( ALIB_SOURCE_COPY_TARGET_DIR "${ALIB_SOURCE_COPY_TARGET_DIR}/${CMAKE_BUILD_TYPE}" )
570
571 MESSAGE( STATUS "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
572 MESSAGE( STATUS "!!! ATTENTION: Copying sources. !!!")
573 MESSAGE( STATUS "!!! Destination directory will be deleted, hence !!!")
574 MESSAGE( STATUS "!!! CHANGES WILL BE LOST with next CMake run! !!!")
575 MESSAGE( STATUS "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
576 MESSAGE( STATUS "Copying source files of selected ALib modules to: ’${ALIB_SOURCE_COPY_TARGET_DIR}’")
577
578 # delete destination directory
579 file( REMOVE_RECURSE ${ALIB_SOURCE_COPY_TARGET_DIR} )
580
581 #### copy compilation units ####
582 foreach( fileName IN LISTS ALIB_INCLUDE_FILES ALIB_SOURCE_FILES )
583 SET( destPath "${ALIB_SOURCE_COPY_TARGET_DIR}/${fileName}" )
584 get_filename_component(destPath ${destPath} DIRECTORY )
585
586
587 file( COPY "${ALIB_SOURCE_DIR}/${fileName}" DESTINATION "${destPath}" )
588 endforeach()
589
590 ### now also switch source base directories ###
591 set( ALIB_SOURCE_DIR ${ALIB_SOURCE_COPY_TARGET_DIR} )
592endif()
593
594# ##################################################################################################
595# Add base directory to files
596# ##################################################################################################
597SET( temp "" )
598foreach( fileName IN LISTS ALIB_INCLUDE_FILES )
599 LIST( APPEND temp "${ALIB_SOURCE_DIR}/${fileName}" )
600endforeach()
601SET( ALIB_INCLUDE_FILES ${temp} )
602
603SET( temp "" )
604foreach( fileName IN LISTS ALIB_SOURCE_FILES )
605 LIST( APPEND temp "${ALIB_SOURCE_DIR}/${fileName}" )
606endforeach()
607SET( ALIB_SOURCE_FILES ${temp} )