]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
build: compile_et rules for parallel make
authorMichael Meffie <mmeffie@sinenomine.net>
Tue, 10 Sep 2013 02:25:50 +0000 (22:25 -0400)
committerStephan Wiesand <stephan.wiesand@desy.de>
Fri, 4 Oct 2013 14:14:58 +0000 (07:14 -0700)
Change all makefile rules which run compile_et in order support parallel
make.  The compile_et generates two outputs, so special care must be
taken in rules which run compile_et.

All the rules for compile_et have been changed to the form:

    foo.c foo.h: foo.et
        compile_et foo.et -h foo
    foo.h: foo.c

The above rules are equivalent to:

    foo.c: foo.et
        compile_et foo.et -h foo

    foo.h: foo.et foo.c
        compile_et foo.et -h foo

therefore a parallel make will serialize the builds of foo.c and foo.h,
and should detect that the second is no longer needed once the first is
over.  This form works since foo.et is not a phony target, and does not
depend on a phony target.

Previously, the rules for compile_et were of the one of the two forms:

    a)  foo.c foo.h: foo.et
            compile_et foo.et -h foo

or

    b)  foo.h: foo.c
        foo.c: foo.et
            compile_et foo.et -h foo

Form a) is problematic for parallel makes, since it is equivalent to:

        foo.c:
            compile_et foo.et -h foo
        foo.h:
            compile_et foo.et -h foo

In a parallel make, compile_et will be run concurrently, clobbering
each other's output files.

Form b) is better, but is problematic when foo.h is removed, since foo.h
will not be updated.

Thanks to Russ Allbery for pointing out the automake documentation which
describes issues with commands that produce multiple outputs, and
portable solutions.

http://www.gnu.org/software/automake/manual/automake.html#Multiple-Outputs

Reviewed-on: http://gerrit.openafs.org/10237
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
(cherry picked from commit dbf68229c6c90d65781fdc16565dd1e9b56248c0)

Change-Id: Ibb5a5e9c85245d716b1b203a15adbe5c87d860b7
Reviewed-on: http://gerrit.openafs.org/10310
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>
21 files changed:
src/afs/Makefile.in
src/auth/Makefile.in
src/bozo/Makefile.in
src/bubasics/Makefile.in
src/bucoord/Makefile.in
src/budb/Makefile.in
src/cmd/Makefile.in
src/dvolser/Makefile.in
src/kauth/Makefile.in
src/libadmin/adminutil/Makefile.in
src/ptserver/Makefile.in
src/rxkad/Makefile.in
src/rxkad/test/Makefile.in
src/tbudb/Makefile.in
src/tptserver/Makefile.in
src/tubik/Makefile.in
src/tvlserver/Makefile.in
src/tvolser/Makefile.in
src/ubik/Makefile.in
src/vlserver/Makefile.in
src/volser/Makefile.in

index 66d6c024f32d8eaa353473d4d5a7c2379a96c722..81cd4ab6b764fb276672b28bb929b17a0301adfd 100644 (file)
@@ -18,12 +18,14 @@ all: depinstall
 
 generated: afs_trace.h afs_trace.msf unified_afs.c unified_afs.h
 
-afs_trace.h afs_trace.msf: afs_trace.et
+afs_trace.msf afs_trace.h: afs_trace.et
        ${COMPILE_ET} -v 2 -p ${srcdir} afs_trace.et
+afs_trace.h: afs_trace.msf
 
 unified_afs.c unified_afs.h: unified_afs.et
        $(RM) -f unified_afs.c unified_afs.h
        ${COMPILE_ET} -p ${srcdir} unified_afs -h unified_afs
+unified_afs.h: unified_afs.c
 
 afszcm.cat: afs_trace.msf
        -$(RM) -f afszcm.cat
