summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 35ea033d39367831cb6443165033d553f7044d40 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# Maintainer: Daniel Bermond < gmail-com: danielbermond >

pkgname=intel-graphics-compiler-git
pkgver=2018.12.12.r50.g66ad47d
pkgrel=1
pkgdesc='Intel Graphics Compiler for OpenCL (git version)'
arch=('x86_64')
url='https://github.com/intel/intel-graphics-compiler/'
license=('MIT')
depends=('gcc-libs' 'ncurses' 'zlib')
makedepends=(
    # official repositories:
        'git' 'cmake' 'python' 'python2' 'python2-pygments' 'python2-yaml'
        'spirv-tools'
    # AUR:
        'clang40'
)
provides=('intel-graphics-compiler')
conflicts=('intel-graphics-compiler' 'compute-runtime')
options=('!emptydirs')
source=('igc'::'git+https://github.com/intel/intel-graphics-compiler.git'
        'llvm_source'::'git+https://github.com/llvm-mirror/llvm#branch=release_40'
        'clang_source'::'git+https://github.com/llvm-mirror/clang#branch=release_40'
        'llvm7.0.0_source'::"git+https://github.com/llvm-mirror/llvm#branch=release_70"
        'llvm_patches'::'git+https://github.com/intel/llvm-patches'
        'common_clang'::'git+https://github.com/intel/opencl-clang'
        'opencl_headers'::'git+https://github.com/KhronosGroup/OpenCL-Headers')
sha256sums=('SKIP'
            'SKIP'
            'SKIP'
            'SKIP'
            'SKIP'
            'SKIP'
            'SKIP')

prepare() {
    mkdir -p build
}

pkgver() {
    cd igc
    
    # git, tags available
    git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^igc_release_//'
}

build() {
    cd build
    
    cmake \
        -DCMAKE_INSTALL_PREFIX:PATH='/usr' \
        -DIGC_OPTION__OUTPUT_DIR:PATH='../igc-install/Release' \
        -Wno-dev \
        ../igc/IGC
        
    make
    make package
    
    # license
    sed -n '2,20p' igc.opencl.h > LICENSE # create file
    sed -i '1,22s/^.\{,3\}//' LICENSE     # erase C comments
}

package() {
    cd build/_CPack_Packages/Linux/TXZ
    
    cd "$(find . -maxdepth 1 -type d -name 'intel-*')"
    
    local _dir
    while read -rd '' _dir
    do
        cd "$_dir"
        cp -af * "$pkgdir"
        cd ..
    done < <(find . -maxdepth 1 -type d -name 'igc-*' -print0)
    
    install -D -m644 "${srcdir}/build/LICENSE" -t "${pkgdir}/usr/share/licenses/${pkgname}"
}