diff options
author | konablend <[email protected]> | 2009-04-19 01:47:13 +0000 |
---|---|---|
committer | konablend <[email protected]> | 2009-04-19 01:47:13 +0000 |
commit | 4fffefa4da3832f6883fb21527847deaaf8455b4 (patch) | |
tree | b6e49d32ddb7a86bca4b856c8002d0dabe3a3c17 /make | |
parent | 05965924b744356f7eb4977303e0afcb15d6300e (diff) |
BuildSystem: fix darwin/xcode to avoid double-configure/build after svn up
- build system automagically rebuilds certain files from libhb upwards after
an svn up to maintain accurate repository information in binaries; if building
with xcode the process was inadvertantly repeated on subsequent 'make'.
- enhanced make/xcodemake to record the user's environment when shunted through
xcode. this should help in diagnosing build issues from Xcode.app in the future.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2344 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'make')
-rw-r--r-- | make/configure.py | 6 | ||||
-rw-r--r-- | make/include/main.rules | 7 | ||||
-rwxr-xr-x | make/xcodemake | 8 |
3 files changed, 15 insertions, 6 deletions
diff --git a/make/configure.py b/make/configure.py index ba089411a..8c33becea 100644 --- a/make/configure.py +++ b/make/configure.py @@ -1248,9 +1248,9 @@ try: else: doc.add( 'BUILD.cross.prefix', '' ) - doc.add( 'BUILD.method', 'terminal' ) - doc.add( 'BUILD.date', time.strftime('%c') ) - doc.add( 'BUILD.arch', arch.mode.mode ) + doc.add( 'BUILD.method', 'terminal' ) + doc.add( 'BUILD.date', time.strftime('%c') ) + doc.add( 'BUILD.arch', arch.mode.mode ) doc.addBlank() doc.add( 'CONF.method', options.conf_method ) diff --git a/make/include/main.rules b/make/include/main.rules index 2b288ab31..132567c1e 100644 --- a/make/include/main.rules +++ b/make/include/main.rules @@ -4,7 +4,8 @@ ############################################################################### ## file-wide conditional to use xcode rules if xcode=1 method=terminal -ifeq ($(FEATURE.xcode):$(BUILD.method),1:terminal) +## xcodemake will set BUILD.method != terminal to prevent infinite recursion +ifeq (1:terminal,$(FEATURE.xcode):$(BUILD.method)) include $(SRC/)macosx/module.xcode else @@ -40,12 +41,12 @@ include $(MODULES:%=$(SRC/)%/module.rules) ## target which causes re-configure if project-root is svn update'd $(BUILD/)GNUmakefile: $(wildcard $(SRC/).svn/entries) - $(SRC/)configure --force $(CONF.args) + $(SRC/)configure --force --conf-method=$(CONF.method) $(CONF.args) ## target useful to force reconfigure; only helpful for build-system development .PHONY: reconfigure reconfigure: - $(SRC/)configure --force $(CONF.args) + $(SRC/)configure --force --conf-method=$(CONF.method) $(CONF.args) ############################################################################### diff --git a/make/xcodemake b/make/xcodemake index 4854ec2d4..93c927c96 100755 --- a/make/xcodemake +++ b/make/xcodemake @@ -92,6 +92,14 @@ else jobs=--jobs=$EXTERNAL_JOBS fi +## log environment as provided by Xcode +logdir=$EXTERNAL_BUILD/log +if [ ! -d $logdir ]; then + mkdir -p $logdir +fi +env | sort > $logdir/xcodemake.env.txt + ## pull the trigger +## must set BUILD.method != terminal to prevent inifinite recursion set -x exec make -C $EXTERNAL_BUILD BUILD.method=xcode $jobs $goals $EXTERNAL_VARS |