index c1cf575f63cfa419111b25afde50f74ca803fe85..6539ca5cb4178a7dc916d4c766925bf1b72a7866 100644 (file)
@@ -100,12 +100,14 @@ acfg_errors.o: acfg_errors.c
 acfg_errors.c cellconfig.h: acfg_errors.et cellconfig.p.h
        $(RM) -f cellconfig.h acfg_errors.c
        ${COMPILE_ET} -p ${srcdir} acfg_errors -h cellconfig
+cellconfig.h: acfg_errors.c
 
 ktc_errors.o: ktc_errors.c
 
 ktc_errors.c auth.h: ktc_errors.et auth.p.h
        $(RM) -f auth.h ktc_errors.c
        ${COMPILE_ET} -p ${srcdir} ktc_errors -h auth
+auth.h: ktc_errors.c
 
 #
 # Install targets
index de114bceb430fbee46f6c353db07e66dda3f1112..691b8fe83718194f381393c8696ace3f3753d767 100644 (file)
@@ -79,11 +79,10 @@ bosint.cs.c: bosint.h
 bosint.ss.c: bosint.h
 bosint.xdr.c: bosint.h
 
-bnode.h: boserr.c
-
-boserr.c: bnode.p.h boserr.et
+boserr.c bnode.h: bnode.p.h boserr.et
        $(RM) -f boserr.c bnode.h
        ${COMPILE_ET} -p ${srcdir} boserr -h bnode
+bnode.h: boserr.c
 
 bosserver.o: bosserver.c ${INCLS} AFS_component_version_number.o
 
index 4c94f19769e7fb89dba5b9b6bb2a7c3853494135..0ed202ebeef0162e02780e92feef66ae41e220b6 100644 (file)
@@ -82,23 +82,20 @@ bumon.xdr.c: bumon.h
 bumon.ss.c: bumon.h
 bumon.cs.c: bumon.h
 
-butm.h: butm_errs.c
-
-butm_errs.c: butm_errs.et butm.p.h
+butm_errs.c butm.h: butm_errs.et butm.p.h
        $(RM) -f butm.h butm_errs.c
        ${COMPILE_ET} -p ${srcdir} butm_errs -h butm
+butm.h: butm_errs.c
 
-tcdata.h: butc_errs.c
-
-butc_errs.c: butc_errs.et tcdata.p.h butm.h
+butc_errs.c tcdata.h: butc_errs.et tcdata.p.h butm.h
        $(RM) -f tcdata.h butc_errs.c
        ${COMPILE_ET} -p ${srcdir} butc_errs -h tcdata
+tcdata.h: butc_errs.c
 
-butx.h: butx_errs.c
-
-butx_errs.c: butx_errs.et
+butx_errs.c butx.h: butx_errs.et
        $(RM) -f butx.h butx_errs.c
        ${COMPILE_ET} -p ${srcdir} butx_errs -h butx
+butx.h: butx_errs.c
 
 #
 # Installation targets
index b41086d31363c9fe4bdf63246725e60751a7a794..f1cdabf2180e3cd84f6668a0c578e0d72595d467 100644 (file)
@@ -69,11 +69,10 @@ $(BACKOBJS): bc.h ${TOP_INCDIR}/afs/butc.h
 backup:  $(BACKOBJS) ${LIBS}
        ${CC} ${CFLAGS} -o backup $(BACKOBJS) ${LIBS} ${XLIBS} ${KRB5_LIBS}
 
-bc.h: bucoord_errs.c
-
-bucoord_errs.c:        bucoord_errs.et bc.p.h
+bucoord_errs.c bc.h: bucoord_errs.et bc.p.h
        $(RM) -f bc.h bucoord_errs.c
        ${COMPILE_ET} -p ${srcdir} bucoord_errs -h bc
+bc.h: bucoord_errs.c
 
 #
 # Errors
