bugGNU gettext - Bugs: bug #41203, Bad libtool patch causes...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #41203: Bad libtool patch causes libintl.dll not to cross-compile from Cygwin

Submitter:  Benjamin Gilbert <bgilbert>
Submitted:  Sat 11 Jan 2014 11:36:11 AM UTC
   
 
Category:  Build Severity:  3 - Normal
Item Group:  None Status:  Fix Released
Privacy:  Public Assigned to:  ueno
Open/Closed:  Closed

Tue 22 Apr 2014 06:15:21 AM UTC, comment #4: 
Daiki Ueno <ueno>
Group administrator
Mon 21 Apr 2014 09:09:56 AM UTC, comment #3: 

Oh, yes.  It has been fixed recently in Libtool:
http://git.savannah.gnu.org/cgit/libtool.git/commit/?id=a4629ebff263dcb2e05feb9e41df649ea5ce3f78

Perhaps we should rather borrow the patch for safety.  Anyway let's drop the current patch.

Daiki Ueno <ueno>
Group administrator
Sat 19 Apr 2014 03:10:10 AM UTC, comment #2: 

The problem is the nested loop immediately following that section.  When it accepts a candidate nm from lt_nm_to_check, it breaks out of the inner loop but not the outer one.  As a result, the last candidate wins.  That behavior is harmless if both candidates are equally functional, but in this case they aren't.

Benjamin Gilbert <bgilbert>
Tue 11 Mar 2014 05:58:10 AM UTC, comment #1: 

I've just read the whole thread and wonder why this causes error.  The relevant part in the generated configure script is:


  lt_nm_to_check="${ac_tool_prefix}nm"
  if test -n "$ac_tool_prefix" \
     && { test "$build" = "$host" \
          || { test "$build_os" = cygwin && test "$host_os" = mingw32; }; \
        }; then
    lt_nm_to_check="$lt_nm_to_check nm"
  fi


Here, ac_tool_prefix should be set to x86_64-w64-mingw32, and thus lt_nm_to_check will be "x86_64-w64-mingw32 nm".

I agree that we could drop the patch, but I'd like to make sure if it really solves the problem.

Daiki Ueno <ueno>
Group administrator
Sat 11 Jan 2014 11:36:11 AM UTC, original submission:  

The configure script shipped in gettext-runtime 0.18.3.2 (and at least back to 0.18.2) contains an expansion of LT_PATH_NM with this patch applied:

http://lists.gnu.org/archive/html/bug-libtool/2009-04/msg00019.html

The patch does not appear to ever have been committed to libtool, and was withdrawn later in that thread.

This patch causes problems when attempting to cross-compile gettext-runtime for 64-bit Windows from 32-bit Cygwin:

1. configure sets NM="/usr/bin/nm -B" instead of the correct NM="/usr/bin/x86_64-w64-mingw32-nm -B", causing

2. $NM not to recognize the format of the members of the 64-bit libiconv.dll.a, causing

3. libiconv.dll.a not to be recognized as an import library, so

4. the libintl DLL is not built.

Benjamin Gilbert <bgilbert>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by haible (Updated the item)
  • -email is unavailable- added by ueno (Posted a comment)
  • -email is unavailable- added by bgilbert (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2023-01-04 haible StatusFixed Fix Released
    2016-11-27 haible CategoryNone Build
        Assigned toNone ueno
    2014-04-22 ueno StatusNeed Info Fixed
        Open/ClosedOpen Closed
    2014-03-26 ueno StatusNone Need Info

    Back to the top

    Powered by Savane 3.13-f8d8.
    Corresponding source code