mirror of https://gitee.com/openkylin/cups.git
298 lines
5.1 KiB
Makefile
298 lines
5.1 KiB
Makefile
#
|
||
# Makefile for the CUPS PPD Compiler.
|
||
#
|
||
# Copyright © 2007-2019 by Apple Inc.
|
||
# Copyright © 2002-2006 by Easy Software Products.
|
||
#
|
||
# Licensed under Apache License v2.0. See the file "LICENSE" for more
|
||
# information.
|
||
#
|
||
|
||
#
|
||
# Include standard definitions...
|
||
#
|
||
|
||
include ../Makedefs
|
||
|
||
|
||
#
|
||
# Object files...
|
||
#
|
||
|
||
LIBOBJS = \
|
||
ppdc-array.o \
|
||
ppdc-attr.o \
|
||
ppdc-catalog.o \
|
||
ppdc-choice.o \
|
||
ppdc-constraint.o \
|
||
ppdc-driver.o \
|
||
ppdc-file.o \
|
||
ppdc-filter.o \
|
||
ppdc-font.o \
|
||
ppdc-group.o \
|
||
ppdc-import.o \
|
||
ppdc-mediasize.o \
|
||
ppdc-message.o \
|
||
ppdc-option.o \
|
||
ppdc-profile.o \
|
||
ppdc-shared.o \
|
||
ppdc-source.o \
|
||
ppdc-string.o \
|
||
ppdc-variable.o
|
||
OBJS = \
|
||
$(LIBOBJS) \
|
||
genstrings.o \
|
||
ppdc.o \
|
||
ppdhtml.o \
|
||
ppdi.o \
|
||
ppdmerge.o \
|
||
ppdpo.o \
|
||
testcatalog.o
|
||
LIBTARGETS = \
|
||
libcupsppdc.a
|
||
UNITTARGETS = \
|
||
ppdc-static \
|
||
ppdi-static \
|
||
testcatalog
|
||
EXECTARGETS = \
|
||
ppdc \
|
||
ppdhtml \
|
||
ppdi \
|
||
ppdmerge \
|
||
ppdpo
|
||
|
||
TARGETS = \
|
||
$(LIBTARGETS) \
|
||
$(EXECTARGETS) \
|
||
$(LOCALTARGET)
|
||
|
||
|
||
#
|
||
# Make everything...
|
||
#
|
||
|
||
all: $(TARGETS)
|
||
|
||
|
||
#
|
||
# Make library targets...
|
||
#
|
||
|
||
libs:
|
||
|
||
|
||
#
|
||
# Make unit tests...
|
||
#
|
||
|
||
unittests: $(UNITTARGETS)
|
||
|
||
|
||
#
|
||
# Clean everything...
|
||
#
|
||
|
||
clean:
|
||
$(RM) $(OBJS) core
|
||
$(RM) *.bak *.bck core.*
|
||
$(RM) $(TARGETS) $(UNITTARGETS) genstrings
|
||
$(RM) -r ppd ppd2
|
||
$(RM) sample-import.drv sample.c test.drv
|
||
|
||
|
||
#
|
||
# Update dependencies...
|
||
#
|
||
|
||
depend:
|
||
$(CXX) -MM $(ALL_CXXFLAGS) $(OBJS:.o=.cxx) >Dependencies
|
||
|
||
|
||
#
|
||
# Install all targets...
|
||
#
|
||
|
||
install: all install-data install-headers install-libs install-exec
|
||
|
||
|
||
#
|
||
# Install data files...
|
||
#
|
||
|
||
install-data:
|
||
$(INSTALL_DIR) $(DATADIR)/drv
|
||
$(INSTALL_DATA) sample.drv $(DATADIR)/drv
|
||
|
||
|
||
#
|
||
# Install programs...
|
||
#
|
||
|
||
install-exec:
|
||
echo Installing PPD compiler programs...
|
||
$(INSTALL_DIR) $(BINDIR)
|
||
for file in $(EXECTARGETS); do \
|
||
$(INSTALL_BIN) $$file $(BINDIR); \
|
||
done
|
||
if test "x$(SYMROOT)" != "x"; then \
|
||
$(INSTALL_DIR) $(SYMROOT); \
|
||
for file in $(EXECTARGETS); do \
|
||
cp $$file $(SYMROOT); \
|
||
dsymutil $(SYMROOT)/$$file; \
|
||
done \
|
||
fi
|
||
|
||
|
||
#
|
||
# Install headers...
|
||
#
|
||
|
||
install-headers:
|
||
|
||
|
||
#
|
||
# Install libraries...
|
||
#
|
||
|
||
install-libs:
|
||
|
||
|
||
#
|
||
# Uninstall...
|
||
#
|
||
|
||
uninstall:
|
||
for file in $(EXECTARGETS); do \
|
||
$(RM) $(BINDIR)/$$file; \
|
||
done
|
||
$(RM) $(DATADIR)/drv/sample.drv
|
||
$(RMDIR) $(DATADIR)/drv
|
||
|
||
|
||
#
|
||
# Local programs (not built when cross-compiling...)
|
||
#
|
||
|
||
local: genstrings
|
||
|
||
|
||
#
|
||
# genstrings - generate GNU gettext strings.
|
||
#
|
||
|
||
genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \
|
||
sample.drv ../data/media.defs
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o genstrings genstrings.o \
|
||
libcupsppdc.a $(LINKCUPSSTATIC)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
echo Generating localization strings...
|
||
./genstrings >sample.c
|
||
|
||
|
||
#
|
||
# ppdc, the PPD compiler.
|
||
#
|
||
|
||
ppdc: ppdc.o libcupsppdc.a ../cups/$(LIBCUPS)
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdc.o libcupsppdc.a $(COMMONLIBS) $(LINKCUPS)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
|
||
|
||
ppdc-static: ppdc.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) foo.drv foo-fr.po
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o ppdc-static ppdc.o libcupsppdc.a \
|
||
$(LINKCUPSSTATIC)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
echo Testing PPD compiler...
|
||
./ppdc-static -l en,fr -I ../data foo.drv
|
||
./ppdc-static -l en,fr -z -I ../data foo.drv
|
||
|
||
|
||
#
|
||
# ppdhtml, the PPD to HTML utility.
|
||
#
|
||
|
||
ppdhtml: ppdhtml.o libcupsppdc.a ../cups/$(LIBCUPS)
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdhtml.o libcupsppdc.a $(COMMONLIBS) $(LINKCUPS)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
|
||
|
||
#
|
||
# ppdi, import PPD files.
|
||
#
|
||
|
||
ppdi: ppdi.o libcupsppdc.a ../cups/$(LIBCUPS)
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdi.o libcupsppdc.a $(COMMONLIBS) $(LINKCUPS)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
|
||
|
||
ppdi-static: ppdc-static ppdi.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC)
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ARCHFLAGS) $(ALL_LDFLAGS) -o ppdi-static ppdi.o libcupsppdc.a \
|
||
$(LINKCUPSSTATIC)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
echo Testing PPD importer...
|
||
$(RM) -r ppd ppd2 sample-import.drv
|
||
./ppdc-static -l en -I ../data sample.drv
|
||
./ppdi-static -I ../data -o sample-import.drv ppd/*
|
||
./ppdc-static -l en -I ../data -d ppd2 sample-import.drv
|
||
if diff -r ppd ppd2 >/dev/null; then \
|
||
echo PPD import OK; \
|
||
else \
|
||
echo PPD import FAILED; \
|
||
exit 1; \
|
||
fi
|
||
|
||
|
||
#
|
||
# ppdmerge, merge PPD files.
|
||
#
|
||
|
||
ppdmerge: ppdmerge.o ../cups/$(LIBCUPS)
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdmerge.o $(LINKCUPS)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
|
||
|
||
#
|
||
# ppdpo, create message catalog files.
|
||
#
|
||
|
||
ppdpo: ppdpo.o libcupsppdc.a ../cups/$(LIBCUPS)
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ALL_LDFLAGS) -o $@ ppdpo.o libcupsppdc.a $(COMMONLIBS) $(LINKCUPS)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
|
||
|
||
#
|
||
# testcatalog, test ppdcCatalog class.
|
||
#
|
||
|
||
testcatalog: testcatalog.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC)
|
||
echo Linking $@...
|
||
$(LD_CXX) $(ALL_LDFLAGS) -o $@ testcatalog.o libcupsppdc.a \
|
||
$(LINKCUPSSTATIC)
|
||
$(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@
|
||
|
||
|
||
#
|
||
# libcupsppdc.a
|
||
#
|
||
|
||
libcupsppdc.a: $(LIBOBJS)
|
||
echo Archiving $@...
|
||
$(RM) $@
|
||
$(AR) $(ARFLAGS) $@ $(LIBOBJS)
|
||
$(RANLIB) $@
|
||
|
||
|
||
#
|
||
# Include dependencies...
|
||
#
|
||
|
||
include Dependencies
|