# Default platform uses the native SDK. # To build for Mac OS X using internal SDK, use 'make PLATFORM=macosx ' # To build for iOS, use 'make PLATFORM=iphoneos ' WIFI_FRAMEWORK=-framework CoreWLAN ifeq ($(PLATFORM),iphoneos) # iOS internal SDK CORETELEPHONY=-framework CoreTelephony ARCHS=arm64 WIFI_FRAMEWORK=-framework MobileWiFi endif ifeq ($(PLATFORM),macosx) # Mac OS X internal SDK CORETELEPHONY= endif ifeq ($(PLATFORM),watchos) # watchOS internal SDK CORETELEPHONY=-framework CoreTelephony ARCHS=armv7k WIFI_FRAMEWORK=-framework MobileWiFi endif ifeq ($(PLATFORM),) # Mac OS X native SDK ARCHS=x86_64 CORETELEPHONY= CC = cc SYSROOT = / PF_INC = -F$(SYSROOT)/System/Library/PrivateFrameworks else # Mac OS X or iOS internal SDK SDK=$(PLATFORM).internal SYSROOT=$(shell xcodebuild -version -sdk $(SDK) Path) CC = xcrun -sdk $(SDK) cc PF_INC = -F$(SYSROOT)/System/Library/PrivateFrameworks endif ARCH_FLAGS=$(foreach a,$(ARCHS),-arch $(a)) SCPRIV=-DUSE_SYSTEMCONFIGURATION_PRIVATE_HEADERS SYSPRIV=-I$(SYSROOT)/System/Library/Frameworks/System.framework/PrivateHeaders DHCPv6Server: main.c DHCPv6Server.c ../bootplib/ptrlist.c ../bootplib/DHCPv6.c ../bootplib/DHCPv6Options.c ../bootplib/DNSNameList.c ../bootplib/DHCPDUID.c ../bootplib/cfutil.c ../bootplib/util.c ../bootplib/IPv6Socket.c ../bootplib/interfaces.c ../bootplib/dynarray.c ../bootplib/IPConfigurationLog.c $(CC) $(ARCH_FLAGS) -isysroot $(SYSROOT) $(SYSPRIV) -D__APPLE_USE_RFC_3542 -I../bootplib -Wall -framework CoreFoundation -framework SystemConfiguration -g -o $@ $^ clean: rm -rf *~ *.dSYM DHCPv6Server