1# 2# Common makefile definitions for CUPS. 3# 4# Copyright © 2020-2024 by OpenPrinting. 5# Copyright © 2007-2019 by Apple Inc. 6# Copyright © 1997-2007 by Easy Software Products, all rights reserved. 7# 8# Licensed under Apache License v2.0. See the file "LICENSE" for more 9# information. 10# 11 12# 13# CUPS version... 14# 15 16CUPS_VERSION = @CUPS_VERSION@ 17 18 19# 20# Programs... 21# 22 23AR = @AR@ 24AWK = @AWK@ 25CC = @LIBTOOL_CC@ @CC@ 26CHMOD = @CHMOD@ 27CXX = @LIBTOOL_CXX@ @CXX@ 28DSO = @DSO@ 29DSOXX = @DSOXX@ 30GZIPPROG = @GZIPPROG@ 31INSTALL = @INSTALL@ 32LD = @LD@ 33LD_CC = @LD_CC@ 34LD_CXX = @LD_CXX@ 35LIBTOOL = @LIBTOOL@ 36LN = @LN@ -sf 37MKDIR = @MKDIR@ -p 38MV = @MV@ -f 39RANLIB = @RANLIB@ 40RM = @RM@ -f 41RMDIR = @RMDIR@ 42SED = @SED@ 43SHELL = /bin/sh 44 45# 46# Installation programs... 47# 48 49INSTALL_BIN = @LIBTOOL_INSTALL@ $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@ @INSTALL_STRIP@ 50INSTALL_COMPDATA = $(INSTALL) -c -m 444 @INSTALL_GZIP@ 51INSTALL_CONFIG = $(INSTALL) -c -m @CUPS_CONFIG_FILE_PERM@ 52INSTALL_DATA = $(INSTALL) -c -m 444 53INSTALL_DIR = $(INSTALL) -d 54INSTALL_LIB = @LIBTOOL_INSTALL@ $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@ @INSTALL_STRIP@ 55INSTALL_MAN = $(INSTALL) -c -m 444 56INSTALL_SCRIPT = $(INSTALL) -c -m @CUPS_EXE_FILE_PERM@ 57 58# 59# Default user, group, and system groups for the scheduler... 60# 61 62CUPS_USER = @CUPS_USER@ 63CUPS_GROUP = @CUPS_GROUP@ 64CUPS_SYSTEM_GROUPS = @CUPS_SYSTEM_GROUPS@ 65CUPS_PRIMARY_SYSTEM_GROUP = @CUPS_PRIMARY_SYSTEM_GROUP@ 66 67# 68# Default permissions... 69# 70 71CUPS_CONFIG_FILE_PERM = @CUPS_CONFIG_FILE_PERM@ 72CUPS_CUPSD_FILE_PERM = @CUPS_CUPSD_FILE_PERM@ 73CUPS_LOG_FILE_PERM = @CUPS_LOG_FILE_PERM@ 74 75# 76# Languages to install... 77# 78 79LANGUAGES = @LANGUAGES@ 80INSTALL_LANGUAGES = @INSTALL_LANGUAGES@ 81UNINSTALL_LANGUAGES = @UNINSTALL_LANGUAGES@ 82 83# 84# Cross-compilation support: "local" target is used for any tools that are 85# built and run locally. 86# 87 88LOCALTARGET = @LOCALTARGET@ 89 90 91# 92# Libraries... 93# 94 95LIBCUPS = @LIBCUPS@ 96LIBCUPSIMAGE = @LIBCUPSIMAGE@ 97LIBCUPSOBJS = @LIBCUPSOBJS@ 98LIBCUPSSTATIC = @LIBCUPSSTATIC@ 99LIBGSSAPI = @LIBGSSAPI@ 100LIBHEADERS = @LIBHEADERS@ 101LIBHEADERSPRIV = @LIBHEADERSPRIV@ 102LIBMALLOC = @LIBMALLOC@ 103LIBPAPER = @LIBPAPER@ 104LIBUSB = @LIBUSB@ 105LIBWRAP = @LIBWRAP@ 106LIBZ = @LIBZ@ 107 108# 109# Install static libraries? 110# 111 112INSTALLSTATIC = @INSTALLSTATIC@ 113 114# 115# IPP backend aliases... 116# 117 118IPPALIASES = @IPPALIASES@ 119 120 121# 122# ippeveprinter commands... 123# 124 125IPPEVECOMMANDS = @IPPEVECOMMANDS@ 126 127 128# 129# Install XPC backends? 130# 131 132INSTALLXPC = @INSTALLXPC@ 133 134# 135# Code signing... 136# 137 138CODE_SIGN = @CODE_SIGN@ 139CODE_SIGN_IDENTITY = - 140 141# 142# Program options... 143# 144# ARCHFLAGS Defines the default architecture build options. 145# OPTIM Defines the common compiler optimization/debugging options 146# for all architectures. 147# OPTIONS Defines other compile-time options (currently only -DDEBUG 148# for extra debug info) 149# 150 151ALL_CFLAGS = -I.. -D_CUPS_SOURCE $(CFLAGS) \ 152 $(TLSFLAGS) @LARGEFILE@ @PTHREAD_FLAGS@ \ 153 $(ONDEMANDFLAGS) $(OPTIONS) 154ALL_CXXFLAGS = -I.. -D_CUPS_SOURCE $(CXXFLAGS) \ 155 $(TLSFLAGS) @LARGEFILE@ @PTHREAD_FLAGS@ \ 156 $(ONDEMANDFLAGS) $(OPTIONS) 157ALL_DSOFLAGS = -L../cups @ARCHFLAGS@ @RELROFLAGS@ $(DSOFLAGS) $(OPTIM) 158ALL_LDFLAGS = -L../cups @LDARCHFLAGS@ @RELROFLAGS@ $(LDFLAGS) \ 159 @PIEFLAGS@ $(OPTIM) 160ARCHFLAGS = @ARCHFLAGS@ 161ARFLAGS = @ARFLAGS@ 162BACKLIBS = @BACKLIBS@ 163BUILDDIRS = @BUILDDIRS@ 164CFLAGS = @CPPFLAGS@ @CFLAGS@ 165COMMONLIBS = @LIBS@ 166CXXFLAGS = @CPPFLAGS@ @CXXFLAGS@ 167CXXLIBS = @CXXLIBS@ 168DBUS_NOTIFIER = @DBUS_NOTIFIER@ 169DBUS_NOTIFIERLIBS = @DBUS_NOTIFIERLIBS@ 170DNSSD_BACKEND = @DNSSD_BACKEND@ 171DSOFLAGS = @DSOFLAGS@ 172DNSSDLIBS = @DNSSDLIBS@ 173IPPFIND_BIN = @IPPFIND_BIN@ 174IPPFIND_MAN = @IPPFIND_MAN@ 175LDFLAGS = @LDFLAGS@ 176LINKCUPS = @LINKCUPS@ 177LINKCUPSSTATIC = ../cups/$(LIBCUPSSTATIC) $(LIBS) 178LIBS = $(LIBGSSAPI) $(DNSSDLIBS) $(TLSLIBS) $(LIBZ) $(COMMONLIBS) 179ONDEMANDFLAGS = @ONDEMANDFLAGS@ 180ONDEMANDLIBS = @ONDEMANDLIBS@ 181OPTIM = @OPTIM@ 182OPTIONS = @WARNING_OPTIONS@ 183PAMLIBS = @PAMLIBS@ 184SERVERLIBS = @SERVERLIBS@ @APPARMORLIBS@ @SNAPDGLIBLIBS@ 185TLSFLAGS = @TLSFLAGS@ 186TLSLIBS = @TLSLIBS@ 187UNITTESTS = @UNITTESTS@ 188 189 190# 191# Directories... 192# 193# The first section uses the GNU names (which are *extremely* 194# difficult to find in a makefile because they are lowercase...) 195# We have to define these first because autoconf uses ${prefix} 196# and ${exec_prefix} for most of the other directories... 197# 198# The "datarootdir" variable may not get defined if you are using 199# a version of autoconf prior to 2.60. 200# 201# This is immediately followed by definition in ALL CAPS for the 202# needed directories... 203# 204 205bindir = @bindir@ 206datadir = @datadir@ 207datarootdir = @datarootdir@ 208exec_prefix = @exec_prefix@ 209includedir = @includedir@ 210infodir = @infodir@ 211libdir = @libdir@ 212libexecdir = @libexecdir@ 213localstatedir = @localstatedir@ 214mandir = @mandir@ 215oldincludedir = @oldincludedir@ 216prefix = @prefix@ 217sbindir = @sbindir@ 218sharedstatedir = @sharedstatedir@ 219srcdir = @srcdir@ 220sysconfdir = @sysconfdir@ 221top_srcdir = @top_srcdir@ 222 223BUILDROOT = $(DSTROOT)$(DESTDIR) 224 225BINDIR = $(BUILDROOT)@bindir@ 226BUNDLEDIR = @CUPS_BUNDLEDIR@ 227CACHEDIR = $(BUILDROOT)@CUPS_CACHEDIR@ 228DATADIR = $(BUILDROOT)@CUPS_DATADIR@ 229DOCDIR = $(BUILDROOT)@CUPS_DOCROOT@ 230CUPS_PKGCONFPATH = $(BUILDROOT)@CUPS_PKGCONFPATH@ 231ICONDIR = @ICONDIR@ 232INCLUDEDIR = $(BUILDROOT)$(includedir) 233LIBDIR = $(BUILDROOT)$(libdir) 234LOCALEDIR = $(BUILDROOT)@CUPS_LOCALEDIR@ 235LOGDIR = $(BUILDROOT)@CUPS_LOGDIR@ 236MANDIR = $(BUILDROOT)@mandir@ 237MENUDIR = @MENUDIR@ 238RCLEVELS = @RCLEVELS@ 239RCSTART = @RCSTART@ 240RCSTOP = @RCSTOP@ 241REQUESTS = $(BUILDROOT)@CUPS_REQUESTS@ 242RESOURCEDIR = @CUPS_RESOURCEDIR@ 243SBINDIR = $(BUILDROOT)@sbindir@ 244SERVERBIN = $(BUILDROOT)@CUPS_SERVERBIN@ 245SERVERROOT = $(BUILDROOT)@CUPS_SERVERROOT@ 246STATEDIR = $(BUILDROOT)@CUPS_STATEDIR@ 247 248PAMDIR = @PAMDIR@ 249PAMFILE = @PAMFILE@ 250 251DBUSDIR = @DBUSDIR@ 252INITDIR = @INITDIR@ 253INITDDIR = @INITDDIR@ 254LAUNCHD_DIR = @LAUNCHD_DIR@ 255SMFMANIFESTDIR = @SMFMANIFESTDIR@ 256SYSTEMD_DIR = @SYSTEMD_DIR@ 257XINETD = @XINETD@ 258 259USBQUIRKS = @USBQUIRKS@ 260 261 262# 263# Rules... 264# 265 266.SILENT: 267.SUFFIXES: .a .c .cxx .h .o 268 269.c.o: 270 echo Compiling $<... 271 $(CC) $(ARCHFLAGS) $(OPTIM) $(ALL_CFLAGS) -c -o $@ $< 272 273.cxx.o: 274 echo Compiling $<... 275 $(CXX) $(ARCHFLAGS) $(OPTIM) $(ALL_CXXFLAGS) -c -o $@ $< 276