noinst_DATA = $(MOFILES)
lib_LTLIBRARIES = libcdecl.la
-libcdecl_la_LDFLAGS = -export-symbols-regex '^cdecl_[[:lower:]]'
+libcdecl_la_LDFLAGS = -no-undefined \
+ -export-symbols-regex '^cdecl_[[:lower:]]'
libcdecl_la_SOURCES = src/scan.c src/parse.c src/parse-decl.c src/typemap.c \
src/output.c src/explain.c src/declare.c src/i18n.c
libcdecl_la_LIBADD = libgnu.la $(LTLIBINTL) $(LTLIBTHREAD)
$(AM_V_at)$(MKDIR_P) $(@D)
$(AM_V_GEN)$(MSGFMT) -c -o $@ $<
-install-data-hook: install-mo
+install-data-local: install-mo
install-mo: $(MOFILES)
for mo in $?; do \
lang=`expr "$$mo" : '.*/\(.*\)\.mo' \| "$$mo" : '\(.*\)\.mo'`; \
$(INSTALL_DATA) "$$mo" "$$inst/$(PACKAGE).mo" || exit $$?; \
set +x; \
done
-.PHONY: install-mo
+
+installdirs-local: installdirs-mo
+installdirs-mo:
+ for mo in $(MOFILES); do \
+ lang=`expr "$$mo" : '.*/\(.*\)\.mo' \| "$$mo" : '\(.*\)\.mo'`; \
+ test x"$$lang" = x"" && exit 1; \
+ inst="$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES"; \
+ set -x; \
+ $(MKDIR_P) "$$inst" || exit $$?; \
+ set +x; \
+ done
+
+uninstall-local: uninstall-mo
+uninstall-mo:
+ for mo in $(ALL_MOFILES); do \
+ lang=`expr "$$mo" : '.*/\(.*\)\.mo' \| "$$mo" : '\(.*\)\.mo'`; \
+ test x"$$lang" = x"" && exit 1; \
+ inst="$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES"; \
+ set -x; \
+ cd "$$inst" && rm -f '$(PACKAGE).mo'; \
+ set +x; \
+ done
+
+.PHONY: install-mo installdirs-mo uninstall-mo
# These are required to prevent the builtin lex/yacc rules from
# superseding ours...
src/scan.c src/scan.h: src/scan.stamp
src/parse.c src/parse.h: src/parse.stamp
+# The flex/bison rules refrain from updating unchanged headers for the
+# convenience of developers, but the headers must be distributed with
+# up-to-date timestamps, otherwise make will try to update them in a fresh
+# VPATH build.
+dist-hook: update-headers
+update-headers:
+ touch -c '$(distdir)/src/scan.h'
+ touch -c '$(distdir)/src/parse.h'
+
# Supporting rules for bison/flex.
BISON_V = $(BISON_V_$(V))