index 4b2c8a5424fbd02fee21d36d510df081d57a868d..e4b36c76fbe654e9e06d047f3576deef5b5253a5 100644 (file)
@@ -72,11 +72,10 @@ ${TOP_INCDIR}/afs/budb_client.h: budb_client.h
 ${TOP_INCDIR}/afs/budb_prototypes.h: budb_prototypes.h
        ${INSTALL_DATA} $? $@
 
-budb_errs.h: budb_errs.c
-
-budb_errs.c: budb_errs.et
+budb_errs.c bubd_errs.h: budb_errs.et
        $(RM) -f budb_errs.c
        ${COMPILE_ET} -p ${srcdir} budb_errs
+budb_errs.h: budb_errs.c
 
 database.o: database.c budb_errs.h globals.h ${INCLS}
 db_alloc.o: db_alloc.c budb_errs.h ${INCLS}
index 260bcc09950a1846abffe8daa45b73e368f6f65b..5cfd4fe34b1962ee276530bed0c872b195953cb6 100644 (file)
@@ -30,11 +30,10 @@ ${TOP_LIBDIR}/libcmd64.a: libcmd64.a
 ${TOP_INCDIR}/afs/cmd.h: cmd.h
        ${INSTALL_DATA} $? $@
 
-cmd.h: cmd_errors.et cmd.p.h
+cmd_errors.c cmd.h: cmd_errors.et cmd.p.h
        $(RM) -f cmd.h cmd_errors.c
        ${COMPILE_ET} -p ${srcdir} cmd_errors -h cmd
-
-cmd_errors.c: cmd.h 
+cmd.h: cmd_errors.c
 
 cmd_errors.o: cmd_errors.c
 
index 46bdd8d22c58f31ec8688d0f8f8e31dac1e00fa9..928fc2695d2f6a58da706016830b4badd24867bf 100644 (file)
@@ -130,8 +130,10 @@ aclprocs.o: ${LIBACL}/aclprocs.c
 netprocs.o: ${LIBACL}/netprocs.c
        ${COMPILE}
 
-vlserver.h vl_errors.c: ${VLSERVER}/vl_errors.et ${VLSERVER}/vlserver.p.h
-       $(RM) -f vlserver.h vl_errors.c; ${COMPILE_ET} -p ${VLSERVER} vl_errors -h vlserver
+vl_errors.c vlserver.h: ${VLSERVER}/vl_errors.et ${VLSERVER}/vlserver.p.h
+       $(RM) -f vlserver.h vl_errors.c
+       ${COMPILE_ET} -p ${VLSERVER} vl_errors -h vlserver
+vlserver.h: vl_errors.c
 
 vl_errors.o: vl_errors.c
        ${COMPILE}
index e2157cb25c7072c746b7839ca498f37175752609..a698cc13818265d35891a5d628c23087c48fcacf 100644 (file)
@@ -109,11 +109,10 @@ kaauxdb.o: kaauxdb.c
 
 kaerrors.o: kaerrors.c
 
-kautils.h: kaerrors.c
-
-kaerrors.c: kaerrors.et kautils.p.h
+kaerrors.c kautils.h: kaerrors.et kautils.p.h
        $(RM) -f kautils.h kaerrors.c
        ${COMPILE_ET} -p ${srcdir} kaerrors -h kautils
+kautils.h: kaerrors.c
 
 kauth.ss.o: kauth.ss.c
 kauth.cs.o: kauth.cs.c
index 434d1e55b4b6459ecf14590b317b1f587beb6984..aae7a90d3cf65c786517bf21c2be6a9799a873e0 100644 (file)
@@ -33,76 +33,75 @@ ${TOP_LIBDIR}/libafsadminutil.a: libafsadminutil.a
 ${TOP_INCDIR}/afs/afs_utilAdmin.h: afs_utilAdmin.h
        ${INSTALL_DATA} $? $@
 
