1bin_PROGRAMS = scalex scalerx
2
3EXTRA_DIST = \
4	scale2x.h scale3x.h \
5	README AUTHORS COPYING HISTORY \
6	example/mslug2-1.png \
7	example/mslug2-1x.png \
8	example/mslug2-2.png \
9	example/mslug2-2x.png \
10	example/mslug2-3.png \
11	example/mslug2-3x.png \
12	example/mslug2-4.png \
13	example/mslug2-4x.png \
14	example/test-1.png \
15	example/test-1x.png \
16	example/test-2.png \
17	example/test-2x.png \
18	example/test-3.png \
19	example/test-3x.png \
20	example/test-4.png \
21	example/test-4x.png \
22	test/basn0g01.png \
23	test/basn0g02.png \
24	test/basn0g04.png \
25	test/basn0g08.png \
26	test/basn0g16.png \
27	test/basn2c08.png \
28	test/basn2c16.png \
29	test/basn3p01.png \
30	test/basn3p02.png \
31	test/basn3p04.png \
32	test/basn3p08.png \
33	test/basn4a08.png \
34	test/basn4a16.png \
35	test/basn6a08.png \
36	test/basn6a16.png \
37	configure.windows-x86 configure.windows-x64 autogen.sh \
38	doc/scalex.d doc/scalex.1 doc/scalex.txt \
39	doc/scalerx.d doc/scalerx.1 doc/scalerx.txt \
40	test/test.lst \
41	contrib/readme.txt \
42	contrib/java/Scale2xImageFilter.java \
43	contrib/sdl/scale2x.c \
44	contrib/visualc/scale2x.cpp \
45	contrib/freebasic/scale2x8BPP.bas \
46	contrib/freebasic/scale2x8BPP.exe \
47	contrib/ogl2/gpuPeteOGL2-rev3.slv \
48	contrib/ogl2/gpuPeteOGL2.slf \
49	contrib/ogl2/gpuPeteOGL2.slv \
50	contrib/ogl2/sl_scale2x.txt \
51	contrib/ogl2/gpuPeteOGL2-rev3.slf \
52	contrib/ps/scale2x.fx \
53	contrib/ps/scale2x_ps14.fx \
54	contrib/ps/scaling.inc \
55	contrib/perl/GD-Image-Scale2x-0.02.tar.gz \
56	contrib/java2/ImageScale2x.java \
57	contrib/java2/ImageScale3x.java \
58	contrib/java2/RawScale2x.java \
59	contrib/java2/RawScale3x.java
60
61man_MANS = doc/scalex.1 doc/scalerx.1
62
63scalex_SOURCES = \
64	scalex.c scalebit.c scalebit.h getopt.c portable.h file.c file.h scale2x.c scale3x.c
65
66scalerx_SOURCES = \
67	scalerx.c getopt.c portable.h file.c file.h pixel.c pixel.h
68
69clean-local:
70	rm -f tx*.png tr*.png tt*.png
71	rm -f check.lst checkrx.lst checkx.lst template.png
72
73# Docs
74
75%.1 : %.d
76	advd2 man < $(srcdir)/$< > $@
77
78%.txt : %.d
79	advd2 txt < $(srcdir)/$< | todos > $@
80
81# Archives
82
83DIST_WINDOWS = \
84	scalex.exe scalerx.exe
85
86DIST_WINDOWS_DOC = \
87	doc/scalex.txt doc/scalerx.txt
88
89DIST_WINDOWS_EXAMPLE = \
90	example/mslug2-1.png \
91	example/mslug2-1x.png \
92	example/mslug2-2.png \
93	example/mslug2-2x.png \
94	example/mslug2-3.png \
95	example/mslug2-3x.png \
96	example/mslug2-4.png \
97	example/mslug2-4x.png \
98	example/test-1.png \
99	example/test-1x.png \
100	example/test-2.png \
101	example/test-2x.png \
102	example/test-3.png \
103	example/test-3x.png \
104	example/test-4.png \
105	example/test-4x.png
106
107distwindows-x86: $(DIST_WINDOWS)
108	rm -f $(PACKAGE)-$(VERSION)-windows-x86.zip
109	mkdir tmp
110	cp $(DIST_WINDOWS) tmp
111	utod < README > tmp/readme.txt
112	utod < AUTHORS > tmp/authors.txt
113	utod < HISTORY > tmp/history.txt
114	utod < COPYING > tmp/copying.txt
115	cp $(DIST_WINDOWS_DOC) tmp
116	mkdir tmp/example
117	cp $(DIST_WINDOWS_EXAMPLE) tmp/example
118	find tmp \( -name "*.txt" \) -type f -exec utod {} \;
119	cd tmp && zip -r ../$(PACKAGE)-$(VERSION)-windows-x86.zip *
120	rm -r tmp
121
122TEST = 0g01 0g02 0g04 0g16 2c08 2c16 3p01 3p02 3p04 3p08 4a08 4a16 6a08 6a16
123EXAMPLE = mslug2-1 test-1
124
125check-local:
126	rm -f check.lst checkx.lst checkrx.lst
127	echo -- Generate the template.png
128	$(TESTENV) ./scalerx$(EXEEXT) -g
129	echo -- Test the template
130	$(TESTENV) ./scalerx$(EXEEXT) -k 2 -c template.png ttx22.png | fromdos >> check.lst ; \
131	$(TESTENV) ./scalerx$(EXEEXT) -k 3 -c template.png ttx33.png | fromdos >> check.lst ; \
132	$(TESTENV) ./scalerx$(EXEEXT) -k 4 -c template.png ttx44.png | fromdos >> check.lst ; \
133	$(TESTENV) ./scalerx$(EXEEXT) -k 2 -r k -c template.png ttk22.png | fromdos >> check.lst ; \
134	$(TESTENV) ./scalerx$(EXEEXT) -k 3 -r k -c template.png ttk33.png | fromdos >> check.lst ; \
135	$(TESTENV) ./scalerx$(EXEEXT) -k 4 -r k -c template.png ttk44.png | fromdos >> check.lst ; \
136	echo -- Test the basn files
137	for i in $(TEST); do \
138		$(TESTENV) ./scalerx$(EXEEXT) -k 2 -c $(srcdir)/test/basn$$i.png tr22$$i.png | fromdos >> check.lst ; \
139		$(TESTENV) ./scalerx$(EXEEXT) -k 2x3 -c $(srcdir)/test/basn$$i.png tr23$$i.png | fromdos >> check.lst ; \
140		$(TESTENV) ./scalerx$(EXEEXT) -k 2x4 -c $(srcdir)/test/basn$$i.png tr24$$i.png | fromdos >> check.lst ; \
141		$(TESTENV) ./scalerx$(EXEEXT) -k 3 -c $(srcdir)/test/basn$$i.png tr33$$i.png | fromdos >> check.lst ; \
142		$(TESTENV) ./scalerx$(EXEEXT) -k 4 -c $(srcdir)/test/basn$$i.png tr44$$i.png | fromdos >> check.lst ; \
143		$(TESTENV) ./scalex$(EXEEXT) -k 2 -c $(srcdir)/test/basn$$i.png tx22$$i.png | fromdos >> check.lst ; \
144		$(TESTENV) ./scalex$(EXEEXT) -k 2x3 -c $(srcdir)/test/basn$$i.png tr23$$i.png | fromdos >> check.lst ; \
145		$(TESTENV) ./scalex$(EXEEXT) -k 2x4 -c $(srcdir)/test/basn$$i.png tr24$$i.png | fromdos >> check.lst ; \
146		$(TESTENV) ./scalex$(EXEEXT) -k 3 -c $(srcdir)/test/basn$$i.png tx33$$i.png | fromdos >> check.lst ; \
147		$(TESTENV) ./scalex$(EXEEXT) -k 4 -c $(srcdir)/test/basn$$i.png tx44$$i.png | fromdos >> check.lst ; \
148	done
149	echo -- Test the example files
150	for i in $(EXAMPLE); do \
151		$(TESTENV) ./scalerx$(EXEEXT) -k 2 -c $(srcdir)/example/$$i.png tr22$$i.png | fromdos >> check.lst ; \
152		$(TESTENV) ./scalerx$(EXEEXT) -k 2x3 -c $(srcdir)/example/$$i.png tr23$$i.png | fromdos >> check.lst ; \
153		$(TESTENV) ./scalerx$(EXEEXT) -k 2x4 -c $(srcdir)/example/$$i.png tr24$$i.png | fromdos >> check.lst ; \
154		$(TESTENV) ./scalerx$(EXEEXT) -k 3 -c $(srcdir)/example/$$i.png tr33$$i.png | fromdos >> check.lst ; \
155		$(TESTENV) ./scalerx$(EXEEXT) -k 4 -c $(srcdir)/example/$$i.png tr44$$i.png | fromdos >> check.lst ; \
156		$(TESTENV) ./scalex$(EXEEXT) -k 2 -c $(srcdir)/example/$$i.png tx22$$i.png | fromdos >> check.lst ; \
157		$(TESTENV) ./scalex$(EXEEXT) -k 2x3 -c $(srcdir)/example/$$i.png tr23$$i.png | fromdos >> check.lst ; \
158		$(TESTENV) ./scalex$(EXEEXT) -k 2x4 -c $(srcdir)/example/$$i.png tr24$$i.png | fromdos >> check.lst ; \
159		$(TESTENV) ./scalex$(EXEEXT) -k 3 -c $(srcdir)/example/$$i.png tx33$$i.png | fromdos >> check.lst ; \
160		$(TESTENV) ./scalex$(EXEEXT) -k 4 -c $(srcdir)/example/$$i.png tx44$$i.png | fromdos >> check.lst ; \
161	done
162	cmp check.lst $(srcdir)/test/test.lst
163	echo -- Compare the reference and fast implementation
164	for i in $(TEST); do \
165		$(TESTENV) ./scalerx$(EXEEXT) -k 2 -c -o $(srcdir)/test/basn$$i.png tr22$$i.png | fromdos >> checkrx.lst ; \
166		$(TESTENV) ./scalerx$(EXEEXT) -k 2x3 -c -o $(srcdir)/test/basn$$i.png tr23$$i.png | fromdos >> checkrx.lst ; \
167		$(TESTENV) ./scalerx$(EXEEXT) -k 2x4 -c -o $(srcdir)/test/basn$$i.png tr24$$i.png | fromdos >> checkrx.lst ; \
168		$(TESTENV) ./scalerx$(EXEEXT) -k 3 -c -o $(srcdir)/test/basn$$i.png tr33$$i.png | fromdos >> checkrx.lst ; \
169		$(TESTENV) ./scalerx$(EXEEXT) -k 4 -c -o $(srcdir)/test/basn$$i.png tr43$$i.png | fromdos >> checkrx.lst ; \
170	done
171	for i in $(EXAMPLE); do \
172		$(TESTENV) ./scalerx$(EXEEXT) -k 2 -c -o $(srcdir)/example/$$i.png tr22$$i.png | fromdos >> checkrx.lst ; \
173		$(TESTENV) ./scalerx$(EXEEXT) -k 2x3 -c -o $(srcdir)/example/$$i.png tr23$$i.png | fromdos >> checkrx.lst ; \
174		$(TESTENV) ./scalerx$(EXEEXT) -k 2x4 -c -o $(srcdir)/example/$$i.png tr24$$i.png | fromdos >> checkrx.lst ; \
175		$(TESTENV) ./scalerx$(EXEEXT) -k 3 -c -o $(srcdir)/example/$$i.png tr33$$i.png | fromdos >> checkrx.lst ; \
176		$(TESTENV) ./scalerx$(EXEEXT) -k 4 -c -o $(srcdir)/example/$$i.png tr43$$i.png | fromdos >> checkrx.lst ; \
177	done
178	for i in $(TEST); do \
179		$(TESTENV) ./scalex$(EXEEXT) -k 2 -c $(srcdir)/test/basn$$i.png tx22$$i.png | fromdos >> checkx.lst ; \
180		$(TESTENV) ./scalex$(EXEEXT) -k 2x3 -c $(srcdir)/test/basn$$i.png tx23$$i.png | fromdos >> checkx.lst ; \
181		$(TESTENV) ./scalex$(EXEEXT) -k 2x4 -c $(srcdir)/test/basn$$i.png tx24$$i.png | fromdos >> checkx.lst ; \
182		$(TESTENV) ./scalex$(EXEEXT) -k 3 -c $(srcdir)/test/basn$$i.png tx33$$i.png | fromdos >> checkx.lst ; \
183		$(TESTENV) ./scalex$(EXEEXT) -k 4 -c $(srcdir)/test/basn$$i.png tx44$$i.png | fromdos >> checkx.lst ; \
184	done
185	for i in $(EXAMPLE); do \
186		$(TESTENV) ./scalex$(EXEEXT) -k 2 -c $(srcdir)/example/$$i.png tx22$$i.png | fromdos >> checkx.lst ; \
187		$(TESTENV) ./scalex$(EXEEXT) -k 2x3 -c $(srcdir)/example/$$i.png tx23$$i.png | fromdos >> checkx.lst ; \
188		$(TESTENV) ./scalex$(EXEEXT) -k 2x4 -c $(srcdir)/example/$$i.png tx24$$i.png | fromdos >> checkx.lst ; \
189		$(TESTENV) ./scalex$(EXEEXT) -k 3 -c $(srcdir)/example/$$i.png tx33$$i.png | fromdos >> checkx.lst ; \
190		$(TESTENV) ./scalex$(EXEEXT) -k 4 -c $(srcdir)/example/$$i.png tx44$$i.png | fromdos >> checkx.lst ; \
191	done
192	cmp checkx.lst checkrx.lst
193	echo Success!
194
195