Makefile

Thu, 02 Feb 2012 16:55:51 +0100

author
Mike Becker <universe@uap-core.de>
date
Thu, 02 Feb 2012 16:55:51 +0100
changeset 29
fa625066ae52
parent 28
72a98cbcb9f1
child 32
51d6e45a7592
permissions
-rw-r--r--

fixed author note

universe@28 1 #
universe@28 2 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
universe@28 3 #
universe@28 4 # Copyright 2011 Mike Becker. All rights reserved.
universe@28 5 #
universe@28 6 # Redistribution and use in source and binary forms, with or without
universe@28 7 # modification, are permitted provided that the following conditions are met:
universe@28 8 #
universe@28 9 # 1. Redistributions of source code must retain the above copyright
universe@28 10 # notice, this list of conditions and the following disclaimer.
universe@28 11 #
universe@28 12 # 2. Redistributions in binary form must reproduce the above copyright
universe@28 13 # notice, this list of conditions and the following disclaimer in the
universe@28 14 # documentation and/or other materials provided with the distribution.
universe@28 15 #
universe@28 16 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
universe@28 17 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
universe@28 18 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
universe@28 19 # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
universe@28 20 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
universe@28 21 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
universe@28 22 # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
universe@28 23 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
universe@28 24 # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
universe@28 25 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
universe@28 26 #
universe@28 27 # available configurations:
universe@28 28 # gcc (default) (will use libc regex implicitly)
universe@28 29 # mingw (will use libregex as static lib)
universe@28 30 #
universe@28 31 # debug configurations:
universe@28 32 # gcc-debug
universe@28 33 # mingw-debug
universe@28 34 #
universe@28 35
universe@28 36 #ifndef CONF
universe@28 37 CONF = gcc
universe@28 38 #endif
universe@28 39
universe@28 40 include ${CONF}.mk
universe@0 41
universe@16 42 .PHONY: setup run-compile teardown
universe@16 43
universe@16 44 all: setup run-compile teardown
universe@16 45
universe@16 46
universe@16 47 run-compile:
universe@16 48 -${MAKE} compile
universe@16 49
universe@16 50 compile: ${OBJ}
universe@28 51 ${LD} -o ${BIN} ${OBJ} ${LDFLAGS}
universe@1 52
universe@16 53 setup:
universe@16 54 mkdir -p ${BUILDDIR}
universe@28 55 rm -f ${BUILDDIR}cline.o
universe@14 56 mv cline.h cline.src
universe@16 57 cat cline.src | sed "s/VERSION.*/VERSION=\"$(shell hg identify -n) ($(shell hg identify -i))\";/g" > cline.h
universe@14 58
universe@16 59 teardown:
universe@16 60 rm -f cline.h
universe@14 61 mv cline.src cline.h
universe@14 62
universe@13 63 ${BUILDDIR}%.o: %.c
universe@28 64 ${CC} ${CFLAGS} -c -o ${BUILDDIR}$*.o $<
universe@3 65
universe@3 66 clean:
universe@28 67 rm -f ${BUILDDIR}*.o
universe@16 68

mercurial