Project = cups
UserType = Administrator
ToolType = Services
GnuNoChown = YES
GnuAfterInstall = install-plist
include $(MAKEFILEPATH)/CoreOS/ReleaseControl/GNUSource.make
ifeq ($(RC_MACOS),YES)
CUPS_Components=all
GSSAPI_Options=--enable-gssapi
CUPS_StaticLibrary=NO
else
CUPS_Components=libcupslite
GSSAPI_Options=--disable-gssapi
CUPS_StaticLibrary=YES
endif
Configure_Flags = `$(SRCROOT)/gettargetflags.sh host` \
--with-cups-build="cups-494" \
--with-adminkey="system.print.admin" \
--with-operkey="system.print.operator" \
--with-pam-module=opendirectory \
--with-privateinclude=/usr/local/include \
--with-components=$(CUPS_Components) \
$(GSSAPI_Options) \
$(Extra_Configure_Flags)
ifeq ($(CUPS_StaticLibrary),YES)
Configure_Flags += --enable-static --disable-shared --prefix=/usr/local/
endif
Environment = CC=`/usr/bin/xcrun --find clang` \
CXX=`/usr/bin/xcrun --find clang++` \
CFLAGS="-g `$(SRCROOT)/gettargetflags.sh cflags`" \
CPPFLAGS="`$(SRCROOT)/gettargetflags.sh cppflags`" \
CXXFLAGS="`$(SRCROOT)/gettargetflags.sh cxxflags`" \
LDFLAGS="`$(SRCROOT)/gettargetflags.sh ldflags`" \
CODE_SIGN="/usr/bin/true"
ifneq ($(CUPS_StaticLibrary),YES)
Environment += DSOFLAGS="`$(SRCROOT)/gettargetflags.sh dsoflags` -dynamiclib -single_module -lc"
endif
Install_Target = install-data install-exec
Install_Flags = -j`sysctl -n hw.activecpu`
lazy_install_source:: $(BuildDirectory)/Makedefs
$(_v) if [ -L "$(BuildDirectory)/Makefile" ]; then \
$(RM) "$(BuildDirectory)/Makefile"; \
$(CP) "$(Sources)/Makefile" "$(BuildDirectory)/Makefile"; \
fi
$(BuildDirectory)/Makedefs: $(Sources)/configure $(Sources)/Makedefs.in \
$(Sources)/config.h.in $(Sources)/cups-config.in \
$(SRCROOT)/Makefile
$(_v) $(RM) "$(BuildDirectory)/Makefile"
$(_v) $(MAKE) shadow_source
$(_v) $(RM) $(ConfigStamp)
install-fast: $(Sources)/Makedefs
$(_v) umask $(Install_Mask) ; $(MAKE) -C $(Sources) $(Environment) $(Install_Flags) install
install-clean: $(Sources)/Makedefs
$(_v) umask $(Install_Mask) ; $(MAKE) -C $(Sources) $(Environment) $(Install_Flags) distclean
$(_v) cd $(Sources) && $(Environment) LD_TRACE_FILE=/dev/null $(Configure) $(Configure_Flags)
$(_v) umask $(Install_Mask) ; $(MAKE) -C $(Sources) $(Environment) $(Install_Flags) install
$(Sources)/Makedefs: $(Sources)/configure $(Sources)/Makedefs.in \
$(Sources)/config.h.in $(Sources)/cups-config.in
@echo "Configuring $(Project) with \"$(Configure_Flags)\"..."
$(_v) cd $(Sources) && $(Environment) LD_TRACE_FILE=/dev/null \
$(Configure) $(Configure_Flags)
install-all: configure
$(_v) umask $(Install_Mask) ; $(MAKE) -C $(BuildDirectory) $(Environment) $(Install_Flags) install
install-libs: configure
$(_v) umask $(Install_Mask) ; $(MAKE) -C $(BuildDirectory) $(Environment) $(Install_Flags) install-headers install-libs
OSV = $(DSTROOT)/usr/local/OpenSourceVersions
OSL = $(DSTROOT)/usr/local/OpenSourceLicenses
install-plist:
$(MKDIR) $(OSV)
$(INSTALL_FILE) $(SRCROOT)/$(Project).plist $(OSV)/$(Project).plist
$(MKDIR) $(OSL)
$(INSTALL_FILE) $(Sources)/LICENSE $(OSL)/$(Project).txt
ifneq ($(CUPS_StaticLibrary),YES)
SUPPORTS_TEXT_BASED_API ?= YES
$(info SUPPORTS_TEXT_BASED_API=$(SUPPORTS_TEXT_BASED_API))
ifeq ($(SUPPORTS_TEXT_BASED_API),YES)
install-libs: installapi-verify
endif
TAPI_INSTALL_PREFIX = $(DSTROOT)
TAPI_LIBRARY_PATH = $(TAPI_INSTALL_PREFIX)/usr/lib
TAPI_COMMON_OPTS = `$(SRCROOT)/gettargetflags.sh tapi` \
-dynamiclib \
-install_name /usr/lib/libcups.2.dylib \
-current_version 2.14.0 \
-compatibility_version 2.0.0 \
-o $(OBJROOT)/cups/libcups.2.tbd
TAPI_VERIFY_OPTS = $(TAPI_COMMON_OPTS) \
--verify-mode=Pedantic \
--verify-against=$(TAPI_LIBRARY_PATH)/libcups.2.dylib
endif
installapi: configure
@echo
@echo ++++++++++++++++++++++
@echo + Running InstallAPI +
@echo ++++++++++++++++++++++
@echo
$(_v) umask $(Install_Mask) ; $(MAKE) -C $(BuildDirectory) $(Environment) $(Install_Flags) libs install-headers
ifneq ($(CUPS_StaticLibrary),YES)
xcrun --sdk $(SDKROOT) tapi installapi $(TAPI_COMMON_OPTS) $(TAPI_INSTALL_PREFIX)
$(_v) umask $(Install_Mask) ; $(MAKE) $(Environment) $(Install_Flags) install-tbds
endif
install-tbds:
if test -f $(OBJROOT)/cups/libcupsimage.2.dylib; then \
xcrun --sdk $(SDKROOT) tapi stubify --set-installapi-flag $(OBJROOT)/cups/libcupsimage.2.dylib; \
fi
$(INSTALL) -d -m 0755 $(TAPI_LIBRARY_PATH)
$(INSTALL) -c -m 0755 $(OBJROOT)/cups/libcups.2.tbd $(TAPI_LIBRARY_PATH)
ln -s libcups.2.tbd $(TAPI_LIBRARY_PATH)/libcups.tbd
if test -f $(OBJROOT)/cups/libcupsimage.2.tbd; then \
$(INSTALL) -c -m 0755 $(OBJROOT)/cups/libcupsimage.2.tbd $(TAPI_LIBRARY_PATH); \
ln -s libcupsimage.2.tbd $(TAPI_LIBRARY_PATH)/libcupsimage.tbd; \
fi
installapi-verify: configure
@echo
@echo "+++++++++++++++++++++++++++++++"
@echo "+ Running InstallAPI (verify) +"
@echo "+++++++++++++++++++++++++++++++"
@echo
$(_v) umask $(Install_Mask) ; $(MAKE) -C $(BuildDirectory) $(Environment) $(Install_Flags) install-libs install-headers
xcrun --sdk $(SDKROOT) tapi installapi $(TAPI_VERIFY_OPTS) $(TAPI_INSTALL_PREFIX)
if test -f $(OBJROOT)/cups/libcupsimage.2.dylib; then \
xcrun --sdk $(SDKROOT) tapi stubify --set-installapi-flag $(OBJROOT)/cups/libcupsimage.2.dylib; \
fi
$(_v) umask $(Install_Mask) ; $(MAKE) $(Environment) $(Install_Flags) install-tbds