UmVirt LFS Package info

📦Package info

🔙Parent Directory  -

DB commit: f9aede95e4e5157a46ec1323bb7abf8947e8632d
APP commit:
[ BASH | XML | JSON ]

llvm

The LLVM package contains a collection of modular and reusable compiler and toolchain technologies.

Package info

Codename: llvm
Source file: llvm-17.0.6.src.tar.xz
Source directory: llvm-17.0.6.src
Package URL: https://ulfs.org/linux/downloads/package_files/0.2.1/packages/l/llvm-17.0.6.src.tar.xz
Package md5-checksum URL: https://ulfs.org/linux/downloads/package_files/0.2.1/packages/l/llvm-17.0.6.src.tar.xz.md5sum
Dependances: cmake.
Dependance of: dhcpcd, v4l-utils, duckstation, mesa, ImageMagick, mesa-libglvnd, libreoffice7, libreoffice24.
Patches: *** NO PATCHES FOUND ***
Addons: llvm-cmake-17.src.tar.xz, llvm-third-party-17.src.tar.xz, clang-17.0.6.src.tar.xz, clang-17-enable_default_ssp-1.patch, compiler-rt-17.0.6.src.tar.xz.
Nestings *** NO NESTINGS FOUND ***
Configuration script:
tar -xf ../llvm-cmake-17.src.tar.xz                                   &&
tar -xf ../llvm-third-party-17.src.tar.xz                             &&
sed '/LLVM_COMMON_CMAKE_UTILS/s@../[email protected]@'          \
    -i CMakeLists.txt                                                 &&
sed '/LLVM_THIRD_PARTY_DIR/s@../[email protected]@' \
    -i cmake/modules/HandleLLVMOptions.cmake

tar -xf ../clang-17.0.6.src.tar.xz -C tools &&
mv tools/clang-17.0.6.src tools/clang

tar -xf ../compiler-rt-17.0.6.src.tar.xz -C projects    &&
mv projects/compiler-rt-17.0.6.src projects/compiler-rt &&
sed '/^set(LLVM_COMMON_CMAKE_UTILS/d'                   \
    -i projects/compiler-rt/CMakeLists.txt

grep -rl '#!.*python' | xargs sed -i '1s/python$/python3/'


tar -xf ../compiler-rt-16.0.5.src.tar.xz -C projects &&
mv projects/compiler-rt-16.0.5.src projects/compiler-rt

grep -rl '#!.*python' | xargs sed -i '1s/python$/python3/'


patch -Np2 -d tools/clang <../clang-17-enable_default_ssp-1.patch

sed 's/clang_dfsan/& -fno-stack-protector/' \
    -i projects/compiler-rt/test/dfsan/origin_unaligned_memtrans.c


mkdir -v build &&
cd       build &&

ARG_DOCS=""
if [[ "$ULFS_PKG_DOCUMENTATION" == "YES" ]]
then

ARG_DOCS="-DLLVM_BUILD_DOCS=ON -DLLVM_ENABLE_SPHINX=ON -DSPHINX_WARNINGS_AS_ERRORS=OFF"

fi

CC=gcc CXX=g++                              \
cmake -DCMAKE_INSTALL_PREFIX=/usr           \
      -DLLVM_ENABLE_FFI=ON                  \
      -DCMAKE_BUILD_TYPE=Release            \
      -DLLVM_BUILD_LLVM_DYLIB=ON            \
      -DLLVM_LINK_LLVM_DYLIB=ON             \
      -DLLVM_ENABLE_RTTI=ON                 \
      -DLLVM_TARGETS_TO_BUILD="host;AMDGPU" \
      -DLLVM_BINUTILS_INCDIR=/usr/include   \
      -DLLVM_INCLUDE_BENCHMARKS=OFF         \
      -DCLANG_DEFAULT_PIE_ON_LINUX=ON       \
      -Wno-dev $ARG_DOCS -G Ninja .. 


Build script:
cd build
ninja

if [[ "$ULFS_PKG_DOCUMENTATION" == "YES" ]]
then

