外部ビルド プロジェクト

Xcode 内で外部 make ファイルを使用できます。 ビルドシステム プロジェクト テンプレート。これらのファイルは、 ビルドタイプや場所など、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)