-# Copyright © 2019-2020 Nick Bowler
+# Copyright © 2019-2022 Nick Bowler
#
# Based on original work Copyright © 1999-2013 Jiri (George) Lebl.
#
ACLOCAL_AMFLAGS = -I m4 -I common/m4
AM_CPPFLAGS = -I$(top_builddir)/src -I$(top_srcdir)/src \
- -I$(builddir) -I$(srcdir) -DPKGDATADIR=\"$(pkgdatadir)\"
+ -I$(top_builddir)/lib -I$(top_srcdir)/lib \
+ -I$(DX_BASEDIR)/src -DPKGDATADIR=\"$(pkgdatadir)\"
AM_CFLAGS = $(LIBGLIB_CFLAGS)
AM_YFLAGS = -d -t
bin_PROGRAMS = gob2
-EXTRA_DIST = COPYING.GPL3 COPYING.generated-code \
+EXTRA_DIST = COPYING.GPL3 COPYING.generated-code common/scripts/fix-gnulib.pl \
examples/GNOME_Foo_SomeInterface.idl examples/README \
examples/foo-some-interface.gob examples/gtk-button-count.gob \
examples/my-glade-main.c examples/my-glade.glade \
examples/my-glade.gob gob2.spec src/generate_treefuncs.pl \
src/lexer.l src/lexer.stamp src/treefuncs.def \
src/treefuncs.stamp t/str.gob t/test-fooable.c t/test-fooable.h \
- t/test.gob
+ t/test.gob m4/gnulib-cache.m4 bootstrap
-CLEANFILES =
+CLEANFILES = $(EXTRA_LIBRARIES)
DISTCLEANFILES =
+MOSTLYCLEANFILES =
MAINTAINERCLEANFILES = src/lexer.c src/lexer.h src/lexer.stamp \
src/treefuncs.c src/treefuncs.h src/treefuncs.stamp
+# For Gnulib
+EXTRA_LIBRARIES =
+
EXTRA_PROGRAMS = parser-rdeps
parser_rdeps_SOURCES = src/main.c src/lexer.c
$(parser_rdeps_OBJECTS): src/parse.h
-noinst_HEADERS = src/main.h src/treefuncs.h src/out.h src/util.h src/checks.h
+noinst_HEADERS = src/main.h src/treefuncs.h src/out.h src/util.h src/checks.h \
+ common/src/help.h
gob2_SOURCES = src/main.c src/main.h src/treefuncs.c src/out.c src/util.c \
- src/checks.c src/parse.y src/lexer.c src/lexer.h
-gob2_LDADD = $(LIBGLIB_LIBS)
-$(gob2_OBJECTS): src/treefuncs.h
+ src/checks.c src/parse.y src/lexer.c src/lexer.h src/options.h \
+ common/src/help.c
+gob2_LDADD = $(LIBGLIB_LIBS) libgnu.a
+$(gob2_OBJECTS): $(gnulib_headers) src/treefuncs.h src/options.h
+
+if GOB_STRCASE
+gob2_SOURCES += src/gob-strcase.c
+endif
man_MANS = doc/gob2.1
EXTRA_DIST += doc/makehtml.pl
$(abs_srcdir)/src/treefuncs.def; )
$(AM_V_at) mv -f $@.tmp $@
+OPTFILES = src/options.opt
+.opt.h:
+ $(AM_V_GEN) $(AWK) -f $(DX_BASEDIR)/scripts/gen-options.awk $< >$@.tmp
+ $(AM_V_at) mv -f $@.tmp $@
+$(OPTFILES:.opt=.h): $(DX_BASEDIR)/scripts/gen-options.awk
+MAINTAINERCLEANFILES += $(OPTFILES:.opt=.h)
+EXTRA_DIST += $(DX_BASEDIR)/scripts/gen-options.awk $(OPTFILES)
+
.l.c: ;
.l.stamp:
if !HAVE_FLEX
m4dir = $(datadir)/aclocal
m4_DATA = gob2.m4
-gob2.m4: $(top_srcdir)/common/m4/gob2.m4
- $(AM_V_GEN) $(SED) 's/DX_PROG_GOB2/GOB2_CHECK/g' \
- $(top_srcdir)/common/m4/gob2.m4 >$@.tmp
+gob2.m4: $(DX_BASEDIR)/m4/gob2.m4 $(DX_BASEDIR)/m4/basename.m4
+ $(AM_V_GEN) :; { \
+ $(SED) -e 's/DX_PROG_GOB2/GOB2_CHECK/g' \
+ -e 's/DX_BASENAME/GOB2_BASENAME/g' \
+ $(DX_BASEDIR)/m4/gob2.m4 && echo && \
+ $(SED) -e 's/DX_/GOB2_/g' -e 's/dx_fn_/gob2_fn_/g' \
+ $(DX_BASEDIR)/m4/basename.m4; \
+ } >$@.tmp
$(AM_V_at) mv -f $@.tmp $@
DISTCLEANFILES += gob2.m4
-EXTRA_DIST += common/m4/gob2.m4
+EXTRA_DIST += $(DX_BASEDIR)/m4/gob2.m4 $(DX_BASEDIR)/m4/basename.m4
git_changelog_start = 2cd951c678998b2b0230c8eb25717ecf0f1dd2db
dist-hook: generate-changelog
echo ' *** Remember to update NEWS before preparing a release.'; \
$(TEST_DISTRIBUTION_OR_ERROR); } >&2
+atlocal: config.status
+ $(AM_V_GEN) :; { \
+ printf ': "$${%s=%s}"\n' \
+ CC '$(CC)' \
+ CXX '$(CXX)' \
+ AWK '$(AWK)' \
+ CPPFLAGS '$(CPPFLAGS)' \
+ CFLAGS '$(CFLAGS)' \
+ CXXFLAGS '$(CXXFLAGS)' \
+ LDFLAGS '$(LDFLAGS)' \
+ GTK_CFLAGS '$(GTK_CFLAGS)' \
+ GTK_LIBS '$(GTK_LIBS)' \
+ LIBGOBJECT_CFLAGS '$(LIBGOBJECT_CFLAGS)' \
+ LIBGOBJECT_LIBS '$(LIBGOBJECT_LIBS)' \
+ HAVE_GOBJECT '$(HAVE_GOBJECT)' \
+ HAVE_GOBJECT_PRIVATES '$(HAVE_GOBJECT_PRIVATES)' \
+ HAVE_GTK2 '$(HAVE_GTK2)' \
+ pkgdatadir '$(pkgdatadir)' \
+ ; } >$@.tmp
+ $(AM_V_at) mv -f $@.tmp $@
+check_DATA = atlocal
+CLEANFILES += atlocal
+
+include $(top_srcdir)/lib/gnulib.mk
include $(top_srcdir)/common/snippet/autotest.mk