]> git.draconx.ca Git - liblbx.git/blob - Makefile.am
lbximg: Add an option to control the output filenames.
[liblbx.git] / Makefile.am
1 # Copyright © 2009-2010, 2013 Nick Bowler
2 #
3 # License WTFPL2: Do What The Fuck You Want To Public License, version 2.
4 # This is free software: you are free to do what the fuck you want to.
5 # There is NO WARRANTY, to the extent permitted by law.
6
7 AUTOMAKE_OPTIONS = parallel-tests color-tests
8 ACLOCAL_AMFLAGS = -I m4 -I common/m4
9
10 EXTRA_DIST         = m4/gnulib-cache.m4
11 CLEANFILES         =
12 MOSTLYCLEANFILES   =
13 noinst_LTLIBRARIES =
14
15 AM_CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib -I$(top_srcdir)/src
16 AM_CFLAGS = $(LIBPNG_CFLAGS) $(GTK_CFLAGS)
17
18 dist_man_MANS = doc/man/lbxtool.1 doc/man/lbximg.1
19 dist_doc_DATA = doc/txt/moo2-data.txt
20
21 lbxdir = $(includedir)/lbx
22 lbx_HEADERS = src/lbx.h src/image.h src/error.h
23 noinst_HEADERS = src/misc.h src/tools.h src/pack.h
24
25 lib_LTLIBRARIES = liblbx.la
26 liblbx_la_SOURCES = src/lbx.c src/fops.c src/image.c src/pack.c src/error.c
27 liblbx_la_LDFLAGS = -export-symbols-regex '^lbx_'
28
29 bin_PROGRAMS = lbxtool lbximg
30 if BUILD_LBXGUI
31 bin_PROGRAMS += lbxgui
32 endif
33
34 lbxtool_SOURCES = src/lbxtool.c src/tools.c
35 lbxtool_LDADD = liblbx.la libgnu.la
36 $(lbxtool_OBJECTS): $(gnulib_headers)
37
38 lbximg_SOURCES = src/lbximg.c src/tools.c src/pnm.c
39 lbximg_LDADD = liblbx.la libgnu.la $(LIBPNG_LIBS)
40 $(lbximg_OBJECTS): $(gnulib_headers)
41
42 if HAVE_LIBPNG
43 lbximg_SOURCES += src/png.c
44 endif
45
46 nodist_lbxgui_SOURCES = src/gui/lbxgui.glade.c
47 lbxgui_SOURCES = src/gui/lbxgui.c src/gui/render.c src/gui/render.h \
48         src/gui/bg.xbm
49 lbxgui_LDFLAGS = $(AM_LDFLAGS) -export-dynamic
50 lbxgui_LDADD = liblbx.la $(GTK_LIBS)
51
52 TEST_EXTENSIONS = .tap
53
54 TAP_LOG_COMPILER = $(SHELL)
55 TAP_LOG_DRIVER = AM_TAP_AWK='$(AWK)' \
56         $(SHELL) $(srcdir)/tests/util/tap-driver.sh
57
58 TESTS = tests/empty-image.tap
59
60 mostlyclean-local: clean-testdirs
61 clean-testdirs:
62         for dir in $(TESTS:.tap=.dir); do \
63                 case $$dir in \
64                 *.dir) rm -rf "$$dir" ;; \
65                 esac; \
66         done
67 .PHONY: clean-testdirs
68
69 .xml.c:
70         $(AM_V_GEN) printf '%s\n' $(*F) | sed -e 's/[^[:alnum:]]/_/g' \
71                 -e 's/.*/const char &[] =/' > $@.tmp
72         $(AM_V_at) sed -e 's/\\/\\\\/g' \
73                 -e 's/"/\\"/g' \
74                 -e 's/.*/"&\\n"/' \
75                 -e '$$ s/$$/;/' $< >> $@.tmp
76         $(AM_V_at) mv -f $@.tmp $@
77
78 EXTRA_DIST += src/gui/lbxgui.glade.xml
79 CLEANFILES += src/gui/lbxgui.glade.c
80
81 include lib/gnulib.mk