X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=Makefile.am;h=859d9cdbe1798de9ea6198fad42b63b8b5d463bc;hb=be748fa8de5a78a056821a06b7ae61d4be22df9b;hp=3d003246c30ef0053aed9f1282acbb01c012e621;hpb=01e8fdce2cf2572f53f0b78d332c5aa902ce93ef;p=location%2Flibloc.git diff --git a/Makefile.am b/Makefile.am index 3d00324..859d9cd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,11 +1,14 @@ EXTRA_DIST = CLEANFILES = +INSTALL_DIRS = ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} AM_MAKEFLAGS = --no-print-directory SUBDIRS = . po BINDINGS = +OS = $(shell uname -s) + if ENABLE_PERL BINDINGS += perl endif @@ -19,19 +22,30 @@ AM_CFLAGS = ${my_CFLAGS} \ -ffunction-sections \ -fdata-sections -AM_LDFLAGS = \ - -Wl,--gc-sections \ - -Wl,--as-needed +AM_LDFLAGS = + +# leaving a space here to work around automake's conditionals + ifeq ($(OS),Darwin) + AM_LDFLAGS += -Wl,-dead_strip + else + AM_LDFLAGS += \ + -Wl,--as-needed \ + -Wl,--gc-sections + endif LIBLOC_CURRENT=0 LIBLOC_REVISION=0 LIBLOC_AGE=0 +DISTCHECK_CONFIGURE_FLAGS = \ + --with-systemdsystemunitdir=$$dc_install_base/$(systemdsystemunitdir) + SED_PROCESS = \ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(SED) \ -e 's,@VERSION\@,$(VERSION),g' \ -e 's,@prefix\@,$(prefix),g' \ -e 's,@exec_prefix\@,$(exec_prefix),g' \ + -e 's,@bindir\@,$(bindir),g' \ -e 's,@libdir\@,$(libdir),g' \ -e 's,@includedir\@,$(includedir),g' \ -e 's,@databasedir\@,$(databasedir),g' \ @@ -45,6 +59,18 @@ pkgconfigdir = $(libdir)/pkgconfig @INTLTOOL_POLICY_RULE@ +# ------------------------------------------------------------------------------ + +AM_V_ASCIIDOC = $(AM_V_ASCIIDOC_$(V)) +AM_V_ASCIIDOC_ = $(AM_V_ASCIIDOC_$(AM_DEFAULT_VERBOSITY)) +AM_V_ASCIIDOC_0 = @echo " ASCIIDOC" $@; + +AM_V_XSLT = $(AM_V_XSLT_$(V)) +AM_V_XSLT_ = $(AM_V_XSLT_$(AM_DEFAULT_VERBOSITY)) +AM_V_XSLT_0 = @echo " XSLT " $@; + +# ------------------------------------------------------------------------------ + .PHONY: update-po update-po: $(MAKE) -C po update-po @@ -56,6 +82,8 @@ EXTRA_DIST += \ pkginclude_HEADERS = \ src/loc/libloc.h \ src/loc/as.h \ + src/loc/compat.h \ + src/loc/country.h \ src/loc/database.h \ src/loc/format.h \ src/loc/network.h \ @@ -69,6 +97,7 @@ lib_LTLIBRARIES = \ src_libloc_la_SOURCES = \ src/libloc.c \ src/as.c \ + src/country.c \ src/database.c \ src/network.c \ src/stringpool.c \ @@ -83,8 +112,13 @@ src_libloc_la_CFLAGS = \ src_libloc_la_LDFLAGS = \ $(AM_LDFLAGS) \ - -version-info $(LIBLOC_CURRENT):$(LIBLOC_REVISION):$(LIBLOC_AGE) \ - -Wl,--version-script=$(top_srcdir)/src/libloc.sym + -version-info $(LIBLOC_CURRENT):$(LIBLOC_REVISION):$(LIBLOC_AGE) + +if HAVE_LD_VERSION_SCRIPT + src_libloc_la_LDFLAGS += -Wl,--version-script=$(top_srcdir)/src/libloc.sym +else + src_libloc_la_LDFLAGS += -export-symbols $(top_srcdir)/src/libloc.sym +endif src_libloc_la_DEPENDENCIES = \ ${top_srcdir}/src/libloc.sym @@ -106,6 +140,8 @@ src_python_location_la_SOURCES = \ src/python/locationmodule.h \ src/python/as.c \ src/python/as.h \ + src/python/country.c \ + src/python/country.h \ src/python/database.c \ src/python/database.h \ src/python/network.c \ @@ -159,8 +195,8 @@ build-perl: cd $(builddir)/src/perl && $(MAKE) .PHONY: check-perl -check-perl: - cd $(builddir)/src/perl && $(MAKE) test srcdir=$(abs_srcdir) +check-perl: testdata.db + cd $(builddir)/src/perl && $(MAKE) test database="../../$<" .PHONY: install-perl install-perl: @@ -179,13 +215,35 @@ uninstall-perl: $(DESTDIR)/$(prefix)/man/man3/Location.3pm bin_SCRIPTS = \ + src/python/location-downloader \ src/python/location-query EXTRA_DIST += \ + src/python/location-downloader.in \ src/python/location-query.in CLEANFILES += \ + src/python/location-downloader \ src/python/location-query +# ------------------------------------------------------------------------------ + +if HAVE_SYSTEMD +systemdsystemunit_DATA = \ + src/systemd/location-downloader.service \ + src/systemd/location-downloader.timer + +CLEANFILES += \ + $(systemdsystemunit_DATA) + +INSTALL_DIRS += \ + $(systemdsystemunitdir) +endif + +EXTRA_DIST += \ + src/systemd/location-downloader.service.in \ + src/systemd/location-downloader.timer.in + +# ------------------------------------------------------------------------------ TESTS_CFLAGS = \ $(AM_CFLAGS) \ @@ -196,20 +254,23 @@ TESTS = \ src/test-stringpool \ src/test-database \ src/test-as \ - src/test-network + src/test-network \ + src/test-country CLEANFILES += \ - test.db + test.db \ + testdata.db -EXTRA_DIST += \ - testdata/test.db +testdata.db: examples/python/create-database.py + PYTHONPATH=$(abs_builddir)/src/python/.libs $(PYTHON) $< $@ check_PROGRAMS = \ src/test-libloc \ src/test-stringpool \ src/test-database \ src/test-as \ - src/test-network + src/test-network \ + src/test-country src_test_libloc_SOURCES = \ src/test-libloc.c @@ -229,6 +290,15 @@ src_test_as_CFLAGS = \ src_test_as_LDADD = \ src/libloc.la +src_test_country_SOURCES = \ + src/test-country.c + +src_test_country_CFLAGS = \ + $(TESTS_CFLAGS) + +src_test_country_LDADD = \ + src/libloc.la + src_test_network_SOURCES = \ src/test-network.c @@ -255,3 +325,61 @@ src_test_database_CFLAGS = \ src_test_database_LDADD = \ src/libloc.la + +# ------------------------------------------------------------------------------ + +MANPAGES = \ + man/location-query.8 + +MANPAGES_TXT = $(patsubst %.8,%.txt,$(MANPAGES)) +MANPAGES_HTML = $(patsubst %.txt,%.html,$(MANPAGES_TXT)) +MANPAGES_XML = $(patsubst %.txt,%.xml,$(MANPAGES_TXT)) + +.PHONY: man +man: $(MANPAGES) $(MANPAGES_HTML) + +if ENABLE_MANPAGES +man_MANS = \ + $(MANPAGES) +endif + +CLEANFILES += \ + $(MANPAGES) \ + $(MANPAGES_HTML) \ + $(MANPAGES_XML) + +EXTRA_DIST += \ + man/asciidoc.conf \ + $(MANPAGES_TXT) + +XSLTPROC_FLAGS = \ + --nonet \ + --stringparam man.output.quietly 1 \ + --stringparam funcsynopsis.style ansi \ + --stringparam man.th.extra1.suppress 1 \ + --stringparam man.authors.section.enabled 1 \ + --stringparam man.copyright.section.enabled 1 + +XSLTPROC_COMMAND_MAN = \ + $(AM_V_XSLT)$(MKDIR_P) $(dir $@) && \ + $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) \ + http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< + +man/%.xml: man/%.txt man/asciidoc.conf + $(AM_V_ASCIIDOC)$(MKDIR_P) $(dir $@) && \ + $(ASCIIDOC) \ + -f $(abs_srcdir)/man/asciidoc.conf \ + -d manpage -b docbook -o $@ $< + +man/%.8: man/%.xml + $(XSLTPROC_COMMAND_MAN) + +man/%.html: man/%.txt man/asciidoc.conf + $(AM_V_ASCIIDOC)$(MKDIR_P) $(dir $@) && \ + $(ASCIIDOC) \ + -f $(abs_srcdir)/man/asciidoc.conf \ + -b html5 -a icons -a theme=flask -o $@ $< + +.PHONY: upload-man +upload-man: $(MANPAGES_HTML) + rsync -avHz --delete --progress $(MANPAGES_HTML) ms@fs01.haj.ipfire.org:/pub/man-pages/$(PACKAGE_NAME)/