public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/37989]  New: PR37528 fix broke --disable-shared on mingw32
@ 2008-11-01 18:04 mikpe at it dot uu dot se
  2008-11-01 18:11 ` [Bug c/37989] " mikpe at it dot uu dot se
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: mikpe at it dot uu dot se @ 2008-11-01 18:04 UTC (permalink / raw)
  To: gcc-bugs

gcc-4.4-20081003 and later configured with --disable-shared for mingw32 attempt
to link with libgcc_eh.a even though it never built libgcc_eh.a (those object
files are included in libgcc.a):

/home/mikpe/gcc-4.4-20081031/configure --target=x86_64-pc-mingw32
--prefix=/tmp/cross-mingw64 --disable-nls --disable-shared
--enable-threads=win32 --enable-languages=c --with-gmp=/opt/local/gmp-4.2.4
--with-mpfr=/opt/local/mpfr-2.3.2 --disable-win32-registry
--enable-sjlj-exceptions
make
make install
echo "int main(void) { return 0; }" > trivial.c
/tmp/cross-mingw64/bin/x86_64-pc-mingw32-gcc trivial.c
/tmp/cross-mingw64/lib/gcc/x86_64-pc-mingw32/4.4.0/../../../../x86_64-pc-mingw32/bin/ld:
cannot find -lgcc_eh
collect2: ld returned 1 exit status

The fix for PR37528 changed mingw32.h to #define REAL_LIBGCC_SPEC, and it also
changed it to unconditionally link with -lgcc_eh for !shared-libgcc.
That only works if libgcc_eh.a actually was built, which isn't the case when
gcc was configured with --disable-shared.


-- 
           Summary: PR37528 fix broke --disable-shared on mingw32
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: mikpe at it dot uu dot se
 GCC build triplet: i686-pc-cygwin
  GCC host triplet: i686-pc-cygwin
GCC target triplet: x86_64-pc-mingw32


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug c/37989] PR37528 fix broke --disable-shared on mingw32
  2008-11-01 18:04 [Bug c/37989] New: PR37528 fix broke --disable-shared on mingw32 mikpe at it dot uu dot se
@ 2008-11-01 18:11 ` mikpe at it dot uu dot se
  2008-11-03  6:10 ` [Bug target/37989] " dannysmith at users dot sourceforge dot net
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: mikpe at it dot uu dot se @ 2008-11-01 18:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from mikpe at it dot uu dot se  2008-11-01 18:10 -------
Created an attachment (id=16610)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16610&action=view)
patch to unbreak --disable-shared on mingw32

Proposed patch to unbreak --disable-shared on mingw32. When PR37528 changed
mingw32.h to #define REAL_LIBGCC_SPEC it also bypassed gcc/gcc.c's logic to
only link with -lgcc_eh when ENABLE_SHARED_LIBGCC is defined. So my proposed
fix adds that logic to mingw32.h's definition of REAL_LIBGCC_SPEC.

Tested on WinXP64 under cygwin both with and without --disable-shared.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/37989] PR37528 fix broke --disable-shared on mingw32
  2008-11-01 18:04 [Bug c/37989] New: PR37528 fix broke --disable-shared on mingw32 mikpe at it dot uu dot se
  2008-11-01 18:11 ` [Bug c/37989] " mikpe at it dot uu dot se
@ 2008-11-03  6:10 ` dannysmith at users dot sourceforge dot net
  2008-11-03  7:47 ` dannysmith at users dot sourceforge dot net
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: dannysmith at users dot sourceforge dot net @ 2008-11-03  6:10 UTC (permalink / raw)
  To: gcc-bugs



-- 

dannysmith at users dot sourceforge dot net changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
                   |dot org                     |sourceforge dot net
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2008-11-03 06:09:24
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/37989] PR37528 fix broke --disable-shared on mingw32
  2008-11-01 18:04 [Bug c/37989] New: PR37528 fix broke --disable-shared on mingw32 mikpe at it dot uu dot se
  2008-11-01 18:11 ` [Bug c/37989] " mikpe at it dot uu dot se
  2008-11-03  6:10 ` [Bug target/37989] " dannysmith at users dot sourceforge dot net
