repo/extra/mold/build
2021-08-15 15:46:11 +03:00

27 lines
826 B
Bash
Executable File

#!/bin/sh -e
make -C xxhash
# Point mold to the local xxhash.
export CXXFLAGS="-L$PWD/xxhash -I$PWD/xxhash $CXXFLAGS"
# CMAKE_GENERATOR must unset to force usage of Makefiles. The build system
# calls cmake and proceeds to assume that Makefiles will be used with it
# breaking builds with Ninja/Samurai.
unset CMAKE_GENERATOR
# Force a static build so shared library breakage does not also break the
# linker (and therefore the ability to recover from the issue).
export LDFLAGS="$LDFLAGS -static"
make
make install
# 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"