Tue, 17 Oct 2017 16:15:41 +0200
changes source directory structure in preperation for autotools rollout
# # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. # # Copyright 2017 Olaf Wintermann. All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. # # # available configurations: # clang # gcc # mingw # osx # suncc # CONF=gcc PREFIX=/usr/local include $(CONF).mk include cppcheck.mk all: ucx test ucx: FORCE cd src; $(MAKE) CONF=$(CONF) ucx-debug: FORCE cd src; $(MAKE) CONF=$(CONF) debug test: ucx FORCE cd test; $(MAKE) CONF=$(CONF) test-debug: ucx-debug FORCE cd test; $(MAKE) CONF=$(CONF) debug run: test ./build/release/test/ucxtest$(APP_EXT) run-debug: test-debug ./build/debug/test/ucxtest$(APP_EXT) debug: ucx-debug test-debug install: ucx $(DESTDIR)$(PREFIX)/lib $(DESTDIR)$(PREFIX)/include/ucx cp ./build/release/libucx$(LIB_EXT) $(DESTDIR)$(PREFIX)/lib && \ cp ./build/release/libucx$(SO_EXT) $(DESTDIR)$(PREFIX)/lib && \ cp ./src/ucx/*.h $(DESTDIR)$(PREFIX)/include/ucx uninstall: $(RM) $(RMFLAGS) $(DESTDIR)$(PREFIX)/include/ucx &&\ $(RM) $(RMFLAGS) $(DESTDIR)$(PREFIX)/lib/libucx$(LIB_EXT) &&\ $(RM) $(RMFLAGS) $(DESTDIR)$(PREFIX)/lib/libucx$(SO_EXT) $(DESTDIR)$(PREFIX)/lib: mkdir -p $@ $(DESTDIR)$(PREFIX)/include/ucx: mkdir -p $@ clean: FORCE $(RM) $(RMFLAGS) build build: mkdir -p build cppcheck: FORCE build truncate -s0 $(CPPCHECK_LOG) cd ucx; $(MAKE) CONF=$(CONF) cppcheck @echo "Static code analysis complete. See $(CPPCHECK_LOG) for the results." FORCE: