ppdc-variable.o
OBJS = \
$(LIBOBJS) \
- drv.o \
ppdc.o \
ppdhtml.o \
ppdi.o \
ppdmerge.o \
- ppdpo.o
+ ppdpo.o \
+ testcatalog.o
LIBTARGETS = \
$(LIBCUPSPPDC) \
- libcupsppdc.a \
- ppdc-static
+ libcupsppdc.a
+UNITTARGETS = \
+ ppdc-static \
+ testcatalog
TARGETS = \
$(LIBTARGETS) \
- drv \
ppdc \
ppdhtml \
ppdi \
libs: $(LIBTARGETS)
+#
+# Make unit tests...
+#
+
+unittests: $(UNITTARGETS)
+
+
#
# Clean everything...
#
clean:
$(RM) $(OBJS) core
$(RM) *.bak *.bck core.*
- $(RM) $(TARGETS)
+ $(RM) $(TARGETS) $(UNITTARGETS)
$(RM) -r ppd
$(RM) test.drv
$(RM) libcupsppdc.so libcupsppdc.sl libcupsppdc.dylib
install-data:
$(INSTALL_DIR) $(DATADIR)/drv
$(INSTALL_DATA) sample.drv $(DATADIR)/drv
- if test `uname` = Darwin; then \
- $(INSTALL_DIR) /Library/Printers/PPDs.drv; \
- fi
#
$(INSTALL_BIN) ppdi $(BINDIR)
$(INSTALL_BIN) ppdmerge $(BINDIR)
$(INSTALL_BIN) ppdpo $(BINDIR)
- $(INSTALL_DIR) $(SERVERBIN)/driver
- $(INSTALL_BIN) drv $(SERVERBIN)/driver
if test "x$(SYMROOT)" != "x"; then \
$(INSTALL_DIR) $(SYMROOT); \
for file in $(TARGETS); do \
$(RM) $(BINDIR)/ppdi
$(RM) $(BINDIR)/ppdmerge
$(RM) $(BINDIR)/ppdpo
- $(RM) $(SERVERBIN)/driver/drv
- $(RMDIR) $(SERVERBIN)/driver
$(RM) $(DATADIR)/drv/sample.drv
$(RMDIR) $(DATADIR)/drv
- if test `uname` = Darwin; then \
- $(RMDIR) /Library/Printers/PPDs.drv; \
- fi
$(RM) $(LIBDIR)/libcupsppdc.1.dylib
$(RM) $(LIBDIR)/libcupsppdc.a
$(RM) $(LIBDIR)/libcupsppdc.dylib
ppdc.h $(LIBOBJS:.o=.cxx)
-#
-# drv, the CUPS driver interface program to the PPD compiler.
-#
-
-drv: drv.o $(LIBCUPSPPDC) ../cups/$(LIBCUPS)
- echo Linking $@...
- $(CXX) $(LDFLAGS) -o $@ drv.o -L. -lcupsppdc $(LIBS)
-
-
#
# ppdc, the PPD compiler.
#
$(CXX) $(LDFLAGS) -o $@ ppdpo.o -L. -lcupsppdc $(LIBS)
+#
+# testcatalog, test ppdcCatalog class.
+#
+
+testcatalog: testcatalog.o libcupsppdc.a ../cups/libcups.a
+ echo Linking $@...
+ $(CXX) $(LDFLAGS) -o $@ testcatalog.o libcupsppdc.a \
+ ../cups/libcups.a $(LIBGSSAPI) $(SSLLIBS) $(COMMONLIBS) $(LIBZ)
+
+
#
# libcupsppdc.so.1, libcupsppdc.sl.1
#
#
libcupsppdc.1.dylib: $(LIBOBJS)
+ echo Creating export list for $@...
+ nm $(LIBOBJS) | grep "T __" | awk '{print $$3}' | sort >t.exp
echo Linking $@...
$(DSOXX) $(ARCHFLAGS) $(DSOFLAGS) -o $@ \
-install_name $(libdir)/$@ \
-current_version 1.0.0 \
-compatibility_version 1.0.0 \
+ -exported_symbols_list t.exp \
$(LIBOBJS) $(LIBS)
- $(RM) libcupsppdc.dylib
+ $(RM) libcupsppdc.dylib t.exp
$(LN) $@ libcupsppdc.dylib