@ 2008-11-03  7:47 ` dannysmith at users dot sourceforge dot net
  2008-11-03 13:50 ` mikpe at it dot uu dot se
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: dannysmith at users dot sourceforge dot net @ 2008-11-03  7:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from dannysmith at users dot sourceforge dot net  2008-11-03 07:45 -------
Created an attachment (id=16614)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16614&action=view)
revised patch to quard with ENABLE_SHARED_LIBGCC

Hi Mikael,

I have modified your patch slightly and added a ChangeLog entry.  It works for
me with host=build=target=mingw32.  Does attached it work for you.
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/37989] PR37528 fix broke --disable-shared on mingw32
  2008-11-01 18:04 [Bug c/37989] New: PR37528 fix broke --disable-shared on mingw32 mikpe at it dot uu dot se
                   ` (2 preceding siblings ...)
  2008-11-03  7:47 ` dannysmith at users dot sourceforge dot net
@ 2008-11-03 13:50 ` mikpe at it dot uu dot se
  2008-11-04  2:18 ` dannysmith at gcc dot gnu dot org
  2008-11-04  2:23 ` dannysmith at users dot sourceforge dot net
  5 siblings, 0 replies; 7+ messages in thread
From: mikpe at it dot uu dot se @ 2008-11-03 13:50 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from mikpe at it dot uu dot se  2008-11-03 13:49 -------
(In reply to comment #2)
Danny, I've tested the revised patch both with and without --disable-shared,
and both configs build and work fine.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/37989] PR37528 fix broke --disable-shared on mingw32
  2008-11-01 18:04 [Bug c/37989] New: PR37528 fix broke --disable-shared on mingw32 mikpe at it dot uu dot se
                   ` (3 preceding siblings ...)
  2008-11-03 13:50 ` mikpe at it dot uu dot se
@ 2008-11-04  2:18 ` dannysmith at gcc dot gnu dot org
  2008-11-04  2:23 ` dannysmith at users dot sourceforge dot net
  5 siblings, 0 replies; 7+ messages in thread
From: dannysmith at gcc dot gnu dot org @ 2008-11-04  2:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from dannysmith at gcc dot gnu dot org  2008-11-04 02:17 -------
Subject: Bug 37989

Author: dannysmith
Date: Tue Nov  4 02:16:07 2008
New Revision: 141575

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=141575
Log:
2008-11-03  Mikael Pettersson  <mikpe@it.uu.se>

        PR target/37989
        * config/i386/mingw32.h (REAL_LIBGCC_SPEC): Only add libgcc_s.a
        or libgcc_eh.a to spec if ENABLE_SHARED_LIBGCC.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/i386/mingw32.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/37989] PR37528 fix broke --disable-shared on mingw32
  2008-11-01 18:04 [Bug c/37989] New: PR37528 fix broke --disable-shared on mingw32 mikpe at it dot uu dot se
                   ` (4 preceding siblings ...)
  2008-11-04  2:18 ` dannysmith at gcc dot gnu dot org
@ 2008-11-04  2:23 ` dannysmith at users dot sourceforge dot net
  5 siblings, 0 replies; 7+ messages in thread
From: dannysmith at users dot sourceforge dot net @ 2008-11-04  2:23 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from dannysmith at users dot sourceforge dot net  2008-11-04 02:21 -------
Fixed by Mikael's patch


-- 

dannysmith at users dot sourceforge dot net changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.4.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2008-11-04  2:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-11-01 18:04 [Bug c/37989] New: PR37528 fix broke --disable-shared on mingw32 mikpe at it dot uu dot se
2008-11-01 18:11 ` [Bug c/37989] " mikpe at it dot uu dot se
2008-11-03  6:10 ` [Bug target/37989] " dannysmith at users dot sourceforge dot net
2008-11-03  7:47 ` dannysmith at users dot sourceforge dot net
2008-11-03 13:50 ` mikpe at it dot uu dot se
2008-11-04  2:18 ` dannysmith at gcc dot gnu dot org
2008-11-04  2:23 ` dannysmith at users dot sourceforge dot net

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).