]> git.draconx.ca Git - liblbx.git/blobdiff - Makefile.am
build: clean up XML -> C conversion.
[liblbx.git] / Makefile.am
index 0eaf49e2b2590a1e4e51ffacd93509f2d4b32661..ff0b4a124020fe91da3ba2c1d4dd1f633ae6c18a 100644 (file)
@@ -41,7 +41,7 @@ lbximg_LDADD = liblbx.la libgnu.la $(LIBPNG_LIBS)
 lbximg_CFLAGS = $(LIBPNG_CFLAGS)
 $(lbximg_OBJECTS): $(gnulib_headers)
 
-nodist_lbxgui_SOURCES = src/gui/lbxgui_xml.c
+nodist_lbxgui_SOURCES = src/gui/lbxgui.glade.c
 lbxgui_SOURCES = src/gui/lbxgui.c src/gui/render.c src/gui/render.h \
        src/gui/bg.xbm
 lbxgui_LDADD = liblbx.la $(GTK_LIBS)
@@ -49,13 +49,16 @@ lbxgui_CPPFLAGS = -I$(top_srcdir)/src
 lbxgui_CFLAGS = $(GTK_CFLAGS)
 lbxgui_LDFLAGS = $(AM_LDFLAGS) -export-dynamic
 
-src/gui/lbxgui_xml.c: src/gui/lbxgui.glade
-       $(AM_V_GEN) sed -e 's/"/\\"/g' \
-                       -e 's/.*/"&"/' \
-                       -e '1 s/^/char lbxgui_xml[] =\n/' \
-                       -e '$$ s/$$/;/' $? > $@
+.xml.c:
+       $(AM_V_GEN) printf '%s\n' $(*F) | sed -e 's/[^[:alnum:]]/_/g' \
+               -e 's/.*/const char &[] =/' > $@.tmp
+       $(AM_V_at) sed -e 's/\\/\\\\/g' \
+               -e 's/"/\\"/g' \
+               -e 's/.*/"&\\n"/' \
+               -e '$$ s/$$/;/' $< >> $@.tmp
+       $(AM_V_at) mv -f $@.tmp $@
 
-CLEANFILES += src/gui/lbxgui_xml.c
-EXTRA_DIST += src/gui/lbxgui.glade
+EXTRA_DIST += src/gui/lbxgui.glade.xml
+CLEANFILES += src/gui/lbxgui.glade.c
 
 include lib/gnulib.mk