<pre style='margin:0'>
Mohamed Akram (mohd-akram) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f45c83adbd581c84866b906b978a4e467c0bdd07">https://github.com/macports/macports-ports/commit/f45c83adbd581c84866b906b978a4e467c0bdd07</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new f45c83adbd5 Xaw3d: improve linking behavior
</span>f45c83adbd5 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit f45c83adbd581c84866b906b978a4e467c0bdd07
</span>Author: Mohamed Akram <makr@macports.org>
AuthorDate: Thu May 23 01:33:11 2024 +0400

<span style='display:block; white-space:pre;color:#404040;'>    Xaw3d: improve linking behavior
</span>---
 x11/Xaw3d/Portfile                    |  5 +--
 x11/Xaw3d/files/patch-src-vendor.diff | 60 +++++++++++++++++++++++++++++++++++
 2 files changed, 63 insertions(+), 2 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/x11/Xaw3d/Portfile b/x11/Xaw3d/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 0cd831ffdcc..1c612a22a37 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/x11/Xaw3d/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/x11/Xaw3d/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,7 +4,7 @@ PortSystem      1.0
</span> 
 name            Xaw3d
 version         1.6.5
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision        0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision        1
</span> categories      x11 devel
 license         X11
 maintainers     {jeremyhu @jeremyhu} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -34,7 +34,8 @@ patch.pre_args-replace  -p0 -p1
</span> patchfiles \
     0001-Xaw3d-1.6.1-3Dlabel.patch.patch \
     0002-Xaw3d-1.6.1-fontset.patch.patch \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    0003-Xaw3d-1.6.1-hsbar.patch.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    0003-Xaw3d-1.6.1-hsbar.patch.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    patch-src-vendor.diff
</span> 
 configure.args \
         --enable-internationalization
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/x11/Xaw3d/files/patch-src-vendor.diff b/x11/Xaw3d/files/patch-src-vendor.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..badb60875c6
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/x11/Xaw3d/files/patch-src-vendor.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,60 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Using weak symbols rather than __attribute__((constructor)) preserves the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+linking order as on other platforms.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/src/Vendor.c.orig    2023-05-13 04:08:46
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/src/Vendor.c 2024-05-23 01:25:07
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -112,21 +112,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void XawVendorStructureNotifyHandler(Widget, XtPointer, XEvent*, Boolean*);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(__UNIXOS2__) || defined(__CYGWIN__) || defined(__MINGW32__) || defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__UNIXOS2__) || defined(__CYGWIN__) || defined(__MINGW32__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* to fix the EditRes problem because of wrong linker semantics */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern WidgetClass vendorShellWidgetClass; /* from Xt/Vendor.c */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ extern VendorShellClassRec _XawVendorShellClassRec;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void _XawFixupVendorShell(void);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-__attribute__((constructor))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-static void __VendorShellHack(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    vendorShellWidgetClass = (WidgetClass)(&_XawVendorShellClassRec);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _XawFixupVendorShell();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(__UNIXOS2__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unsigned long _DLL_InitTerm(unsigned long mod,unsigned long flag)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -179,6 +170,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define SuperClass (&wmShellClassRec)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((weak))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ externaldef(vendorshellclassrec) VendorShellClassRec vendorShellClassRec = {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     /* superclass   */    (WidgetClass)SuperClass,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -240,10 +234,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if !defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++__attribute__((weak))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ externaldef(vendorshellwidgetclass) WidgetClass vendorShellWidgetClass =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   (WidgetClass) (&vendorShellClassRec);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef XAW_INTERNATIONALIZATION
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /***************************************************************************
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -487,7 +482,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(__osf__) || defined(__UNIXOS2__) || defined(__CYGWIN__) || defined(__MINGW32__) || defined(__APPLE__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__osf__) || defined(__UNIXOS2__) || defined(__CYGWIN__) || defined(__MINGW32__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* stupid OSF/1 shared libraries have the wrong semantics */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* symbols do not get resolved external to the shared library */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void
</span></pre><pre style='margin:0'>

</pre>