first commit
This commit is contained in:
68
build.sh
Executable file
68
build.sh
Executable file
@@ -0,0 +1,68 @@
|
||||
# Универсальный скрипт сборки futriis для Linux и Illumos
|
||||
|
||||
#!/usr/bin/env/sh
|
||||
|
||||
set -e
|
||||
|
||||
echo ""
|
||||
echo "🔨 Building futriis database..."
|
||||
|
||||
# Определение ОС
|
||||
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
# Функция для вывода ошибок красным цветом
|
||||
error_msg() {
|
||||
echo -e "\033[0;31m❌ $1\033[0m"
|
||||
}
|
||||
|
||||
# Функция для вывода успешных сообщений зелёным цветом
|
||||
success_msg() {
|
||||
echo -e "\033[0;32m✅ $1\033[0m"
|
||||
}
|
||||
|
||||
# Функция для вывода информационных сообщений
|
||||
info_msg() {
|
||||
echo "📋 $1"
|
||||
}
|
||||
|
||||
case "$OS" in
|
||||
linux)
|
||||
echo "Building for Linux"
|
||||
GOOS=linux GOARCH=amd64 go build -o bin/futriis-linux ./cmd/futriis
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
success_msg "Build successful for Linux"
|
||||
cp bin/futriis-linux ./futriis-linux
|
||||
info_msg "Binary copied to: ./futriis-linux"
|
||||
else
|
||||
error_msg "Build failed for Linux"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
sunos|illumos)
|
||||
echo "Building for Illumos"
|
||||
export GOOS=illumos
|
||||
export GOARCH=amd64
|
||||
export CGO_ENABLED=1
|
||||
|
||||
go build -tags=illumos -o bin/futriis-illumos ./cmd/futriis
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
success_msg "Build successful for Illumos"
|
||||
cp bin/futriis-illumos ./futriis-illumos
|
||||
info_msg "Binary copied to: ./futriis-illumos"
|
||||
else
|
||||
error_msg "Build failed for Illumos"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
|
||||
*)
|
||||
error_msg "Unsupported OS: $OS"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
echo ""
|
||||
success_msg "Build complete. Binaries in bin/ and root directory"
|
||||
Reference in New Issue
Block a user