外部建構專案

外部 Make files 可以與 Xcode 搭配使用 Build System 專案範本。您可以修改這些檔案來充分利用 Xcode 專案設定,例如建構類型和位置 適合單獨使用

建立外部專案

如要建立新的外部建構專案,請在 Xcode 中選取「New」->「New Project...」。 「External Build System」範本。將專案放入 與目標 Makefile 相同的目錄。

新增 Xcode 版本設定

叫用外部建構時,Xcode 會定義其 版本設定。 這些設定會定義建構檔案的建立位置,以及編譯器和 連結器旗標我們使用 Make 的條件指令 修改建構作業,以便在 Xcode 叫用時修改建構作業。

以以下範例來說,您可以設定的變數 (例如 BUILD_DIR) 可以是 您要的任何名稱,而條件式使用環境變數 Xcode 集:

ifdef CONFIGURATION_BUILD_DIR
# In Xcode build
BUILD_DIR = $(CONFIGURATION_BUILD_DIR)/build
ARCHFLAGS = $(ARCHS:%=-arch %)
SDKFLAGS = -isysroot $(SDKROOT)
else
# In command-line build
BUILD_DIR = $(HOME)/build
ARCHFLAGS =
SDKFLAGS =
endif

ifdef OPTIMIZATION_LEVEL
DEBUGFLAGS := $(DEBUGFLAGS) -O$(OPTIMIZATION_LEVEL)
endif

ifdef OTHER_CFLAGS
DEBUGFLAGS := $(DEBUGFLAGS) $(OTHER_CFLAGS)
endif

# Workaround for iPhoneSimulator SDK's gcc bug
ifdef EFFECTIVE_PLATFORM_NAME
ifneq ($(EFFECTIVE_PLATFORM_NAME), -iphonesimulator)
WARNINGS := $(WARNINGS) -Wreturn-type
endif
endif

J2OBJCC_FLAGS = $(WARNINGS) $(SDKFLAGS) $(ARCHFLAGS) $(DEBUGFLAGS)
J2OBJCC = $(J2OBJC_DIST)/j2objcc $(J2OBJCC_FLAGS)