Sat Jan 1 15:36:48 2022 UTC ()
mold: update to 1.0.1.

New features:

- make install now creates /usr/local/libexec/mold/ld as a symlink to the
  mold executable. We do this for GCC. By passing -B/usr/local/libexec/mold,
  you can tell GCC to use ld inside that directory instead of /usr/bin/ld.
  (e8dcecf)
- xxHash library is now included in the mold's source tree as a subtree for
  ease of building. If you want to link against a libxxhash in a system
  library directory, pass SYSTEM_XXHASH=1 to make. (665bffa)
- The extern "C++" directive is now supported in the dynamic list. (7aa5c39)
- --color-diagnostics is supported. mold used to ignore that flag. (6e290aa)
- Not only * but also ? are now treated as special characters in the version
  script wildcard pattern. (31b0248)
- The --threads=N option has been added as an alias for --thread-count=N.
  (f9ff048)
- The following option has been added: --defsym (f6e8006), -z nodefaultlib
  (8c86c28), -z separate-code, -z noseparate-code and
  -z separate-lodable-segments (5601cf4), -z max-page-size (f3766cd)

Bug fixes and compatibility improvements:

- mold now issue a warning instead of an error for an unknown -z option.
  (8bc5736)
- mold previously created a PT_NOTE segment for non-SHF_ALLOC note segments.
  This is a wrong behavior because we should create segments only for
  memory-allocated sections. This problem has been fixed. (76407a6)
