-
Notifications
You must be signed in to change notification settings - Fork 5
/
Makefile
37 lines (31 loc) · 1.22 KB
/
Makefile
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
.DEFAULT_GOAL := debug
.PHONY: setup setup-debug release debug paper clean
setup:
meson setup --native-file meson.ini build-rel --buildtype=release -Db_sanitize=none
meson setup --native-file meson.ini build-dbg --buildtype=debug
ln -s build-dbg builddir
debug:
meson setup --native-file meson.ini build-dbg --buildtype=debug
cd build-dbg; meson compile
release:
meson setup --native-file meson.ini build-rel --buildtype=release -Db_sanitize=none
cd build-rel; meson compile
paper:
@$(MAKE) -C atc2024
clean:
cd build-rel; meson compile --clean
cd build-dbg; meson compile --clean
install-deps:
# Folly deps
sudo apt install -y libboost-all-dev libdouble-conversion-dev libevent-dev \
libgflags-dev libgmock-dev libgoogle-glog-dev libgtest-dev \
liblz4-dev liblzma-dev libsnappy-dev libsodium-dev libunwind-dev \
libzstd-dev ninja-build zlib1g-dev
# SPDK deps
sudo apt install -y libnuma-dev libarchive-dev libibverbs-dev librdmacm-dev \
python3-pyelftools libcunit1-dev libaio-dev nasm librados-dev librbd-dev
# LSVD deps
sudo apt install -y meson mold libfmt-dev librados-dev \
libjemalloc-dev libradospp-dev pkg-config uuid-dev ceph-common
# to make my life a little easier
sudo apt install -y gdb fish