Makefile

Wed, 07 Sep 2016 11:32:22 +0200

author
Mike Becker <universe@uap-core.de>
date
Wed, 07 Sep 2016 11:32:22 +0200
changeset 221
ebfc6a2902f7
parent 213
fa8b745be7b5
child 225
a1a068c2c4ef
permissions
-rw-r--r--

removes superfluous UCX_VERSION macro

olaf@0 1 #
olaf@0 2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
olaf@0 3 #
universe@192 4 # Copyright 2015 Olaf Wintermann. All rights reserved.
olaf@0 5 #
olaf@0 6 # Redistribution and use in source and binary forms, with or without
olaf@0 7 # modification, are permitted provided that the following conditions are met:
olaf@0 8 #
olaf@0 9 # 1. Redistributions of source code must retain the above copyright
olaf@0 10 # notice, this list of conditions and the following disclaimer.
olaf@0 11 #
olaf@0 12 # 2. Redistributions in binary form must reproduce the above copyright
olaf@0 13 # notice, this list of conditions and the following disclaimer in the
olaf@0 14 # documentation and/or other materials provided with the distribution.
olaf@0 15 #
olaf@0 16 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
olaf@0 17 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
olaf@0 18 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
olaf@0 19 # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
olaf@0 20 # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
olaf@0 21 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
olaf@0 22 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
olaf@0 23 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
olaf@0 24 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
olaf@0 25 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
olaf@0 26 # POSSIBILITY OF SUCH DAMAGE.
olaf@0 27 #
olaf@0 28
olaf@0 29
olaf@0 30 #
olaf@0 31 # available configurations:
universe@155 32 # clang
universe@155 33 # gcc
universe@157 34 # mingw
universe@155 35 # osx
universe@155 36 # suncc
olaf@0 37 #
olaf@0 38
universe@152 39 CONF=gcc
universe@152 40 PREFIX=/usr/local
olaf@0 41
olaf@0 42 include $(CONF).mk
olaf@0 43
olaf@154 44 all: ucx test
olaf@154 45
olaf@0 46 ucx: FORCE
universe@155 47 cd ucx; $(MAKE) CONF=$(CONF)
universe@155 48
universe@155 49 ucx-debug: FORCE
universe@155 50 cd ucx; $(MAKE) CONF=$(CONF) debug
olaf@0 51
universe@213 52 test: ucx
universe@155 53 cd test; $(MAKE) CONF=$(CONF)
universe@155 54
universe@213 55 test-debug: ucx-debug
universe@155 56 cd test; $(MAKE) CONF=$(CONF) debug
olaf@0 57
universe@213 58 run: test
universe@155 59 ./build/release/test/ucxtest$(APP_EXT)
universe@155 60
universe@213 61 run-debug: test-debug
universe@155 62 ./build/debug/test/ucxtest$(APP_EXT)
universe@155 63
universe@155 64 debug: ucx-debug test-debug
olaf@0 65
olaf@154 66 install: ucx $(PREFIX)/lib $(PREFIX)/include/ucx
universe@155 67 cp ./build/release/libucx$(LIB_EXT) $(PREFIX)/lib && \
universe@156 68 cp ./build/release/libucx$(SO_EXT) $(PREFIX)/lib && \
universe@152 69 cp ./ucx/*.h $(PREFIX)/include/ucx
universe@152 70
universe@152 71 uninstall:
universe@152 72 $(RM) $(RMFLAGS) $(PREFIX)/include/ucx &&\
universe@156 73 $(RM) $(RMFLAGS) $(PREFIX)/lib/libucx$(LIB_EXT) &&\
universe@156 74 $(RM) $(RMFLAGS) $(PREFIX)/lib/libucx$(SO_EXT)
universe@152 75
universe@152 76 $(PREFIX)/lib:
universe@152 77 mkdir -p $(PREFIX)/lib
universe@152 78
universe@152 79 $(PREFIX)/include/ucx:
universe@152 80 mkdir -p $(PREFIX)/include/ucx
universe@152 81
olaf@0 82 clean: FORCE
universe@152 83 $(RM) $(RMFLAGS) build
olaf@0 84
olaf@0 85 FORCE:
olaf@0 86

mercurial