Require jemalloc

This commit is contained in:
Marcus Holland-Moritz 2020-12-15 14:53:16 +01:00
parent d6b086ed03
commit 5368a1e2e3
4 changed files with 12 additions and 3 deletions

View File

@ -25,6 +25,7 @@ addons:
- libboost-system-dev
- libboost-thread-dev
- libevent-dev
- libjemalloc-dev
- libdouble-conversion-dev
- libiberty-dev
- liblz4-dev

View File

@ -94,8 +94,10 @@ if(NOT FUSE_FOUND AND NOT FUSE3_FOUND)
message(FATAL_ERROR "No FUSE or FUSE3 library found")
endif()
find_path(SPARSEHASH_INCLUDE_DIR sparsehash/dense_hash_map REQUIRED)
find_program(RONN_EXE ronn)
find_path(SPARSEHASH_INCLUDE_DIR sparsehash/dense_hash_map
DOC "dense_hash_map header" REQUIRED)
find_program(RONN_EXE ronn DOC "ronn man page generator" REQUIRED)
find_library(JEMALLOC_LIBRARIES jemalloc DOC "jemalloc library" REQUIRED)
set(ZSTD_INCLUDE_DIR
""
@ -205,6 +207,7 @@ if(FUSE3_FOUND)
FUSE_USE_VERSION=35)
set_target_properties(dwarfs-bin PROPERTIES OUTPUT_NAME dwarfs)
target_link_libraries(dwarfs-bin PkgConfig::FUSE3)
target_link_libraries(dwarfs-bin ${JEMALLOC_LIBRARIES})
add_custom_target(mount.dwarfs ALL COMMAND ${CMAKE_COMMAND} -E create_symlink
dwarfs mount.dwarfs)
install(TARGETS dwarfs-bin RUNTIME DESTINATION sbin)
@ -218,6 +221,7 @@ if(FUSE_FOUND)
FUSE_USE_VERSION=29)
set_target_properties(dwarfs2-bin PROPERTIES OUTPUT_NAME dwarfs2)
target_link_libraries(dwarfs2-bin PkgConfig::FUSE)
target_link_libraries(dwarfs-bin ${JEMALLOC_LIBRARIES})
add_custom_target(
mount.dwarfs2 ALL COMMAND ${CMAKE_COMMAND} -E create_symlink dwarfs2
mount.dwarfs2)

View File

@ -146,6 +146,7 @@ A good starting point for apt-based systems is probably:
libboost-system-dev \
libboost-thread-dev \
libevent-dev \
libjemalloc-dev \
libdouble-conversion-dev \
libiberty-dev \
liblz4-dev \

View File

@ -5,10 +5,13 @@ target=$1
shift
fuse=""
malloc=""
if [[ "$target" == "dwarfs" ]]; then
fuse="/usr/lib/x86_64-linux-gnu/libfuse3.a"
malloc="/usr/lib/x86_64-linux-gnu/libjemalloc.a"
elif [[ "$target" == "dwarfs2" ]]; then
fuse="/usr/lib/x86_64-linux-gnu/libfuse.a"
malloc="/usr/lib/x86_64-linux-gnu/libjemalloc.a"
fi
g++ -static -static-libgcc -static-libstdc++ "$@" -o "$target" \
@ -36,12 +39,12 @@ g++ -static -static-libgcc -static-libstdc++ "$@" -o "$target" \
/usr/lib/x86_64-linux-gnu/libssl.a \
/usr/lib/x86_64-linux-gnu/libcrypto.a \
/usr/lib/x86_64-linux-gnu/libiberty.a \
/usr/lib/x86_64-linux-gnu/libiberty.a \
/usr/lib/x86_64-linux-gnu/libunwind.a \
/usr/lib/x86_64-linux-gnu/liblz4.a \
/usr/lib/x86_64-linux-gnu/liblzma.a \
/usr/lib/x86_64-linux-gnu/libz.a \
/usr/lib/gcc/x86_64-linux-gnu/10/libatomic.a \
$malloc \
/usr/lib/x86_64-linux-gnu/libpthread.a \
/usr/lib/x86_64-linux-gnu/libdl.a \
/usr/lib/x86_64-linux-gnu/libc.a \