-afs_AdminBosErrors.h: afs_AdminBosErrors.c
-afs_AdminBosErrors.c: afs_AdminBosErrors.et
+afs_AdminBosErrors.c afs_AdminBosErrors.h: afs_AdminBosErrors.et
        ${INSTALL_DATA} ${srcdir}/afs_AdminErrors.h ${TOP_INCDIR}/afs
        $(RM) -f afs_AdminBosErrors.c afs_AdminBosErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminBosErrors.et -h afs_AdminBosErrors
+afs_AdminBosErrors.h: afs_AdminBosErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminBosErrors.h: afs_AdminBosErrors.h
        cp afs_AdminBosErrors.h ${TOP_INCDIR}/afs/afs_AdminBosErrors.h
 
-afs_AdminCfgErrors.h: afs_AdminCfgErrors.c
-afs_AdminCfgErrors.c: afs_AdminCfgErrors.et
+afs_AdminCfgErrors.c afs_AdminCfgErrors.h: afs_AdminCfgErrors.et
        $(RM) -f ${srcdir}/afs_AdminCfgErrors.c afs_AdminCfgErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminCfgErrors.et -h afs_AdminCfgErrors
+afs_AdminCfgErrors.h: afs_AdminCfgErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminCfgErrors.h: afs_AdminCfgErrors.h
        cp afs_AdminCfgErrors.h ${TOP_INCDIR}/afs/afs_AdminCfgErrors.h
 
-afs_AdminClientErrors.h: afs_AdminClientErrors.c
-afs_AdminClientErrors.c: afs_AdminClientErrors.et
+afs_AdminClientErrors.c afs_AdminClientErrors.h: afs_AdminClientErrors.et
        $(RM) -f ${srcdir}/afs_AdminClientErrors.c afs_AdminClientErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminClientErrors.et -h afs_AdminClientErrors
+afs_AdminClientErrors.h: afs_AdminClientErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminClientErrors.h: afs_AdminClientErrors.h
        cp afs_AdminClientErrors.h ${TOP_INCDIR}/afs/afs_AdminClientErrors.h
 
-afs_AdminMiscErrors.h: afs_AdminMiscErrors.c
-afs_AdminMiscErrors.c: afs_AdminMiscErrors.et
+afs_AdminMiscErrors.c afs_AdminMiscErrors.h: afs_AdminMiscErrors.et
        $(RM) -f ${srcdir}/afs_AdminMiscErrors.c afs_AdminMiscErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminMiscErrors.et -h afs_AdminMiscErrors
+afs_AdminMiscErrors.h: afs_AdminMiscErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminMiscErrors.h: afs_AdminMiscErrors.h
        cp afs_AdminMiscErrors.h ${TOP_INCDIR}/afs/afs_AdminMiscErrors.h
 
-afs_AdminCommonErrors.h: afs_AdminCommonErrors.c
-afs_AdminCommonErrors.c: afs_AdminCommonErrors.et
+afs_AdminCommonErrors.c afs_AdminCommonErrors.h: afs_AdminCommonErrors.et
        $(RM) -f ${srcdir}/afs_AdminCommonErrors.c afs_AdminCommonErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminCommonErrors.et -h afs_AdminCommonErrors
+afs_AdminCommonErrors.h: afs_AdminCommonErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminCommonErrors.h: afs_AdminCommonErrors.h
        cp afs_AdminCommonErrors.h ${TOP_INCDIR}/afs/afs_AdminCommonErrors.h
 
-afs_AdminKasErrors.h: afs_AdminKasErrors.c
-afs_AdminKasErrors.c: afs_AdminKasErrors.et
+afs_AdminKasErrors.c afs_AdminKasErrors.h: afs_AdminKasErrors.et
        $(RM) -f ${srcdir}/afs_AdminKasErrors.c afs_AdminKasErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminKasErrors.et -h afs_AdminKasErrors
+afs_AdminKasErrors.h: afs_AdminKasErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminKasErrors.h: afs_AdminKasErrors.h
        cp afs_AdminKasErrors.h ${TOP_INCDIR}/afs/afs_AdminKasErrors.h
 
