1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/Makefile Thu Oct 12 00:00:35 2023 +0200 1.3 @@ -0,0 +1,72 @@ 1.4 +# Copyright 2023 Mike Becker. All rights reserved. 1.5 +# 1.6 +# Redistribution and use in source and binary forms, with or without 1.7 +# modification, are permitted provided that the following conditions are met: 1.8 +# 1.9 +# 1. Redistributions of source code must retain the above copyright 1.10 +# notice, this list of conditions and the following disclaimer. 1.11 +# 1.12 +# 2. Redistributions in binary form must reproduce the above copyright 1.13 +# notice, this list of conditions and the following disclaimer in the 1.14 +# documentation and/or other materials provided with the distribution. 1.15 +# 1.16 +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 1.17 +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1.18 +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 1.19 +# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 1.20 +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1.21 +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 1.22 +# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 1.23 +# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 1.24 +# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 1.25 +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 1.26 + 1.27 +include config.mk 1.28 + 1.29 +all: compile 1.30 + 1.31 +install: 1.32 + @cd src && $(MAKE) -s install 1.33 + 1.34 +dist: FORCE 1.35 + $(MKDIR) $(DIST_DIR)/libucx 1.36 + $(COPYALL) CHANGELOG configure COPYING Doxyfile Makefile README \ 1.37 + uaplogo.png docs make src tests $(DIST_DIR)/libucx/ 1.38 + @cd $(DIST_DIR) && tar -czf libucx-src-$(VERSION).tar.gz -Hustar libucx 1.39 + @echo "[ Dist created: $(DIST_DIR)/libucx-src-$(VERSION).tar.gz ]" 1.40 + 1.41 +clean: 1.42 + $(RMDIR) $(BUILD_DIR) 1.43 + 1.44 +dist-clean: 1.45 + $(RMDIR) $(DIST_DIR) 1.46 + $(RMDIR) $(BUILD_DIR) 1.47 + 1.48 +compile: $(BUILD_DIR) static shared 1.49 + 1.50 +$(BUILD_DIR): 1.51 + $(MKDIR) $@ 1.52 + 1.53 +shared: FORCE 1.54 + @cd src && $(MAKE) OBJ_EXT=.shared.o \ 1.55 + CFLAGS="$(CFLAGS) $(SHLIB_CFLAGS)" \ 1.56 + LDFLAGS="$(LDFLAGS) $(SHLIB_LDFLAGS)" \ 1.57 + shared 1.58 + 1.59 +static: FORCE 1.60 + @cd src && $(MAKE) static 1.61 + 1.62 +check: test-compile FORCE 1.63 + $(BUILD_DIR)/tests/ucxtest 1.64 + 1.65 +test-compile: 1.66 + @(test "$(WITH_TESTS)" = "yes" && cd tests && $(MAKE)) \ 1.67 + || echo "[ Tests disabled - skipped ]" 1.68 + 1.69 +docs: FORCE 1.70 + @(test "$(WITH_DOCS_API)" = "yes" && cd docs && $(MAKE) all-api) \ 1.71 + || echo "[ Generation of API Docs disabled - skipped ]" 1.72 + @(test "$(WITH_DOCS_HTML)" = "yes" && cd docs && $(MAKE) all-html) \ 1.73 + || echo "[ Generation of HTML Docs disabled - skipped ]" 1.74 + 1.75 +FORCE: