gnustep / libs-gui

The GNUstep gui library is a library of graphical user interface classes written completely in the Objective-C language; the classes are based upon Apple's Cocoa framework (which came from the OpenStep specification). *** Larger patches require copyright assignment to FSF. please file bugs here. ***
http://www.gnustep.org
GNU General Public License v3.0
279 stars 103 forks source link

Make PACKAGE_SCOPE @public on MinGW #242

Closed qmfrederik closed 10 months ago

qmfrederik commented 10 months ago

The clang compiler actually enforces visibility on MinGW (by not exporting the instance variable offsets); there isn't a functional equivalent of @package on Windows.

Without this patch, compiling libs-gui fails like this:

Linking bundle libgmodel ...
ld.lld: error: undefined symbol: __objc_ivar_offset_NSView._sub_views.☺
>>> referenced by ./obj/libgmodel.obj/GMAppKit.m.o:(.refptr.__objc_ivar_offset_NSView._sub_views.☺)