-afs_AdminPtsErrors.h: afs_AdminPtsErrors.c
-afs_AdminPtsErrors.c: afs_AdminPtsErrors.et
+afs_AdminPtsErrors.c afs_AdminPtsErrors.h: afs_AdminPtsErrors.et
        $(RM) -f ${srcdir}/afs_AdminPtsErrors.c afs_AdminPtsErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminPtsErrors.et -h afs_AdminPtsErrors
+afs_AdminPtsErrors.h: afs_AdminPtsErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminPtsErrors.h: afs_AdminPtsErrors.h
        cp afs_AdminPtsErrors.h ${TOP_INCDIR}/afs/afs_AdminPtsErrors.h
 
-afs_AdminUtilErrors.h: afs_AdminUtilErrors.c
-afs_AdminUtilErrors.c: afs_AdminUtilErrors.et
+afs_AdminUtilErrors.c afs_AdminUtilErrors.h: afs_AdminUtilErrors.et
        $(RM) -f ${srcdir}/afs_AdminUtilErrors.c afs_AdminUtilErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminUtilErrors.et -h afs_AdminUtilErrors
+afs_AdminUtilErrors.h: afs_AdminUtilErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminUtilErrors.h: afs_AdminUtilErrors.h
        cp afs_AdminUtilErrors.h ${TOP_INCDIR}/afs/afs_AdminUtilErrors.h
 
-afs_AdminVosErrors.c: afs_AdminVosErrors.et
+afs_AdminVosErrors.c afs_AdminVosErrors.h: afs_AdminVosErrors.et
        $(RM) -f ${srcdir}/afs_AdminVosErrors.c afs_AdminVosErrors.h
        ${COMPILE_ET} -p ${srcdir} afs_AdminVosErrors.et -h afs_AdminVosErrors
-
-afs_AdminVosErrors.h:  afs_AdminVosErrors.c
+afs_AdminVosErrors.h: afs_AdminVosErrors.c
 
 ${TOP_INCDIR}/afs/afs_AdminVosErrors.h: afs_AdminVosErrors.h
        cp afs_AdminVosErrors.h ${TOP_INCDIR}/afs/afs_AdminVosErrors.h
index d4663c8b2e1b71a6022fcab3751725c15d31a320..47d25777fc9286da1c0653368ed18fe3982d3d71 100644 (file)
@@ -155,9 +155,10 @@ ptclient.o: ptclient.c ${INCLS} AFS_component_version_number.c
 
 ptuser.o: ptuser.c ${LINCLS}
 
-pterror.h pterror.c: pterror.et
+pterror.c pterror.h: pterror.et
        $(RM) -f pterror.h pterror.c
        ${COMPILE_ET} -p ${srcdir} pterror
+pterror.h: pterror.c
 
 libprot.a: ptuser.o pterror.o ptint.cs.o ptint.xdr.o AFS_component_version_number.o
        $(RM) -f $@
index 2cce5dbe27a21aeef1faba7371d9dc1c87c8bd6f..7a3be2e57731a7755bb49ca0b4638baa56785999 100644 (file)
@@ -75,6 +75,7 @@ rxkad_errs.o: rxkad_errs.c
 rxkad_errs.c rxkad.h: rxkad_errs.et rxkad.p.h
        $(RM) -f rxkad.h rxkad_errs.c
        ${COMPILE_ET} -p ${srcdir} rxkad_errs -h rxkad
+rxkad.h: rxkad_errs.c
 
 ticket.o: ticket.c lifetimes.h ${INCLS}
        $(CC) $(CFLAGS) -c ${srcdir}/ticket.c
index 8af72393611f734b7cd99570496a032be74fa3d2..6e2bb53ce93061eed83b330637cececb423f76ae 100644 (file)
@@ -71,7 +71,9 @@ th_stress_errs.o: stress_errs.c
        ${THRULE} -c $(srcdir)/stress_errs.c -o th_stress_errs.o
 
 stress_errs.c stress_errs.h: stress_errs.et
