From c1e9aa4eddc5dee0dc8e0bd726d42317edb6492b Mon Sep 17 00:00:00 2001 From: aliriza Date: Mon, 23 Jan 2023 11:58:45 +0000 Subject: [PATCH] clang --- dev/util/spirv-llvm-translator/ympbuild | 2 +- dev/util/spirv-tools/ympbuild | 2 +- sys/devel/clang/ympbuild | 68 +++++++++++++++++++++++++ 3 files changed, 70 insertions(+), 2 deletions(-) create mode 100644 sys/devel/clang/ympbuild diff --git a/dev/util/spirv-llvm-translator/ympbuild b/dev/util/spirv-llvm-translator/ympbuild index b1aa4d9e..4e69a351 100644 --- a/dev/util/spirv-llvm-translator/ympbuild +++ b/dev/util/spirv-llvm-translator/ympbuild @@ -8,7 +8,7 @@ email='aliriza.keskin@pardus.org.tr' maintainer='aliriza' license=('GPLv3') source=("https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/v$version/SPIRV-LLVM-Translator-$version.tar.gz") -depends=(spirv-tools) +depends=(spirv-tools llvm) makedepends=() md5sums=('19e3ee2fb84754602ec754c594b20a1d') group=() diff --git a/dev/util/spirv-tools/ympbuild b/dev/util/spirv-tools/ympbuild index 5b3c69df..13c38b2d 100644 --- a/dev/util/spirv-tools/ympbuild +++ b/dev/util/spirv-tools/ympbuild @@ -8,7 +8,7 @@ email='aliriza.keskin@pardus.org.tr' maintainer='aliriza' license=('GPLv3') source=("https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags/v$version.tar.gz") -depends=(spirv-headers) +depends=(spirv-headers gcc) makedepends=() md5sums=('9f40d51201510d809dbabc48b076febc') group=() diff --git a/sys/devel/clang/ympbuild b/sys/devel/clang/ympbuild new file mode 100644 index 00000000..df1c6236 --- /dev/null +++ b/sys/devel/clang/ympbuild @@ -0,0 +1,68 @@ +#!/usr/bin/env bash +name='clang' +release='1' +version='15.0.7' +url='https://github.com/llvm/llvm-project' +description='The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.' +email='aliriza.keskin@pardus.org.tr' +maintainer='aliriza' +license=('GPLv3') +source=( + "https://github.com/llvm/llvm-project/releases/download/llvmorg-$version/clang-$version.src.tar.xz" + "https://github.com/llvm/llvm-project/releases/download/llvmorg-$version/clang-tools-extra-$version.src.tar.xz" + "https://github.com/llvm/llvm-project/releases/download/llvmorg-$version/llvm-$version.src.tar.xz" + "https://github.com/llvm/llvm-project/releases/download/llvmorg-$version/cmake-$version.src.tar.xz" +) + +depends=(llvm) +makedepends=() +md5sums=( + 'a6d0141e50b48f5e60c682277dac83b4' + '68b76dd37b263aca3a5132b5f8c23f80' + 'c77db4c71e1eb267358204dffe2c6e10' + '5be9535f0b93cb6232d0171a8abb3137' +) +group=(sys.devel) +uses=() +arch=('x86_64') + +cd $name-$version.src + +prepare(){ + mv ../cmake{-$version.src,} + mv ../clang-tools-extra-$version.src ../clang-$version.src/tools/extra +} + +local cmake_args=( + -G Ninja + -DCMAKE_BUILD_TYPE=Release + -DCMAKE_INSTALL_PREFIX=/usr + -DCMAKE_INSTALL_DOCDIR=share/doc + -DCMAKE_SKIP_RPATH=ON + -DCLANG_DEFAULT_PIE_ON_LINUX=ON + -DCLANG_LINK_CLANG_DYLIB=ON + -DENABLE_LINKER_BUILD_ID=ON + -DLLVM_BUILD_DOCS=OFF + -DLLVM_BUILD_TESTS=ON + -DLLVM_ENABLE_RTTI=ON + -DLLVM_ENABLE_SPHINX=OFF + -DLLVM_EXTERNAL_LIT=/usr/bin/lit + -DLLVM_INCLUDE_DOCS=OFF + -DLLVM_LINK_LLVM_DYLIB=ON + -DSPHINX_WARNINGS_AS_ERRORS=OFF + -DLLVM_MAIN_SRC_DIR="$(realpath ~/llvm-$version.src)" + ) + +setup(){ + mkdir build && cd build + cmake .. ${cmake_args[@]} +} + +build(){ + ninja -C build +} + +package(){ + ninja -C build install +} +