mirror of
https://github.com/Mahdi-zarei/nekoray.git
synced 2025-12-18 20:50:09 +08:00
61 lines
1.2 KiB
Bash
Executable File
61 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
mkdir -p libs
|
|
cd libs
|
|
|
|
if [ -z $cmake ]; then
|
|
cmake="cmake"
|
|
fi
|
|
if [ -z $deps ]; then
|
|
deps="deps"
|
|
fi
|
|
|
|
mkdir -p $deps
|
|
cd $deps
|
|
INSTALL_PREFIX=$PWD/built
|
|
rm -rf $INSTALL_PREFIX
|
|
mkdir -p $INSTALL_PREFIX
|
|
|
|
#### clean ####
|
|
clean() {
|
|
rm -rf dl.zip yaml-* zxing-* protobuf
|
|
}
|
|
|
|
#### yaml-cpp ####
|
|
curl -L -o dl.zip https://github.com/jbeder/yaml-cpp/archive/refs/tags/yaml-cpp-0.7.0.zip
|
|
unzip dl.zip
|
|
|
|
cd yaml-*
|
|
mkdir -p build
|
|
cd build
|
|
|
|
$cmake .. -GNinja -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTING=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=$1 -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX
|
|
ninja && ninja install
|
|
|
|
cd ../..
|
|
|
|
#### protobuf ####
|
|
git clone --recurse-submodules -b v30.2 --depth 1 --shallow-submodules https://github.com/parhelia512/protobuf
|
|
|
|
mkdir -p protobuf/build
|
|
cd protobuf/build
|
|
|
|
$cmake .. -GNinja \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DBUILD_SHARED_LIBS=OFF \
|
|
-Dprotobuf_MSVC_STATIC_RUNTIME=OFF \
|
|
-Dprotobuf_BUILD_TESTS=OFF \
|
|
-DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX \
|
|
-Dprotobuf_BUILD_PROTOBUF_BINARIES=ON \
|
|
-Dprotobuf_BUILD_LIBUPB=OFF \
|
|
-DCMAKE_OSX_ARCHITECTURES=$1 \
|
|
-DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 \
|
|
-DCMAKE_CXX_STANDARD=17
|
|
ninja && ninja install
|
|
|
|
cd ../..
|
|
|
|
####
|
|
clean
|