-       $(RM) -f stress_errs.h stress_errs.c; ${COMPILE_ET} -p ${srcdir} stress_errs -h stress_errs
+       $(RM) -f stress_errs.h stress_errs.c
+       ${COMPILE_ET} -p ${srcdir} stress_errs -h stress_errs
+stress_errs.h: stress_errs.c
 
 stress.o: ${HEADERS}
 stress_c.o: ${HEADERS}
index 7dff78c5d628f0ffbf423d1ab6e7c4a453122373..6d65dec5cadac7bc576f5ad869f8eff127a24571 100644 (file)
@@ -58,11 +58,10 @@ SERVER_OBJS = ${COMMON_OBJS} budb.ss.o budb.xdr.o dbs_dump.o db_lock.o db_text.o
 
 all: ${TOP_LIBDIR}/libbudb.a ${TOP_INCDIR}/afs/budb.h ${TOP_INCDIR}/afs/budb_errs.h ${TOP_INCDIR}/afs/budb_client.h budb_server ${INCLS}
 
-budb_errs.h: budb_errs.c
-
-budb_errs.c: ${BUDB}/budb_errs.et
-       $(RM) -f budb_errs.c
+budb_errs.c budb_errs.h: ${BUDB}/budb_errs.et
+       $(RM) -f budb_errs.c budb_errs.h
        ${COMPILE_ET} -p ${srcdir}/${BUDB} budb_errs
+budb_errs.h: budb_errs.c
 
 #
 # Build targets
index 40c75196d7fa3bb543fc2d5416e61d116da4818e..9b797542c93c047be41aa8310aa5419341088483 100644 (file)
@@ -174,9 +174,10 @@ ptclient.o: ${PTSERVER}/ptclient.c ${INCLS}
 ptuser.o: ${PTSERVER}/ptuser.c ${INCLS}
        ${CCRULE} ${srcdir}/${PTSERVER}/ptuser.c
 
-pterror.h pterror.c: ${PTSERVER}/pterror.et
+pterror.c pterror.h: ${PTSERVER}/pterror.et
        $(RM) -f pterror.h pterror.c
        ${COMPILE_ET} -p ${srcdir}/${PTSERVER} pterror
+pterror.h: pterror.c
 
 pts: pts.o $(PTOBJS) ${TOP_LIBDIR}/libcmd.a $(LIBS) ${INCLS}
        $(CC) ${LDFLAGS} -o pts pts.o ${TOP_LIBDIR}/libcmd.a $(PTOBJS) ${LIBS} ${MT_LIBS} ${XLIBS} ${KRB5_LIBS}
index 3a78dd11363195b945b7d19916c0b6dd4ce4f475..325a03b1d3cc795c714e7cfce673ff2d5d6f7d50 100644 (file)
@@ -179,6 +179,7 @@ uerrors.o: uerrors.c
 uerrors.c ubik.h: ${srcdir}/uerrors.et ${srcdir}/ubik.p.h
        $(RM) -f ubik.h uerrors.c
        ${COMPILE_ET} -p ${srcdir} uerrors -h ubik
+ubik.h: uerrors.c
 
 libubik_pthread.a: ${INCLS} ${LIBOBJS} AFS_component_version_number.o
        -$(RM) -f $@
index 949065e459e562e76ac3686f00f0b3e058b56f95..c9cf5d41209a53fe26cb18dea81f149490a2fa63 100644 (file)
@@ -179,8 +179,10 @@ vlclient.o: ${VLSERVER}/vlclient.c
 vl_errors.o: vl_errors.c
        ${CCRULE} vl_errors.c
 
