#!/bin/bash export CBS_BASE=$(cd $(dirname "$0"); pwd) if [ -e $CBS_BASE/config.sh ]; then . $CBS_BASE/config.sh else echo "config.sh not found." exit 1 fi if [ "$CBS_PARALLEL" == "" ]; then echo " (\$CBS_PARALLEL not set; add export CBS_PARALLEL=\"-j4\" or similar to config.sh to do parallel builds)" fi # $1 must be package name if [ "$1" == "" ]; then echo "Syntax: $0 [variant]" exit 1 fi PACKAGE=$1 shift; VARIANT=$1 export CBS_ARCHIVES=$CBS_BASE/Archives export CBS_PATCHES=$CBS_BASE/Patches export CBS_REPOS=$CBS_BASE/Repos errors=0 # Some packages (e.g. glib with glib-genmarshal) require native tools # (that they build) as part of the build process, so we need to build # the build host's version first. for v in x86_64 arm64; do export CBS_VARIANT=$v if [ "$VARIANT" == "" -o "$VARIANT" == "$CBS_VARIANT" ]; then source $CBS_BASE/tools.sh source $CBS_BASE/Variants/$CBS_VARIANT export CBS_ROOT=$CBS_BASE/$CBS_CLANG_ARCH export CBS_BUILD=$CBS_BASE/Build/$CBS_CLANG_ARCH export CBS_BUILD_BIN=$CBS_BASE/x86_64/bin export PKG_CONFIG_LIBDIR=$CBS_ROOT/lib/pkgconfig export PKG_CONFIG_PATH= # Magic variable to set target OS X version export MACOSX_DEPLOYMENT_TARGET=$CBS_MACOSX_DEPLOYMENT export CBS_MACOSX_SDK=$CBS_MACOSX_SDK_PREFIX/MacOSX${CBS_MACOSX_SDK_VERSION}.sdk export CBS_OSX_FLAGS="-arch $CBS_CLANG_ARCH -isysroot $CBS_MACOSX_SDK" export CBS_BUILD_TRIPLE=x86_64-apple-darwin export CBS_HOST_TRIPLE=$CBS_CONFIGURE_ARCH-apple-darwin export MESON=$CBS_BASE/meson-0.56.0/meson.py mkdir -p $CBS_ROOT $CBS_BUILD $CBS_BASE/Log/$CBS_CLANG_ARCH cd $CBS_BUILD echo -n " $PACKAGE for $CBS_VARIANT... " bash $CBS_BASE/Scripts/$PACKAGE.sh > $CBS_BASE/Log/$CBS_CLANG_ARCH/$PACKAGE.log 2>&1 if [ "$?" != "0" ]; then echo "********* ERROR!" errors=`expr $errors + 1` else echo "OK" fi fi done exit $errors