X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=modules%2Flocalcharset;h=8d01706d4a2195f940457de91a09fd2385061df8;hb=43593319b31e6b0175b8eec4433bac744959822d;hp=22abeeb5b355aed8c446c495ca52d02278f91115;hpb=5eeec029e833abe9ba663d51bb556bd1eebb814e;p=gnulib.git diff --git a/modules/localcharset b/modules/localcharset index 22abeeb5b..8d01706d4 100644 --- a/modules/localcharset +++ b/modules/localcharset @@ -1,6 +1,12 @@ Description: Return current locale's character encoding. +Notice: +If your package's tests make use of the locale_charset() function directly or +indirectly, you may need to define the CHARSETALIASDIR environment variable, +so that "make check" works before "make install". In Makefile.am syntax: +TESTS_ENVIRONMENT += @LOCALCHARSET_TESTS_ENVIRONMENT@ + Files: lib/localcharset.h lib/localcharset.c @@ -8,14 +14,18 @@ lib/config.charset lib/ref-add.sin lib/ref-del.sin m4/codeset.m4 +m4/fcntl-o.m4 m4/glibc21.m4 m4/localcharset.m4 Depends-on: configmake +extensions configure.ac: gl_LOCALCHARSET +LOCALCHARSET_TESTS_ENVIRONMENT="CHARSETALIASDIR=\"\$(abs_top_builddir)/$gl_source_base\"" +AC_SUBST([LOCALCHARSET_TESTS_ENVIRONMENT]) Makefile.am: lib_SOURCES += localcharset.h localcharset.c @@ -31,21 +41,37 @@ all-local: charset.alias ref-add.sed ref-del.sed charset_alias = $(DESTDIR)$(libdir)/charset.alias charset_tmp = $(DESTDIR)$(libdir)/charset.tmp -install-exec-local: all-local - test $(GLIBC21) != no || $(mkinstalldirs) $(DESTDIR)$(libdir) +install-exec-local: install-exec-localcharset +install-exec-localcharset: all-local + if test $(GLIBC21) = no; then \ + case '$(host_os)' in \ + darwin[56]*) \ + need_charset_alias=true ;; \ + darwin* | cygwin* | mingw* | pw32* | cegcc*) \ + need_charset_alias=false ;; \ + *) \ + need_charset_alias=true ;; \ + esac ; \ + else \ + need_charset_alias=false ; \ + fi ; \ + if $$need_charset_alias; then \ + $(mkinstalldirs) $(DESTDIR)$(libdir) ; \ + fi ; \ if test -f $(charset_alias); then \ sed -f ref-add.sed $(charset_alias) > $(charset_tmp) ; \ $(INSTALL_DATA) $(charset_tmp) $(charset_alias) ; \ rm -f $(charset_tmp) ; \ else \ - if test $(GLIBC21) = no; then \ + if $$need_charset_alias; then \ sed -f ref-add.sed charset.alias > $(charset_tmp) ; \ $(INSTALL_DATA) $(charset_tmp) $(charset_alias) ; \ rm -f $(charset_tmp) ; \ fi ; \ fi -uninstall-local: all-local +uninstall-local: uninstall-localcharset +uninstall-localcharset: all-local if test -f $(charset_alias); then \ sed -f ref-del.sed $(charset_alias) > $(charset_tmp); \ if grep '^# Packages using this file: $$' $(charset_tmp) \ @@ -58,14 +84,14 @@ uninstall-local: all-local fi charset.alias: config.charset - rm -f t-$@ $@ - $(SHELL) $(srcdir)/config.charset '$(host)' > t-$@ + $(AM_V_GEN)rm -f t-$@ $@ && \ + $(SHELL) $(srcdir)/config.charset '$(host)' > t-$@ && \ mv t-$@ $@ SUFFIXES += .sed .sin .sin.sed: - rm -f t-$@ $@ - sed -e '/^#/d' -e 's/@''PACKAGE''@/$(PACKAGE)/g' $< > t-$@ + $(AM_V_GEN)rm -f t-$@ $@ && \ + sed -e '/^#/d' -e 's/@''PACKAGE''@/$(PACKAGE)/g' $< > t-$@ && \ mv t-$@ $@ CLEANFILES += charset.alias ref-add.sed ref-del.sed @@ -74,7 +100,7 @@ Include: "localcharset.h" License: -LGPL +LGPLv2+ Maintainer: Bruno Haible