Sun, 31 Dec 2023 15:02:11 +0100
migrate compare tests - relates to #342
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
1 | # Copyright 2023 Mike Becker. All rights reserved. | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
2 | # | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
3 | # Redistribution and use in source and binary forms, with or without | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
4 | # modification, are permitted provided that the following conditions are met: | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
5 | # | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
6 | # 1. Redistributions of source code must retain the above copyright | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
7 | # notice, this list of conditions and the following disclaimer. | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
8 | # | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
9 | # 2. Redistributions in binary form must reproduce the above copyright | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
10 | # notice, this list of conditions and the following disclaimer in the | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
11 | # documentation and/or other materials provided with the distribution. | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
12 | # | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
13 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
14 | # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
15 | # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
16 | # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
17 | # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
18 | # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
19 | # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
20 | # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
21 | # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
22 | # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
23 | |
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
24 | include config.mk | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
25 | |
| 
779
 
e9611e4d0213
revert the insanely stupid idea to automatically run the test program on default build
 
Mike Becker <universe@uap-core.de> 
parents: 
774 
diff
changeset
 | 
26 | all: compile test-compile FORCE | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
27 | |
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
28 | install: | 
| 
754
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
29 | @cd src && $(MAKE) install | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
30 | |
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
31 | dist: FORCE | 
| 
754
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
32 | $(MKDIR) $(dist_dir)/libucx | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
33 | $(COPYALL) CHANGELOG configure COPYING Doxyfile Makefile README \ | 
| 
754
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
34 | uaplogo.png docs make src tests $(dist_dir)/libucx/ | 
| 
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
35 | @cd $(dist_dir) && tar -czf libucx-src-$(VERSION).tar.gz -Hustar libucx | 
| 
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
36 | @echo "[ Dist created: $(dist_dir)/libucx-src-$(VERSION).tar.gz ]" | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
37 | |
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
38 | clean: | 
| 
754
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
39 | $(RMDIR) $(build_dir) | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
40 | |
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
41 | dist-clean: | 
| 
754
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
42 | $(RMDIR) $(dist_dir) | 
| 
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
43 | $(RMDIR) $(build_dir) | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
44 | |
| 
754
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
45 | compile: $(build_dir) static shared | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
46 | |
| 
754
 
4bc7d966c9db
add an uwproj based install target
 
Mike Becker <universe@uap-core.de> 
parents: 
753 
diff
changeset
 | 
47 | $(build_dir): | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
48 | $(MKDIR) $@ | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
49 | |
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
50 | shared: FORCE | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
51 | @cd src && $(MAKE) OBJ_EXT=.shared.o \ | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
52 | CFLAGS="$(CFLAGS) $(SHLIB_CFLAGS)" \ | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
53 | LDFLAGS="$(LDFLAGS) $(SHLIB_LDFLAGS)" \ | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
54 | shared | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
55 | |
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
56 | static: FORCE | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
57 | @cd src && $(MAKE) static | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
58 | |
| 
779
 
e9611e4d0213
revert the insanely stupid idea to automatically run the test program on default build
 
Mike Becker <universe@uap-core.de> 
parents: 
774 
diff
changeset
 | 
59 | check: all | 
| 
783
 
7ca8cf155489
add command to remove outdated coverage data
 
Mike Becker <universe@uap-core.de> 
parents: 
779 
diff
changeset
 | 
60 | $(RMFILE) $(build_dir)/*.gcda | 
| 
 
7ca8cf155489
add command to remove outdated coverage data
 
Mike Becker <universe@uap-core.de> 
parents: 
779 
diff
changeset
 | 
61 | $(RMFILE) $(build_dir)/tests/*.gcda | 
| 
766
 
e59b76889f00
bring back UCX test - fixes #341
 
Mike Becker <universe@uap-core.de> 
parents: 
755 
diff
changeset
 | 
62 | $(build_dir)/tests/ucxtest | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
63 | |
| 
774
 
4fd4e0c6107a
add make target to automatically gather coverage info
 
Mike Becker <universe@uap-core.de> 
parents: 
769 
diff
changeset
 | 
64 | check-coverage: FORCE | 
| 
 
4fd4e0c6107a
add make target to automatically gather coverage info
 
Mike Becker <universe@uap-core.de> 
parents: 
769 
diff
changeset
 | 
65 | $(MAKE) -s check | 
| 
 
4fd4e0c6107a
add make target to automatically gather coverage info
 
Mike Becker <universe@uap-core.de> 
parents: 
769 
diff
changeset
 | 
66 | @cd src && $(MAKE) check-coverage | 
| 
 
4fd4e0c6107a
add make target to automatically gather coverage info
 
Mike Becker <universe@uap-core.de> 
parents: 
769 
diff
changeset
 | 
67 | |
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
68 | test-compile: | 
| 
766
 
e59b76889f00
bring back UCX test - fixes #341
 
Mike Becker <universe@uap-core.de> 
parents: 
755 
diff
changeset
 | 
69 | cd tests && $(MAKE) | 
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
70 | |
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
71 | docs: FORCE | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
72 | @(test "$(WITH_DOCS_API)" = "yes" && cd docs && $(MAKE) all-api) \ | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
73 | || echo "[ Generation of API Docs disabled - skipped ]" | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
74 | @(test "$(WITH_DOCS_HTML)" = "yes" && cd docs && $(MAKE) all-html) \ | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
75 | || echo "[ Generation of HTML Docs disabled - skipped ]" | 
| 
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
76 | |
| 755 | 77 | update-rules: | 
| 78 | make/update-rules.sh src | |
| 
766
 
e59b76889f00
bring back UCX test - fixes #341
 
Mike Becker <universe@uap-core.de> 
parents: 
755 
diff
changeset
 | 
79 | CFLAGS='$(CFLAGS) -I../src' make/update-rules.sh tests '$$(TEST_DIR)' | 
| 755 | 80 | |
| 
753
 
24dc84788dee
replace most of the build system with uwproj
 
Mike Becker <universe@uap-core.de> 
parents:  
diff
changeset
 | 
81 | FORCE: |