1# Makefile.am for gv/src
2#
3# Copyright (C) 2004 José E. Marchesi
4
5# Process this file with automake to get Makefile.in
6
7# File distribution
8bin_PROGRAMS = gv
9bin_SCRIPTS = gv-update-userconfig
10pkgdata_DATA = gv_system.ad
11if !ENABLE_FALLBACK_STYLES
12pkgdata_DATA += gv_spartan.dat gv_widgetless.dat
13endif
14
15appdefaultsdir = $(pkgdatadir)
16
17appdefaults_DATA = ../GV
18
19EXTRA_DIST=ad2c gv_font_res.dat gv_font_res-I18N_mb.dat gv_layout_res.dat gv-i18n.pl gv_misc_res.dat Aaa_bison.yacc \
20           gv_current.xbm gv_doc.xbm gv_empty.xbm gv_even.xbm gv_icon.xbm gv_odd.xbm \
21           gv_selected.xbm gv_unmark.xbm $(srcdir)/nls/* \
22	   gv_spartan.dat gv_widgetless.dat gv_user_res.dat gv_copyright.dat
23
24# Clean files
25CLEANFILES = ../GV \
26             GV.ad \
27             gv_system.ad \
28             gv_user.ad \
29             gv_spartan.h \
30             gv_widgetless.h \
31             gv_intern_res_unix.h \
32             gv_class.ad \
33             gv_class.h \
34             gv_make_res.dat \
35	     gv_intern_res_unix.dat \
36             gv-update-userconfig
37MAINTAINERCLEANFILES = gv-i18n.h
38
39# Compilation flags
40AM_CPPFLAGS = -DNON_BLOCKING_IO -DGV_CODE -DGV_LIBDIR=\"$(pkgdatadir)\" \
41              -I$(top_srcdir)/lib -I$(top_builddir)/lib -g $(X_CFLAGS)
42
43AM_CFLAGS =
44
45LDADD = ../lib/libgnu.a
46
47gv_LDFLAGS = @X_LIBS@
48
49gv_SOURCES = Aaa.c \
50             Aaa_bison.c \
51             Aaa_bison.h \
52             Aaa_lex.c \
53             Button.c \
54             Button.h \
55             ButtonP.h \
56             Clip.c \
57             Clip.h \
58             ClipP.h \
59             FileSel.c \
60             FileSel.h \
61             FileSelP.h \
62             Frame.c \
63             Frame.h \
64             FrameP.h \
65             Ghostview.c \
66             Ghostview.h \
67             GhostviewP.h \
68             MButton.c \
69             MButton.h \
70             MButtonP.h \
71             Switch.c \
72             Switch.h \
73             SwitchP.h \
74             Vlist.c \
75             Vlist.h \
76             VlistP.h \
77             actions.c \
78             actions.h \
79             callbacks.c \
80             callbacks.h \
81             confirm.c \
82             confirm.h \
83             config.h \
84             dialog.c \
85             dialog.h \
86             doc_misc.c \
87             doc_misc.h \
88             error.c \
89             error.h \
90             file.c \
91             file.h \
92             info.c \
93             info.h \
94             magmenu.c \
95             magmenu.h \
96             main.c \
97             main_globals.h \
98             main_resources.h \
99             media.c \
100             media.h \
101             message.h \
102             misc.c \
103             misc.h \
104             miscmenu.c \
105             miscmenu.h \
106             misc_private.c \
107             misc_private.h \
108             note.c \
109             note.h \
110             options.c \
111             options.h \
112             options_fs.c \
113             options_fs.h \
114             options_gs.c \
115             options_gs.h \
116             options_gv.c \
117             options_gv.h \
118             options_setup.c \
119             options_setup.h \
120             paths.h \
121             process.c \
122             process.h \
123             popup.c \
124             popup.h \
125             ps.c \
126             ps.h \
127             resource.c \
128             resource.h \
129             save.c \
130             save.h \
131             scale.c \
132             scale.h \
133             secscanf.c \
134             secscanf.h \
135             gv_signal.c \
136             gv_signal.h \
137             version.c \
138             version.h \
139             versionp.h \
140             widgets_misc.c \
141             widgets_misc.h \
142             zoom.c \
143             zoom.h \
144             message.h \
145             Aaa_intern.h \
146             Aaa.h \
147             AaaP.h \
148             gv_message.h \
149             types.h \
150             gv-i18n.h \
151             gv-update-userconfig.in
152
153BUILT_SOURCES = gv_spartan.h gv_widgetless.h gv_intern_res_unix.h gv_class.h gv-i18n.h
154
155
156# Additional rules for generating styles
157
158../GV : GV.ad
159	@echo "creating GV"
160	sed -e 's/^[^!]/!&/' GV.ad > ../GV
161
162GV.ad : gv_system.ad
163	@echo "creating GV.ad"
164	@cp gv_system.ad GV.ad
165
166gv_system.ad : gv_user.ad
167	@echo "creating gv_system.ad"
168	@cp gv_user.ad gv_system.ad
169
170gv_user.ad : $(srcdir)/gv_user_res.dat gv_intern_res_unix.dat gv_make_res.dat
171	@echo "creating gv_user.ad"
172	@echo "!"						>  gv_user.ad
173	@echo "!  gv_user.ad"				>> gv_user.ad
174	@echo "!  User specific application defaults for gv"	>> gv_user.ad
175	@echo "!  Copyright (C) 1995, 1996, 1997  Johannes Plass"	>> gv_user.ad
176	@echo "!  Copyright (C) 2004,2005,2006,2007 Jos� E. Marchesi"	>> gv_user.ad
177	@echo "!"						>> gv_user.ad
178	@cat $(srcdir)/gv_user_res.dat					>> gv_user.ad
179	@cat gv_intern_res_unix.dat				>> gv_user.ad
180	@cat gv_make_res.dat					>> gv_user.ad
181
182
183
184gv_spartan.h : $(srcdir)/gv_spartan.dat
185	@sh $(srcdir)/ad2c $(srcdir)/gv_spartan.dat > gv_spartan.h
186
187gv_widgetless.h : $(srcdir)/gv_widgetless.dat
188	@sh $(srcdir)/ad2c $(srcdir)/gv_widgetless.dat > gv_widgetless.h
189
190gv_intern_res_unix.h : gv_intern_res_unix.dat
191	@echo "creating gv_intern_res_unix.h"
192	@sh $(srcdir)/ad2c gv_intern_res_unix.dat > gv_intern_res_unix.h
193
194gv_intern_res_unix.dat :
195	@echo "creating gv_intern_res_unix.dat"
196	@echo "" 							 >  gv_intern_res_unix.dat
197	@echo "!########## gv_intern_res.dat (generated by makefile)" >> gv_intern_res_unix.dat
198	@echo ""							>> gv_intern_res_unix.dat
199	@echo "GV.gsInterpreter:	gs" >> gv_intern_res_unix.dat
200	@echo "GV.gsCmdScanPDF:	gs -dNODISPLAY -dQUIET -sPDFname=%s -sDSCname=%s %s pdf2dsc.ps -c quit" >> gv_intern_res_unix.dat
201	@echo "GV.gsCmdConvPDF:	gs -dNOPAUSE -dQUIET -dBATCH -sDEVICE=pswrite -sOutputFile=%s -f %s -c save pop quit" >> gv_intern_res_unix.dat
202	@echo "GV.gsX11Device:		-sDEVICE=x11" >> gv_intern_res_unix.dat
203	@echo "GV.gsX11AlphaDevice:	-sDEVICE=x11 -dTextAlphaBits=4 -dGraphicsAlphaBits=2 -dMaxBitmap=10000000 -dNOPLATFONTS" >> gv_intern_res_unix.dat
204	@echo "GV.gsSafeDir:		True" >> gv_intern_res_unix.dat
205	@echo "GV.gsSafer:		True" >> gv_intern_res_unix.dat
206	@echo "GV.gsQuiet:		True" >> gv_intern_res_unix.dat
207	@echo "GV.infoVerbose:		Warnings" >> gv_intern_res_unix.dat
208	@echo "GV.xinerama:		Auto" >> gv_intern_res_unix.dat
209	@echo "GV.gsArguments:		-dFIXEDMEDIA" >> gv_intern_res_unix.dat
210	@echo "GV.uncompressCommand:	gzip -d -c %s > %s" >> gv_intern_res_unix.dat
211	@echo "GV.printCommand:	$(PRINT_COMMAND)" >> gv_intern_res_unix.dat
212
213
214gv_class.h : gv_class.ad
215	@echo "creating gv_class.h"
216	@sh $(srcdir)/ad2c gv_class.ad > gv_class.h
217
218gv-i18n.h: $(srcdir)/nls/LANGUAGES $(srcdir)/nls/*.dat
219	perl $(srcdir)/gv-i18n.pl $(srcdir) > gv-i18n.h || { rm gv-i18n.h ; exit 1 ; }
220
221gv_class.ad : $(srcdir)/gv_font_res.dat $(srcdir)/gv_font_res-I18N_mb.dat $(srcdir)/gv_layout_res.dat gv_make_res.dat $(srcdir)/gv_misc_res.dat $(srcdir)/gv_user_res.dat gv_intern_res_unix.dat
222	@echo "creating gv_class.ad"
223	cp $(srcdir)/gv_copyright.dat gv_class.ad
224	chmod u+w gv_class.ad
225	@echo "!" >> gv_class.ad
226	@echo "!  gv_class.ad" >> gv_class.ad
227	@echo "!  Application class defaults for gv" >> gv_class.ad
228	@echo "!  Copyright (C) 1995, 1996, 1997  Johannes Plass" >> gv_class.ad
229	@echo "!  Copyright (C) 2004,2005,2006,2007 Jos� E. Marchesi" >> gv_class.ad
230	@echo "!" >> gv_class.ad
231	@echo ""  >> gv_class.ad
232	@cat $(srcdir)/gv_user_res.dat >> gv_class.ad
233	@cat gv_intern_res_unix.dat >> gv_class.ad
234	@cat gv_make_res.dat >> gv_class.ad
235if ENABLE_INTERNATIONAL
236	echo "GV*international: TRUE" >> gv_class.ad
237endif
238	@cat $(srcdir)/gv_font_res-I18N_mb.dat >> gv_class.ad
239	@cat $(srcdir)/gv_font_res.dat >> gv_class.ad
240	@cat $(srcdir)/gv_misc_res.dat >> gv_class.ad
241	@cat $(srcdir)/gv_layout_res.dat >> gv_class.ad
242
243sysdocdir = /usr/doc
244gv_make_res.dat :
245	@echo "creating gv_make_res.dat"
246	@echo ""							>  gv_make_res.dat
247	@echo  "!########## gv_make_res.dat (generated by makefile)"	>> gv_make_res.dat
248	@echo ""							>> gv_make_res.dat
249	@echo "GV.scratchDir:		$(SCRATCH_DIR)"			>> gv_make_res.dat
250	@echo "GV.defaultSaveDir:	$(SAVE_DIR)"			>> gv_make_res.dat
251	@echo "GV.fallbackPageMedia:	$(PAPERSIZE)"			>> gv_make_res.dat
252	@echo "GV.useBackingPixmap:	$(USE_BACKING_PIXMAP)"		>> gv_make_res.dat
253	@echo "GV*dirs:		Home\n\\"				>> gv_make_res.dat
254	@echo "			Tmp\n\\"				>> gv_make_res.dat
255	@echo "			$(sysdocdir)\n\\"			>> gv_make_res.dat
256	@echo "			/usr/local/doc"				>> gv_make_res.dat
257	@echo "GV*filter:		no .*"				>> gv_make_res.dat
258	@echo "GV*filters:		None\n\\"			>> gv_make_res.dat
259	@echo "			*.*ps* *.pdf*  no  .*\n\\"		>> gv_make_res.dat
260	@echo "			*.*ps*   no  .*\n\\"			>> gv_make_res.dat
261	@echo "			*.pdf*  no  .*\n\\"			>> gv_make_res.dat
262	@echo "			no  .*"					>> gv_make_res.dat
263	@echo ""							>> gv_make_res.dat
264
265gv-update-userconfig: $(srcdir)/gv-update-userconfig.in GV.ad
266	cat $(srcdir)/gv-update-userconfig.in > gv-update-userconfig
267	echo "__END__" >> gv-update-userconfig
268	cat GV.ad >> gv-update-userconfig
269	cat $(srcdir)/gv_misc_res.dat >> gv-update-userconfig
270
271# Conditional source files
272
273if USE_SCROLLBAR_CODE
274   gv_SOURCES += Scrollbar.c Scrollbar.h ScrollbarP.h
275endif
276
277if USE_SETENV_CODE
278   gv_SOURCES += setenv.c setenv.h
279   AM_CPPFLAGS += -DUSE_SETENV_CODE
280endif
281
282install-data-local:
283	$(MKDIR_P) "$(DESTDIR)$(pkgdatadir)/safe-gs-workdir"
284	chmod 755 "$(DESTDIR)$(pkgdatadir)/safe-gs-workdir"
285