From 62d6e88d34695f76ca7de556d77810a2efd96dd6 Mon Sep 17 00:00:00 2001 From: KO Myung-Hun Date: Tue, 12 Jan 2016 11:35:50 +0900 Subject: gettext-tools: Use a short name for DLLs on OS/2 OS/2 does not support a DLL name longer than 8 characters. * gettext-tools/configure.ac (OS2): Define on OS/2. * gettext-tools/gnulib-lib/Makefile.am (libgettextlib_la_LDFLAGS): Set a DLL name to gtlib on OS/2. * gettext-tools/libgettextpo/Makefile.am (libgettextpo_la_LDFLAGS): Set a DLL name to gtpo on OS/2. * gettext-tools/src/Makefile.am (libgettextsrc_la_LDFLAGS): Set a DLL name to gtsrc on OS/2. --- gettext-tools/configure.ac | 8 +++++--- gettext-tools/gnulib-lib/Makefile.am | 5 +++++ gettext-tools/libgettextpo/Makefile.am | 5 +++++ gettext-tools/src/Makefile.am | 5 +++++ 4 files changed, 20 insertions(+), 3 deletions(-) diff --git a/gettext-tools/configure.ac b/gettext-tools/configure.ac index 037803f..02b69ab 100644 --- a/gettext-tools/configure.ac +++ b/gettext-tools/configure.ac @@ -100,10 +100,12 @@ LT_LANG([Windows Resource]) dnl On mingw and Cygwin, we can activate special Makefile rules which add dnl version information to the shared libraries and executables. case "$host_os" in - mingw* | cygwin*) is_woe32=yes ;; - *) is_woe32=no ;; + mingw* | cygwin*) special_makefile_rules=woe32 ;; + os2*) special_makefile_rules=os2 ;; + *) special_makefile_rules=none ;; esac -AM_CONDITIONAL([WOE32], [test $is_woe32 = yes]) +AM_CONDITIONAL([WOE32], [test $special_makefile_rules = woe32]) +AM_CONDITIONAL([OS2], [test $special_makefile_rules = os2]) dnl On Cygwin 1.7.10-1 or later, error_* variables are defined in the dnl Cygwin DLL. To avoid any conflict with gettext DLLs, always link diff --git a/gettext-tools/gnulib-lib/Makefile.am b/gettext-tools/gnulib-lib/Makefile.am index 1da342f..25c9cc1 100644 --- a/gettext-tools/gnulib-lib/Makefile.am +++ b/gettext-tools/gnulib-lib/Makefile.am @@ -61,6 +61,11 @@ include Makefile.gnulib # Which classes to export from the shared library. MOOPPFLAGS += --dllexport=styled_ostream +# OS/2 does not support a DLL name longer than 8 characters. +if OS2 +libgettextlib_la_LDFLAGS += -os2dllname gtlib +endif + # Linking with C++ libraries is needed _only_ on mingw and Cygwin. if !WOE32DLL libgettextlib_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ diff --git a/gettext-tools/libgettextpo/Makefile.am b/gettext-tools/libgettextpo/Makefile.am index 8aa0f3b..3921145 100644 --- a/gettext-tools/libgettextpo/Makefile.am +++ b/gettext-tools/libgettextpo/Makefile.am @@ -117,6 +117,11 @@ libgettextpo_la_SOURCES += ../woe32dll/gettextpo-exports.c libgettextpo_la_LDFLAGS += -Wl,--export-all-symbols endif +# OS/2 does not support a DLL name longer than 8 characters. +if OS2 +libgettextpo_la_LDFLAGS += -os2dllname gtpo +endif + # Version information according to Woe32 conventions. EXTRA_DIST += libgettextpo.rc if WOE32 diff --git a/gettext-tools/src/Makefile.am b/gettext-tools/src/Makefile.am index 63efe6e..e847021 100644 --- a/gettext-tools/src/Makefile.am +++ b/gettext-tools/src/Makefile.am @@ -255,6 +255,11 @@ libgettextsrc_la_LDFLAGS = \ -release @VERSION@ \ ../gnulib-lib/libgettextlib.la $(LTLIBUNISTRING) @LTLIBINTL@ @LTLIBICONV@ -lc -no-undefined +# OS/2 does not support a DLL name longer than 8 characters. +if OS2 +libgettextsrc_la_LDFLAGS += -os2dllname gtsrc +endif + libgettextsrc_la_CPPFLAGS = $(AM_CPPFLAGS) $(INCXML) # Tell the mingw or Cygwin linker which symbols to export. -- cgit v1.1