X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=macosx%2Fmodule.defs;h=d92160f93d9b028b1a8218e910a55d2a8c923db8;hb=240cf3308bf21be4d1918a71a5510d07e7d6d85b;hp=c13958da4114e24ea08846d8fc898c853bcad473;hpb=9f2cfdb81c9b40ea164bc25daca45c77ebe376a6;p=handbrake-jp%2Fhandbrake-jp-git.git diff --git a/macosx/module.defs b/macosx/module.defs index c13958da..d92160f9 100644 --- a/macosx/module.defs +++ b/macosx/module.defs @@ -1,29 +1,58 @@ $(eval $(call import.MODULE.defs,MACOSX,macosx)) +$(eval $(call import.GCC,MACOSX)) -MACOSX.src/ = $(PROJECT/)macosx/ +MACOSX.src/ = $(SRC/)macosx/ MACOSX.build/ = $(BUILD/)macosx/ MACOSX.m4.in = $(wildcard $(MACOSX.src/)*.m4) -MACOSX.m4.out = $(patsubst $(MACOSX.src/)%.m4,$(MACOSX.build/)%,$(MACOSX.m4.in)) +MACOSX.m4.out = $(MACOSX.m4.in:$(MACOSX.src/)%.m4=$(MACOSX.build/)%) + +## optional special command to run post macro processing +MACOSX.m4.post.Info.h = $(RM.exe) -f $(MACOSX.build/)HandBrake.build/Preprocessed-Info.plist MACOSX.targs = HandBrakeCLI HandBrake -MACOSX.conf = standard$(if $(filter 1,$(BUILD.cross)),.$(BUILD.arch)) + +## configuration pattern: (standard|debug)[.ARCH] +## eg. for native build, no debug --> standard +## eg. for x86_64 build with debug of any level --> debug.x86_64 +MACOSX.conf = $(MACOSX.map.g.$(MACOSX.GCC.g)).$(BUILD.arch) + +## this is a mapping to determine which basename config to use in xcodeproj +MACOSX.map.g.none = standard +MACOSX.map.g.min = debug +MACOSX.map.g.std = debug +MACOSX.map.g.max = debug ############################################################################### BUILD.out += $(MACOSX.m4.out) +BUILD.out += $(MACOSX.m4.wc.out) ############################################################################### MACOSX.XCODE.exe = xcodebuild MACOSX.XCODE.project = HandBrake.xcodeproj +## launch a build thru xcode; which in turn will do a nested make against +## this build system with normal build rules enabled. +## +## $(1) = list of targets +## $(2) = list of goals to shunt thru xcodebuild->make +## +XCODE.sysroot = $(foreach sdk,$(GCC.sysroot),-sdk $(sdk)) MACOSX.XCODE = $(strip \ cd $(MACOSX.src/) && \ - $(MACOSX.XCODE.exe) \ - -project $(MACOSX.XCODE.project) \ - -configuration $(MACOSX.conf) \ - $(foreach t,$(MACOSX.targs),-target $t) \ - EXTERNAL_BUILD=$(CURDIR) \ - EXTERNAL_PROJECT=$(PROJECT/) \ - $(1) ) + $(MACOSX.XCODE.exe) \ + -project $(MACOSX.XCODE.project) \ + -configuration $(MACOSX.conf) \ + $(XCODE.sysroot) \ + $(foreach t,$(1),-target $t) \ + EXTERNAL_SRC='$(XCODE.external.src)' \ + EXTERNAL_BUILD='$(XCODE.external.build)' \ + EXTERNAL_PREFIX='$(XCODE.external.prefix)' \ + EXTERNAL_JOBS='$(BUILD.jobs)' \ + EXTERNAL_METHOD='$(CONF.method)' \ + EXTERNAL_CONFARGS='$(CONF.args)' \ + EXTERNAL_GOALS='$(3)' \ + EXTERNAL_VARS='$(-*-command-variables-*-)' \ + $(2) )