Accepting request 1154127 from devel:tools:compiler
- Align path for document installation between openSUSE versions. - Update to version 2.4.1 * mold 2.4.0 or prior may promote weak dynamic symbols to strong ones under a rare circumstance, which caused "undefined symbol" error at runtime. The bug has been fixed. (50bdf39) * Previously, if two or more VERSION clauses in a version script match to the same symbol, the first one took precedence. This was incompatible with GNU ld, which gives the last one the highest priority, causing a Qt library link failure. This compatibility issue has been resolved. (e1e16bf) * By default, we demangle symbols in error messages so that they are easier to read. Previously, Rust symbols could accidentally be demangled as C++ symbols. Now, mold attempts to demangle symbols as Rust ones only for object files created by rustc. (ea9864b) * [RISC-V] mold now relaxes a GOT-load instruction sequence into a direct address materialization if the symbol address is known at link time. This relaxation eliminates one memory load and slightly improves the linked program's performance. (2ccaa81) * [PowerPC64 ELFv2] GCC may emit references to _savegpr0_*, _restgpr0_*, _savegpr1_* and _restgpr1_* symbols for the -Os command line option to optimize the output for code size. These symbols are not defined by any object file and expected to be synthesized by the linker. mold didn't use to synthesize these symbols, and therefore object files created with -Os sometimes failed due to missing symbol errors. Now, mold synthesizes these symbols. (d4ff48a) * [PowerPC64] R_PPC64_DTPREL16_LO_DS relocation type has now been supported. (6d8e6af) * [Illumos] On Illumos OS, absolute symbols in DSOs need to be resolved at runtime because the dynamic linker treats such symbols in a special manner. Previously, mold directly used absolute symbol addresses at link-time and did not place them into the dynamic symbol table. That optimization has been removed for OBS-URL: https://build.opensuse.org/request/show/1154127 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mold?expand=0&rev=40
This commit is contained in:
commit
f3c7af2498
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:be65f3d785d32ece7b3204ecaa57810847fdd25c232cf704cbfff2dafb1ac107
|
||||
size 9974233
|
3
mold-2.4.1.tar.gz
Normal file
3
mold-2.4.1.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c9853d007d6a1b4f3e36b7314346751f4cc91bc43c76e30db51709b53b44dd68
|
||||
size 9957259
|
38
mold.changes
38
mold.changes
@ -1,3 +1,41 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 1 16:17:35 UTC 2024 - Martin Liška <martin.liska@hey.com>
|
||||
|
||||
- Align path for document installation between openSUSE versions.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 1 14:47:15 UTC 2024 - Martin Liška <martin.liska@hey.com>
|
||||
|
||||
- Update to version 2.4.1
|
||||
* mold 2.4.0 or prior may promote weak dynamic symbols to strong ones under a rare
|
||||
circumstance, which caused "undefined symbol" error at runtime. The bug has been
|
||||
fixed. (50bdf39)
|
||||
* Previously, if two or more VERSION clauses in a version script match to the same
|
||||
symbol, the first one took precedence. This was incompatible with GNU ld, which
|
||||
gives the last one the highest priority, causing a Qt library link failure. This
|
||||
compatibility issue has been resolved. (e1e16bf)
|
||||
* By default, we demangle symbols in error messages so that they are easier to
|
||||
read. Previously, Rust symbols could accidentally be demangled as C++ symbols.
|
||||
Now, mold attempts to demangle symbols as Rust ones only for object files
|
||||
created by rustc. (ea9864b)
|
||||
* [RISC-V] mold now relaxes a GOT-load instruction sequence into a direct address
|
||||
materialization if the symbol address is known at link time. This relaxation
|
||||
eliminates one memory load and slightly improves the linked program's
|
||||
performance. (2ccaa81)
|
||||
* [PowerPC64 ELFv2] GCC may emit references to _savegpr0_*, _restgpr0_*,
|
||||
_savegpr1_* and _restgpr1_* symbols for the -Os command line option to optimize
|
||||
the output for code size. These symbols are not defined by any object file and
|
||||
expected to be synthesized by the linker. mold didn't use to synthesize these
|
||||
symbols, and therefore object files created with -Os sometimes failed due to
|
||||
missing symbol errors. Now, mold synthesizes these symbols. (d4ff48a)
|
||||
* [PowerPC64] R_PPC64_DTPREL16_LO_DS relocation type has now been supported.
|
||||
(6d8e6af)
|
||||
* [Illumos] On Illumos OS, absolute symbols in DSOs need to be resolved at runtime
|
||||
because the dynamic linker treats such symbols in a special manner. Previously,
|
||||
mold directly used absolute symbol addresses at link-time and did not place them
|
||||
into the dynamic symbol table. That optimization has been removed for
|
||||
compatibility with Illumos. (bed5b17, 7f8d77d)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 30 05:33:24 UTC 2023 - Martin Liška <martin.liska@hey.com>
|
||||
|
||||
|
14
mold.spec
14
mold.spec
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package mold
|
||||
#
|
||||
# Copyright (c) 2023 SUSE LLC
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -17,7 +17,7 @@
|
||||
|
||||
|
||||
Name: mold
|
||||
Version: 2.4.0
|
||||
Version: 2.4.1
|
||||
Release: 0
|
||||
Summary: A Modern Linker (mold)
|
||||
License: MIT
|
||||
@ -50,8 +50,8 @@ BuildRequires: zlib-devel
|
||||
BuildRequires: zstd
|
||||
PreReq: update-alternatives
|
||||
|
||||
%if %{suse_version} < 1550
|
||||
%define build_args -DMOLD_USE_MIMALLOC=OFF -DMOLD_USE_MIMALLOC=OFF
|
||||
%if %{suse_version} < 1600
|
||||
%define build_args -DMOLD_USE_MIMALLOC=OFF -DMOLD_USE_MIMALLOC=OFF -DCMAKE_INSTALL_DOCDIR:PATH=%{_docdir}/%{name}
|
||||
%else
|
||||
%define build_args -DMOLD_USE_MIMALLOC=OFF -DMOLD_USE_MIMALLOC=OFF -DMOLD_USE_SYSTEM_TBB=ON
|
||||
%endif
|
||||
@ -108,8 +108,8 @@ fi
|
||||
%{_libdir}/mold/mold-wrapper.so
|
||||
%{_mandir}/man1/mold.1.gz
|
||||
%{_mandir}/man1/ld.mold.1.gz
|
||||
%dir /usr/share/doc/mold
|
||||
%doc /usr/share/doc/mold/LICENSE
|
||||
%doc /usr/share/doc/mold/LICENSE.third-party
|
||||
%dir %{_docdir}/mold
|
||||
%doc %{_docdir}/mold/LICENSE
|
||||
%doc %{_docdir}/mold/LICENSE.third-party
|
||||
|
||||
%changelog
|
||||
|
Loading…
Reference in New Issue
Block a user