]> git.ipfire.org Git - ipfire-3.x.git/blob - llvm/llvm.nm
kernel: Update to 5.3.7
[ipfire-3.x.git] / llvm / llvm.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = llvm
7 version = 8.0.0
8 release = 1
9
10 groups = Applications/System
11 url = http://llvm.org
12 license = NCSA
13 summary = The Low Level Virtual Machine.
14
15 description
16 LLVM is a compiler infrastructure designed for compile-time, link-time,
17 runtime, and idle-time optimization of programs from arbitrary programming
18 languages. The compiler infrastructure includes mirror sets of programming
19 tools as well as libraries with equivalent functionality.
20 end
21
22 source_dl = http://releases.llvm.org/%{version}/
23 sources = %{thisapp}.src.tar.xz
24
25 build
26 requires
27 binutils >= 2.32
28 cmake >= 3.14.5
29 gcc
30 gcc-c++
31 libedit-devel >= 3.1-20190324
32 libffi-devel
33 libxml2-devel
34 zlib-devel
35 end
36
37 DIR_APP = %{DIR_SRC}/%{thisapp}.src
38
39 # Limit parallelization to only 2 jobs at the same time.
40 PARALLELISMFLAGS = -j2
41
42 # Set suffix for libdir based on the build architecture.
43 llvm_libdir_suffix =
44
45 if "%{DISTRO_ARCH}" == "x86_64"
46 llvm_libdir_suffix = 64
47 end
48
49 if "%{DISTRO_ARCH}" == "aarch64"
50 llvm_libdir_suffix = 64
51 end
52
53 build
54 # Create and switch into build directory.
55 mkdir -pv %{DIR_APP}/build
56 cd %{DIR_APP}/build
57
58 %{cmake} .. \
59 -DLLVM_BUILD_TOOLS=ON \
60 -DLLVM_BUILD_UTILS=ON \
61 -DLLVM_BUILD_TESTS=OFF \
62 -DLLVM_BUILD_EXAMPLES=OFF \
63 -DLLVM_BUILD_BENCHMARKS=OFF \
64 -DCMAKE_BUILD_TYPE=Release \
65 -DCMAKE_INSTALL_RPATH=";" \
66 -DLLVM_BUILD_LLVM_DYLIB=OFF \
67 -DLLVM_LINK_LLVM_DYLIB=OFF \
68 -DBUILD_SHARED_LIBS=ON \
69 -DLLVM_ENABLE_FFI=ON \
70 -DLLVM_ENABLE_RTTI=ON \
71 -DLLVM_ENABLE_LIBCXX=OFF \
72 -DLLVM_TARGETS_TO_BUILD="host;" \
73 -DCMAKE_C_COMPILER=gcc \
74 -DCMAKE_CXX_COMPILER=g++ \
75 -DCMAKE_CXX_FLAGS_RELEASE:STRING="%{CFLAGS}" \
76 -DCMAKE_EXE_LINKER_FLAGS="%{LDFLAGS}" \
77 -DENABLE_PIC=1 \
78 -DLLVM_PARALLEL_LINK_JOBS=1 \
79 -DLLVM_ENABLE_DUMP=ON \
80 -DLLVM_LIBDIR_SUFFIX=%{llvm_libdir_suffix} \
81 -Wno-dev
82
83 make %{PARALELLISMFLAGS}
84 end
85
86 test
87 cd %{DIR_APP}/build
88
89 make check-all %{PARALELLISMFLAGS}
90 end
91
92 install
93 cd %{DIR_APP}/build
94
95 make install DESTDIR=%{BUILDROOT}
96 end
97 end
98
99 packages
100 package llvm
101
102 package llvm-libs
103 template LIBS
104 end
105
106 package llvm-devel
107 template DEVEL
108 end
109
110 package %{name}-debuginfo
111 template DEBUGINFO
112 end
113 end