X-Git-Url: https://git.draconx.ca/gitweb/gob-dx.git/blobdiff_plain/7231d76fbf4ae0b501af648e1216b88714aa7353..00ae41703c606f0ea98febed8f67435f875f7e6f:/Makefile.am diff --git a/Makefile.am b/Makefile.am index c8c5081..0f6ad3d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,10 +1,96 @@ -SUBDIRS = @SUBDIRS@ -DIST_SUBDIRS = src doc examples +# Copyright © 2019-2020 Nick Bowler +# +# Based on original work Copyright © 1999-2013 Jiri (George) Lebl. +# +# License GPLv2+: GNU General Public License version 2 or any later version. +# This is free software: you are free to change and redistribute it. +# There is NO WARRANTY, to the extent permitted by law. -m4dir=$(datadir)/aclocal -m4_DATA=gob2.m4 +ACLOCAL_AMFLAGS = -I m4 -I common/m4 -EXTRA_DIST = gob2.spec.in $(m4_DATA) +AM_CPPFLAGS = -I$(top_builddir)/src -I$(top_srcdir)/src \ + -I$(builddir) -I$(srcdir) -DPKGDATADIR=\"$(pkgdatadir)\" +AM_CFLAGS = $(LIBGLIB_CFLAGS) +AM_YFLAGS = -d -t -dist-hook: gob2.spec - cp gob2.spec $(distdir) +bin_PROGRAMS = gob2 + +EXTRA_DIST = COPYING.generated-code 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/treefuncs.c src/treefuncs.h src/treefuncs.stamp \ + src/treefuncs.def src/generate_treefuncs.pl \ + t/test.gob t/str.gob + +CLEANFILES = +DISTCLEANFILES = +MAINTAINERCLEANFILES = src/treefuncs.c src/treefuncs.h src/treefuncs.stamp + +EXTRA_PROGRAMS = parser-rdeps +parser_rdeps_SOURCES = src/main.c src/lexer.l +$(parser_rdeps_OBJECTS): src/parse.h + +noinst_HEADERS = src/main.h src/treefuncs.h src/out.h src/util.h src/checks.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.l +gob2_LDADD = $(LIBGLIB_LIBS) @LEXLIB@ +$(gob2_OBJECTS): src/treefuncs.h + +man_MANS = doc/gob2.1 +EXTRA_DIST += doc/makehtml.pl + +PERL_ERROR = @:; { \ + printf '%s: ERROR: perl was not available at configure time.\n' "$@"; \ + printf '%s: If perl is installed but was not detected by configure,\n' "$@"; \ + printf '%s: consider setting PERL and re-running configure.\n' "$@"; \ + } 1>&2; false + +src/treefuncs.stamp: src/generate_treefuncs.pl src/treefuncs.def +if !HAVE_PERL + $(PERL_ERROR) +endif + $(AM_V_at) $(MKDIR_P) $(@D) + $(AM_V_GEN) (cd $(@D) && \ + $(PERL) $(abs_srcdir)/src/generate_treefuncs.pl \ + $(abs_srcdir)/src/treefuncs.def; ) + $(AM_V_at) touch $@ + +.stamp.c: + @test -f $@ || { rm -f $<; $(MAKE) $(AM_MAKEFLAGS) $<; } +.stamp.h: + @test -f $@ || { rm -f $<; $(MAKE) $(AM_MAKEFLAGS) $<; } + +html-local: doc/gob2.html +doc/gob2.html: doc/gob2.1 +if !HAVE_PERL + $(PERL_ERROR) +endif + $(AM_V_GEN) $(PERL) $(top_srcdir)/doc/makehtml.pl $@.tmp + $(AM_V_at) mv -f $@.tmp $@ +CLEANFILES += doc/gob2.html + +install-html-local: install-gob2-html +install-gob2-html: doc/gob2.html + $(MKDIR_P) "$(DESTDIR)$(docdir)" + $(INSTALL_DATA) doc/gob2.html "$(DESTDIR)$(docdir)/gob2.html" +.PHONY: install-gob2-html + +uninstall-local: uninstall-gob2-html +uninstall-gob2-html: + test ! -d "$(DESTDIR)$(docdir)" || \ + cd "$(DESTDIR)$(docdir)" && rm -f gob2.html +.PHONY: uninstall-gob2-html + +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 + $(AM_V_at) mv -f $@.tmp $@ +DISTCLEANFILES += gob2.m4 +EXTRA_DIST += common/m4/gob2.m4 + +include $(top_srcdir)/common/snippet/autotest.mk