CI
Some checks failed
Bin2CPP / Build & Test Debug with ./ConanProfiles/clang (Unity Build: ON) (push) Failing after 4m10s
Bin2CPP / Clang Format Checks (push) Has been cancelled
Bin2CPP / Build & Test Debug with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Bin2CPP / Build & Test RelWithDebInfo with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test RelWithDebInfo with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Bin2CPP / Build & Test Release with ./ConanProfiles/clang (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test Release with ./ConanProfiles/clang (Unity Build: ON) (push) Has been cancelled
Bin2CPP / Build & Test Debug with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test Debug with ./ConanProfiles/clang (Unity Build: OFF) (push) Failing after 4m15s
Bin2CPP / Build & Test RelWithDebInfo with ./ConanProfiles/clang (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test RelWithDebInfo with ./ConanProfiles/clang (Unity Build: ON) (push) Has been cancelled
Bin2CPP / Build & Test Release with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test Release with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Conan Packaging / Package Bin2CPP/1.0.0 (push) Has been cancelled
Bin2CPP / Sonarqube (push) Has been cancelled
Some checks failed
Bin2CPP / Build & Test Debug with ./ConanProfiles/clang (Unity Build: ON) (push) Failing after 4m10s
Bin2CPP / Clang Format Checks (push) Has been cancelled
Bin2CPP / Build & Test Debug with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Bin2CPP / Build & Test RelWithDebInfo with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test RelWithDebInfo with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Bin2CPP / Build & Test Release with ./ConanProfiles/clang (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test Release with ./ConanProfiles/clang (Unity Build: ON) (push) Has been cancelled
Bin2CPP / Build & Test Debug with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test Debug with ./ConanProfiles/clang (Unity Build: OFF) (push) Failing after 4m15s
Bin2CPP / Build & Test RelWithDebInfo with ./ConanProfiles/clang (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test RelWithDebInfo with ./ConanProfiles/clang (Unity Build: ON) (push) Has been cancelled
Bin2CPP / Build & Test Release with ./ConanProfiles/clang_asan (Unity Build: OFF) (push) Has been cancelled
Bin2CPP / Build & Test Release with ./ConanProfiles/clang_asan (Unity Build: ON) (push) Has been cancelled
Conan Packaging / Package Bin2CPP/1.0.0 (push) Has been cancelled
Bin2CPP / Sonarqube (push) Has been cancelled
This commit is contained in:
@@ -1,18 +1,44 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# ─── Validate argument ────────────────────────────────────────────────────────
|
||||
# ─── Validate arguments ───────────────────────────────────────────────────────
|
||||
if [[ $# -lt 1 ]]; then
|
||||
echo "Usage: $(basename "$0") [force|missing] [Release|RelWithDebInfo|Debug]"
|
||||
echo " force - Rebuild all packages from source"
|
||||
echo " missing - Only build packages not already cached"
|
||||
echo " build_type (optional) - One of: Release, RelWithDebInfo, Debug"
|
||||
echo " If omitted, all build types are processed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case "${1:-}" in
|
||||
force) build_option="--build=*" ;;
|
||||
missing) build_option="--build=missing" ;;
|
||||
*)
|
||||
echo "Usage: $(basename "$0") [force|missing]"
|
||||
echo "Usage: $(basename "$0") [force|missing] [Release|RelWithDebInfo|Debug]"
|
||||
echo " force - Rebuild all packages from source"
|
||||
echo " missing - Only build packages not already cached"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
# ─── Validate optional build_type argument ────────────────────────────────────
|
||||
all_build_types=(Release RelWithDebInfo Debug)
|
||||
|
||||
if [[ -n "${2:-}" ]]; then
|
||||
case "${2}" in
|
||||
Release|RelWithDebInfo|Debug)
|
||||
build_types=("${2}")
|
||||
;;
|
||||
*)
|
||||
echo "ERROR: Invalid build type '${2}'. Must be one of: Release, RelWithDebInfo, Debug"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
else
|
||||
build_types=("${all_build_types[@]}")
|
||||
fi
|
||||
|
||||
# ─── Register remote (skip if already registered) ─────────────────────────────
|
||||
if conan remote list 2>/dev/null | grep -qi "bigfootpackages"; then
|
||||
echo "Conan remote 'bigfootpackages' already registered, skipping."
|
||||
@@ -33,7 +59,7 @@ conan_common=(
|
||||
)
|
||||
|
||||
# ─── Install dependencies for each build type ─────────────────────────────────
|
||||
for build_type in Release RelWithDebInfo Debug; do
|
||||
for build_type in "${build_types[@]}"; do
|
||||
echo
|
||||
echo "[${build_type}] Installing dependencies..."
|
||||
if ! conan install . "${conan_common[@]}" ${build_option} -s:h "build_type=${build_type}"; then
|
||||
@@ -44,13 +70,13 @@ for build_type in Release RelWithDebInfo Debug; do
|
||||
done
|
||||
|
||||
echo
|
||||
echo "All build types installed successfully."
|
||||
echo "All selected build types installed successfully."
|
||||
|
||||
# ─── Configure CMake for each build type ─────────────────────────────────────
|
||||
echo
|
||||
echo "Configuring CMake for each build type..."
|
||||
|
||||
for build_type in Release RelWithDebInfo Debug; do
|
||||
for build_type in "${build_types[@]}"; do
|
||||
echo
|
||||
echo "[${build_type}] Activating build environment..."
|
||||
# shellcheck disable=SC1090
|
||||
|
||||
Reference in New Issue
Block a user