]> git.draconx.ca Git - liblbx.git/blob - Makefile.am
build: clean up XML -> C conversion.
[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 ACLOCAL_AMFLAGS = -I m4 -I common/m4
8
9 EXTRA_DIST         = m4/gnulib-cache.m4
10 CLEANFILES         =
11 MOSTLYCLEANFILES   =
12 noinst_LTLIBRARIES =
13
14 AM_CPPFLAGS = -I$(top_builddir)/lib -I$(top_srcdir)/lib
15
16 dist_man_MANS = doc/man/lbxtool.1 doc/man/lbximg.1
17 dist_doc_DATA = doc/txt/moo2-data.txt
18
19 lbxdir = $(includedir)/lbx
20 lbx_HEADERS = src/lbx.h src/image.h src/error.h
21 noinst_HEADERS = src/misc.h src/tools.h src/pack.h
22
23 lib_LTLIBRARIES = liblbx.la
24 liblbx_la_SOURCES = src/lbx.c src/fops.c src/image.c src/pack.c src/error.c
25 liblbx_la_LDFLAGS = -export-symbols-regex '^lbx_'
26
27 bin_PROGRAMS = lbxtool
28 if BUILD_LBXIMG
29 bin_PROGRAMS += lbximg
30 endif
31 if BUILD_LBXGUI
32 bin_PROGRAMS += lbxgui
33 endif
34
35 lbxtool_SOURCES = src/lbxtool.c
36 lbxtool_LDADD = liblbx.la libgnu.la
37 $(lbxtool_OBJECTS): $(gnulib_headers)
38
39 lbximg_SOURCES = src/lbximg.c
40 lbximg_LDADD = liblbx.la libgnu.la $(LIBPNG_LIBS)
41 lbximg_CFLAGS = $(LIBPNG_CFLAGS)
42 $(lbximg_OBJECTS): $(gnulib_headers)
43
44 nodist_lbxgui_SOURCES = src/gui/lbxgui.glade.c
45 lbxgui_SOURCES = src/gui/lbxgui.c src/gui/render.c src/gui/render.h \
46         src/gui/bg.xbm
47 lbxgui_LDADD = liblbx.la $(GTK_LIBS)
48 lbxgui_CPPFLAGS = -I$(top_srcdir)/src
49 lbxgui_CFLAGS = $(GTK_CFLAGS)
50 lbxgui_LDFLAGS = $(AM_LDFLAGS) -export-dynamic
51
52 .xml.c:
53         $(AM_V_GEN) printf '%s\n' $(*F) | sed -e 's/[^[:alnum:]]/_/g' \
54                 -e 's/.*/const char &[] =/' > $@.tmp
55         $(AM_V_at) sed -e 's/\\/\\\\/g' \
56                 -e 's/"/\\"/g' \
57                 -e 's/.*/"&\\n"/' \
58                 -e '$$ s/$$/;/' $< >> $@.tmp
59         $(AM_V_at) mv -f $@.tmp $@
60
61 EXTRA_DIST += src/gui/lbxgui.glade.xml
62 CLEANFILES += src/gui/lbxgui.glade.c
63
64 include lib/gnulib.mk