Commit Diff


commit - 613c827165ea6fbd5ff7d7b6160f52a33978ed6f
commit + 7c956fefc2035666770958e2cfaf278e20e6472a
blob - e880c6146ab2980a0c4267a24539487e19ca96c8
blob + dc03d1d3f522da6feda4cf3234e9ef16407d825f
--- Makefile
+++ Makefile
@@ -14,16 +14,12 @@ include Makefile.local
 y.tab.c: parse.y
 	${YACC} -b y parse.y
 
-SRCS = gmid.c iri.c utf8.c ex.c server.c sandbox.c mime.c puny.c \
-	utils.c log.c dirs.c fcgi.c proxy.c
-OBJS = ${SRCS:.c=.o} y.tab.o ${COMPAT}
+gmid: ${GMID_OBJS}
+	${CC} ${GMID_OBJS} -o $@ ${LDFLAGS}
 
-gmid: ${OBJS}
-	${CC} ${OBJS} -o gmid ${LDFLAGS}
+gg: ${GG_OBJS}
+	${CC} ${GG_OBJS} -o $@ ${LDFLAGS}
 
-gg: gg.o iri.o utf8.o ${COMPAT}
-	${CC} gg.o iri.o utf8.o ${COMPAT} -o $@ ${LDFLAGS}
-
 static: ${OBJS}
 	${CC} ${OBJS} -o gmid ${LDFLAGS} ${STATIC}
 
blob - 83991aff2732ef8d9c8596649f6f6ab7f398c107
blob + 4d88d235a3b7fab68000216ca0c17d78b7cac86e
--- configure
+++ configure
@@ -220,6 +220,12 @@ else
 	echo 1>&3
 fi
 
+if runtest noop MMD -MMD; then
+	CFLAGS="${CFLAGS} -MMD"
+	echo "adding -MMD to CFLAGS" 1>&2
+	echo "adding -MMD to CFLAGS" 1>&3
+fi
+
 # --------
 # tests for config.h
 
@@ -407,6 +413,25 @@ echo "file config.h: written" 1>&3
 # --------
 # tests for Makefile.local
 
+GMID_SRCS="dirs.c ex.c fcgi.c gmid.c iri.c log.c mime.c proxy.c puny.c"
+GMID_SRCS="${GMID_SRCS} sandbox.c server.c utf8.c utils.c y.tab.c"
+
+GMID_OBJS=
+for src in ${GMID_SRCS}; do
+	GMID_OBJS="${GMID_OBJS} ${src%.c}.o"
+done
+GMID_OBJS="${GMID_OBJS} ${COMPAT}"
+
+GG_SRCS="gg.c iri.c utf8.c"
+
+GG_OBJS=
+for src in ${GG_SRCS}; do
+	GG_OBJS="${GG_OBJS} ${src%.c}.o"
+done
+GG_OBJS="${GG_OBJS} ${COMPAT}"
+
+ALL_SRCS="${GMID_SRCS} gg.c"
+
 exec > Makefile.local
 
 [ -z "${BINDIR}"          ] && BINDIR="${PREFIX}/bin"
@@ -433,6 +458,9 @@ INSTALL_LIB	= ${INSTALL_LIB}
 INSTALL_MAN	= ${INSTALL_MAN}
 INSTALL_DATA	= ${INSTALL_DATA}
 
+GMID_OBJS	= ${GMID_OBJS}
+GG_OBJS		= ${GG_OBJS}
+
 VERSION		= ${VERSION}
 
 __HEREDOC__
@@ -441,8 +469,17 @@ printf "COMPAT ="
 for comp in ${COMPAT}; do
 	printf " %s/%s" "$PWD" "$comp"
 done
-printf "\n"
+printf "\n\n"
 
+# Include dependency info
+for src in ${ALL_SRCS}; do
+	printf "-include ${src%.c}.d\n"
+done
+
+for comp in ${COMPAT}; do
+	printf "-include ${comp%.o}.d\n"
+done
+
 echo "file Makefile.local: written" 1>&2
 echo "file Makefile.local: written" 1>&3