[Bug 274329] x11-toolkits/libwnck3: fix warnings, and build with lld 17

From: <bugzilla-noreply_at_freebsd.org>
Date: Fri, 20 Oct 2023 16:26:25 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=274329

--- Comment #2 from commit-hook@FreeBSD.org ---
A commit in branch main references this bug:

URL:
https://cgit.FreeBSD.org/ports/commit/?id=36a866dfc827e21e5230a9c2aeb4e8275198a028

commit 36a866dfc827e21e5230a9c2aeb4e8275198a028
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2023-10-07 13:57:20 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2023-10-20 16:25:47 +0000

    x11-toolkits/libwnck3: fix warnings, and build with lld 17

    Building x11-toolkits/libwnck3 with lld 17 results in the following link
    errors:

      cc  -o libwnck/libwnck-3.so.0.3.0
libwnck/libwnck-3.so.0.3.0.p/meson-generated_.._wnck-enum-types.c.o
libwnck/libwnck-3.so.0.3.0.p/meson-generated_.._libwnck-resources.c.o
libwnck/libwnck-3.so.0.3.0.p/application.c.o
libwnck/libwnck-3.so.0.3.0.p/class-group.c.o
libwnck/libwnck-3.so.0.3.0.p/pager.c.o libwnck/libwnck-3.so.0.3.0.p/screen.c.o
libwnck/libwnck-3.so.0.3.0.p/selector.c.o
libwnck/libwnck-3.so.0.3.0.p/tasklist.c.o libwnck/libwnck-3.so.0.3.0.p/util.c.o
libwnck/libwnck-3.so.0.3.0.p/window-action-menu.c.o
libwnck/libwnck-3.so.0.3.0.p/window.c.o
libwnck/libwnck-3.so.0.3.0.p/wnck-image-menu-item.c.o
libwnck/libwnck-3.so.0.3.0.p/workspace.c.o
libwnck/libwnck-3.so.0.3.0.p/xutils.c.o
libwnck/libwnck-3.so.0.3.0.p/pager-accessible.c.o
libwnck/libwnck-3.so.0.3.0.p/pager-accessible-factory.c.o
libwnck/libwnck-3.so.0.3.0.p/workspace-accessible.c.o
libwnck/libwnck-3.so.0.3.0.p/workspace-accessible-factory.c.o -Wl,--as-needed
-Wl,--no-undefined -Wl,-O1 -shared -fPIC -Wl,--start-group -
 Wl,-soname,libwnck-3.so.0 -fstack-protector-strong -O2 -pipe
-fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing
-isystem /usr/local/include -Wl,-rpath,/usr/local/lib
-Wl,-rpath-link,/usr/local/lib
-Wl,--version-script,/wrkdirs/share/dim/ports/x11-toolkits/libwnck3/work/libwnck-3.36.0/libwnck/libwnck-3.map
-lm /usr/local/lib/libcairo.so /usr/local/lib/libXext.so
/usr/local/lib/libXrender.so /usr/local/lib/libX11.so
/usr/local/lib/libglib-2.0.so /usr/local/lib/libintl.so
/usr/local/lib/libgobject-2.0.so /usr/local/lib/libgtk-3.so
/usr/local/lib/libgdk-3.so /usr/local/lib/libharfbuzz.so
/usr/local/lib/libpangocairo-1.0.so /usr/local/lib/libpango-1.0.so
/usr/local/lib/libatk-1.0.so /usr/local/lib/libcairo-gobject.so
/usr/local/lib/libgdk_pixbuf-2.0.so /usr/local/lib/libgio-2.0.so
/usr/local/lib/libstartup-notification-1.so /usr/local/lib/libXRes.so
-Wl,--end-group
      ld: error: version script assignment of 'global' to symbol '__progname'
failed: symbol not defined
      ld: error: version script assignment of 'global' to symbol 'environ'
failed: symbol not defined
      cc: error: linker command failed with exit code 1 (use -v to see
invocation)

    Commit bf6718d6938e added patch-libwnck_libwnck-3.map a long time ago,
    but it is unclear why. Remove the patch so the undefined symbols are no
    longer referenced in the linker script.

    While here, fix two warnings about incorrectly defined header guards:

      In file included from ../libwnck/pager-accessible-factory.c:20:
      ../libwnck/pager-accessible-factory.h:19:9: warning:
'__WNCK_PAGER_ACCESSIBLE_FACTORY_H__' is used as a header guard here, followed
by #define of a different macro [-Wheader-guard]
         19 | #ifndef __WNCK_PAGER_ACCESSIBLE_FACTORY_H__
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ../libwnck/pager-accessible-factory.h:20:9: note:
'__WBCK_PAGER_ACCESSIBLE_FACTORY_H__' is defined here; did you mean
'__WNCK_PAGER_ACCESSIBLE_FACTORY_H__'?
         20 | #define __WBCK_PAGER_ACCESSIBLE_FACTORY_H__
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            |         __WNCK_PAGER_ACCESSIBLE_FACTORY_H__
      ../libwnck/workspace-accessible-factory.h:19:9: warning:
'__WNCK_WORKSPACE_ACCESSIBLE_FACTORY_H__' is used as a header guard here,
followed by #define of a different macro [-Wheader-guard]
         19 | #ifndef __WNCK_WORKSPACE_ACCESSIBLE_FACTORY_H__
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ../libwnck/workspace-accessible-factory.h:20:9: note:
'__WBCK_WORKSPACE_ACCESSIBLE_FACTORY_H__' is defined here; did you mean
'__WNCK_WORKSPACE_ACCESSIBLE_FACTORY_H__'?
         20 | #define __WBCK_WORKSPACE_ACCESSIBLE_FACTORY_H__
            |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            |         __WNCK_WORKSPACE_ACCESSIBLE_FACTORY_H__

    PR:             274329
    Approved by:    maintainer timeout (2 weeks)
    MFH:            2023Q4

 .../libwnck3/files/patch-libwnck_libwnck-3.map (gone)         | 11 -----------
 .../files/patch-libwnck_pager-accessible-factory.h (new)      | 11 +++++++++++
 .../files/patch-libwnck_workspace-accessible-factory.h (new)  | 11 +++++++++++
 3 files changed, 22 insertions(+), 11 deletions(-)

-- 
You are receiving this mail because:
You are the assignee for the bug.