diff options
author | konablend <[email protected]> | 2012-01-04 09:41:11 +0000 |
---|---|---|
committer | konablend <[email protected]> | 2012-01-04 09:41:11 +0000 |
commit | 6d95ab81984cc44296438270aa792255f037c89a (patch) | |
tree | 842d42f935c31a5ec8c1529605cd0226d5d29197 /make/include | |
parent | aad50499b32c44d28a6bae7f353b579e24564e25 (diff) |
BuildSystem: Mac OS X - transition to Xcode4
- transition from Xcode3 to Xcode4
- overhaul HandBrake.xcodeproj file
- simplify down to 2 configurations: debug, release
- add xcconfig for useful variants: osx106.i386, osx106.x86_64, osx107.i386, osx107.x86_64
- add configure --xcode-config as preferred method to choose OSX minimum version and SDK
- overhaul Info.plist generation to use m4 instead of cpp
- remove use of direct static libraries on command line - Xcode4 now enables -search_paths_first by default
- reference external build static libraries project file - greatly simplifying project file maintenance
- update universal build targets to use --xcode-config
- update ffmpeg hack to build on i386 in both debug and optimized modes
- update ffmpeg build to show compile verbosity
- enable local yasm when yasm probe fails
- remove unused GCC.ldsysroot
- remove unused GCC.ldminver
- enhance xcodemake to use --sysroot, --minver
- update/regenerate docs accordingly
- add support for configure-time repo probe when svn repo is incompatible format to Xcode via .svn/HANDBRAKE_REPO_PROBE
- replaced make/test/build.matrix.darwin with make/test/build.matrix
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4395 b64f7644-9d1e-0410-96f1-a4d463321fa5
Diffstat (limited to 'make/include')
-rw-r--r-- | make/include/gcc.defs | 10 | ||||
-rw-r--r-- | make/include/main.rules | 19 |
2 files changed, 8 insertions, 21 deletions
diff --git a/make/include/gcc.defs b/make/include/gcc.defs index c93d0babd..50b31f100 100644 --- a/make/include/gcc.defs +++ b/make/include/gcc.defs @@ -1,5 +1,5 @@ GCC.gcc = gcc -GCC.gxx = $(dir $(GCC.gcc))$(subst gcc,g++,$(notdir $(GCC.gcc))) +GCC.gxx = $(dir $(GCC.gcc))$(subst clang,clang++,$(subst gcc,g++,$(notdir $(GCC.gcc)))) GCC.strip = $$(if $$(filter none,$$(GCC.g)),1) GCC.dylib = 1 @@ -9,9 +9,7 @@ GCC.H = 0 GCC.W = all GCC.archs = GCC.sysroot = -GCC.ldsysroot = GCC.minver = -GCC.ldminver= GCC.vis = 0 GCC.pic = 0 ifndef GCC.g @@ -49,9 +47,7 @@ GCC.args.H = -H GCC.args.W = -W$(1) GCC.args.archs = -arch $(1) GCC.args.sysroot = --sysroot=$(1) -GCC.args.ldsysroot = -syslibroot $(1) GCC.args.minver = -mmacosx-version-min=$(1) -GCC.args.ldminver = -macosx_version_min $(1) GCC.args.vis = -fvisibility=hidden GCC.args.pic = -fPIC GCC.args.g.none = -g0 @@ -95,9 +91,7 @@ define import.GCC $(1).GCC.W = $$(GCC.W) $(1).GCC.archs = $$(GCC.archs) $(1).GCC.sysroot = $$(GCC.sysroot) - $(1).GCC.ldsysroot = $$(GCC.ldsysroot) $(1).GCC.minver = $$(GCC.minver) - $(1).GCC.ldminver = $$(GCC.ldminver) $(1).GCC.vis = $$(GCC.vis) $(1).GCC.pic = $$(GCC.pic) $(1).GCC.g = $$(GCC.g) @@ -131,9 +125,7 @@ define import.GCC $(1).GCC.args.W = $$(GCC.args.W) $(1).GCC.args.archs = $$(GCC.args.archs) $(1).GCC.args.sysroot = $$(GCC.args.sysroot) - $(1).GCC.args.ldsysroot = $$(GCC.args.ldsysroot) $(1).GCC.args.minver = $$(GCC.args.minver) - $(1).GCC.args.ldminver = $$(GCC.args.ldminver) $(1).GCC.args.vis = $$(GCC.args.vis) $(1).GCC.args.pic = $$(GCC.args.pic) $(1).GCC.args.g.none = $$(GCC.args.g.none) diff --git a/make/include/main.rules b/make/include/main.rules index 5a8d8acfb..158f24a9c 100644 --- a/make/include/main.rules +++ b/make/include/main.rules @@ -3,10 +3,9 @@ ############################################################################### -## file-wide conditional to use xcode rules if xcode=1 method=terminal -## xcodemake will set BUILD.method != terminal to prevent infinite recursion -ifeq (1:terminal,$(FEATURE.xcode):$(BUILD.method)) - include $(SRC/)macosx/module.xcode +## shunt make through xcodebuild when FEATURE.xcode=1 and XCODE.driver is applicable +ifeq (1:shunt,$(FEATURE.xcode):$(if $(filter bootstrap terminal,$(XCODE.driver)),shunt)) + include $(SRC/)macosx/module.xcodebuild else ## only included using special report targets @@ -40,19 +39,15 @@ 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-method=$(CONF.method) $(CONF.args) - -## target useful to force reconfigure; only helpful for build-system development +## force reconfigure .PHONY: reconfigure reconfigure: - $(SRC/)configure --force --conf-method=$(CONF.method) $(CONF.args) + $(SRC/)configure --force $(CONF.args) ############################################################################### -## target to build all dependency dirs +## build all dependency dirs $(sort $(dir $(BUILD.out))): $(MKDIR.exe) -p $@ -endif ## xcode=1 method=terminal +endif ## FEATURE.xcode XCODE.driver |