repo/extra/mold/build

27 lines
772 B
Plaintext
Raw Normal View History

#!/bin/sh -e
2023-03-02 07:40:00 -07:00
export DESTDIR="$1"
2021-08-15 06:46:11 -06:00
# Force a static build so shared library breakage does not also break the
# linker (and therefore the ability to recover from the issue).
2022-03-06 06:29:28 -07:00
# XXX: Static linking prevents mold from using dlopen() which is required
# for performing LTO.
# export LDFLAGS="$LDFLAGS -static"
2021-08-15 06:46:11 -06:00
2022-09-27 11:10:15 -06:00
patch -p1 < elf_amd64_only.patch
cmake -B build \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
cmake --build build
cmake --install build
# Create a symbolic link so users can use mold as the linker system-wide
# (without need for special CFLAGS/CXXFLAGS).
ln -s mold "$1/usr/bin/ld"
# To tell GCC to use mold we must put a symlink to it in a directory and set it
# to search for the linker within.
ln -s ../../bin/mold "$1/usr/lib/mold/ld"