ninja docs-llvm-html  docs-llvm-man
ninja docs-clang-html docs-clang-man

fi

if [[ "$ULFS_PKG_TEST" == "YES" ]]
then

rm -f ../projects/compiler-rt/test/tsan/getline_nohang.cpp

systemctl   --user start dbus &&
systemd-run --user --pty -d -G -p LimitCORE=0 ninja check-all

fi


Install script:
cd build
cmake --install .
cp bin/FileCheck /usr/bin

if [[ "\$ULFS_PKG_DOCUMENTATION" == "YES" ]]
then

install -v -d -m755 /usr/share/doc/llvm-17.0.6            &&
mv -v /usr/share/doc/LLVM/llvm /usr/share/doc/llvm-17.0.6 &&
rmdir -v --ignore-fail-on-non-empty /usr/share/doc/LLVM

install -v -d -m755 /usr/share/doc/llvm-17.0.6             &&
mv -v /usr/share/doc/LLVM/clang /usr/share/doc/llvm-17.0.6 &&
rmdir -v --ignore-fail-on-non-empty /usr/share/doc/LLVM

fi

Arch specific instructions

lib32_amd64

Dependances: *** NO DEPENDANCES FOUND ***
Configuration script:
tar -xf ../llvm-cmake-17.src.tar.xz                                   &&
tar -xf ../llvm-third-party-17.src.tar.xz                             &&
sed '/LLVM_COMMON_CMAKE_UTILS/s@../[email protected]@'          \
    -i CMakeLists.txt                                                 &&
sed '/LLVM_THIRD_PARTY_DIR/s@../[email protected]@' \
    -i cmake/modules/HandleLLVMOptions.cmake

tar -xf ../clang-17.0.6.src.tar.xz -C tools &&
mv tools/clang-17.0.6.src tools/clang

tar -xf ../compiler-rt-17.0.6.src.tar.xz -C projects    &&
mv projects/compiler-rt-17.0.6.src projects/compiler-rt &&
sed '/^set(LLVM_COMMON_CMAKE_UTILS/d'                   \
    -i projects/compiler-rt/CMakeLists.txt

grep -rl '#!.*python' | xargs sed -i '1s/python$/python3/'


patch -Np2 -d tools/clang <../clang-17-enable_default_ssp-1.patch

sed 's/clang_dfsan/& -fno-stack-protector/' \
    -i projects/compiler-rt/test/dfsan/origin_unaligned_memtrans.c


mkdir -v build &&
cd       build 

CC="gcc -m32" CXX="g++ -m32" \
PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
cmake -DCMAKE_INSTALL_PREFIX=/usr           \
      -DCMAKE_CXX_FLAGS:STRING=-m32         \
      -DCMAKE_C_FLAGS:STRING=-m32           \
      -DLLVM_DEFAULT_TARGET_TRIPLE="i686-pc-linux-gnu" \
      -DLLVM_ENABLE_FFI=ON                  \
      -DCMAKE_BUILD_TYPE=Release            \
      -DLLVM_BUILD_LLVM_DYLIB=ON            \
      -DLLVM_LINK_LLVM_DYLIB=ON             \
      -DLLVM_ENABLE_RTTI=ON                 \
      -DLLVM_BINUTILS_INCDIR=/usr/include   \
      -DLLVM_INCLUDE_BENCHMARKS=OFF         \
      -DCLANG_DEFAULT_PIE_ON_LINUX=ON       \
      -DLLVM_LIBDIR_SUFFIX=32               \
      -DLLVM_ENABLE_BINDINGS=OFF            \
      -DLLVM_BUILD_DOCS=OFF                 \
      -DLLVM_TARGET_ARCH:STRING=i686        \
      -Wno-dev -G Ninja .. 




Build script:
cd       build 

ninja

Install script:
cd       build 

DESTDIR=DESTDIR ninja install

cp -Rv DESTDIR/usr/lib32/* /usr/lib32

cp -v "DESTDIR/usr/bin/llvm-config" "/usr/bin/llvm-config32"


Apache/2.4.62 (Debian) Server at ulfs.org Port 443