comparison buildsys.mk.in @ 4791:06079e59fc4b

Update to latest rev of buildsys & move stuff that doesn't belong there
author Jonathan Schleifer <js-audacious@webkeks.org>
date Thu, 02 Oct 2008 23:44:39 +0200
parents 4f9bc75a9672
children 0ea6dd6bfb5a
comparison
equal deleted inserted replaced
4782:792338a0f6ce 4791:06079e59fc4b
27 DC = @DC@ 27 DC = @DC@
28 ERLC = @ERLC@ 28 ERLC = @ERLC@
29 OBJC = @OBJC@ 29 OBJC = @OBJC@
30 AR = @AR@ 30 AR = @AR@
31 LD = ${CC} 31 LD = ${CC}
32 TR = @TR@ 32 RANLIB = @RANLIB@
33 PYTHON = @PYTHON@
33 CFLAGS = @CFLAGS@ 34 CFLAGS = @CFLAGS@
34 CXXFLAGS = @CXXFLAGS@ 35 CXXFLAGS = @CXXFLAGS@
35 CPPFLAGS = @CPPFLAGS@ 36 CPPFLAGS = @CPPFLAGS@
36 DFLAGS = @DFLAGS@ 37 DFLAGS = @DFLAGS@
37 ERLCFLAGS = @ERLCFLAGS@ 38 ERLCFLAGS = @ERLCFLAGS@
38 OBJCFLAGS = @OBJCFLAGS@ 39 OBJCFLAGS = @OBJCFLAGS@
39 LDFLAGS = @LDFLAGS@ 40 LDFLAGS = @LDFLAGS@
41 PYTHON_FLAGS = @PYTHON_FLAGS@
40 LIBS = @LIBS@ 42 LIBS = @LIBS@
41 PROG_IMPLIB_NEEDED = @PROG_IMPLIB_NEEDED@ 43 PROG_IMPLIB_NEEDED = @PROG_IMPLIB_NEEDED@
42 PROG_IMPLIB_LDFLAGS = @PROG_IMPLIB_LDFLAGS@ 44 PROG_IMPLIB_LDFLAGS = @PROG_IMPLIB_LDFLAGS@
43 PROG_SUFFIX = @EXEEXT@ 45 PROG_SUFFIX = @EXEEXT@
44 LIB_CPPFLAGS = @LIB_CPPFLAGS@ 46 LIB_CPPFLAGS = @LIB_CPPFLAGS@
45 LIB_CFLAGS = @LIB_CFLAGS@ 47 LIB_CFLAGS = @LIB_CFLAGS@
46 LIB_LDFLAGS = @LIB_LDFLAGS@ 48 LIB_LDFLAGS = @LIB_LDFLAGS@
47 LIB_PREFIX = @LIB_PREFIX@ 49 LIB_PREFIX = @LIB_PREFIX@
48 LIB_SUFFIX = @LIB_SUFFIX@ 50 LIB_SUFFIX = @LIB_SUFFIX@
49 PLUGIN_DEFNAME := `echo ${subst ${PLUGIN_SUFFIX},,${PLUGIN}} | tr '[:lower:]' '[:upper:]' | tr '-' '_'` 51 PLUGIN_CPPFLAGS = @PLUGIN_CPPFLAGS@
50 PLUGIN_CPPFLAGS = @PLUGIN_CPPFLAGS@ -D${PLUGIN_DEFNAME}_CFGID=\"${subst ${PLUGIN_SUFFIX},,${PLUGIN}}\"
51 PLUGIN_CFLAGS = @PLUGIN_CFLAGS@ 52 PLUGIN_CFLAGS = @PLUGIN_CFLAGS@
52 PLUGIN_LDFLAGS = @PLUGIN_LDFLAGS@ 53 PLUGIN_LDFLAGS = @PLUGIN_LDFLAGS@
53 PLUGIN_SUFFIX = @PLUGIN_SUFFIX@ 54 PLUGIN_SUFFIX = @PLUGIN_SUFFIX@
54 INSTALL_LIB = @INSTALL_LIB@ 55 INSTALL_LIB = @INSTALL_LIB@
55 UNINSTALL_LIB = @UNINSTALL_LIB@ 56 UNINSTALL_LIB = @UNINSTALL_LIB@
74 OBJS2 = ${OBJS1:.cc=.o} 75 OBJS2 = ${OBJS1:.cc=.o}
75 OBJS3 = ${OBJS2:.cxx=.o} 76 OBJS3 = ${OBJS2:.cxx=.o}
76 OBJS4 = ${OBJS3:.d=.o} 77 OBJS4 = ${OBJS3:.d=.o}
77 OBJS5 = ${OBJS4:.erl=.beam} 78 OBJS5 = ${OBJS4:.erl=.beam}
78 OBJS6 = ${OBJS5:.m=.o} 79 OBJS6 = ${OBJS5:.m=.o}
79 OBJS += ${OBJS6:.xpm=.o} 80 OBJS7 = ${OBJS6:.py=.pyc}
81 OBJS += ${OBJS7:.xpm=.o}
80 82
81 .SILENT: 83 .SILENT:
82 .SUFFIXES: .beam .c .cc .cxx .d .dep .erl .m .xpm 84 .SUFFIXES: .beam .c .cc .cxx .d .dep .erl .m .py .pyc .xpm
83 .PHONY: all subdirs pre-depend depend install install-extra uninstall uninstall-extra clean distclean 85 .PHONY: all subdirs pre-depend depend install install-extra uninstall uninstall-extra clean distclean
84 86
85 all: 87 all:
86 for i in subdirs depend ${STATIC_LIB} ${STATIC_LIB_NOINST} ${LIB} ${LIB_NOINST} ${PLUGIN} ${PLUGIN_NOINST} ${PROG} ${PROG_NOINST}; do \ 88 for i in subdirs depend ${STATIC_LIB} ${STATIC_LIB_NOINST} ${LIB} ${LIB_NOINST} ${PLUGIN} ${PLUGIN_NOINST} ${PROG} ${PROG_NOINST}; do \
87 ${MAKE} ${MFLAGS} $$i || exit 1; \ 89 ${MAKE} ${MFLAGS} $$i || exit 1; \
98 regen=0; \ 100 regen=0; \
99 deps=""; \ 101 deps=""; \
100 test -f .deps || regen=1; \ 102 test -f .deps || regen=1; \
101 for i in ${SRCS}; do \ 103 for i in ${SRCS}; do \
102 case $$i in \ 104 case $$i in \
103 *.o) \ 105 *.c) \
104 test $$i -nt .deps && regen=1; \ 106 test $$i -nt .deps && regen=1; \
105 deps="$${deps} $${i%.o}.dep"; \ 107 deps="$$deps $${i%.c}.dep"; \
108 ;; \
109 *.cc) \
110 test $$i -nt .deps && regen=1; \
111 deps="$$deps $${i%.cc}.dep"; \
112 ;; \
113 *.cxx) \
114 test $$i -nt .deps && regen=1; \
115 deps="$$deps $${i%.cxx}.dep"; \
116 ;; \
117 *.m) \
118 test $$i -nt .deps && regen=1; \
119 deps="$$deps $${i%.m}.dep"; \
106 ;; \ 120 ;; \
107 esac; \ 121 esac; \
108 done; \ 122 done; \
109 if test x"$$regen" = x"1" -a x"$$deps" != "x"; then \ 123 if test x"$$regen" = x"1" -a x"$$deps" != "x"; then \
110 ${DEPEND_STATUS}; \ 124 ${DEPEND_STATUS}; \
151 ${LINK_FAILED}; \ 165 ${LINK_FAILED}; \
152 fi 166 fi
153 167
154 ${STATIC_LIB} ${STATIC_LIB_NOINST}: ${EXT_DEPS} ${OBJS} 168 ${STATIC_LIB} ${STATIC_LIB_NOINST}: ${EXT_DEPS} ${OBJS}
155 ${LINK_STATUS} 169 ${LINK_STATUS}
156 if ${AR} cr $@ ${OBJS}; then \ 170 if ${AR} cr $@ ${OBJS} && ${RANLIB} ${@}; then \
157 ${LINK_OK}; \ 171 ${LINK_OK}; \
158 else \ 172 else \
159 ${LINK_FAILED}; \ 173 ${LINK_FAILED}; \
174 rm -f $@; \
160 fi 175 fi
161 176
162 .c.o: 177 .c.o:
163 ${COMPILE_STATUS} 178 ${COMPILE_STATUS}
164 if ${CC} ${CFLAGS} ${CPPFLAGS} -c -o $@ $<; then \ 179 if ${CC} ${CFLAGS} ${CPPFLAGS} -c -o $@ $<; then \
200 fi 215 fi
201 216
202 .m.o: 217 .m.o:
203 ${COMPILE_STATUS} 218 ${COMPILE_STATUS}
204 if ${OBJC} ${OBJCFLAGS} ${CPPFLAGS} -c -o $@ $<; then \ 219 if ${OBJC} ${OBJCFLAGS} ${CPPFLAGS} -c -o $@ $<; then \
220 ${COMPILE_OK}; \
221 else \
222 ${COMPILE_FAILED}; \
223 fi
224
225 .py.pyc:
226 ${COMPILE_STATUS}
227 if ${PYTHON} ${PYTHON_FLAGS} -c "import py_compile; py_compile.compile('$<')"; then \
205 ${COMPILE_OK}; \ 228 ${COMPILE_OK}; \
206 else \ 229 else \
207 ${COMPILE_FAILED}; \ 230 ${COMPILE_FAILED}; \
208 fi 231 fi
209 232