help-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Force Recompile of Files


From: Allen, Robert
Subject: Force Recompile of Files
Date: Thu, 29 Jul 2004 10:32:32 -0400

Hello All,
 
I have a project that contains several files that contain configuration data.  In some of the files, I have conditionally compiled sections.  In the end there will be 32 seperate configurations that I want to build.  I want to build all 32 targets, so that I can then combine them to form a file containing all 32 sets of data.  I can only have a single makefile, because I don't want to have to update a bunch of files if a new configuration file is added.  I want to invoke make with a single target that builds all 32 sets and then combines them.
 
The way I have it, so far, Config_0_0 performs it's tasks, then deletes the objects so the next target can rebuild the files.  This doesn't happen, becuase the dependencies must have already been checked and the files existed at that time.  Config_0_1 attempts to build its target from the objects created by Config_0_0, but they are not there anymore.
 
Below is a snippet of the make file.
 
 
Thanks for any help or suggestions you can offer!
 
Robert Allen
Senior Software Engineer
Goodrich Sensor Systems
 
 
 
Config_0_0: A_OPT_FLAGS =
Config_0_0: C_OPT_FLAGS = -c -g  -DBUILD=CONFIG -DAC_TYPE=0 -DLOCATION=0
Config_0_0: BUILD_PATH = ./Build/
Config_0_0: BUILD_OBJECTS := $(ConfigObjects)
Config_0_0: OBJECT_PATH = $(subst $(space), $(space)$(BUILD_PATH), $(BUILD_OBJECTS))
Config_0_0: clean_obj \
            $(ConfigObjects)
            $(VDSP)/linker.exe -T CHA_adsp.ldf -MDBUILD=CONFIG -MDEMU=FALSE $(OBJECT_PATH) -o .\Build\Config_0_0.dxe -Map .\Build\Config_0_0.xml
            -del .\Build\*.doj
 
Config_0_1: A_OPT_FLAGS =
Config_0_1: C_OPT_FLAGS = -c -g  -DBUILD=CONFIG -DAC_TYPE=0 -DLOCATION=1
Config_0_1: BUILD_PATH = ./Build/
Config_0_1: BUILD_OBJECTS := $(ConfigObjects)
Config_0_1: OBJECT_PATH = $(subst $(space), $(space)$(BUILD_PATH), $(BUILD_OBJECTS))
Config_0_1: clean_obj \
  $(ConfigObjects)
  $(VDSP)/linker.exe -T CHA_adsp.ldf -MDBUILD=CONFIG -MDEMU=FALSE $(OBJECT_PATH) -o .\Build\Config_0_1.dxe -Map .\Build\Config_0_1.xml
  -del .\Build\*.doj
 
Config_0_2: A_OPT_FLAGS =
Config_0_2: C_OPT_FLAGS = -c -g  -DBUILD=CONFIG -DAC_TYPE=0 -DLOCATION=2
Config_0_2: BUILD_PATH = ./Build/
Config_0_2: BUILD_OBJECTS := $(ConfigObjects)
Config_0_2: OBJECT_PATH = $(subst $(space), $(space)$(BUILD_PATH), $(BUILD_OBJECTS))
Config_0_2: clean_obj \
  $(ConfigObjects)
  $(VDSP)/linker.exe -T CHA_adsp.ldf -MDBUILD=CONFIG -MDEMU=FALSE $(OBJECT_PATH) -o .\Build\Config_0_2.dxe -Map .\Build\Config_0_2.xml
  -del .\Build\*.doj
 
Config_0_3: A_OPT_FLAGS =
Config_0_3: C_OPT_FLAGS = -c -g  -DBUILD=CONFIG -DAC_TYPE=0 -DLOCATION=3
Config_0_3: BUILD_PATH = ./Build/
Config_0_3: BUILD_OBJECTS := $(ConfigObjects)
Config_0_3: OBJECT_PATH = $(subst $(space), $(space)$(BUILD_PATH), $(BUILD_OBJECTS))
Config_0_3: clean_obj \
  $(ConfigObjects)
  $(VDSP)/linker.exe -T CHA_adsp.ldf -MDBUILD=CONFIG -MDEMU=FALSE $(OBJECT_PATH) -o .\Build\Config_0_3.dxe -Map .\Build\Config_0_3.xml
  -del .\Build\*.doj
 
Config_rel: clean_all \
            Config_0_0 \
            Config_0_1 \
            Config_0_2 \
            Config_0_3
 
# declare a phony target
.PHONY : clean_all
# leave blank line for no dependencies
clean_all :
  -del .\Build\*.doj
  -del .\Build\*.dxe
  -del .\Build\*.xml
 
# declare a phony target
.PHONY : clean_obj
# leave blank line for no dependencies
clean_obj :
  -del .\Build\*.doj
 
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]