diff options
author | konablend <[email protected]> | 2009-03-08 22:50:57 +0000 |
---|---|---|
committer | konablend <[email protected]> | 2009-03-08 22:50:57 +0000 |
commit | 083ba4898a662cd50a86d2a65ca5ebe765fe882d (patch) | |
tree | c2460805275e7b23dd03965df15beecc7ac4589b /make/include | |
parent | 92d511d944b059caaf6c5e85fcb5202642aa4553 (diff) |
BuildSystem: general, configure and Xcode updates.
*** NOTICE:
This changeset requires a clean build directory. Please issue 'make xclean' inside
build dir(s) after 'svn up'. This will help ensure there are no unexpected results.
*** GENERAL:
- renamed makevar PROJECT/ -> SRC/ for clarity.
- renamed makevar PREFIX.install/ -> PREFIX/ for clarity.
- split custom GNUmakefile overrides into defs/rules files.
- inserted optional level of make customization at SRC/ level; see docs.
- dropped HB.repo.wcversion (svnversion is no longer used).
- corrected several 'rm' usages to use -f flag which avoids some build errors.
- refreshed generated 00-Building.*.txt docs; work still in progress on the wiki front.
*** CONFIGURE:
- made configure more robust; configure may now be run outside of build directory!
- adding log recording of configure activities.
- improved readability of default options for configure
- added:
--force overwrite existing build config
--src=DIR specify top-level source dir [.]
--build=DIR specify build scratch/output dir [.]
--prefix=DIR specify install dir for products [/Applications]
- dropped --launch-force (replaced by --force)
- dropped --launch-dir (replaced by --build)
- dropped --launch-log
*** XCODE:
- renamed pbxproj definition EXTERNAL_PROJECT -> EXTERNAL_SRC for clarity.
- fixed all configurations to default to EXTERNAL_JOBS=1 .
- enabled Xcode internal parallelization (libhb, HandBrakeCLI and HandBrake benefit).
- make now tickles Xcode build files to cause Info.plist regeneration and posting to HandBrake.app output;
ie: svn up; click build and HandBrake.app's about panel will reflect the new repository rev.
*** DARWIN:
- added support to build universal binaries; see docs.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2242 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'make/include')
-rw-r--r-- | make/include/contrib.defs | 14 | ||||
-rw-r--r-- | make/include/main.defs | 20 | ||||
-rw-r--r-- | make/include/main.rules | 18 |
3 files changed, 26 insertions, 26 deletions
diff --git a/make/include/contrib.defs b/make/include/contrib.defs index 3cd80303e..5f1f9e54b 100644 --- a/make/include/contrib.defs +++ b/make/include/contrib.defs @@ -1,5 +1,5 @@ CONTRIB.build/ = $(BUILD/)contrib/ -CONTRIB.download/ = $(PROJECT/)download/ +CONTRIB.download/ = $(SRC/)download/ CONTRIB.host = $(if $(filter 1,$(BUILD.cross)),$(BUILD.spec)) ############################################################################### @@ -17,7 +17,7 @@ define import.CONTRIB.defs ## ## common values useful across targets ## - $(1).src/ = $$(PROJECT/)contrib/$($(1).name)/ + $(1).src/ = $$(SRC/)contrib/$($(1).name)/ $(1).build/ = $$(CONTRIB.build/)$($(1).name)/ $(1).deps = $$(foreach n,$($(1).prerequisites),$$($$n.INSTALL.target)) @@ -209,7 +209,7 @@ $($(1).name).extract.touch: $$(TOUCH.exe) $$($(1).EXTRACT.target) $($(1).name).extract.untouch: - $$(RM.exe) $$($(1).EXTRACT.target) + $$(RM.exe) -f $$($(1).EXTRACT.target) ## ## target: patch @@ -224,7 +224,7 @@ $($(1).name).patch.touch: $$(TOUCH.exe) $$($(1).PATCH.target) $($(1).name).patch.untouch: - $$(RM.exe) $$($(1).PATCH.target) + $$(RM.exe) -f $$($(1).PATCH.target) ## ## target: configure @@ -240,7 +240,7 @@ $($(1).name).configure.touch: $$(TOUCH.exe) $$($(1).CONFIGURE.target) $($(1).name).configure.untouch: - $$(RM.exe) $$($(1).CONFIGURE.target) + $$(RM.exe) -f $$($(1).CONFIGURE.target) ## ## target: build @@ -256,7 +256,7 @@ $($(1).name).build.touch: $$(TOUCH.exe) $$($(1).BUILD.target) $($(1).name).build.untouch: - $$(RM.exe) $$($(1).BUILD.target) + $$(RM.exe) -f $$($(1).BUILD.target) ## ## target: install @@ -271,7 +271,7 @@ $($(1).name).install.touch: $$(TOUCH.exe) $$($(1).INSTALL.target) $($(1).name).install.untouch: - $$(RM.exe) $$($(1).INSTALL.target) + $$(RM.exe) -f $$($(1).INSTALL.target) ## ## target: uninstall diff --git a/make/include/main.defs b/make/include/main.defs index 93271a365..f07678b79 100644 --- a/make/include/main.defs +++ b/make/include/main.defs @@ -1,10 +1,10 @@ -include $(PROJECT/)make/include/base.defs -include $(PROJECT/)make/include/contrib.defs -include $(PROJECT/)make/include/function.defs -include $(PROJECT/)make/include/gcc.defs -include $(PROJECT/)make/include/select.defs -include $(PROJECT/)make/include/target.defs -include $(PROJECT/)make/include/tool.defs +include $(SRC/)make/include/base.defs +include $(SRC/)make/include/contrib.defs +include $(SRC/)make/include/function.defs +include $(SRC/)make/include/gcc.defs +include $(SRC/)make/include/select.defs +include $(SRC/)make/include/target.defs +include $(SRC/)make/include/tool.defs ############################################################################### @@ -62,6 +62,6 @@ MODULES += doc ############################################################################### -include $(MODULES:%=$(PROJECT/)%/module.defs) -include $(PROJECT/)make/variant/$(HOST.system).defs --include $(PROJECT/)make/variant/$(HOST.system).$(BUILD.machine).defs +include $(MODULES:%=$(SRC/)%/module.defs) +include $(SRC/)make/variant/$(HOST.system).defs +-include $(SRC/)make/variant/$(HOST.system).$(BUILD.machine).defs diff --git a/make/include/main.rules b/make/include/main.rules index 4625ae9db..51460a35d 100644 --- a/make/include/main.rules +++ b/make/include/main.rules @@ -5,12 +5,12 @@ ## file-wide conditional to use xcode rules if xcode=1 method=terminal ifeq ($(FEATURE.xcode):$(BUILD.method),1:terminal) - include $(PROJECT/)macosx/module.xcode + include $(SRC/)macosx/module.xcode else ## only included using special report targets ifneq (,$(REPORT)) - include $(PROJECT/)make/include/report.defs + include $(SRC/)make/include/report.defs endif ############################################################################### @@ -30,22 +30,22 @@ mrproper: xclean ############################################################################### -include $(PROJECT/)make/include/base.rules +include $(SRC/)make/include/base.rules -include $(MODULES:%=$(PROJECT/)%/module.rules) --include $(PROJECT/)make/variant/$(HOST.system).rules --include $(PROJECT/)make/variant/$(HOST.system).$(BUILD.machine).rules +include $(MODULES:%=$(SRC/)%/module.rules) +-include $(SRC/)make/variant/$(HOST.system).rules +-include $(SRC/)make/variant/$(HOST.system).$(BUILD.machine).rules ############################################################################### ## target which causes re-configure if project-root is svn update'd -$(BUILD/)GNUmakefile: $(wildcard $(PROJECT/).svn/entries) - $(PROJECT/)configure $(CONF.args) +$(BUILD/)GNUmakefile: $(wildcard $(SRC/).svn/entries) + $(SRC/)configure $(CONF.args) ## target useful to force reconfigure; only helpful for build-system development .PHONY: reconfigure reconfigure: - $(PROJECT/)configure $(CONF.args) + $(SRC/)configure $(CONF.args) ############################################################################### |