1
2# Variables
3prefix=@prefix@
4exec_prefix=@exec_prefix@
5libdir=@libdir@
6bindir=@bindir@
7sbindir=@sbindir@
8mandir=@mandir@
9sysconfdir=@sysconfdir@
10
11PREFIX=$(prefix)
12SRC=@srcdir@
13
14BINDIR=$(bindir)
15SBINDIR=$(sbindir)
16MANDIR=$(mandir)
17ETCDIR=$(sysconfdir)/foomatic
18INSTALL=@INSTALL@
19
20# Paths for CUPS
21CUPS=@CUPS@
22CUPS_FILTERS=@CUPS_FILTERS@
23CUPS_BACKENDS=@CUPS_BACKENDS@
24
25# Paths for PPR
26PPR=@PPR@
27PPR_INTERFACES=@PPR_INTERFACES@
28PPR_LIB=@PPR_LIB@
29
30# This is mainly useful for building a binary foomatic package
31#DESTDIR=
32
33bin_PROGRAMS = foomatic-rip
34
35foomatic_ripdir = .
36foomatic_rip_SOURCES = \
37	foomaticrip.c \
38	foomaticrip.h \
39	options.c \
40	options.h \
41	pdf.c \
42	pdf.h \
43	postscript.c \
44	postscript.h \
45	util.c \
46	util.h \
47	spooler.h \
48	spooler.c \
49	process.h \
50	process.c \
51	renderer.c \
52	renderer.h \
53	fileconverter.c \
54	fileconverter.h
55
56if BUILD_DBUS
57foomatic_rip_SOURCES += \
58	colord.c \
59	colord.h
60
61foomatic_rip_CFLAGS = $(DBUS_CFLAGS) -DHAVE_DBUS
62foomatic_rip_LDADD = $(DBUS_LIBS)
63endif
64
65AM_CPPFLAGS = -DCONFIG_PATH='"$(sysconfdir)/foomatic"'
66
67# Masks for trash files which have to be removed before packaging Foomatic
68TRASHFILES="*~" "*\#*" ".??*" "*.rej"
69
70# The install rule should check for kitloads and avoid stomping.  It doesn't
71install: install-main install-cups install-ppr
72
73install-main: install-bin install-man
74
75install-cups:	install-bin
76	${SRC}/mkinstalldirs $(DESTDIR)$(CUPS_FILTERS)
77	${SRC}/mkinstalldirs $(DESTDIR)$(CUPS_BACKENDS)
78	ln -sf ../../../bin/foomatic-rip $(DESTDIR)$(CUPS_FILTERS)
79	${INSTALL} -m 755 beh $(DESTDIR)$(CUPS_BACKENDS)
80
81install-ppr:	install-bin
82	${SRC}/mkinstalldirs $(DESTDIR)$(PPR_INTERFACES)
83	${SRC}/mkinstalldirs $(DESTDIR)$(PPR_LIB)
84	ln -sf ../../../bin/foomatic-rip $(DESTDIR)$(PPR_INTERFACES)
85	ln -sf ../../../bin/foomatic-rip $(DESTDIR)$(PPR_LIB)
86
87install-bin:	install-etc
88	${SRC}/mkinstalldirs $(DESTDIR)$(BINDIR)
89	(for FILE in $(bin_PROGRAMS) ; do \
90		${INSTALL} -m 755 $$FILE $(DESTDIR)$(BINDIR) ; done)
91
92install-etc:
93	${SRC}/mkinstalldirs $(DESTDIR)$(ETCDIR)/direct
94	${INSTALL} -m 644 ${SRC}/filter.conf $(DESTDIR)$(ETCDIR)/filter.conf.sample
95
96
97install-man:
98	${SRC}/mkinstalldirs $(DESTDIR)$(MANDIR)
99	${SRC}/mkinstalldirs $(DESTDIR)$(MANDIR)/man1
100	(for FILE in *.1 ; do \
101		${INSTALL} -m 444 $$FILE $(DESTDIR)$(MANDIR)/man1 ; done)
102
103# Clean up the source directory
104clean:	remove-trash
105	rm -f *.o foomatic-rip foomatic-rip.1 beh
106	rm -f .testing-stamp stamp-h1
107	rm -f test/*.out
108
109distclean:	clean
110	rm -f $(AC_OUTPUT_FILES) config.log config.status config.cache configure.lineno
111	rm -rf autom*.cache confdefs.h config.h
112	rm -f Makefile test/Makefile
113	rm -rf .deps
114
115maintainer-clean:	distclean
116	rm -f configure config.h.in Makefile.in aclocal.m4 INSTALL VERSION.full
117	rm -f depcomp missing
118# Remove editor backup and temporary files
119remove-trash:
120	for m in $(TRASHFILES); do \
121	  find . -name "$$m" -xtype f -exec rm -f "{}" \; ; \
122	done
123
124# Uninstall an installed Foomatic
125
126uninstall:	uninstall-cups uninstall-ppr uninstall-main
127
128uninstall-main:	uninstall-bin uninstall-man
129
130uninstall-bin:
131	( cd $(DESTDIR)$(BINDIR) && \
132	  rm -f $(bin_PROGRAMS) \
133	)
134
135uninstall-etc:
136	rm -f $(DESTDIR)$(ETCDIR)/filter.conf
137	rm -f $(DESTDIR)$(ETCDIR)/filter.conf.sample
138	rmdir $(DESTDIR)$(ETCDIR)/direct || :
139	rmdir $(DESTDIR)$(ETCDIR) || :
140
141uninstall-cups:
142	rm -f $(DESTDIR)$(CUPS_FILTERS)/foomatic-rip
143	rm -f $(DESTDIR)$(CUPS_BACKENDS)/beh
144	rmdir $(DESTDIR)$(CUPS_FILTERS) || :
145	rmdir $(DESTDIR)$(CUPS_BACKENDS) || :
146	rmdir $(DESTDIR)$(CUPS) || :
147
148uninstall-ppr:
149	rm -f $(DESTDIR)$(PPR_INTERFACES)/foomatic-rip
150	rmdir $(DESTDIR)$(PPR_INTERFACES) || :
151	rm -f $(DESTDIR)$(PPR_LIB)/foomatic-rip
152	rmdir $(DESTDIR)$(PPR_LIB) || :
153	rmdir $(DESTDIR)$(PPR) || :
154
155uninstall-man:	check-config
156	for m in $(bin_PROGRAMS); do \
157	  rm -f $(DESTDIR)$(MANDIR)/man1/$$m.*; \
158	done
159
160# Various testing/debugging/etc targets
161inplace:	all
162	chmod a+rx $(bin_PROGRAMS)
163
164testing tests:	inplace
165	cd tests ; $(MAKE)
166
167.PHONY:	all install install-bin clean distclean maintainer-clean tests inplace
168
169