Bug 274329 - x11-toolkits/libwnck3: fix warnings, and build with lld 17
Summary: x11-toolkits/libwnck3: fix warnings, and build with lld 17
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-gnome (Nobody)
URL:
Keywords:
Depends on:
Blocks: 273753
  Show dependency treegraph
 
Reported: 2023-10-07 14:03 UTC by Dimitry Andric
Modified: 2023-10-20 16:28 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (gnome)


Attachments
x11-toolkits/libwnck3: fix warnings, and build with lld 17 (1.69 KB, patch)
2023-10-07 14:03 UTC, Dimitry Andric
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dimitry Andric freebsd_committer freebsd_triage 2023-10-07 14:03:07 UTC
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__
Comment 1 Dimitry Andric freebsd_committer freebsd_triage 2023-10-07 14:03:28 UTC
Created attachment 245481 [details]
x11-toolkits/libwnck3: fix warnings, and build with lld 17
Comment 2 commit-hook freebsd_committer freebsd_triage 2023-10-20 16:26:25 UTC
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(-)