외부 빌드 프로젝트

외부 make files는 Xcode와 함께 사용할 수 있으며 외부 빌드 시스템 프로젝트 템플릿 이러한 파일은 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)