From 7637bc783e1cc19ace4da10987c2dc338cabcd26 Mon Sep 17 00:00:00 2001 From: Richard Brooksby Date: Sun, 2 Sep 2012 09:03:55 +0100 Subject: [PATCH] Building a fresh copy of version.c in the link/library step to avoid constant rebuilding. Copied from Perforce Change: 179168 ServerID: perforce.ravenbrook.com --- mps/code/commpost.nmk | 24 ++++++++---------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/mps/code/commpost.nmk b/mps/code/commpost.nmk index e579daabd23..283869eb6aa 100644 --- a/mps/code/commpost.nmk +++ b/mps/code/commpost.nmk @@ -83,11 +83,6 @@ variety: $(PFM)\$(VARIETY)\$(TARGET) mpsicv.cov: $(MAKE) /nologo /f $(PFM).nmk TARGET=$@ VARIETY=cv variety -# FORCE -# Used to force a target to be built. -# Depends on there being no file called "FORCE". -FORCE: - # GENUINE TARGETS # @@ -98,15 +93,8 @@ FORCE: # to build it. # %%TARGET: Add your new target here - !IFDEF VARIETY -# .special.version: version.obj has a special rule so that it is always -# built. This rule has no commands, meaning that the commands from -# other rules (the implicit .c -> .obj rule in particular) will be used. -# (Actually, there's a MS bug that causes this to randomly fail to build.) -$(PFM)\$(VARIETY)\version.obj: FORCE - $(PFM)\$(VARIETY)\finalcv.exe: $(PFM)\$(VARIETY)\finalcv.obj \ $(MPMOBJ) $(PLINTHOBJ) $(AMCOBJ) $(FMTTESTOBJ) \ $(MRGOBJ) $(TESTLIBOBJ) @@ -256,17 +244,20 @@ $(PFM)\$(VARIETY)\exposet0.exe: $(PFM)\$(VARIETY)\exposet0.obj \ $(PFM)\$(VARIETY)\mmsw.lib: $(SWOBJ) $(ECHO) $@ - $(LIBMAN) $(LIBFLAGS) /OUT:$@ $** + cl /c $(CFLAGS) /Fd$(PFM)\$(VARIETY)\ /Fo$(PFM)\$(VARIETY)\version.o version.c + $(LIBMAN) $(LIBFLAGS) /OUT:$@ $** $(PFM)\$(VARIETY)\version.o $(PFM)\$(VARIETY)\mmdw.lib: $(MPMOBJ) $(AMCOBJ) $(DWOBJ) \ $(AWLOBJ) $(LOOBJ) $(SNCOBJ) $(ECHO) $@ - $(LIBMAN) $(LIBFLAGS) /OUT:$@ $** + cl /c $(CFLAGS) /Fd$(PFM)\$(VARIETY)\ /Fo$(PFM)\$(VARIETY)\version.o version.c + $(LIBMAN) $(LIBFLAGS) /OUT:$@ $** $(PFM)\$(VARIETY)\version.o $(PFM)\$(VARIETY)\mps.lib: $(MPMOBJ) $(AMCOBJ) $(LOOBJ) $(SNCOBJ) \ $(MVFFOBJ) $(AMSOBJ) $(AWLOBJ) $(ECHO) $@ - $(LIBMAN) $(LIBFLAGS) /OUT:$@ $** + cl /c $(CFLAGS) /Fd$(PFM)\$(VARIETY)\ /Fo$(PFM)\$(VARIETY)\version.o version.c + $(LIBMAN) $(LIBFLAGS) /OUT:$@ $** $(PFM)\$(VARIETY)\version.o # We would like to use $** in the linker command line here, but we # cannot because the target, mpsdy.dll, depends on the w3gen.def file, @@ -324,7 +315,8 @@ $(PFM)\$(VARIETY)\mpsplcb.lib: $(PFM)\$(VARIETY)\mpslibcb.obj {$(PFM)\$(VARIETY)}.obj{$(PFM)\$(VARIETY)}.exe: $(ECHO) $@ - $(LINKER) $(LINKFLAGS) /PDB:$*.pdb /OUT:$@ $(**) + cl /c $(CFLAGS) /Fd$(PFM)\$(VARIETY)\ /Fo$(PFM)\$(VARIETY)\version.o version.c + $(LINKER) $(LINKFLAGS) /PDB:$*.pdb /OUT:$@ $(**) $(PFM)\$(VARIETY)\version.o # C. COPYRIGHT AND LICENSE