Tue, 04 Oct 2022 19:25:07 +0200
fix over-optimization of strstr
1. it's actually less performant to frequently read bytes
from an array instead of using the native word length
2. the SBO buffer should be local and not static to allow
multi-threading usage
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 |
398
8d506ed6c1c0
adds first draft for linked list implementation
Mike Becker <universe@uap-core.de>
parents:
391
diff
changeset
|
6 | linked_list.c |
424
2d6f6cb24132
add some low level tree function declarations
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
398
diff
changeset
|
7 | tree.c |
483
929016224c3c
add ported UCX buffer implementation
Mike Becker <universe@uap-core.de>
parents:
470
diff
changeset
|
8 | buffer.c |
563
69a83fad8a35
improve hash key handling
Mike Becker <universe@uap-core.de>
parents:
558
diff
changeset
|
9 | hash_key.c |
549
d7f0b5a9a985
#189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents:
503
diff
changeset
|
10 | hash_map.c |
571
f83583a0bbac
#201 - add mempool implementation
Mike Becker <universe@uap-core.de>
parents:
563
diff
changeset
|
11 | basic_mempool.c |
375
460c0258bb5b
adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
12 | ) |
377
2099a3aff61e
adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents:
375
diff
changeset
|
13 | set(headers |
549
d7f0b5a9a985
#189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents:
503
diff
changeset
|
14 | cx/common.h |
483
929016224c3c
add ported UCX buffer implementation
Mike Becker <universe@uap-core.de>
parents:
470
diff
changeset
|
15 | cx/utils.h |
576
ba0c4ff6698e
first proposal for the string header
Mike Becker <universe@uap-core.de>
parents:
571
diff
changeset
|
16 | cx/string.h |
391
f094a53c1178
adds allocator interface and default implementation
Mike Becker <universe@uap-core.de>
parents:
390
diff
changeset
|
17 | cx/allocator.h |
494
6ce8cfa10a96
add iterator interface + linked list iterator
Mike Becker <universe@uap-core.de>
parents:
483
diff
changeset
|
18 | cx/iterator.h |
390
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
377
diff
changeset
|
19 | cx/list.h |
398
8d506ed6c1c0
adds first draft for linked list implementation
Mike Becker <universe@uap-core.de>
parents:
391
diff
changeset
|
20 | cx/linked_list.h |
470
e5a4de4f1e03
add tree.h to list of headers
Mike Becker <universe@uap-core.de>
parents:
469
diff
changeset
|
21 | cx/tree.h |
483
929016224c3c
add ported UCX buffer implementation
Mike Becker <universe@uap-core.de>
parents:
470
diff
changeset
|
22 | cx/buffer.h |
549
d7f0b5a9a985
#189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents:
503
diff
changeset
|
23 | cx/map.h |
563
69a83fad8a35
improve hash key handling
Mike Becker <universe@uap-core.de>
parents:
558
diff
changeset
|
24 | cx/hash_key.h |
549
d7f0b5a9a985
#189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents:
503
diff
changeset
|
25 | cx/hash_map.h |
571
f83583a0bbac
#201 - add mempool implementation
Mike Becker <universe@uap-core.de>
parents:
563
diff
changeset
|
26 | cx/mempool.h |
f83583a0bbac
#201 - add mempool implementation
Mike Becker <universe@uap-core.de>
parents:
563
diff
changeset
|
27 | cx/basic_mempool.h |
549
d7f0b5a9a985
#189 declare basic map functions
Mike Becker <universe@uap-core.de>
parents:
503
diff
changeset
|
28 | ) |
375
460c0258bb5b
adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
29 | |
460c0258bb5b
adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
30 | add_library(ucx SHARED ${sources}) |
460c0258bb5b
adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
31 | add_library(ucx_static STATIC ${sources}) |
460c0258bb5b
adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
32 | |
460c0258bb5b
adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
33 | target_include_directories(ucx PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) |
460c0258bb5b
adds proper cmake build targets
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
34 | 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
|
35 | |
390
d345541018fa
starts ucx 3.0 development
Mike Becker <universe@uap-core.de>
parents:
377
diff
changeset
|
36 | 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
|
37 | 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
|
38 | |
2099a3aff61e
adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents:
375
diff
changeset
|
39 | # 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
|
40 | 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
|
41 | |
2099a3aff61e
adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents:
375
diff
changeset
|
42 | include(GNUInstallDirs) |
2099a3aff61e
adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents:
375
diff
changeset
|
43 | install(TARGETS ucx ucx_static |
2099a3aff61e
adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents:
375
diff
changeset
|
44 | LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} |
2099a3aff61e
adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents:
375
diff
changeset
|
45 | ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} |
2099a3aff61e
adds install target for cmake builds
Mike Becker <universe@uap-core.de>
parents:
375
diff
changeset
|
46 | PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ucx) |