diff --git a/Makefile b/Makefile index bd8202b..c488fab 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,5 @@ SUBDIRS = src tests include buildsys.mk + +tests: src diff --git a/buildsys.mk.in b/buildsys.mk.in index f4441c8..def054d 100644 --- a/buildsys.mk.in +++ b/buildsys.mk.in @@ -60,6 +60,10 @@ PLUGIN_SUFFIX = @PLUGIN_SUFFIX@ INSTALL_LIB = @INSTALL_LIB@ UNINSTALL_LIB = @UNINSTALL_LIB@ CLEAN_LIB = @CLEAN_LIB@ +CC_DEPENDS = @CC_DEPENDS@ +CXX_DEPENDS = @CXX_DEPENDS@ +OBJC_DEPENDS = @OBJC_DEPENDS@ +OBJCXX_DEPENDS = @OBJCXX_DEPENDS@ LN_S = @LN_S@ MKDIR_P = mkdir -p INSTALL = @INSTALL@ @@ -104,15 +108,17 @@ MO_FILES = ${LOCALES:.po=.mo} .SILENT: .SUFFIXES: .SUFFIXES: .beam .c .c.dep .cc .cc.dep .class .cxx .cxx.dep .d .erl .lib.o .java .mo .m .m.dep .mm .mm.dep .o .plugin.o .po .py .pyc .rc .S .S.dep .xpm -.PHONY: all subdirs pre-depend depend install install-extra uninstall uninstall-extra clean distclean locales +.PHONY: all subdirs pre-depend depend install install-extra uninstall uninstall-extra clean distclean locales ${SUBDIRS} all: ${MAKE} ${MFLAGS} subdirs ${MAKE} ${MFLAGS} depend ${MAKE} ${STATIC_LIB} ${STATIC_LIB_NOINST} ${STATIC_PIC_LIB} ${STATIC_PIC_LIB_NOINST} ${SHARED_LIB} ${SHARED_LIB_NOINST} ${PLUGIN} ${PLUGIN_NOINST} ${PROG} ${PROG_NOINST} ${JARFILE} locales -subdirs: - for i in ${SUBDIRS}; do \ +subdirs: ${SUBDIRS} + +${SUBDIRS}: + for i in $@; do \ ${DIR_ENTER}; \ ${MAKE} ${MFLAGS} || exit $$?; \ ${DIR_LEAVE}; \ @@ -124,9 +130,35 @@ depend: pre-depend ${SRCS} test -f .deps || regen=1; \ for i in ${SRCS}; do \ case $$i in \ - *.c | *.cc | *.cxx | *.m | *.mm | *.S) \ - test $$i -nt .deps && regen=1; \ - deps="$$deps $$i.dep"; \ + *.c) \ + if test x"${CC_DEPENDS}" = x"yes"; then \ + test $$i -nt .deps && regen=1; \ + deps="$$deps $$i.dep"; \ + fi; \ + ;; \ + *.cc | *.cxx) \ + if test x"${CXX_DEPENDS}" = x"yes"; then \ + test $$i -nt .deps && regen=1; \ + deps="$$deps $$i.dep"; \ + fi; \ + ;; \ + *.m) \ + if test x"${OBJC_DEPENDS}" = x"yes"; then \ + test $$i -nt .deps && regen=1; \ + deps="$$deps $$i.dep"; \ + fi; \ + ;; \ + *.mm) \ + if test x"${OBJCXX_DEPENDS}" = x"yes"; then \ + test $$i -nt .deps && regen=1; \ + deps="$$deps $$i.dep"; \ + fi; \ + ;; \ + *.S) \ + if test x"${AS_DEPENDS}" = x"yes"; then \ + test $$i -nt .deps && regen=1; \ + deps="$$deps $$i.dep"; \ + fi; \ ;; \ esac; \ done; \ diff --git a/m4/buildsys.m4 b/m4/buildsys.m4 index 531fcf5..969978e 100644 --- a/m4/buildsys.m4 +++ b/m4/buildsys.m4 @@ -22,6 +22,11 @@ dnl POSSIBILITY OF SUCH DAMAGE. dnl AC_DEFUN([BUILDSYS_INIT], [ + AC_SUBST(CC_DEPENDS, $GCC) + AC_SUBST(CXX_DEPENDS, $GXX) + AC_SUBST(OBJC_DEPENDS, $GOBJC) + AC_SUBST(OBJCXX_DEPENDS, $GOBJCXX) + AC_PATH_PROG(TPUT, tput) AS_IF([test x"$TPUT" != x""], [