summaryrefslogtreecommitdiff
path: root/Makefile
blob: 4f8ed3c77309a9e8555b2ff4ea6d7c2d5007692b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
all: pcl xps ls_product

debug: pcl_debug ls_debug xps_debug

clean: pcl_clean ls_clean xps_clean

test: pcl_test ls_test

# only pcl has an install target at this point
install: pcl_install

uninstall: pcl_uninstall

product: pcl

# specific front-end targets

pcl:
	$(MAKE) -C main -f pcl6_gcc.mak	pdl_product # build PCL and PCLXL. 

pcl_debug: 
	$(MAKE) -C main -f pcl6_gcc.mak pdl_debug

fonts:
	mkdir -p /windows/fonts/	# make a font directory. 2 
	cp urwfonts/*.ttf /windows/fonts/	# copy the fonts. 
	touch fonts

pcl_profile:
	$(MAKE) -C main -f pcl6_gcc.mak pdl_pg

pcl_install:
	install main/obj/pcl6 /usr/local/bin

pcl_uninstall:
	rm -f /usr/local/bin/pcl6

pcl_test: 
	./main/obj/pcl6 -dTextAlphaBits=4 \
		tools/owl.pcl tools/tiger.px3 # test with PCL and PXL test files 

# NB - this does not remove the fonts.  blowing away /windows/fonts
# might be unexpected on some systems and we don't enumerate the font
# names here so they could be removed individually.

pcl_clean:
	$(MAKE) -C main -f pcl6_gcc.mak pdl_clean
	rm -f fonts

xps_debug:
	$(MAKE) -C xps -f xps_gcc.mak pdl_debug

xps: 
	$(MAKE) -C xps -f xps_gcc.mak	# build XPS

xps_clean:
	$(MAKE) -C xps -f xps_gcc.mak pdl_clean

####  UFST LIBRARY DEPENDENCY RULES ####

ufst:
	$(MAKE) -C ufst/rts/lib -f makefile.artifex

####  LANGUAGE SWITCHING PRODUCT RULES ####

ls_profile:
	$(MAKE) -C language_switch -f pspcl6_gcc.mak pdl_pg

ls_product:
	$(MAKE) -C language_switch -f pspcl6_gcc.mak pdl_product # build PS/PCL/XL. 

ls_debug: 
	$(MAKE) -C language_switch -f pspcl6_gcc.mak pdl_debug

ls_fonts:
	mkdir -p /windows/fonts/	# make a font directory. 2 
	cp urwfonts/*.ttf /windows/fonts/	# copy the fonts. 
	touch fonts

ls_install:
	install language_switch/obj/pspcl6 /usr/local/bin

# test with PCL, PXL and PS file 
ls_test:
	./language_switch/obj/pspcl6 -dTextAlphaBits=4 \
		tools/owl.pcl tools/tiger.px3 gs/examples/tiger.eps

check:
	tools/smoke_check.sh


# NB - this does not remove the fonts.  blowing away /windows/fonts
# might be unexpected on some systems and we don't enumerate the font
# names here so they could be removed individually.

ls_clean:
	$(MAKE) -C language_switch -f pspcl6_gcc.mak pdl_clean
	rm -f fonts /usr/local/bin/pspcl6

# shortcuts for common build types.

ls_uproduct: ufst
	$(MAKE) -C language_switch -f pspcl6_gcc.mak PL_SCALER=ufst GENDIR="./ufst-obj" pdl_product
	cp *.icc ./language_switch/ufst-obj
	cp wts_* ./language_switch/ufst-obj

ls_udebug: ufst
	$(MAKE) -C language_switch -f pspcl6_gcc.mak PL_SCALER=ufst GENDIR="./ufst-obj" pdl_debug
	cp *.icc ./language_switch/ufst-obj
	cp wts_* ./language_switch/ufst-obj

ls_uclean:
	$(MAKE) -C language_switch -f pspcl6_gcc.mak PL_SCALER=ufst GENDIR="./ufst-obj" pdl_clean
	$(MAKE) -C ufst/rts/lib -f makefile.artifex clean

uproduct: ufst
	$(MAKE) -C main -f pcl6_gcc.mak PL_SCALER=ufst GENDIR="./ufst-obj" pdl_product
	cp *.icc ./main/ufst-obj
	cp wts_* ./main/ufst-obj

udebug: ufst
	$(MAKE) -C main -f pcl6_gcc.mak PL_SCALER=ufst GENDIR="./ufst-debugobj" pdl_debug
	cp *.icc ./main/ufst-debugobj
	cp wts_* ./main/ufst-debugobj

uclean:
	$(MAKE) -C main -f pcl6_gcc.mak PL_SCALER=ufst GENDIR="./ufst-obj" pdl_clean
	$(MAKE) -C ufst/rts/lib -f makefile.artifex clean

all_debug: pcl_debug udebug ls_debug ls_udebug xps_debug

all_clean: clean uclean ls_uclean ls_clean
	$(MAKE) -C ufst/rts/lib -f makefile.artifex clean

.PHONY: all clean test check install uninstall product profile pcl pcl_debug pcl_test pcl_install pcl_uninstall pcl_clean xps xps_debug ls_clean ls_test ls_install ls_product ls_profile ls_udebug udebug ufst