-
Notifications
You must be signed in to change notification settings - Fork 4
/
pkg-dependency.sh
executable file
·83 lines (78 loc) · 1.22 KB
/
pkg-dependency.sh
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
79
80
81
82
83
#!/bin/bash
if [ -f "/etc/os-release" ]; then
. /etc/os-release
elif [ -f "/etc/arch-release" ]; then
export ID=arch
elif [ "$(uname)" == "Darwin" ]; then
export ID=darwin
else
echo "/etc/os-release missing."
exit 1
fi
fbe_fedora_packages=(
boost-devel
llvm
llvm-devel
clang
clang-tools-extra
lld
cmake
fmt-devel
flex
bison
git
lz4-devel
ninja-build
zlib-static
xxhash-devel
uuid-devel
google-benchmark-devel
)
fbe_debian_packages=(
cloc
curl
git
python2
lld
#cmake version of ubuntu is also too low.
cmake
ninja-build
gcc
g++
flex
bison
llvm
clang
clangd
clang-tidy
libxxhash-dev
libboost-dev
libfmt-dev
libbenchmark-dev
)
fbe_darwin_packages=(
cmake
ninja
fmt
doxygen
flex
bison
xxhash
boost
llvm
)
case "$ID" in
ubuntu | debian)
apt-get install -y "${fbe_debian_packages[@]}"
;;
fedora)
dnf install -y "${fbe_fedora_packages[@]}"
;;
darwin)
brew install -f "${fbe_darwin_packages[@]}"
;;
*)
echo "Your system ($ID) is not supported by this script. Please install dependencies manually."
exit 1
;;
esac