Call bindtextdomain() to ensure that translations are found in $(prefix)
authorDavid Woodhouse <David.Woodhouse@intel.com>
Thu, 24 Nov 2011 18:14:30 +0000 (18:14 +0000)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Thu, 24 Nov 2011 18:14:30 +0000 (18:14 +0000)
We may be installing to a location that libintl doesn't search by default.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Makefile.am
configure.ac
library.c
main.c

index 2d59e87..b808b6b 100644 (file)
@@ -11,6 +11,7 @@ lib_LTLIBRARIES = libopenconnect.la
 sbin_PROGRAMS = openconnect
 man8_MANS = openconnect.8
 
+AM_CPPFLAGS = -DLOCALEDIR="\"$(localedir)\""
 openconnect_SOURCES = xml.c main.c dtls.c cstp.c mainloop.c tun.c
 
 openconnect_CFLAGS = $(OPENSSL_CFLAGS) $(LIBXML2_CFLAGS) $(LIBPROXY_CFLAGS) $(ZLIB_CFLAGS)
index 1d6466f..fb65121 100644 (file)
@@ -28,6 +28,7 @@ if test "$USE_NLS" = "yes"; then
     #include <locale.h>
     #include <libintl.h>],[
     setlocale(LC_ALL, "");
+    bindtextdomain("openconnect", "/tmp");
     (void)dgettext("openconnect", "foo");])],
     [AC_MSG_RESULT(yes)],
     [oldLIBS="$LIBS"
@@ -36,6 +37,7 @@ if test "$USE_NLS" = "yes"; then
       #include <locale.h>
       #include <libintl.h>],[
       setlocale(LC_ALL, "");
+      bindtextdomain("openconnect", "/tmp");
       (void)dgettext("openconnect", "foo");])],
       [AC_MSG_RESULT(yes (with -lintl))]
        LIBINTL="-lintl",
index b6dd41b..cef3cbd 100644 (file)
--- a/library.c
+++ b/library.c
@@ -43,6 +43,10 @@ struct openconnect_info *openconnect_vpninfo_new_with_cbdata (char *useragent,
        vpninfo->progress = progress;
        vpninfo->cbdata = privdata?:vpninfo;
 
+#ifdef ENABLE_NLS
+       bindtextdomain("openconnect", LOCALEDIR);
+#endif
+
        return vpninfo;
 }
 
diff --git a/main.c b/main.c
index 44548e8..6cdcc1a 100644 (file)
--- a/main.c
+++ b/main.c
@@ -247,6 +247,7 @@ int main(int argc, char **argv)
        FILE *fp = NULL;
 
 #ifdef ENABLE_NLS
+       bindtextdomain("openconnect", LOCALEDIR);
        setlocale(LC_ALL, "");
 #endif