X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=1.3 required=5.0	tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,KHOP_RCVD_TRUST,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
From: Andrew Pennebaker <andrew.pennebaker@gmail.com>
Date: Wed, 12 Sep 2012 17:33:04 -0400
Message-ID: <CAHXt_SVJTPFfEkW1zJcWiY84PhTNfbVRCxZKyfb+sziRYs=u8g@mail.gmail.com>
Subject: MinGW's GCC and __attribute__((weak))
To: Cygwin <cygwin@cygwin.com>
Content-Type: text/plain; charset=ISO-8859-1
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

Am I correct in assuming that gcc/MinGW builds on top of Cygwin?
Because I'm having trouble getting gcc to recognize
__attribute__((weak)) in Windows, where the exact same C source code
compile just fine with gcc in an ordinary Unix (Mac OS X as it
happens) environment.

I love how you can bundle a framework and CLI in the same Perl script,
by using unless(caller) { main; }. For lack of a better name, I've
started calling this behavior scriptedmain. Here's a Perl script
example (https://github.com/mcandre/scriptedmain/tree/master/perl).

I want to be able to do the same thing in C, and with help from
StackOverflow I've gotten working C code to do just that, in Unix.
Unfortunately, the C code
(http://stackoverflow.com/questions/12395130/trouble-using-scriptedmain-in-mingw)
doesn't compile in Windows, because gcc/MinGW and gcc/Strawberry Perl
fail to recognize __attribute__((weak)) syntax. Is there another way I
can rewrite my code for MinGW's gcc so that it compiles and works like
the Perl scriptedmain? Or can we add __attribute__((weak)) to MinGW's
gcc lexicon?

I will also be asking the Strawberry Perl project about their gcc in
case some minor configuration tweak can get this working.

Cheers,

Andrew Pennebaker
www.yellosoft.us

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

