source: trunk/GDE/SINA/Makefile

Last change on this file was 19454, checked in by westram, 17 months ago
  • hide message from autoreconf (misinterpreted by emacs).
File size: 2.1 KB
Line 
1# wrapper to build SINA together with arb
2#
3
4SHELL = bash -o pipefail
5TARFILE=$(wildcard SINA-1.7.*.*gz)
6
7ARB_PATCH=arb7.patch
8
9BUILDDIR=builddir
10
11SINA_INST_BIN=$(ARBHOME)/bin/sina
12SINA_MADE_BIN=$(BUILDDIR)/src/sina
13
14# AFAIK adding onlyC_flags has no effect, because plain C compiler is not really used (just configured)
15CC = $(A_CC) $(onlyC_flags)
16CXX = $(A_CXX)
17
18# special flags needed if arb is build sanitized
19CFLAGS = -g -O2 $(SANI_CFLAGS)
20LDFLAGS =$(SANI_CLFLAGS)
21
22# hack needed until sina build properly detects libtirpc:
23ifdef LIBS
24        LIBS := $(LIBS) $(ARB_RPC_LIBS)
25else
26        LIBS := $(ARB_RPC_LIBS)
27endif
28
29# configure:
30CONFIGURE_OPTS :=
31
32CONFIGURE_OPTS += --disable-silent-rules # be verbose
33CONFIGURE_OPTS += --enable-shared=no --enable-static=yes
34CONFIGURE_OPTS += --disable-docs # do not generate documentation
35CONFIGURE_OPTS += "--with-buildinfo=patched for arb r19248" # add patch info
36# detect revision for patchinfo using:
37# svn log ./builddir | head -30 | grep '^r[1-9]' | head -1
38
39# do not warn about undefined make variables in calls to submakefiles:
40ARB_ORG_MAKEFLAGS:=$(subst --warn-undefined-variables,,$(ARB_ORG_MAKEFLAGS))
41
42SUBMAKEFLAGS:=MAKEFLAGS="$(ARB_ORG_MAKEFLAGS)" LIBS="$(LIBS)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
43
44SED:=$(ARBHOME)/SH/arb_sed
45
46## targets called by "upsteam makefile":
47
48all: $(SINA_INST_BIN)
49
50clean:
51        rm -f *.stamp
52        rm -f $(SINA_INST_BIN)
53        test ! -e $(BUILDDIR)/Makefile || (export $(SUBMAKEFLAGS) ; $(MAKE) -C $(BUILDDIR) mostlyclean clean-binPROGRAMS clean-libLTLIBRARIES clean-libtool)
54
55## internal targets
56
57build: $(SINA_MADE_BIN)
58
59# reset MAKEFLAGS to value initially found in main ARB makefile
60
61$(SINA_INST_BIN): $(SINA_MADE_BIN)
62        cp -p $(SINA_MADE_BIN) $@
63
64$(SINA_MADE_BIN): check_configured
65        (export $(SUBMAKEFLAGS) ; $(MAKE) -C $(BUILDDIR))
66
67check_configured: configure.stamp
68
69configure.stamp: Makefile
70ifeq ($(ARB_ORG_MAKEFLAGS),)
71        $(error ARB_ORG_MAKEFLAGS is empty)
72endif
73        (       export $(SUBMAKEFLAGS) ; \
74                cd $(BUILDDIR) && \
75                ( ./autogen.sh 2>&1 ) | $(SED) -e 's/^\(.*\)/\[hide\]: \1/'  && \
76                ./configure $(CONFIGURE_OPTS) )
77        touch $@
78
79# prevent make from deleting intermediate targets:
80.SECONDARY:
81
82.PHONY: clean all check_configured
83
Note: See TracBrowser for help on using the repository browser.