@@ -35,6 +35,7 @@ PREFIX="$(pwd)/opt"
3535
3636DEVMODE=0
3737MSAN=0
38+ LIBURING=0
3839_CC=" ${CC:= gcc} "
3940_CXX=" ${CXX:= g++} "
4041EXTRA_CFLAGS=" -g3 -fno-omit-frame-pointer"
@@ -133,15 +134,17 @@ fetch () {
133134 if [[ $MSAN == 1 ]]; then
134135 checkout_llvm
135136 fi
136- checkout_repo zstd https://github.com/facebook/zstd " v1.5.7"
137- checkout_repo lz4 https://github.com/lz4/lz4 " v1.10.0"
138- checkout_repo s2n https://github.com/awslabs/s2n-bignum " " " 4d2e22a"
139- checkout_repo openssl https://github.com/openssl/openssl " openssl-3.6.0"
140- checkout_repo secp256k1 https://github.com/bitcoin-core/secp256k1 " v0.7.0"
137+ checkout_repo zstd https://github.com/facebook/zstd " v1.5.7"
138+ checkout_repo lz4 https://github.com/lz4/lz4 " v1.10.0"
139+ checkout_repo liburing https://github.com/axboe/liburing " liburing-2.12"
140+ checkout_repo s2n https://github.com/awslabs/s2n-bignum " " " 4d2e22a"
141+ checkout_repo openssl https://github.com/openssl/openssl " openssl-3.6.0"
142+ checkout_repo secp256k1 https://github.com/bitcoin-core/secp256k1 " v0.7.0"
143+ checkout_repo flatcc https://github.com/dvidelabs/flatcc.git " " " 3ae5eda"
141144 if [[ $DEVMODE == 1 ]]; then
142- checkout_repo bzip2 https://gitlab.com/bzip2/bzip2 " bzip2-1.0.8"
143- checkout_repo rocksdb https://github.com/facebook/rocksdb " v10.5.1"
144- checkout_repo snappy https://github.com/google/snappy " 1.2.2"
145+ checkout_repo bzip2 https://gitlab.com/bzip2/bzip2 " bzip2-1.0.8"
146+ checkout_repo rocksdb https://github.com/facebook/rocksdb " v10.5.1"
147+ checkout_repo snappy https://github.com/google/snappy " 1.2.2"
145148 fi
146149}
147150
@@ -438,6 +441,16 @@ install_lz4 () {
438441 echo " [+] Successfully installed lz4"
439442}
440443
444+ install_liburing () {
445+ cd " $PREFIX /git/liburing"
446+
447+ echo " [+] Installing liburing to $PREFIX "
448+ ./configure --prefix=" $PREFIX " --cc=" $CC -fPIC $EXTRA_CFLAGS "
449+ " ${MAKE[@]} "
450+ " ${MAKE[@]} " install
451+ echo " [+] Successfully installed liburing"
452+ }
453+
441454install_s2n () {
442455 cd " $PREFIX /git/s2n"
443456
@@ -610,6 +623,21 @@ install_snappy () {
610623 echo " [+] Successfully installed snappy"
611624}
612625
626+ install_flatcc () {
627+ echo " [+] Installing flatcc"
628+ cd " $PREFIX /git/flatcc"
629+ cmake -B build \
630+ -DCMAKE_INSTALL_PREFIX=$PREFIX \
631+ -DCMAKE_BUILD_TYPE=Release \
632+ -DFLATCC_INSTALL=ON \
633+ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
634+ -DCMAKE_CXX_FLAGS=" $EXTRA_CXXFLAGS " \
635+ -DCMAKE_EXE_LINKER_FLAGS=" $EXTRA_LDFLAGS "
636+ cmake --build build -j
637+ cmake --install build
638+ echo " [+] Successfully installed flatcc"
639+ }
640+
613641install () {
614642 CC=" $( command -v $_CC ) "
615643 cc=" $CC "
@@ -629,6 +657,11 @@ install () {
629657 fi
630658 ( install_zstd )
631659 ( install_lz4 )
660+ if [[ $LIBURING == 1 ]]; then
661+ if [[ " $OS " == " Linux" ]]; then
662+ ( install_liburing )
663+ fi
664+ fi
632665 if [[ " $( uname -m) " == x86_64 ]]; then
633666 ( install_s2n )
634667 fi
@@ -638,6 +671,7 @@ install () {
638671 ( install_bzip2 )
639672 ( install_snappy )
640673 ( install_rocksdb )
674+ ( install_flatcc )
641675 fi
642676
643677 # Merge lib64 with lib
@@ -673,6 +707,10 @@ while [[ $# -gt 0 ]]; do
673707 shift
674708 DEVMODE=1
675709 ;;
710+ " +uring" )
711+ shift
712+ LIBURING=1
713+ ;;
676714 nuke)
677715 shift
678716 nuke
0 commit comments