Harici yapma dosyaları, Harici Derleme Sistemi proje şablonu kullanılarak Xcode ile kullanılabilir. Bu dosyalar, derleme türü ve konumu gibi Xcode proje ayarlarından yararlanacak şekilde değiştirilebilir. Ancak ayrı olarak kullanıldığında da yararlıdır.
Harici Proje Oluşturma
Yeni bir harici derleme projesi oluşturmak için Xcode'da Yeni->Yeni Proje... iletişim kutusunu ve ardından Harici Derleme Sistemi şablonunu seçin. Projeyi hedef Makefile ile aynı dizine yerleştirin.
Xcode Derleme Ayarları Ekleyin
Harici bir derlemeyi çağırırken Xcode, derleme ayarları için ortam değişkenlerini tanımlar. Bu ayarlar, derleme dosyalarının nerede oluşturulduğunu ve derleyici ile bağlayıcı işaretlerini tanımlar. Derlemeyi Xcode tarafından çağrıldığında değiştirmek için Make'in koşullu yönergelerini kullanırız.
Aşağıda, ayarlanan değişkenlerin (BUILD_DIR gibi) istediğiniz ad olabileceği ve koşulların Xcode kümesi ortam değişkenlerini kullandığı bir örneği görebilirsiniz:
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)