Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 28 Feb 2020 20:43:44 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 244508] sysutils/slurm-wlm: Fix build with clang 10.0.0
Message-ID:  <bug-244508-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D244508

            Bug ID: 244508
           Summary: sysutils/slurm-wlm: Fix build with clang 10.0.0
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: jwb@freebsd.org
          Reporter: dim@FreeBSD.org
            Blocks: 244251
             Flags: maintainer-feedback?(jwb@freebsd.org)
          Assignee: jwb@freebsd.org

Created attachment 212032
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D212032&action=
=3Dedit
Fix sysutils/slurm-wlm build with clang 10.0.0

As reported in bug 244251, with clang 10.0.0 the sysutils/slurm-wlm port fa=
ils
to build with:

libtool: link: cc -O2 -pipe
-I/wrkdirs/usr/ports/sysutils/slurm-wlm/work/slurm-19.05.5/slurm
-I/usr/local/include -fstack-protector-strong -fno-strict-aliasing
-D_THREAD_SAFE -pthread -ggdb3 -Wall -g -O1 -fno-strict-aliasing
-fstack-protector-strong -o .libs/sh5util sh5util.o
-Wl,-rpath=3D/usr/local/lib/slurm -Wl,--export-dynamic  -L/usr/local/lib
-L../../../../../src/api/.libs
/wrkdirs/usr/ports/sysutils/slurm-wlm/work/slurm-19.05.5/src/api/.libs/libs=
lurmfull.so
../.libs/libhdf5_api.a -lsysinfo -lkvm -lm -ldl -lz -lsz -lhdf5 -lhdf5_hl
-pthread -Wl,-rpath -Wl,/usr/local/lib/slurm
ld: error: undefined symbol: info
>>> referenced by sh5util.c:210
>>>               sh5util.o:(main)
>>> referenced by sh5util.c:215
>>>               sh5util.o:(main)
>>> referenced by sh5util.c:220
>>>               sh5util.o:(main)
>>> referenced by sh5util.c:226
>>>               sh5util.o:(main)
>>> referenced by sh5util.c:653
>>>               sh5util.o:(_merge_step_files)
>>> referenced by sh5util.c:319
>>>               sh5util.o:(_remove_empty_output)

ld: error: undefined symbol: error
>>> referenced by sh5util.c:230
>>>               sh5util.o:(main)
>>> referenced by sh5util.c:0
>>>               sh5util.o:(_set_options)
>>> referenced by sh5util.c:0
>>>               sh5util.o:(_check_params)
>>> referenced by sh5util.c:599
>>>               sh5util.o:(_merge_step_files)
>>> referenced by sh5util.c:705
>>>               sh5util.o:(_merge_step_files)
>>> referenced by sh5util.c:718
>>>               sh5util.o:(_merge_step_files)
>>> referenced by sh5util.c:660
>>>               sh5util.o:(_merge_step_files)
>>> referenced by sh5util.c:667
>>>               sh5util.o:(_merge_step_files)
>>> referenced by sh5util.c:1148
>>>               sh5util.o:(_extract_series)
>>> referenced by sh5util.c:1155
>>>               sh5util.o:(_extract_series)
>>> referenced 21 more times
[... lots more of these...]

This is because libslurmfull.so is being linked using the following version
script:

{ global: *;
  local: *;
};

It is ambiguous if it is meant that all the symbols should be global or loc=
al,
and apparently lld 10 now chooses the latter.  Then of course none of the
symbols such as info(), error() etc can be found.

This is easily fixed by removing the "local: *" line, by patching the
Makefile.in that generates the version script.


Referenced Bugs:

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D244251
[Bug 244251] [exp-run] Against projects/clang1000-import branch
--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-244508-7788>