Code

Makefile: add GNU_GETTEXT, set when we expect GNU gettext
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Tue, 7 Sep 2010 12:00:46 +0000 (12:00 +0000)
committerÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Sat, 30 Oct 2010 07:58:15 +0000 (07:58 +0000)
Add a GNU_GETTEXT flag that's set to YesPlease by default everywhere
but on Solaris if the NO_GETTEXT flag isn't set.

Everyone uses GNU gettext these days except Solaris developers, so
having a dumb check for this that just depends on SunOS should be
OK.

I also don't plan to use this (for the time being) for anything that
would break if it isn't correctly set (e.g. if you're using GNU
libintl on Solaris), so I haven't added paranoid autoconf guards.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Makefile

index 3774d4a8fdc784500ab4dbe79292c3073279161c..65ed72bc83e3fb1cccc324f65524b07863396794 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -49,6 +49,11 @@ all::
 # FreeBSD can use either, but MinGW and some others need to use
 # libcharset.h's locale_charset() instead.
 #
+# Define GNU_GETTEXT if you're using the GNU implementation of
+# libintl. We define this everywhere except on Solaris, which has its
+# own gettext implementation. If GNU_GETTEXT is set we'll use GNU
+# extensions like `msgfmt --check'.
+#
 # Define GETTEXT_POISON to turn all strings that use gettext into
 # gibberish. This option should only be used by the Git developers to
 # check that the Git gettext implementation itself is sane.
@@ -795,6 +800,10 @@ ifndef NO_GETTEXT
        # Systems that use GNU gettext and glibc are the exception
        NEEDS_LIBINTL = YesPlease
 
+       # Systems that don't use GNU gettext are the exception. Only
+       # Solaris has a mature non-GNU gettext implementation.
+       GNU_GETTEXT = YesPlease
+
        # Since we assume a GNU gettext by default we also assume a
        # GNU-like langinfo.h by default
        HAVE_LIBCHARSET_H =
@@ -887,6 +896,9 @@ ifeq ($(uname_S),SunOS)
        NO_MKDTEMP = YesPlease
        NO_MKSTEMPS = YesPlease
        NO_REGEX = YesPlease
+ifndef NO_GETTEXT
+       GNU_GETTEXT =
+endif
        ifeq ($(uname_R),5.6)
                SOCKLEN_T = int
                NO_HSTRERROR = YesPlease