src/CMakeLists.txt

Fri, 07 Jul 2023 17:46:00 +0200

author
Mike Becker <universe@uap-core.de>
date
Fri, 07 Jul 2023 17:46:00 +0200
changeset 735
b686d0c98c62
parent 727
d92a59f5d261
permissions
-rw-r--r--

unify the list swap SBO sizes

375
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 set(sources
483
929016224c3c add ported UCX buffer implementation
Mike Becker <universe@uap-core.de>
parents: 470
diff changeset
2 utils.c
391
f094a53c1178 adds allocator interface and default implementation
Mike Becker <universe@uap-core.de>
parents: 390
diff changeset
3 allocator.c
576
ba0c4ff6698e first proposal for the string header
Mike Becker <universe@uap-core.de>
parents: 571
diff changeset
4 string.c
503
a89857072ace add new destructor API and apply it to CxList
Mike Becker <universe@uap-core.de>
parents: 494
diff changeset
5 list.c
606
314e9288af2f add array list tests
Mike Becker <universe@uap-core.de>
parents: 601
diff changeset
6 array_list.c
398
8d506ed6c1c0 adds first draft for linked list implementation
Mike Becker <universe@uap-core.de>
parents: 391
diff changeset
7 linked_list.c
483
929016224c3c add ported UCX buffer implementation
Mike Becker <universe@uap-core.de>
parents: 470
diff changeset
8 buffer.c
706
8c6edaccaef1 add empty map implementation - fixes #259
Mike Becker <universe@uap-core.de>
parents: 677
diff changeset
9 map.c
563
69a83fad8a35 improve hash key handling
Mike Becker <universe@uap-core.de>
parents: 558
diff changeset
10 hash_key.c
549
d7f0b5a9a985 #189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents: 503
diff changeset
11 hash_map.c
727
d92a59f5d261 improve mempool implementation
Mike Becker <universe@uap-core.de>
parents: 718
diff changeset
12 mempool.c
599
6536a9a75b71 #222 add printf-like functions
Mike Becker <universe@uap-core.de>
parents: 576
diff changeset
13 printf.c
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents: 599
diff changeset
14 compare.c
375
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
15 )
377
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
16 set(headers
549
d7f0b5a9a985 #189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents: 503
diff changeset
17 cx/common.h
483
929016224c3c add ported UCX buffer implementation
Mike Becker <universe@uap-core.de>
parents: 470
diff changeset
18 cx/utils.h
576
ba0c4ff6698e first proposal for the string header
Mike Becker <universe@uap-core.de>
parents: 571
diff changeset
19 cx/string.h
391
f094a53c1178 adds allocator interface and default implementation
Mike Becker <universe@uap-core.de>
parents: 390
diff changeset
20 cx/allocator.h
494
6ce8cfa10a96 add iterator interface + linked list iterator
Mike Becker <universe@uap-core.de>
parents: 483
diff changeset
21 cx/iterator.h
677
b09aae58bba4 refactoring of collections to make use of destructors in map implementations
Mike Becker <universe@uap-core.de>
parents: 632
diff changeset
22 cx/collection.h
390
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 377
diff changeset
23 cx/list.h
606
314e9288af2f add array list tests
Mike Becker <universe@uap-core.de>
parents: 601
diff changeset
24 cx/array_list.h
398
8d506ed6c1c0 adds first draft for linked list implementation
Mike Becker <universe@uap-core.de>
parents: 391
diff changeset
25 cx/linked_list.h
483
929016224c3c add ported UCX buffer implementation
Mike Becker <universe@uap-core.de>
parents: 470
diff changeset
26 cx/buffer.h
549
d7f0b5a9a985 #189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents: 503
diff changeset
27 cx/map.h
563
69a83fad8a35 improve hash key handling
Mike Becker <universe@uap-core.de>
parents: 558
diff changeset
28 cx/hash_key.h
549
d7f0b5a9a985 #189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents: 503
diff changeset
29 cx/hash_map.h
571
f83583a0bbac #201 - add mempool implementation
Mike Becker <universe@uap-core.de>
parents: 563
diff changeset
30 cx/mempool.h
599
6536a9a75b71 #222 add printf-like functions
Mike Becker <universe@uap-core.de>
parents: 576
diff changeset
31 cx/printf.h
601
95ba6014041b add compare functions
Mike Becker <universe@uap-core.de>
parents: 599
diff changeset
32 cx/compare.h
549
d7f0b5a9a985 #189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents: 503
diff changeset
33 )
375
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
34
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
35 add_library(ucx SHARED ${sources})
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
36 add_library(ucx_static STATIC ${sources})
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
37
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
38 target_include_directories(ucx PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
39 target_include_directories(ucx_static PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
40
390
d345541018fa starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents: 377
diff changeset
41 set_target_properties(ucx PROPERTIES SOVERSION 4 VERSION 4.0.0)
375
460c0258bb5b adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff changeset
42 set_target_properties(ucx_static PROPERTIES VERSION ${CMAKE_PROJECT_VERSION})
377
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
43
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
44 # it is sufficient to specify the headers for one of the targets
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
45 set_target_properties(ucx PROPERTIES PUBLIC_HEADER "${headers}")
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
46
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
47 include(GNUInstallDirs)
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
48 install(TARGETS ucx ucx_static
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
49 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
2099a3aff61e adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents: 375
diff changeset
50 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
632
164253538794 fix public header destination
Mike Becker <universe@uap-core.de>
parents: 606
diff changeset
51 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/cx)

mercurial