ALib C++ Framework
by
Library Version: 2511 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
ALibSources.cmake
1# ##################################################################################################
2# ALibSources.cmake - CMake file for projects using ALib
3#
4# Copyright 2013-2025 A-Worx GmbH, Germany
5# Published under 'Boost Software License' (a free software license, see LICENSE.txt)
6#
7# Notes:
8# Selects source files in lists depending on the selected modules listed in variable
9# ALibBuild. The lists are:
10# - ALIB_MPP: C++20 Module files (respectively aggregation headers with legacy builds)
11# - ALIB_INL: C++ declarations
12# - ALIB_CPP: Compilation units.
13# - ALIB_HPP: Legacy Header files which are not exported, for example, "platformincludes.hpp"
14# - ALIB_H: Module includes. The only files a using code may include.
15# If variable ALIB_SOURCE_COPY_TARGET_DIR is defined, then the sources are copied to the
16# directory specified.
17#
18# This CMake file is included by "ALib.cmake" automatically and is not intended for manual
19# inclusion. Its contents was separated into a separated cmake file solely for clarity.
20# ##################################################################################################
21if( NOT DEFINED ALIB_SOURCE_DIR )
22 set ( ALIB_SOURCE_DIR ${ALIB_BASE_DIR}/src )
23endif()
24
25SET( ALIB_H "" )
26SET( ALIB_INL "" )
27SET( ALIB_MPP "" )
28SET( ALIB_CPP "" )
29SET( ALIB_HPP "" )
30
31# ---------- general files, always included -------
32
33# alib
34list( APPEND ALIB_H ALib.Lang.CIFunctions.H )
35list( APPEND ALIB_H ALib.Lang.CIMethods.H )
36
37list( APPEND ALIB_INL alib.inl )
38
39list( APPEND ALIB_INL assert.inl )
40list( APPEND ALIB_CPP assert.cpp )
41list( APPEND ALIB_INL mainargs.inl )
42list( APPEND ALIB_CPP mainargs.cpp )
43list( APPEND ALIB_INL chk_nc.inl )
44list( APPEND ALIB_HPP platformincludes.hpp )
45
46#alib.Bootstrap
47list( APPEND ALIB_H ALib.Bootstrap.H )
48list( APPEND ALIB_MPP bootstrap/bootstrap.mpp )
49list( APPEND ALIB_HPP bootstrap/bootstrap.prepro.hpp )
50list( APPEND ALIB_CPP bootstrap/bootstrap.cpp )
51
52
53# alib::lang
54list( APPEND ALIB_H ALib.Lang.H )
55list( APPEND ALIB_MPP lang/lang.mpp )
56list( APPEND ALIB_INL lang/allocation.inl )
57list( APPEND ALIB_INL lang/bidilist.inl )
58list( APPEND ALIB_INL lang/bits.inl )
59list( APPEND ALIB_INL lang/bitset.inl )
60list( APPEND ALIB_INL lang/callerinfo.inl )
61list( APPEND ALIB_INL lang/commonenumdefs.inl )
62list( APPEND ALIB_INL lang/dbgcriticalsections.inl )
63list( APPEND ALIB_CPP lang/dbgcriticalsections.cpp )
64list( APPEND ALIB_INL lang/dbgtypedemangler.inl )
65list( APPEND ALIB_CPP lang/dbgtypedemangler.cpp )
66list( APPEND ALIB_INL lang/integers.inl )
67list( APPEND ALIB_INL lang/owner.inl )
68list( APPEND ALIB_INL lang/placeholder.inl )
69list( APPEND ALIB_INL lang/plugins.inl )
70list( APPEND ALIB_INL lang/sidilist.inl )
71list( APPEND ALIB_INL lang/stdtypeinfofunctors.inl )
72list( APPEND ALIB_INL lang/tmp.inl )
73
74# alib::time
75list( APPEND ALIB_H ALib.Time.H )
76list( APPEND ALIB_MPP time/time.mpp )
77list( APPEND ALIB_INL time/datetime.inl )
78list( APPEND ALIB_CPP time/datetime.cpp )
79list( APPEND ALIB_INL time/stopwatch.inl )
80list( APPEND ALIB_INL time/tickconverter.inl )
81list( APPEND ALIB_CPP time/tickconverter.cpp )
82list( APPEND ALIB_INL time/ticks.inl )
83list( APPEND ALIB_INL time/timepointbase.inl )
84list( APPEND ALIB_CPP time/time.cpp )
85
86# alib::threads
87list( APPEND ALIB_H ALib.Threads.H )
88list( APPEND ALIB_MPP threads/threads.mpp )
89list( APPEND ALIB_INL threads/thread.inl )
90list( APPEND ALIB_INL threads/lock.inl )
91list( APPEND ALIB_INL threads/recursivelock.inl )
92list( APPEND ALIB_INL threads/recursivetimedlock.inl )
93list( APPEND ALIB_INL threads/sharedlock.inl )
94list( APPEND ALIB_INL threads/sharedtimedlock.inl )
95list( APPEND ALIB_INL threads/timedlock.inl )
96
97if( NOT ALIB_SINGLE_THREADED )
98 list( APPEND ALIB_INL threads/dbgasserters.inl )
99 list( APPEND ALIB_CPP threads/dbgasserters.cpp )
100 list( APPEND ALIB_INL threads/condition.inl )
101 list( APPEND ALIB_INL threads/promise.inl )
102 list( APPEND ALIB_CPP threads/promise.cpp )
103
104 list( APPEND ALIB_CPP threads/thread.cpp )
105 list( APPEND ALIB_CPP threads/locks.cpp )
106endif()
107
108list( APPEND ALIB_INL characters/chartypes.inl )
109list( APPEND ALIB_INL characters/chartraits.inl )
110list( APPEND ALIB_INL characters/chartraits_stdtypes.inl )
111
112list( APPEND ALIB_H ALib.Characters.Functions.H )
113list( APPEND ALIB_MPP characters/functions.mpp )
114list( APPEND ALIB_INL characters/functions.inl )
115list( APPEND ALIB_CPP characters/functions.cpp )
116list( APPEND ALIB_H ALib.Compatibility.QTCharacters.H )
117
118list( APPEND ALIB_H ALib.EnumOps.H )
119list( APPEND ALIB_MPP enumops/enumops.mpp )
120list( APPEND ALIB_HPP enumops/enumops.prepro.hpp )
121list( APPEND ALIB_INL enumops/underlyingintegral.inl )
122list( APPEND ALIB_INL enumops/arithmetical.inl )
123list( APPEND ALIB_INL enumops/bitwise.inl )
124list( APPEND ALIB_INL enumops/iterable.inl )
125list( APPEND ALIB_INL enumops/iterablebitset.inl )
126list( APPEND ALIB_INL enumops/bitwise_iterable_conversion.inl )
127
128
129################################# Normal Modules #############################
130
131if( "ALOX" IN_LIST ALibBuild )
132 list( APPEND ALIB_H ALib.ALox.H )
133 list( APPEND ALIB_H ALib.ALox.Impl.H )
134 list( APPEND ALIB_MPP alox/alox_init.mpp )
135 list( APPEND ALIB_INL alox/alox_init.inl )
136 list( APPEND ALIB_MPP alox/alox_impl.mpp )
137 list( APPEND ALIB_MPP alox/alox.mpp )
138 list( APPEND ALIB_HPP alox/alox.prepro.hpp )
139 list( APPEND ALIB_INL alox/aloxcamp.inl )
140 list( APPEND ALIB_INL alox/log.inl )
141 list( APPEND ALIB_INL alox/logtools.inl )
142 list( APPEND ALIB_INL alox/lox.inl )
143
144 list( APPEND ALIB_CPP alox/aloxcamp.cpp )
145 list( APPEND ALIB_CPP alox/aloxinit.cpp )
146 list( APPEND ALIB_CPP alox/alox.cpp )
147 list( APPEND ALIB_CPP alox/logtools.cpp )
148#
149 list( APPEND ALIB_INL alox/detail/domain.inl )
150 list( APPEND ALIB_INL alox/detail/logger.inl )
151 list( APPEND ALIB_INL alox/detail/loxpimpl.inl )
152 list( APPEND ALIB_INL alox/detail/scopedump.inl )
153 list( APPEND ALIB_INL alox/detail/scopeinfo.inl )
154 list( APPEND ALIB_INL alox/detail/scopestore.inl )
155
156 list( APPEND ALIB_CPP alox/detail/domain.cpp )
157 list( APPEND ALIB_CPP alox/detail/loxpimpl.cpp )
158 list( APPEND ALIB_CPP alox/detail/scopedump.cpp )
159 list( APPEND ALIB_CPP alox/detail/scopeinfo.cpp )
160 list( APPEND ALIB_CPP alox/detail/scopestore.cpp )
161
162 list( APPEND ALIB_INL alox/textlogger/plaintextlogger.inl )
163 list( APPEND ALIB_INL alox/textlogger/textlogger.inl )
164 list( APPEND ALIB_INL alox/textlogger/variables.inl )
165 list( APPEND ALIB_CPP alox/textlogger/plaintextlogger.cpp )
166 list( APPEND ALIB_CPP alox/textlogger/textlogger.cpp )
167 list( APPEND ALIB_CPP alox/textlogger/variables.cpp )
168
169 list( APPEND ALIB_INL alox/loggers/ansilogger.inl )
170 list( APPEND ALIB_INL alox/loggers/consolelogger.inl )
171 list( APPEND ALIB_INL alox/loggers/memorylogger.inl )
172 list( APPEND ALIB_INL alox/loggers/textfilelogger.inl )
173 list( APPEND ALIB_INL alox/loggers/vstudiologger.inl )
174 list( APPEND ALIB_INL alox/loggers/windowsconsolelogger.inl )
175
176 list( APPEND ALIB_CPP alox/loggers/ansilogger.cpp )
177 list( APPEND ALIB_CPP alox/loggers/consolelogger.cpp )
178 list( APPEND ALIB_CPP alox/loggers/textfilelogger.cpp )
179 list( APPEND ALIB_CPP alox/loggers/vstudiologger.cpp )
180 list( APPEND ALIB_CPP alox/loggers/windowsconsolelogger.cpp )
181
182endif()
183
184if( "APP" IN_LIST ALibBuild )
185 list( APPEND ALIB_H ALib.App.H )
186 list( APPEND ALIB_H ALib.App.CLI.H )
187 list( APPEND ALIB_HPP app/app.prepro.hpp )
188 list( APPEND ALIB_MPP app/app.mpp )
189 list( APPEND ALIB_INL app/app.inl )
190 list( APPEND ALIB_MPP app/appcli.mpp )
191 list( APPEND ALIB_INL app/appcli.inl )
192 list( APPEND ALIB_INL app/appclicamp.inl )
193 list( APPEND ALIB_INL app/appclienums.inl )
194
195 list( APPEND ALIB_CPP app/app.cpp )
196 list( APPEND ALIB_CPP app/appcli.cpp )
197 list( APPEND ALIB_CPP app/appclicamp.cpp )
198endif()
199
200if( "BITBUFFER" IN_LIST ALibBuild )
201 list( APPEND ALIB_H ALib.BitBuffer.H )
202 list( APPEND ALIB_MPP bitbuffer/bitbuffer.mpp )
203 list( APPEND ALIB_HPP bitbuffer/bitbuffer.prepro.hpp )
204 list( APPEND ALIB_INL bitbuffer/arraycompressor.inl )
205 list( APPEND ALIB_INL bitbuffer/bitbuffer.inl )
206 list( APPEND ALIB_INL bitbuffer/ac_v1/acalgos.inl.inl )
207 list( APPEND ALIB_INL bitbuffer/ac_v1/ac.inl )
208 list( APPEND ALIB_INL bitbuffer/ac_v1/huffman.inl )
209
210 list( APPEND ALIB_CPP bitbuffer/bitbuffer.cpp )
211 list( APPEND ALIB_CPP bitbuffer/ac_v1/ac.cpp )
212 list( APPEND ALIB_CPP bitbuffer/ac_v1/huffman.cpp )
213endif()
214
215if( "BOXING" IN_LIST ALibBuild )
216 list( APPEND ALIB_H ALib.Boxing.H )
217 list( APPEND ALIB_MPP boxing/boxing.mpp )
218 list( APPEND ALIB_HPP boxing/boxing.prepro.hpp )
219 list( APPEND ALIB_INL boxing/box.inl )
220 list( APPEND ALIB_INL boxing/boxes.inl )
221 list( APPEND ALIB_INL boxing/boxstrap.inl )
222 list( APPEND ALIB_INL boxing/enum.inl )
223 list( APPEND ALIB_INL boxing/placeholder.inl )
224 list( APPEND ALIB_INL boxing/boxingtraits.inl )
225 list( APPEND ALIB_INL boxing/boxing_debug.inl )
226
227 list( APPEND ALIB_INL boxing/boxingcustoms.inl.inl )
228 list( APPEND ALIB_INL boxing/functiondecls.inl )
229 list( APPEND ALIB_INL boxing/functiondefs.inl.inl )
230 list( APPEND ALIB_INL boxing/detail/vtable.inl )
231
232 list( APPEND ALIB_CPP boxing/boxstrap.cpp )
233 list( APPEND ALIB_CPP boxing/boxes.cpp )
234 list( APPEND ALIB_CPP boxing/box.cpp )
235 list( APPEND ALIB_CPP boxing/detail/vtable.cpp )
236 list( APPEND ALIB_CPP boxing/detail/boxingcustoms.cpp )
237 list( APPEND ALIB_CPP boxing/detail/dbgdoublelengthcheck.cpp )
238 list( APPEND ALIB_CPP boxing/boxing_debug.cpp )
239
240 list( APPEND ALIB_H ALib.Boxing.StdFunctors.H )
241 list( APPEND ALIB_H ALib.Compatibility.StdBoxtraits.H )
242 list( APPEND ALIB_H ALib.Compatibility.QTBoxing.H )
243
244 if( "STRINGS" IN_LIST ALibBuild )
245 list( APPEND ALIB_INL boxing/strings_appendables.inl )
246 list( APPEND ALIB_INL boxing/extensions/strings_tfield.inl )
247 list( APPEND ALIB_CPP boxing/extensions/strings_tfield.cpp )
248
249 endif()
250endif()
251
252if( "CAMP" IN_LIST ALibBuild )
253 list( APPEND ALIB_H ALib.Camp.H )
254 list( APPEND ALIB_MPP camp/camp.mpp )
255 list( APPEND ALIB_HPP camp/camp.prepro.hpp )
256 list( APPEND ALIB_INL camp/camp.inl )
257
258 # additions from lower-level modules
259 list( APPEND ALIB_INL camp/loadtokens.inl )
260
261 # Basecamp
262 list( APPEND ALIB_H ALib.Camp.Base.H )
263 list( APPEND ALIB_MPP camp/basecamp.mpp )
264 list( APPEND ALIB_CPP camp/basecamp.cpp )
265endif()
266
267if( "CLI" IN_LIST ALibBuild )
268 list( APPEND ALIB_H ALib.CLI.H )
269 list( APPEND ALIB_MPP cli/cli.mpp )
270 list( APPEND ALIB_INL cli/arguments.inl )
271 list( APPEND ALIB_INL cli/clicamp.inl )
272 list( APPEND ALIB_INL cli/cliutil.inl )
273 list( APPEND ALIB_INL cli/commandline.inl )
274
275 list( APPEND ALIB_CPP cli/arguments.cpp )
276 list( APPEND ALIB_CPP cli/clicamp.cpp )
277 list( APPEND ALIB_CPP cli/cliutil.cpp )
278 list( APPEND ALIB_CPP cli/commandline.cpp )
279endif()
280
281if( "VARIABLES" IN_LIST ALibBuild )
282 list( APPEND ALIB_H ALib.Variables.H )
283 list( APPEND ALIB_MPP variables/variables.mpp )
284 list( APPEND ALIB_HPP variables/variables.prepro.hpp )
285 list( APPEND ALIB_INL variables/erpriority.inl )
286 list( APPEND ALIB_INL variables/vmeta.inl )
287 list( APPEND ALIB_INL variables/declaration.inl )
288 list( APPEND ALIB_INL variables/configuration.inl )
289 list( APPEND ALIB_CPP variables/configuration.cpp )
290 list( APPEND ALIB_CPP variables/vmeta.cpp )
291 list( APPEND ALIB_CPP variables/variable.cpp )
292
293 list( APPEND ALIB_H ALib.Variables.Plugins.H )
294 list( APPEND ALIB_MPP variables/plugins.mpp )
295 list( APPEND ALIB_CPP variables/plugins.cpp )
296
297 list( APPEND ALIB_H ALib.Variables.IniFile.H )
298 list( APPEND ALIB_MPP variables/inifile.mpp )
299 list( APPEND ALIB_INL variables/inifile.inl )
300 list( APPEND ALIB_INL variables/inifilefeeder.inl )
301 list( APPEND ALIB_CPP variables/inifile.cpp )
302 list( APPEND ALIB_CPP variables/inifilefeeder.cpp )
303
304 list( APPEND ALIB_H ALib.Variables.ResourcePool.H )
305 list( APPEND ALIB_MPP variables/configresourcepool.mpp )
306 list( APPEND ALIB_CPP variables/configresourcepool.cpp )
307
308
309
310endif()
311
312if( "CONTAINERS" IN_LIST ALibBuild )
313 list( APPEND ALIB_HPP containers/containers.prepro.hpp )
314 list( APPEND ALIB_INL containers/recycling.inl )
315 list( APPEND ALIB_INL containers/valuedescriptor.inl )
316
317 list( APPEND ALIB_H ALib.Containers.FixedCapacityVector.H )
318 list( APPEND ALIB_MPP containers/fixedcapacityvector.mpp )
319 list( APPEND ALIB_INL containers/fixedcapacityvector.inl )
320
321 list( APPEND ALIB_H ALib.Containers.HashTable.H )
322 list( APPEND ALIB_MPP containers/hashtable.mpp )
323 list( APPEND ALIB_INL containers/detail/hashtablebase.inl )
324 list( APPEND ALIB_INL containers/hashtable.inl )
325 list( APPEND ALIB_CPP containers/detail/hashtablebase.cpp )
326
327 list( APPEND ALIB_H ALib.Containers.List.H )
328 list( APPEND ALIB_MPP containers/list.mpp )
329 list( APPEND ALIB_INL containers/list.inl )
330
331 list( APPEND ALIB_H ALib.Containers.LRUCacheTable.H )
332 list( APPEND ALIB_MPP containers/lrucachetable.mpp )
333 list( APPEND ALIB_INL containers/lrucachetable.inl )
334
335 list( APPEND ALIB_H ALib.Containers.SharedPtr.H )
336 list( APPEND ALIB_MPP containers/sharedptr.mpp )
337 list( APPEND ALIB_INL containers/sharedptr.inl )
338
339 list( APPEND ALIB_H ALib.Containers.SharedVal.H )
340 list( APPEND ALIB_MPP containers/sharedval.mpp )
341 list( APPEND ALIB_INL containers/sharedval.inl )
342
343 if( "STRINGS" IN_LIST ALibBuild )
344 list( APPEND ALIB_H ALib.Containers.StringTree.H )
345 list( APPEND ALIB_MPP containers/stringtree.mpp )
346 list( APPEND ALIB_INL containers/stringtree.inl )
347 list( APPEND ALIB_INL containers/detail/stringtreebase.inl )
348 list( APPEND ALIB_CPP containers/detail/stringtreebase.cpp )
349 list( APPEND ALIB_H ALib.Containers.StringTreeIterator.H )
350 list( APPEND ALIB_MPP containers/stringtreeiterator.mpp )
351 list( APPEND ALIB_INL containers/stringtreeiterator.inl )
352 endif()
353endif()
354
355
356if( "ENUMRECORDS" IN_LIST ALibBuild )
357 list( APPEND ALIB_H ALib.EnumRecords.H )
358 list( APPEND ALIB_MPP enumrecords/enumrecords.mpp )
359 list( APPEND ALIB_HPP enumrecords/enumrecords.prepro.hpp )
360 list( APPEND ALIB_INL enumrecords/detail/enumrecordmap.inl )
361 list( APPEND ALIB_INL enumrecords/records.inl )
362 list( APPEND ALIB_INL enumrecords/serialization.inl )
363 list( APPEND ALIB_INL enumrecords/builtin.inl )
364
365 list( APPEND ALIB_H ALib.EnumRecords.Bootstrap.H )
366 list( APPEND ALIB_MPP enumrecords/bootstrap/recordbootstrap.mpp )
367 list( APPEND ALIB_INL enumrecords/bootstrap/recordparser.inl )
368 list( APPEND ALIB_INL enumrecords/bootstrap/recordbootstrap.inl )
369 list( APPEND ALIB_CPP enumrecords/bootstrap/recordparser.cpp )
370 if( "BOXING" IN_LIST ALibBuild )
371 list( APPEND ALIB_INL enumrecords/boxing_enums.inl )
372 endif()
373 list( APPEND ALIB_CPP enumrecords/records.cpp )
374
375endif()
376
377if( "EXCEPTIONS" IN_LIST ALibBuild )
378 list( APPEND ALIB_H ALib.Exceptions.H )
379 list( APPEND ALIB_MPP exceptions/exceptions.mpp )
380 list( APPEND ALIB_INL exceptions/message.inl )
381 list( APPEND ALIB_INL exceptions/exception.inl )
382 list( APPEND ALIB_CPP exceptions/exception.cpp )
383endif()
384
385if( "EXPRESSIONS" IN_LIST ALibBuild )
386 list( APPEND ALIB_H ALib.Expressions.H )
387 list( APPEND ALIB_H ALib.Expressions.Impl.H )
388 list( APPEND ALIB_MPP expressions/expressions.mpp )
389 list( APPEND ALIB_MPP expressions/expressions_impl.mpp )
390 list( APPEND ALIB_INL expressions/detail/ast.inl )
391 list( APPEND ALIB_INL expressions/parser.inl )
392 list( APPEND ALIB_HPP expressions/expressions.prepro.hpp )
393 list( APPEND ALIB_INL expressions/expressionscamp.inl )
394 list( APPEND ALIB_INL expressions/compiler.inl )
395 list( APPEND ALIB_INL expressions/compilerplugin.inl )
396 list( APPEND ALIB_INL expressions/expression.inl )
397 list( APPEND ALIB_INL expressions/scope.inl )
398 list( APPEND ALIB_INL expressions/standardrepository.inl )
399
400 list( APPEND ALIB_INL expressions/detail/ast_impl.inl )
401 list( APPEND ALIB_INL expressions/detail/parser_impl.inl )
402 list( APPEND ALIB_INL expressions/detail/program.inl )
403 list( APPEND ALIB_INL expressions/detail/virtualmachine.inl )
404
405 list( APPEND ALIB_INL expressions/plugins/arithmetics.inl )
406 list( APPEND ALIB_INL expressions/plugins/autocast.inl )
407 list( APPEND ALIB_INL expressions/plugins/calculus.inl )
408 list( APPEND ALIB_INL expressions/plugins/dateandtime.inl )
409 list( APPEND ALIB_INL expressions/plugins/elvisoperator.inl )
410 list( APPEND ALIB_INL expressions/plugins/math.inl )
411 list( APPEND ALIB_INL expressions/plugins/strings.inl )
412
413 list( APPEND ALIB_CPP expressions/expressionscamp.cpp )
414 list( APPEND ALIB_CPP expressions/compiler.cpp )
415 list( APPEND ALIB_CPP expressions/expression.cpp )
416 list( APPEND ALIB_CPP expressions/standardrepository.cpp )
417
418 list( APPEND ALIB_CPP expressions/parser.cpp )
419
420 list( APPEND ALIB_CPP expressions/detail/ast.cpp )
421 list( APPEND ALIB_CPP expressions/detail/parser_impl.cpp )
422 list( APPEND ALIB_CPP expressions/detail/program.cpp )
423 list( APPEND ALIB_CPP expressions/detail/virtualmachine.cpp )
424
425 list( APPEND ALIB_CPP expressions/plugins/arithmetics.cpp )
426 list( APPEND ALIB_CPP expressions/plugins/autocast.cpp )
427 list( APPEND ALIB_CPP expressions/plugins/calculus.cpp )
428 list( APPEND ALIB_CPP expressions/plugins/elvisoperator.cpp )
429 list( APPEND ALIB_CPP expressions/plugins/math.cpp )
430 list( APPEND ALIB_CPP expressions/plugins/strings.cpp )
431 list( APPEND ALIB_CPP expressions/plugins/dateandtime.cpp )
432
433 list( APPEND ALIB_INL expressions/util/expressionformatter.inl )
434 list( APPEND ALIB_CPP expressions/util/expressionformatter.cpp )
435
436 endif()
437
438if( "FORMAT" IN_LIST ALibBuild )
439 list( APPEND ALIB_H ALib.Format.H )
440 list( APPEND ALIB_MPP format/format.mpp )
441 list( APPEND ALIB_INL format/formatter.inl )
442 list( APPEND ALIB_INL format/fmtexceptions.inl )
443 list( APPEND ALIB_INL format/bytesize.inl )
444 list( APPEND ALIB_INL format/fmtcallerinfo.inl )
445 list( APPEND ALIB_INL format/fmtdatetime.inl )
446 list( APPEND ALIB_INL format/extensions/containers_hashtable.inl )
447 list( APPEND ALIB_INL format/extensions/boxing_format_debug.inl )
448 list( APPEND ALIB_INL format/extensions/resources_debug.inl )
449 list( APPEND ALIB_CPP format/formatter.cpp )
450 list( APPEND ALIB_CPP format/fmtvarious.cpp )
451 list( APPEND ALIB_CPP format/extensions/boxing_format_debug.cpp )
452 list( APPEND ALIB_CPP format/extensions/resources_debug.cpp )
453
454
455
456 list( APPEND ALIB_H ALib.Format.StdImplementation.H )
457 list( APPEND ALIB_MPP format/formatterstdimpl.mpp )
458 list( APPEND ALIB_INL format/formatterstdimpl.inl )
459 list( APPEND ALIB_CPP format/formatterstdimpl.cpp )
460
461 list( APPEND ALIB_H ALib.Format.FormatterPythonStyle.H)
462 list( APPEND ALIB_MPP format/formatterpythonstyle.mpp )
463 list( APPEND ALIB_INL format/formatterpythonstyle.inl )
464 list( APPEND ALIB_CPP format/formatterpythonstyle.cpp )
465
466 list( APPEND ALIB_H ALib.Format.FormatterJavaStyle.H )
467 list( APPEND ALIB_MPP format/formatterjavastyle.mpp )
468 list( APPEND ALIB_INL format/formatterjavastyle.inl )
469 list( APPEND ALIB_CPP format/formatterjavastyle.cpp )
470
471 list( APPEND ALIB_H ALib.Format.Paragraphs.H )
472 list( APPEND ALIB_MPP format/paragraphs.mpp )
473 list( APPEND ALIB_INL format/paragraphs.inl )
474 list( APPEND ALIB_CPP format/paragraphs.cpp )
475
476 list( APPEND ALIB_H ALib.Format.PropertyFormatter.H )
477 list( APPEND ALIB_MPP format/propertyformatter.mpp )
478 list( APPEND ALIB_INL format/propertyformatter.inl )
479 list( APPEND ALIB_CPP format/propertyformatter.cpp )
480
481 list( APPEND ALIB_H ALib.Format.PropertyFormatters.H )
482 list( APPEND ALIB_MPP format/propertyformatters.mpp )
483
484
485endif()
486
487
488if( "MONOMEM" IN_LIST ALibBuild )
489 list( APPEND ALIB_H ALib.Monomem.H )
490 list( APPEND ALIB_MPP monomem/monomem.mpp )
491 list( APPEND ALIB_HPP monomem/monomem.prepro.hpp )
492 list( APPEND ALIB_INL monomem/monoallocator.inl )
493 list( APPEND ALIB_INL monomem/monoallocator.t.inl )
494 list( APPEND ALIB_INL monomem/localallocator.inl )
495 list( APPEND ALIB_INL monomem/poolallocator.inl )
496 list( APPEND ALIB_INL monomem/poolallocator.t.inl )
497 list( APPEND ALIB_CPP monomem/monomem.cpp )
498
499 list( APPEND ALIB_H ALib.Monomem.SharedMonoVal.H )
500 list( APPEND ALIB_MPP monomem/sharedmonoval.mpp )
501 list( APPEND ALIB_INL monomem/sharedmonoval.inl )
502
503 list( APPEND ALIB_H ALib.Monomem.StdContainers.H )
504endif()
505
506
507if( "SINGLETONS" IN_LIST ALibBuild )
508 list( APPEND ALIB_H ALib.Singletons.H )
509 list( APPEND ALIB_MPP singletons/singletons.mpp )
510 list( APPEND ALIB_HPP singletons/singletons.prepro.hpp )
511 list( APPEND ALIB_CPP singletons/singletons.cpp )
512endif()
513
514if( "STRINGS" IN_LIST ALibBuild )
515 list( APPEND ALIB_H ALib.Strings.H )
516 list( APPEND ALIB_H ALib.Strings.StdFormatter.H )
517
518 list( APPEND ALIB_MPP strings/strings.mpp )
519 list( APPEND ALIB_HPP strings/strings.prepro.hpp )
520 list( APPEND ALIB_INL strings/appendables.inl )
521 list( APPEND ALIB_INL strings/astring.inl )
522 list( APPEND ALIB_INL strings/cstring.inl )
523 list( APPEND ALIB_INL strings/format.inl )
524 list( APPEND ALIB_INL strings/numberformat.inl )
525 list( APPEND ALIB_INL strings/localstring.inl )
526 list( APPEND ALIB_INL strings/string.inl )
527 list( APPEND ALIB_INL strings/stringnzt.inl )
528 list( APPEND ALIB_INL strings/substring.inl )
529 list( APPEND ALIB_INL strings/detail/tastring.inl )
530 list( APPEND ALIB_INL strings/detail/tastringimpl.inl )
531
532 list( APPEND ALIB_INL strings/detail/tastring_ca_decl.inl.inl )
533 list( APPEND ALIB_INL strings/detail/tastring_ca_impl.inl.inl )
534 list( APPEND ALIB_INL strings/detail/numberconversion.inl )
535
536 list( APPEND ALIB_CPP strings/astring.cpp )
537 list( APPEND ALIB_CPP strings/numberformat.cpp )
538 list( APPEND ALIB_CPP strings/string.cpp )
539 list( APPEND ALIB_CPP strings/substring.cpp )
540 list( APPEND ALIB_CPP strings/detail/numberconversion.cpp )
541
542 list( APPEND ALIB_H ALib.Compatibility.QTStrings.H )
543 list( APPEND ALIB_H ALib.Strings.StdFunctors.H )
544 list( APPEND ALIB_H ALib.Strings.StdIOStream.H )
545 list( APPEND ALIB_MPP strings/stdiostream.mpp )
546 list( APPEND ALIB_CPP strings/stdiostream.cpp )
547
548
549 list( APPEND ALIB_H ALib.Strings.Tokenizer.H )
550 list( APPEND ALIB_MPP strings/util/tokenizer.mpp )
551 list( APPEND ALIB_INL strings/util/tokenizer.inl )
552 list( APPEND ALIB_CPP strings/util/tokenizer.cpp )
553
554 list( APPEND ALIB_H ALib.Strings.Escaper.H )
555 list( APPEND ALIB_MPP strings/util/escaper.mpp )
556 list( APPEND ALIB_INL strings/util/escaper.inl )
557 list( APPEND ALIB_CPP strings/util/escaper.cpp )
558
559 list( APPEND ALIB_H ALib.Strings.Search.H )
560 list( APPEND ALIB_MPP strings/util/search.mpp )
561 list( APPEND ALIB_INL strings/util/search.inl )
562 list( APPEND ALIB_INL strings/util/regexmatcher.inl )
563 list( APPEND ALIB_INL strings/util/wildcardmatcher.inl )
564 list( APPEND ALIB_CPP strings/util/search.cpp )
565 list( APPEND ALIB_CPP strings/util/regexmatcher.cpp )
566 list( APPEND ALIB_CPP strings/util/wildcardmatcher.cpp )
567
568 list( APPEND ALIB_H ALib.Strings.Calendar.H )
569 list( APPEND ALIB_MPP strings/util/calendar.mpp )
570 list( APPEND ALIB_INL strings/util/calendar.inl )
571 list( APPEND ALIB_CPP strings/util/calendar.cpp )
572
573 list( APPEND ALIB_H ALib.Strings.Token.H )
574 list( APPEND ALIB_MPP strings/util/token.mpp )
575 list( APPEND ALIB_INL strings/util/token.inl )
576 list( APPEND ALIB_CPP strings/util/token.cpp )
577
578 list( APPEND ALIB_H ALib.Strings.AutoSizes.H )
579 list( APPEND ALIB_MPP strings/util/autosizes.mpp )
580 list( APPEND ALIB_INL strings/util/autosizes.inl )
581 list( APPEND ALIB_CPP strings/util/autosizes.cpp )
582
583 list( APPEND ALIB_H ALib.Strings.Vector.H )
584
585
586 if( "MONOMEM" IN_LIST ALibBuild )
587 list( APPEND ALIB_H ALib.Strings.Monomem.H )
588 list( APPEND ALIB_MPP strings/monomem/strings_monomem.mpp )
589 list( APPEND ALIB_INL strings/monomem/strings_monomem.t.inl )
590 list( APPEND ALIB_CPP strings/monomem/strings_monomem.cpp )
591 endif()
592endif()
593
594if( "RESOURCES" IN_LIST ALibBuild )
595 list( APPEND ALIB_H ALib.Resources.H )
596 list( APPEND ALIB_MPP resources/resources.mpp )
597 list( APPEND ALIB_HPP resources/resources.prepro.hpp )
598 list( APPEND ALIB_INL resources/resources.inl )
599 list( APPEND ALIB_INL resources/detail/resourcemap.inl )
600 list( APPEND ALIB_INL resources/localresourcepool.inl )
601
602 list( APPEND ALIB_CPP resources/localresourcepool.cpp )
603
604 # additions from lower-level modules
605 list( APPEND ALIB_INL resources/extensions/enums_serialization.inl )
606 list( APPEND ALIB_INL resources/extensions/strings_loadtokens.inl )
607 list( APPEND ALIB_CPP resources/extensions/strings_loadtokens.cpp )
608endif()
609
610if( "SYSTEM" IN_LIST ALibBuild )
611
612 #### BASE/system ###
613 list( APPEND ALIB_H ALib.System.H )
614 list( APPEND ALIB_MPP system/system.mpp )
615 list( APPEND ALIB_HPP system/system.prepro.hpp )
616 list( APPEND ALIB_INL system/console.inl )
617 list( APPEND ALIB_INL system/environment.inl )
618 list( APPEND ALIB_INL system/path.inl )
619 list( APPEND ALIB_INL system/processinfo.inl )
620 list( APPEND ALIB_INL system/shellcommand.inl )
621
622 list( APPEND ALIB_CPP system/console.cpp )
623 list( APPEND ALIB_CPP system/environment.cpp )
624 list( APPEND ALIB_CPP system/path.cpp )
625 list( APPEND ALIB_CPP system/processinfo.cpp )
626 list( APPEND ALIB_CPP system/shellcommand.cpp )
627 if ( ${APPLE} )
628 list( APPEND ALIB_CPP system/path.mm )
629 endif()
630endif()
631
632if( "THREADMODEL" IN_LIST ALibBuild )
633 list( APPEND ALIB_H ALib.ThreadModel.H )
634 list( APPEND ALIB_MPP threadmodel/threadmodel.mpp )
635 list( APPEND ALIB_INL threadmodel/dedicatedworker.inl )
636 list( APPEND ALIB_INL threadmodel/jobs.inl )
637 list( APPEND ALIB_INL threadmodel/threadpool.inl )
638 list( APPEND ALIB_INL threadmodel/trigger.inl )
639
640 list( APPEND ALIB_CPP threadmodel/dedicatedworker.cpp )
641 list( APPEND ALIB_CPP threadmodel/threadpool.cpp )
642 list( APPEND ALIB_CPP threadmodel/trigger.cpp )
643endif()
644
645
646if( "FILES" IN_LIST ALibBuild )
647 list( APPEND ALIB_H ALib.Files.H )
648 list( APPEND ALIB_MPP files/files.mpp )
649 list( APPEND ALIB_HPP files/files.prepro.hpp )
650 list( APPEND ALIB_INL files/filescamp.inl )
651 list( APPEND ALIB_INL files/ffilter.inl )
652 list( APPEND ALIB_INL files/finfo.inl )
653 list( APPEND ALIB_INL files/fscanner.inl )
654 list( APPEND ALIB_INL files/ftree.inl )
655
656 list( APPEND ALIB_CPP files/filescamp.cpp )
657 list( APPEND ALIB_CPP files/file.cpp )
658 list( APPEND ALIB_CPP files/finfo.cpp )
659 list( APPEND ALIB_CPP files/fscanner.cpp )
660 list( APPEND ALIB_CPP files/ftree.cpp )
661
662 list( APPEND ALIB_H ALib.Files.TextFile.H )
663
664 if( "EXPRESSIONS" IN_LIST ALibBuild )
665 list( APPEND ALIB_H ALib.Files.Expressions.H )
666 list( APPEND ALIB_MPP files/expressions/fileexpressions.mpp )
667 list( APPEND ALIB_INL files/expressions/fileexpressions.inl )
668 list( APPEND ALIB_CPP files/expressions/fileexpressions.cpp )
669 endif()
670
671endif()
672
673
674
675
676# ##################################################################################################
677# Check for duplicates. This is a double-check to detect that this script needs a fix.
678# ##################################################################################################
679
680CollectAndRemoveDuplicates( "ALIB_HPP" "duplicates" )
681LIST( LENGTH duplicates cntDuplicates )
682
683IF( ${cntDuplicates} GREATER 0 )
684 message( ERROR "Internal script error ALIBSources.cmake: "
685 "DUPLICATE HPP FILES FOUND.\nSee list below! "
686 "(Processing continues with de-duplicated list)" )
687 message( STATUS "LIST OF DUPLICATE HPP FILES:" )
688 LIST(SORT duplicates)
689 FOREACH( entry IN LISTS duplicates )
690 message( STATUS " ${entry}" )
691 ENDFOREACH()
692 message( STATUS "(end of list)" )
693ENDIF()
694
695CollectAndRemoveDuplicates( "ALIB_INL" "duplicates" )
696LIST( LENGTH duplicates cntDuplicates )
697IF( ${cntDuplicates} GREATER 0 )
698 message( ERROR "Internal script error ALIBSources.cmake: "
699 "DUPLICATE INL FILES FOUND.\nSee list below! "
700 "(Processing continues with de-duplicated list)" )
701 message( STATUS "LIST OF DUPLICATE INL FILES:" )
702 LIST(SORT duplicates)
703 FOREACH( entry IN LISTS duplicates )
704 message( STATUS " ${entry}" )
705 ENDFOREACH()
706 message( STATUS "(end of list)" )
707ENDIF()
708
709CollectAndRemoveDuplicates( "ALIB_CPP" "duplicates" )
710LIST( LENGTH duplicates cntDuplicates )
711IF( ${cntDuplicates} GREATER 0 )
712 message( ERROR "Internal script error ALIBSources.cmake: "
713 "DUPLICATE CPP FILES FOUND.\nSee list below! "
714 "(Processing continues with de-duplicated list)" )
715 message( STATUS "LIST OF DUPLICATE CPP FILES:" )
716 LIST(SORT duplicates)
717 FOREACH( entry IN LISTS duplicates )
718 message( STATUS " ${entry}" )
719 ENDFOREACH()
720 message( STATUS "(end of list)" )
721ENDIF()
722CollectAndRemoveDuplicates( "ALIB_MPP" "duplicates" )
723LIST( LENGTH duplicates cntDuplicates )
724IF( ${cntDuplicates} GREATER 0 )
725 message( ERROR "Internal script error ALIBSources.cmake: "
726 "DUPLICATE MPP FILES FOUND.\nSee list below! "
727 "(Processing continues with de-duplicated list)" )
728 message( STATUS "LIST OF DUPLICATE MPP FILES:" )
729 LIST(SORT duplicates)
730 FOREACH( entry IN LISTS duplicates )
731 message( STATUS " ${entry}" )
732 ENDFOREACH()
733 message( STATUS "(end of list)" )
734ENDIF()
735# ##################################################################################################
736# Check for ".hpp" in header-files or ".cpp" in sources
737# ##################################################################################################
738FOREACH( entry IN LISTS ALIB_HPP )
739 IF( NOT ${entry} MATCHES "([.]hpp$)|([.]inl$)|([.]mpp$)" )
740 message( FATAL_ERROR "Non-header-file (wrong extension) found in header-file list: ${entry}" )
741 ENDIF()
742ENDFOREACH()
743
744FOREACH( entry IN LISTS ALIB_CPP )
745 IF( NOT ${entry} MATCHES "([.]cpp$)|([.]cppm$)|([.]mm$)" )
746 message( FATAL_ERROR "File with wrong extension found in source file list: ${entry}" )
747 ENDIF()
748ENDFOREACH()
749
750# ##################################################################################################
751# Copy sources if requested
752# ##################################################################################################
753if( ALIB_SOURCE_COPY_TARGET_DIR )
754
755 # Control what to copy: by default copy only headers relevant to the current module selection.
756 # Users can turn this OFF to copy all sources (including .cpp files) as before.
757 option(ALIB_COPY_HEADERS_ONLY "When copying to temporary build folder, copy only headers (.H, .hpp, .inl, .mpp) needed for the selected modules" ON)
758
759 # check: must be single folder name (not a path)
760 string(FIND "${ALIB_SOURCE_COPY_TARGET_DIR}" "/" separatorPosUnix)
761 string(FIND "${ALIB_SOURCE_COPY_TARGET_DIR}" "\\" separatorPosWindows)
762
763 if(separatorPosUnix GREATER -1 OR separatorPosWindows GREATER -1)
764 MESSAGE(FATAL_ERROR "The given variable ALIB_SOURCE_COPY_TARGET_DIR=\"${ALIB_SOURCE_COPY_TARGET_DIR}\" "
765 "must be a folder name and not contain folder separators!")
766 endif()
767
768 # Prepend build directory
769 set(ALIB_SOURCE_COPY_TARGET_DIR "${CMAKE_BINARY_DIR}/${ALIB_SOURCE_COPY_TARGET_DIR}")
770
771 MESSAGE( STATUS "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
772 MESSAGE( STATUS "!!! ATTENTION: Copying sources. !!!")
773 MESSAGE( STATUS "!!! The destination directory will be deleted, hence !!!")
774 MESSAGE( STATUS "!!! CHANGES WILL BE LOST with next CMake run! !!!")
775 MESSAGE( STATUS "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
776 MESSAGE( STATUS "Copying source files of selected ALib modules to: ’${ALIB_SOURCE_COPY_TARGET_DIR}’")
777
778 # delete destination directory
779 MESSAGE( "Cleaning source-copy target directory ${ALIB_SOURCE_COPY_TARGET_DIR}" )
780 file( REMOVE_RECURSE ${ALIB_SOURCE_COPY_TARGET_DIR} )
781
782 #### Create directories and copy public headers (ALib.*.H live at src root) ####
783 foreach( fileName IN LISTS ALIB_H )
784 SET( destPath "${ALIB_SOURCE_COPY_TARGET_DIR}/ALib/${fileName}" )
785 get_filename_component(destPath ${destPath} DIRECTORY )
786 #MESSAGE("Copying file: ${ALIB_SOURCE_DIR}/ALib/${fileName}" )
787 #MESSAGE(" to: ${destPath}" )
788 file( MAKE_DIRECTORY "${destPath}")
789 file( COPY "${ALIB_SOURCE_DIR}/${fileName}" DESTINATION "${destPath}" )
790 endforeach()
791
792 # Build list of non-root headers to copy from src/alib tree
793 set(_alib_copy_lists ${ALIB_MPP} ${ALIB_INL} ${ALIB_HPP})
794
795 # Optionally include .cpp compilation units if headers-only copying is disabled
796 if(NOT ALIB_COPY_HEADERS_ONLY)
797 list(APPEND _alib_copy_lists ${ALIB_CPP})
798 endif()
799
800 foreach( fileName IN LISTS _alib_copy_lists )
801 SET( destPath "${ALIB_SOURCE_COPY_TARGET_DIR}/alib/${fileName}" )
802 get_filename_component(destPath ${destPath} DIRECTORY )
803 file( MAKE_DIRECTORY "${destPath}")
804 file( COPY "${ALIB_SOURCE_DIR}/alib/${fileName}" DESTINATION "${destPath}" )
805 endforeach()
806
807
808endif()
809
810
811# ##################################################################################################
812# Check if all given files exist and check all files are given
813# ##################################################################################################
814function(CheckFileInclusionForCompleteness fileList baseDir extension )
815 # Ensure the baseDir is an absolute path
816 if(NOT IS_ABSOLUTE "${baseDir}")
817 message(FATAL_ERROR "The provided baseDir '${baseDir}' must be an absolute path.")
818 endif()
819
820 # Step 1: Loop over the given list and check for file existence
821 foreach(file_path IN LISTS fileList)
822
823 # Form the absolute path of the file relative to baseDir
824 set(absolute_file_path "${baseDir}/${file_path}")
825
826 # Check if the file exists
827 if(NOT EXISTS "${absolute_file_path}")
828 message(WARNING "File does not exist: ${absolute_file_path}")
829 endif()
830
831 endforeach()
832
833 # Step 2: Glob the baseDir for all files with the given extension
834 file(GLOB_RECURSE found_files "${baseDir}/*.${extension}")
835
836 # Normalize the found files to be relative to baseDir, for easier comparison
837 set(relative_found_files "")
838 foreach(file_path IN LISTS found_files)
839 file(RELATIVE_PATH relative_file "${baseDir}" "${file_path}")
840 list(APPEND relative_found_files "${relative_file}")
841 endforeach()
842
843 # Step 3: Compare the globbed files with the provided file list
844 foreach(found_file IN LISTS relative_found_files)
845 # Check if the found file is in the list
846 list(FIND fileList "${found_file}" index)
847
848 if(${index} EQUAL -1)
849 message(WARNING "Found an untracked file: ${found_file}")
850 endif()
851 endforeach()
852endfunction()
853
854# ##################################################################################################
855# Check if all given files have one of the given extensions
856# ##################################################################################################
857function(ValidateFileExtensions filenames_var extensions_var)
858 # Dereference the input variable names to get their values
859 set(filenames ${${filenames_var}})
860 set(extensions ${${extensions_var}})
861
862 # Debug information
863 #string(JOIN " " actual_filenames ${filenames})
864 #string(JOIN " " allowed_extensions ${extensions})
865 #message(STATUS "Validating files: ${actual_filenames}")
866 #message(STATUS "Allowed extensions: ${allowed_extensions}")
867
868 # Iterate over each filename
869 foreach(filename IN LISTS filenames)
870 # Extract the file extension using regex
871 string(REGEX MATCH "\\.[^.]*$" file_extension "${filename}")
872
873 # Remove the dot from the extension
874 string(REGEX REPLACE "\\." "" clean_extension "${file_extension}")
875
876 # Check if the extension is in the allowed list
877 list(FIND extensions "${clean_extension}" index)
878
879 if(${index} EQUAL -1) # -1 means the extension is invalid
880 message(FATAL_ERROR "File '${filename}' has an invalid extension: '${clean_extension}'. Allowed extensions are: ${allowed_extensions}")
881 endif()
882 endforeach()
883
884 # Success message if all extensions are valid
885 #message(STATUS "All files have valid extensions.")
886endfunction()
887
888# ##################################################################################################
889# Add base directory to files
890# ##################################################################################################
891function(AddBaseDir baseDir sourceListVar )
892 SET(temp "") # Temporary list to store valid files
893
894 # Iterate over the files in the provided list
895 foreach(fileName IN LISTS "${sourceListVar}")
896 if(EXISTS "${baseDir}/${fileName}")
897 LIST(APPEND temp "${baseDir}/${fileName}")
898 else()
899 message(FATAL_ERROR "Source file not found: ${baseDir}/${fileName}")
900 endif()
901 endforeach()
902
903 # Set output variable with processed list
904 SET("${sourceListVar}" "${temp}" PARENT_SCOPE)
905endfunction()
906
907if(ALibAllModules)
908 CheckFileInclusionForCompleteness( "${ALIB_H}" "${ALIB_SOURCE_DIR}" "H" )
909 CheckFileInclusionForCompleteness( "${ALIB_MPP}" "${ALIB_SOURCE_DIR}/alib" "mpp" )
910 CheckFileInclusionForCompleteness( "${ALIB_INL}" "${ALIB_SOURCE_DIR}/alib" "inl" )
911 CheckFileInclusionForCompleteness( "${ALIB_CPP}" "${ALIB_SOURCE_DIR}/alib" "cpp" )
912 CheckFileInclusionForCompleteness( "${ALIB_HPP}" "${ALIB_SOURCE_DIR}/alib" "hpp" )
913endif()
914set(allowedExtensions "H" "hpp" )
915 ValidateFileExtensions(ALIB_H allowedExtensions)
916set(allowedExtensions "mpp" )
917 ValidateFileExtensions(ALIB_MPP allowedExtensions)
918set(allowedExtensions "inl" )
919 ValidateFileExtensions(ALIB_INL allowedExtensions)
920set(allowedExtensions "hpp" )
921 ValidateFileExtensions(ALIB_HPP allowedExtensions)
922set(allowedExtensions "cpp" "mm" )
923 ValidateFileExtensions(ALIB_CPP allowedExtensions)
924AddBaseDir("${ALIB_SOURCE_DIR}" ALIB_H )
925AddBaseDir("${ALIB_SOURCE_DIR}/alib" ALIB_MPP )
926AddBaseDir("${ALIB_SOURCE_DIR}/alib" ALIB_INL )
927AddBaseDir("${ALIB_SOURCE_DIR}/alib" ALIB_HPP )
928AddBaseDir("${ALIB_SOURCE_DIR}/alib" ALIB_CPP )
929