-vlserver.h vl_errors.c: ${VLSERVER}/vl_errors.et ${VLSERVER}/vlserver.p.h
-       $(RM) -f vlserver.h vl_errors.c; ${COMPILE_ET} -p ${srcdir}/${VLSERVER} vl_errors -h vlserver
+vl_errors.c vlserver.h: ${VLSERVER}/vl_errors.et ${VLSERVER}/vlserver.p.h
+       $(RM) -f vlserver.h vl_errors.c
+       ${COMPILE_ET} -p ${srcdir}/${VLSERVER} vl_errors -h vlserver
+vlserver.h: vl_errors.c
 
 system: install
 
index 5e3c9e69042030bc676eed2e28702dc5a0a7f0d0..042a1561370500e2bbd9319715e4bb210fa28d60 100644 (file)
@@ -137,8 +137,10 @@ aclprocs.o: ${LIBACL}/aclprocs.c
 netprocs.o: ${LIBACL}/netprocs.c
        ${COMPILE}
 
-vlserver.h vl_errors.c: ${VLSERVER}/vl_errors.et ${VLSERVER}/vlserver.p.h
-       $(RM) -f vlserver.h vl_errors.c; ${COMPILE_ET} -p ${VLSERVER} vl_errors -h vlserver
+vl_errors.c vlserver.h: ${VLSERVER}/vl_errors.et ${VLSERVER}/vlserver.p.h
+       $(RM) -f vlserver.h vl_errors.c
+       ${COMPILE_ET} -p ${VLSERVER} vl_errors -h vlserver
+vlserver.h: vl_errors.c
 
 vl_errors.o: vl_errors.c
        ${COMPILE}
index d219d28b212cbc7dafe26c86078673c066408de1..5643f6c89a5cccd04adc0090706583f72750bf62 100644 (file)
@@ -111,6 +111,7 @@ uerrors.o: uerrors.c
 uerrors.c ubik.h: uerrors.et ubik.p.h
        $(RM) -f ubik.h uerrors.c
        ${COMPILE_ET} -p ${srcdir} uerrors -h ubik
+ubik.h: uerrors.c
 
 libubik.a: ${LIBOBJS} AFS_component_version_number.o
        -$(RM) -f $@
index 3e7ad4bbd8b1b9ac7da6363092eb5804babf9aa5..16e32ce4e434bec2f4ae35ee168dcc038ee78eef 100644 (file)
@@ -129,8 +129,11 @@ vlclient: vlclient.o libvldb.a $(LIBS)
 vlclient.o: vlclient.c ${INCLS} AFS_component_version_number.o
 
 vl_errors.o: vl_errors.c
-vlserver.h vl_errors.c: vl_errors.et vlserver.p.h
-       $(RM) -f vlserver.h vl_errors.c; ${COMPILE_ET} -p ${srcdir} vl_errors -h vlserver
+
+vl_errors.c vlserver.h : vl_errors.et vlserver.p.h
+       $(RM) -f vlserver.h vl_errors.c
+       ${COMPILE_ET} -p ${srcdir} vl_errors -h vlserver
+vlserver.h: vl_errors.c
 
 vlserver.o: vlserver.c
 
index 5e5ac6d3df0231f30eaa40dbcb0f6da595086c10..4ff2e400bc255ea9bc1ac5ca09c74a2a92ea481d 100644 (file)
@@ -104,11 +104,10 @@ libvolser.a: volint.cs.o  $(VSOBJS) volint.ss.o AFS_component_version_number.o
        $(AR) crv $@ volint.cs.o $(VSOBJS) volint.ss.o AFS_component_version_number.o 
        $(RANLIB) $@
 
-volser.h: volerr.c
-
-volerr.c: volerr.et volser.p.h
+volerr.c volser.h: volerr.et volser.p.h
        $(RM) -f volser.h volerr.c
        ${COMPILE_ET} -p ${srcdir} volerr -h volser
+volser.h: volerr.c
 
 volint.cs.c: volint.xg
        ${RXGEN} -A -x -C -o $@ ${srcdir}/volint.xg