- Previously, a version script can affect symbol visibility of undefined
  symbols when they are promoted to dynamic symbols. This is a semantically
  incorrect behavior and caused a libQt build failure (#151). The issue has
  been fixed. (3663389)
- Previously, mold silently turned unresolved undefined symbols into absolute
  symbols with value 0 if -shared, -z defs and -warn-undefined-symbols are
  specified. Even though this behavior makes sense, it's not compatible
  with GNU ld which promotes such symbols into dynamic symbols.
  This incompatibility causes a link failure for Firefox. Since 1.0.1, mold
  behaves the same as GNU ld. (04ccd4d)
- Previously, mold applied wrong values for relocations against Initial-Exec
  thread-local variables. That caused a link failure for Mesa 3D graphics
  library (#197). The issue has been resolved. (d116113)
- GCC 7 has a bug that it emits incorrect relocations against thread-local
  variables under a certain condition. That bug was unnoticed because
  existing linkers silently produces an output that works fine in most
  cases but is technically corrupted. mold used to check for that error
  condition and report an error. Now, mold does not report it as an error
  for the sake of bug-compatibility with GCC 7. I don't think relaxing the
  error check will cause any new issue to existing GCC 7 users, because if
  it does, they would have been experiencing the issue with existing
  linkers already. (d9606d6)
- If an output file has more than one sections for thread-local BSS, they
  were laid out in such that they are overlapping with each other. This bug
  caused a runtime error for programs compiled with DMD, a compiler for the
  D language (#126). This layout issue has been resolved. (b151de6)
- Previously, mold failed to look up correct files under --sysroot in some
  conditions. That caused a link failure for ClickHouse (#150). This bug
  has been fixed. (135f17c)


(fcambus)
diff -r1.4 -r1.5 pkgsrc/devel/mold/Makefile
diff -r1.2 -r1.3 pkgsrc/devel/mold/PLIST
diff -r1.6 -r1.7 pkgsrc/devel/mold/distinfo

cvs diff -r1.4 -r1.5 pkgsrc/devel/mold/Makefile (expand / switch to unified diff)

--- pkgsrc/devel/mold/Makefile 2021/12/16 08:37:30 1.4
+++ pkgsrc/devel/mold/Makefile 2022/01/01 15:36:48 1.5
@@ -1,26 +1,26 @@ @@ -1,26 +1,26 @@
1# $NetBSD: Makefile,v 1.4 2021/12/16 08:37:30 fcambus Exp $ 1# $NetBSD: Makefile,v 1.5 2022/01/01 15:36:48 fcambus Exp $
2 2
3DISTNAME= mold-1.0.0 3DISTNAME= mold-1.0.1
4CATEGORIES= devel 4CATEGORIES= devel
5MASTER_SITES= ${MASTER_SITE_GITHUB:=rui314/} 5MASTER_SITES= ${MASTER_SITE_GITHUB:=rui314/}
6GITHUB_TAG= v${PKGVERSION_NOREV} 6GITHUB_TAG= v${PKGVERSION_NOREV}
7 7
8MAINTAINER= fcambus@NetBSD.org 8MAINTAINER= fcambus@NetBSD.org
9HOMEPAGE= https://github.com/rui314/mold/ 9HOMEPAGE= https://github.com/rui314/mold/
10COMMENT= High performance drop-in replacement for existing Unix linkers 10COMMENT= High performance drop-in replacement for existing Unix linkers
11LICENSE= gnu-agpl-v3 11LICENSE= gnu-agpl-v3
12 12
13ONLY_FOR_PLATFORM= Linux-*-x86_64 13ONLY_FOR_PLATFORM= Linux-*-x86_64
14 14
15USE_TOOLS+= gmake 15USE_TOOLS+= gmake
16USE_LANGUAGES= c c++ 16USE_LANGUAGES= c c++
17 17
18MAKE_FLAGS+= MANDIR="${PREFIX}/${PKGMANDIR}" 18MAKE_FLAGS+= MANDIR="${PREFIX}/${PKGMANDIR}"
19MAKE_FLAGS+= SYSTEM_MIMALLOC=1 SYSTEM_TBB=1 19MAKE_FLAGS+= SYSTEM_MIMALLOC=1 SYSTEM_TBB=1 SYSTEM_XXHASH=1
20 20
21.include "../../devel/mimalloc/buildlink3.mk" 21.include "../../devel/mimalloc/buildlink3.mk"
22.include "../../devel/xxhash/buildlink3.mk" 22.include "../../devel/xxhash/buildlink3.mk"
23.include "../../devel/zlib/buildlink3.mk" 23.include "../../devel/zlib/buildlink3.mk"
24.include "../../parallel/threadingbuildingblocks/buildlink3.mk" 24.include "../../parallel/threadingbuildingblocks/buildlink3.mk"
25.include "../../security/openssl/buildlink3.mk" 25.include "../../security/openssl/buildlink3.mk"
26.include "../../mk/bsd.pkg.mk" 26.include "../../mk/bsd.pkg.mk"

cvs diff -r1.2 -r1.3 pkgsrc/devel/mold/PLIST (expand / switch to unified diff)

--- pkgsrc/devel/mold/PLIST 2021/12/16 08:37:30 1.2
+++ pkgsrc/devel/mold/PLIST 2022/01/01 15:36:48 1.3
@@ -1,6 +1,7 @@ @@ -1,6 +1,7 @@
1@comment $NetBSD: PLIST,v 1.2 2021/12/16 08:37:30 fcambus Exp $ 1@comment $NetBSD: PLIST,v 1.3 2022/01/01 15:36:48 fcambus Exp $
2bin/ld.mold 2bin/ld.mold
3bin/ld64.mold 3bin/ld64.mold
4bin/mold 4bin/mold
5lib/mold/mold-wrapper.so 5lib/mold/mold-wrapper.so
 6libexec/mold/ld
6man/man1/mold.1 7man/man1/mold.1

cvs diff -r1.6 -r1.7 pkgsrc/devel/mold/distinfo (expand / switch to unified diff)

--- pkgsrc/devel/mold/distinfo 2021/12/16 08:37:30 1.6
+++ pkgsrc/devel/mold/distinfo 2022/01/01 15:36:48 1.7
@@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
1$NetBSD: distinfo,v 1.6 2021/12/16 08:37:30 fcambus Exp $ 1$NetBSD: distinfo,v 1.7 2022/01/01 15:36:48 fcambus Exp $
2 2
3BLAKE2s (mold-1.0.0.tar.gz) = fa11af4b42237f9d0404dabce7024e76222507c65fa5e67ef3bb7c8ee14289b4 3BLAKE2s (mold-1.0.1.tar.gz) = d41c3256a5e956ffb060b32a6e7549c5e10ce5fa733802cd33b2677d7b3bf8f3
4SHA512 (mold-1.0.0.tar.gz) = 99ffd0b9e2ff7157cc8b26808675c9d3147bf88961155ae19ed9b99990ac647b7ec31ee78d05062decc6d41e66d99aa0fdc398d119803929b8dbff51eb3d077c 4SHA512 (mold-1.0.1.tar.gz) = cc03a7db395362b97879c28942397d4443d12b72e067b6f979b1ece4d8aab06154b4c1a0f4c57d6ac505bcd4f892bf9a355ad281d628d4d544d8f70edaf34b72
5Size (mold-1.0.0.tar.gz) = 3482927 bytes 5Size (mold-1.0.1.tar.gz) = 3675262 bytes
6SHA1 (patch-Makefile) = ade79e3746409842e89838ce6b2aab35cfb6dd94 6SHA1 (patch-Makefile) = ade79e3746409842e89838ce6b2aab35cfb6dd94