<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>