Sun, 22 Dec 2024 22:10:04 +0100
don't trust that size_t always has word width
it should be the case on all platforms supported by UCX, but it's not strictly defined in POSIX that it must be the case
791
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
1 | # Copyright 2023 Mike Becker. All rights reserved. |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
2 | # |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
3 | # Redistribution and use in source and binary forms, with or without |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
4 | # modification, are permitted provided that the following conditions are met: |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
5 | # |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
6 | # 1. Redistributions of source code must retain the above copyright |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
7 | # notice, this list of conditions and the following disclaimer. |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
8 | # |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
9 | # 2. Redistributions in binary form must reproduce the above copyright |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
10 | # notice, this list of conditions and the following disclaimer in the |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
11 | # documentation and/or other materials provided with the distribution. |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
12 | # |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
13 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
14 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
15 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
16 | # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
17 | # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
18 | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
19 | # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
20 | # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
21 | # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
22 | # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
23 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
24 | include config.mk |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
25 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
26 | dist: FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
27 | $(MKDIR) $(dist_dir)/libucx |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
28 | $(COPYALL) CHANGELOG configure COPYING Doxyfile Makefile README \ |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
29 | uaplogo.png docs make src tests $(dist_dir)/libucx/ |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
30 | @cd $(dist_dir) && tar -czf libucx-src-$(VERSION).tar.gz -Hustar libucx |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
31 | @echo "[ Dist created: $(dist_dir)/libucx-src-$(VERSION).tar.gz ]" |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
32 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
33 | clean: FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
34 | $(RMDIR) $(build_dir) |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
35 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
36 | dist-clean: FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
37 | $(RMDIR) $(dist_dir) |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
38 | $(RMDIR) $(build_dir) |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
39 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
40 | compile: static shared |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
41 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
42 | $(build_dir): |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
43 | $(MKDIR) $@ |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
44 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
45 | shared: $(build_dir) FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
46 | @cd src && $(MAKE) OBJ_EXT=.shared.o \ |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
47 | CFLAGS="$(CFLAGS) $(SHLIB_CFLAGS)" \ |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
48 | LDFLAGS="$(LDFLAGS) $(SHLIB_LDFLAGS)" \ |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
49 | shared |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
50 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
51 | static: $(build_dir) FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
52 | @cd src && $(MAKE) static |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
53 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
54 | check: test-compile FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
55 | $(RMFILE) $(build_dir)/*.gcda |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
56 | $(RMFILE) $(build_dir)/tests/*.gcda |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
57 | $(build_dir)/tests/ucxtest |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
58 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
59 | test-compile: static FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
60 | cd tests && $(MAKE) |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
61 | |
988
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
62 | check-cxx: CXX-AVAILABLE clean test-compile-cxx FORCE |
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
63 | $(build_dir)/tests/ucxtest |
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
64 | |
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
65 | test-compile-cxx: static FORCE |
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
66 | cd tests && $(MAKE) CC=$(CXX) CFLAGS="$(CFLAGS) $(CXXFLAGS)" |
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
67 | |
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
68 | CXX-AVAILABLE: |
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
69 | test -n "$(WITH_CXX_TEST)" |
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
70 | |
791
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
71 | docs: FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
72 | @(test "$(WITH_DOCS_API)" = "yes" && cd docs && $(MAKE) all-api) \ |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
73 | || echo "[ Generation of API Docs disabled - skipped ]" |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
74 | @(test "$(WITH_DOCS_HTML)" = "yes" && cd docs && $(MAKE) all-html) \ |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
75 | || echo "[ Generation of HTML Docs disabled - skipped ]" |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
76 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
77 | update-rules: FORCE |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
78 | make/update-rules.sh src |
988
15b3ca7ee33f
make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents:
791
diff
changeset
|
79 | make/update-rules.sh tests '$$(TEST_DIR)' '-I../src' |
791
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
80 | |
945ee9bf2dd1
generate (release) config.mk if none exists - fixes #350
Mike Becker <universe@uap-core.de>
parents:
diff
changeset
|
81 | FORCE: |