annotate buildsys.mk.in @ 2948:b4046e5c478e

Please don't use GNU-only stuff without providing an alternative?
author Jonathan Schleifer <js-audacious@webkeks.org>
date Fri, 03 Oct 2008 00:23:27 +0200
parents c79e239a816f
children d116c0d61dd2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
1 #
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
2 # Copyright (c) 2007 - 2008, Jonathan Schleifer <js-buildsys@webkeks.org>
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
3 #
2378
e7d59a6ed443 Added HG repo URL to buildsys as a comment.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2374
diff changeset
4 # https://webkeks.org/hg/buildsys/
e7d59a6ed443 Added HG repo URL to buildsys as a comment.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2374
diff changeset
5 #
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
6 # Permission to use, copy, modify, and/or distribute this software for any
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
8 # copyright notice and this permission notice is present in all copies.
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
9 #
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
10 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
11 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
12 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
13 # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
14 # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
15 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
16 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
17 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
18 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
19 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
20 # POSSIBILITY OF SUCH DAMAGE.
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
21 #
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
22
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
23 PACKAGE = @PACKAGE@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
24 CC = @CC@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
25 CXX = @CXX@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
26 CPP = @CPP@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
27 DC = @DC@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
28 ERLC = @ERLC@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
29 OBJC = @OBJC@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
30 AR = @AR@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
31 LD = ${CC}
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
32 RANLIB = @RANLIB@
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
33 PYTHON = @PYTHON@
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
34 CFLAGS = @CFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
35 CXXFLAGS = @CXXFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
36 CPPFLAGS = @CPPFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
37 DFLAGS = @DFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
38 ERLCFLAGS = @ERLCFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
39 OBJCFLAGS = @OBJCFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
40 LDFLAGS = @LDFLAGS@
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
41 PYTHON_FLAGS = @PYTHON_FLAGS@
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
42 LIBS = @LIBS@
1909
81b524aa7fcd implib.
Jonathan Schleifer <js@h3c.de>
parents: 1902
diff changeset
43 PROG_IMPLIB_NEEDED = @PROG_IMPLIB_NEEDED@
81b524aa7fcd implib.
Jonathan Schleifer <js@h3c.de>
parents: 1902
diff changeset
44 PROG_IMPLIB_LDFLAGS = @PROG_IMPLIB_LDFLAGS@
1879
81cdc01db60e Update buildsys (adds ${PROG_SUFFIX}).
Jonathan Schleifer <js@h3c.de>
parents: 1877
diff changeset
45 PROG_SUFFIX = @EXEEXT@
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
46 LIB_CPPFLAGS = @LIB_CPPFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
47 LIB_CFLAGS = @LIB_CFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
48 LIB_LDFLAGS = @LIB_LDFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
49 LIB_PREFIX = @LIB_PREFIX@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
50 LIB_SUFFIX = @LIB_SUFFIX@
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
51 PLUGIN_CPPFLAGS = @PLUGIN_CPPFLAGS@
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
52 PLUGIN_CFLAGS = @PLUGIN_CFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
53 PLUGIN_LDFLAGS = @PLUGIN_LDFLAGS@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
54 PLUGIN_SUFFIX = @PLUGIN_SUFFIX@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
55 INSTALL_LIB = @INSTALL_LIB@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
56 UNINSTALL_LIB = @UNINSTALL_LIB@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
57 CLEAN_LIB = @CLEAN_LIB@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
58 LN_S = @LN_S@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
59 MKDIR_P = mkdir -p
1863
0e92506c1805 install-sh doesn't work.
Jonathan Schleifer <js@h3c.de>
parents: 1845
diff changeset
60 INSTALL = install
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
61 SHELL = @SHELL@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
62 prefix = @prefix@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
63 exec_prefix = @exec_prefix@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
64 bindir = @bindir@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
65 libdir = @libdir@
2034
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
66 plugindir ?= ${libdir}/${PACKAGE}
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
67 datarootdir = @datarootdir@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
68 datadir = @datadir@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
69 includedir = @includedir@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
70 includesubdir ?= ${PACKAGE}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
71 mandir = @mandir@
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
72 mansubdir ?= man1
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
73
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
74 OBJS1 = ${SRCS:.c=.o}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
75 OBJS2 = ${OBJS1:.cc=.o}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
76 OBJS3 = ${OBJS2:.cxx=.o}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
77 OBJS4 = ${OBJS3:.d=.o}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
78 OBJS5 = ${OBJS4:.erl=.beam}
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
79 OBJS6 = ${OBJS5:.m=.o}
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
80 OBJS7 = ${OBJS6:.py=.pyc}
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
81 OBJS += ${OBJS7:.xpm=.o}
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
82
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
83 .SILENT:
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
84 .SUFFIXES: .beam .c .cc .cxx .d .dep .erl .m .py .pyc .xpm
1909
81b524aa7fcd implib.
Jonathan Schleifer <js@h3c.de>
parents: 1902
diff changeset
85 .PHONY: all subdirs pre-depend depend install install-extra uninstall uninstall-extra clean distclean
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
86
1826
d7709de0882c Fix dependencies and other parallel stuff.
Jonathan Schleifer <js@h3c.de>
parents: 1815
diff changeset
87 all:
1868
00738dd0dce6 Oops. Fix parallel build.
Jonathan Schleifer <js@h3c.de>
parents: 1866
diff changeset
88 for i in subdirs depend ${STATIC_LIB} ${STATIC_LIB_NOINST} ${LIB} ${LIB_NOINST} ${PLUGIN} ${PLUGIN_NOINST} ${PROG} ${PROG_NOINST}; do \
1845
eaa979be9b89 Abort on error.
Jonathan Schleifer <js@h3c.de>
parents: 1836
diff changeset
89 ${MAKE} ${MFLAGS} $$i || exit 1; \
1826
d7709de0882c Fix dependencies and other parallel stuff.
Jonathan Schleifer <js@h3c.de>
parents: 1815
diff changeset
90 done
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
91
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
92 subdirs:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
93 for i in ${SUBDIRS}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
94 ${DIR_ENTER}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
95 ${MAKE} ${MFLAGS} || exit 1; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
96 ${DIR_LEAVE}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
97 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
98
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
99 depend: pre-depend ${SRCS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
100 regen=0; \
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
101 deps=""; \
2034
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
102 test -f .deps || regen=1; \
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
103 for i in ${SRCS}; do \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
104 case $$i in \
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
105 *.c) \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
106 test $$i -nt .deps && regen=1; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
107 deps="$$deps $${i%.c}.dep"; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
108 ;; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
109 *.cc) \
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
110 test $$i -nt .deps && regen=1; \
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
111 deps="$$deps $${i%.cc}.dep"; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
112 ;; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
113 *.cxx) \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
114 test $$i -nt .deps && regen=1; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
115 deps="$$deps $${i%.cxx}.dep"; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
116 ;; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
117 *.m) \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
118 test $$i -nt .deps && regen=1; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
119 deps="$$deps $${i%.m}.dep"; \
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
120 ;; \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
121 esac; \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
122 done; \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
123 if test x"$$regen" = x"1" -a x"$$deps" != "x"; then \
1815
b7d43348245d Add depend status.
Jonathan Schleifer <js@h3c.de>
parents: 1763
diff changeset
124 ${DEPEND_STATUS}; \
2372
3799c5a932a9 Make dependency generation threaded.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2148
diff changeset
125 rm -f .deps; \
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
126 if ${MAKE} ${MFLAGS} $$deps; then \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
127 cat $$deps >.deps; \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
128 rm -f $$deps; \
2372
3799c5a932a9 Make dependency generation threaded.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2148
diff changeset
129 ${DEPEND_OK}; \
3799c5a932a9 Make dependency generation threaded.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2148
diff changeset
130 else \
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
131 rm -f .deps $$deps; \
2372
3799c5a932a9 Make dependency generation threaded.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2148
diff changeset
132 ${DEPEND_FAILED}; \
1826
d7709de0882c Fix dependencies and other parallel stuff.
Jonathan Schleifer <js@h3c.de>
parents: 1815
diff changeset
133 fi; \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
134 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
135
2372
3799c5a932a9 Make dependency generation threaded.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2148
diff changeset
136 .c.dep .cc.dep .cxx.dep .m.dep:
2374
179821cb7dca Fix a possible bug in dependency generation.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2373
diff changeset
137 ${CPP} ${CPPFLAGS} -M $< >$@
2372
3799c5a932a9 Make dependency generation threaded.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2148
diff changeset
138
3799c5a932a9 Make dependency generation threaded.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2148
diff changeset
139 .d.dep:
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
140 .xpm.dep:
2372
3799c5a932a9 Make dependency generation threaded.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2148
diff changeset
141
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
142 pre-depend:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
143
1815
b7d43348245d Add depend status.
Jonathan Schleifer <js@h3c.de>
parents: 1763
diff changeset
144 ${PROG} ${PROG_NOINST}: ${EXT_DEPS} ${OBJS}
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
145 ${LINK_STATUS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
146 if ${LD} -o $@ ${OBJS} ${LDFLAGS} ${LIBS}; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
147 ${LINK_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
148 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
149 ${LINK_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
150 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
151
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
152 ${LIB} ${LIB_NOINST}: ${EXT_DEPS} ${OBJS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
153 ${LINK_STATUS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
154 if ${LD} -o $@ ${OBJS} ${LIB_LDFLAGS} ${LDFLAGS} ${LIBS}; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
155 ${LINK_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
156 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
157 ${LINK_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
158 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
159
2529
0bd07451d1d1 buildsys.mk.in: Fixed typo.
Jonathan Schleifer <js@webkeks.org>
parents: 2378
diff changeset
160 ${PLUGIN} ${PLUGIN_NOINST}: ${EXT_DEPS} ${OBJS}
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
161 ${LINK_STATUS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
162 if ${LD} -o $@ ${OBJS} ${PLUGIN_LDFLAGS} ${LDFLAGS} ${LIBS}; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
163 ${LINK_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
164 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
165 ${LINK_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
166 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
167
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
168 ${STATIC_LIB} ${STATIC_LIB_NOINST}: ${EXT_DEPS} ${OBJS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
169 ${LINK_STATUS}
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
170 if ${AR} cr $@ ${OBJS} && ${RANLIB} ${@}; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
171 ${LINK_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
172 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
173 ${LINK_FAILED}; \
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
174 rm -f $@; \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
175 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
176
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
177 .c.o:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
178 ${COMPILE_STATUS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
179 if ${CC} ${CFLAGS} ${CPPFLAGS} -c -o $@ $<; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
180 ${COMPILE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
181 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
182 ${COMPILE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
183 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
184
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
185 .cc.o .cxx.o:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
186 ${COMPILE_STATUS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
187 if ${CXX} ${CXXFLAGS} ${CPPFLAGS} -c -o $@ $<; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
188 ${COMPILE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
189 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
190 ${COMPILE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
191 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
192
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
193 .d.o:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
194 ${COMPILE_STATUS}
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
195 if test x"$(basename ${DC})" = x"dmd"; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
196 if ${DC} ${DFLAGS} -c -of$@ $<; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
197 ${COMPILE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
198 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
199 ${COMPILE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
200 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
201 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
202 if ${DC} ${DFLAGS} -c -o $@ $<; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
203 ${COMPILE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
204 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
205 ${COMPILE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
206 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
207 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
208
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
209 .erl.beam:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
210 ${COMPILE_STATUS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
211 if ${ERLC} ${ERLCFLAGS} -o $@ $<; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
212 ${COMPILE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
213 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
214 ${COMPILE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
215 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
216
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
217 .m.o:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
218 ${COMPILE_STATUS}
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
219 if ${OBJC} ${OBJCFLAGS} ${CPPFLAGS} -c -o $@ $<; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
220 ${COMPILE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
221 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
222 ${COMPILE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
223 fi
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
224
2947
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
225 .py.pyc:
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
226 ${COMPILE_STATUS}
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
227 if ${PYTHON} ${PYTHON_FLAGS} -c "import py_compile; py_compile.compile('$<')"; then \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
228 ${COMPILE_OK}; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
229 else \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
230 ${COMPILE_FAILED}; \
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
231 fi
c79e239a816f Same as for audacious.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2932
diff changeset
232
2852
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
233 .xpm.o:
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
234 ${COMPILE_STATUS}
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
235 if ${CC} ${CFLAGS} ${CPPFLAGS} -x c -c -o $@ $<; then \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
236 ${COMPILE_OK}; \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
237 else \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
238 ${COMPILE_FAILED}; \
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
239 fi
f2bec2d589d6 Parallel dependency resolution by Jonathan Schleifer.
Tony Vroon <chainsaw@gentoo.org>
parents: 2803
diff changeset
240
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
241 install: ${LIB} ${STATIC_LIB} ${PLUGIN} ${PROG} install-extra
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
242 for i in ${SUBDIRS}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
243 ${DIR_ENTER}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
244 ${MAKE} ${MFLAGS} install || exit 1; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
245 ${DIR_LEAVE}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
246 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
247
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
248 for i in ${LIB}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
249 ${INSTALL_STATUS}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
250 if ${MKDIR_P} ${DESTDIR}${libdir} && ${INSTALL_LIB}; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
251 ${INSTALL_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
252 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
253 ${INSTALL_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
254 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
255 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
256
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
257 for i in ${STATIC_LIB}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
258 ${INSTALL_STATUS}; \
1909
81b524aa7fcd implib.
Jonathan Schleifer <js@h3c.de>
parents: 1902
diff changeset
259 if ${MKDIR_P} ${DESTDIR}${libdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${libdir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
260 ${INSTALL_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
261 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
262 ${INSTALL_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
263 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
264 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
265
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
266 for i in ${PLUGIN}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
267 ${INSTALL_STATUS}; \
2006
a56a26a5f233 Revised the plugindir logic.
Eugene Paskevich <eugene@raptor.kiev.ua>
parents: 2003
diff changeset
268 if ${MKDIR_P} ${DESTDIR}${plugindir} && ${INSTALL} -m 755 $$i ${DESTDIR}${plugindir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
269 ${INSTALL_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
270 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
271 ${INSTALL_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
272 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
273 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
274
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
275 for i in ${DATA}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
276 ${INSTALL_STATUS}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
277 if ${MKDIR_P} $$(dirname ${DESTDIR}${datadir}/${PACKAGE}/$$i) && ${INSTALL} -m 644 $$i ${DESTDIR}${datadir}/${PACKAGE}/$$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
278 ${INSTALL_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
279 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
280 ${INSTALL_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
281 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
282 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
283
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
284 for i in ${PROG}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
285 ${INSTALL_STATUS}; \
1877
28d360594d3a Update buildsys.
Jonathan Schleifer <js@h3c.de>
parents: 1868
diff changeset
286 if ${MKDIR_P} ${DESTDIR}${bindir} && ${INSTALL} -m 755 $$i ${DESTDIR}${bindir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
287 ${INSTALL_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
288 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
289 ${INSTALL_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
290 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
291 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
292
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
293 for i in ${INCLUDES}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
294 ${INSTALL_STATUS}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
295 if ${MKDIR_P} ${DESTDIR}${includedir}/${includesubdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${includedir}/${includesubdir}/$$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
296 ${INSTALL_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
297 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
298 ${INSTALL_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
299 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
300 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
301
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
302 for i in ${MAN}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
303 ${INSTALL_STATUS}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
304 if ${MKDIR_P} ${DESTDIR}${mandir}/${mansubdir} && ${INSTALL} -m 644 $$i ${DESTDIR}${mandir}/${mansubdir}/$$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
305 ${INSTALL_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
306 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
307 ${INSTALL_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
308 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
309 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
310
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
311 install-extra:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
312
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
313 uninstall: uninstall-extra
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
314 for i in ${SUBDIRS}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
315 ${DIR_ENTER}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
316 ${MAKE} ${MFLAGS} uninstall || exit 1; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
317 ${DIR_LEAVE}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
318 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
319
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
320 for i in ${LIB}; do \
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
321 if test -f ${DESTDIR}${libdir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
322 if ${UNINSTALL_LIB}; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
323 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
324 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
325 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
326 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
327 fi; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
328 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
329
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
330 for i in ${STATIC_LIB}; do \
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
331 if test -f ${DESTDIR}${libdir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
332 if rm -f ${DESTDIR}${libdir}/$$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
333 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
334 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
335 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
336 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
337 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
338 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
339
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
340 for i in ${PLUGIN}; do \
2006
a56a26a5f233 Revised the plugindir logic.
Eugene Paskevich <eugene@raptor.kiev.ua>
parents: 2003
diff changeset
341 if test -f ${DESTDIR}${plugindir}/$$i; then \
a56a26a5f233 Revised the plugindir logic.
Eugene Paskevich <eugene@raptor.kiev.ua>
parents: 2003
diff changeset
342 if rm -f ${DESTDIR}${plugindir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
343 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
344 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
345 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
346 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
347 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
348 done
2034
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
349 -rmdir ${DESTDIR}${plugindir} >/dev/null 2>&1
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
350
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
351 for i in ${DATA}; do \
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
352 if test -f ${DESTDIR}${datadir}/${PACKAGE}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
353 if rm -f ${DESTDIR}${datadir}/${PACKAGE}/$$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
354 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
355 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
356 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
357 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
358 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
359 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
360
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
361 for i in ${PROG}; do \
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
362 if test -f ${DESTDIR}${bindir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
363 if rm -f ${DESTDIR}${bindir}/$$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
364 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
365 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
366 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
367 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
368 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
369 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
370
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
371 for i in ${INCLUDES}; do \
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
372 if test -f ${DESTDIR}${includedir}/${includesubdir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
373 if rm -f ${DESTDIR}${includedir}/${includesubdir}/$$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
374 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
375 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
376 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
377 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
378 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
379 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
380 -rmdir ${DESTDIR}${includedir}/${includesubdir} >/dev/null 2>&1
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
381
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
382 for i in ${MAN}; do \
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
383 if test -f ${DESTDIR}${mandir}/${mansubdir}/$$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
384 if rm -f ${DESTDIR}${mandir}/${mansubdir}/$$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
385 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
386 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
387 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
388 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
389 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
390 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
391
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
392 uninstall-extra:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
393
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
394 clean:
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
395 for i in ${SUBDIRS}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
396 ${DIR_ENTER}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
397 ${MAKE} ${MFLAGS} clean || exit 1; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
398 ${DIR_LEAVE}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
399 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
400
2374
179821cb7dca Fix a possible bug in dependency generation.
Jonathan Schleifer <js-audacious@webkeks.org>
parents: 2373
diff changeset
401 for i in ${OBJS} ${CLEAN} ${CLEAN_LIB} .deps ${DEPS}; do \
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
402 if test -f $$i -o -d $$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
403 if rm -fr $$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
404 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
405 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
406 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
407 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
408 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
409 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
410
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
411 distclean: clean
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
412 for i in ${SUBDIRS}; do \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
413 ${DIR_ENTER}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
414 ${MAKE} ${MFLAGS} distclean || exit 1; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
415 ${DIR_LEAVE}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
416 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
417
1973
f86cb7fc1d4f Add -pipe -Wall if gcc and fix a few warnings.
Jonathan Schleifer <js@h3c.de>
parents: 1918
diff changeset
418 for i in ${PROG} ${PROG_NOINST} ${LIB} ${LIB_NOINST} ${STATIC_LIB} ${STATIC_LIB_NOINST} ${PLUGIN} ${PLUGIN_NOINST} ${DISTCLEAN} *~; do \
1865
176c29f85678 Use test instead of [ ].
Jonathan Schleifer <js@h3c.de>
parents: 1863
diff changeset
419 if test -f $$i -o -d $$i; then \
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
420 if rm -fr $$i; then \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
421 ${DELETE_OK}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
422 else \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
423 ${DELETE_FAILED}; \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
424 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
425 fi \
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
426 done
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
427
2034
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
428 DIR_ENTER = printf "\033[K\033[0;36mEntering directory \033[1;36m$$i\033[0;36m.\033[0m\n"; cd $$i || exit 1
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
429 DIR_LEAVE = printf "\033[K\033[0;36mLeaving directory \033[1;36m$$i\033[0;36m.\033[0m\n"; cd .. || exit 1
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
430 DEPEND_STATUS = printf "\033[K\033[0;33mGenerating dependencies...\033[0m\r"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
431 DEPEND_OK = printf "\033[K\033[0;32mSuccessfully generated dependencies.\033[0m\n"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
432 DEPEND_FAILED = printf "\033[K\033[0;31mFailed to generate dependencies!\033[0m\n"; exit 1
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
433 COMPILE_STATUS = printf "\033[K\033[0;33mCompiling \033[1;33m$<\033[0;33m...\033[0m\r"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
434 COMPILE_OK = printf "\033[K\033[0;32mSuccessfully compiled \033[1;32m$<\033[0;32m.\033[0m\n"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
435 COMPILE_FAILED = printf "\033[K\033[0;31mFailed to compile \033[1;31m$<\033[0;31m!\033[0m\n"; exit 1
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
436 LINK_STATUS = printf "\033[K\033[0;33mLinking \033[1;33m$@\033[0;33m...\033[0m\r"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
437 LINK_OK = printf "\033[K\033[0;32mSuccessfully linked \033[1;32m$@\033[0;32m.\033[0m\n"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
438 LINK_FAILED = printf "\033[K\033[0;31mFailed to link \033[1;31m$@\033[0;31m!\033[0m\n"; exit 1
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
439 INSTALL_STATUS = printf "\033[K\033[0;33mInstalling \033[1;33m$$i\033[0;33m...\033[0m\r"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
440 INSTALL_OK = printf "\033[K\033[0;32mSuccessfully installed \033[1;32m$$i\033[0;32m.\033[0m\n"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
441 INSTALL_FAILED = printf "\033[K\033[0;31mFailed to install \033[1;31m$$i\033[0;31m!\033[0m\n"; exit 1
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
442 DELETE_OK = printf "\033[K\033[0;34mDeleted \033[1;34m$$i\033[0;34m.\033[0m\n"
a21cc1e45080 Update buildsys. Please test.
Jonathan Schleifer <js@h3c.de>
parents: 2015
diff changeset
443 DELETE_FAILED = printf "\033[K\033[0;31mFailed to delete \033[1;31m$$i\033[0;31m!\033[0m\n"; exit 1
1763
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
444
a99495a865eb Import Mk2 core.
William Pitcock <nenolod@atheme.org>
parents:
diff changeset
445 -include .deps