pgadmin4/pkg/mac/build.sh

86 lines
2.4 KiB
Bash
Raw Normal View History

2016-06-02 07:56:56 -05:00
#!/bin/bash
# Build script to create Mac App Bundle and DMG for pgAdmin4 runtime
# Exit when any command fails
set -e -E
2016-06-02 07:56:56 -05:00
# Debugging shizz
trap 'last_command=$current_command; current_command=$BASH_COMMAND' DEBUG
trap 'if [ $? -ne 0 ]; then echo "\"${last_command}\" command filed with exit code $?."; fi' EXIT
SCRIPT_DIR=$(cd `dirname $0` && pwd)
SOURCE_DIR=$(realpath ${SCRIPT_DIR}/../..)
BUILD_ROOT=$(realpath ${SCRIPT_DIR}/../..)/mac-build
DIST_ROOT=$(realpath ${SCRIPT_DIR}/../..)/dist
if [ ! -f ${SCRIPT_DIR}/framework.conf ]; then
echo
echo "Error: pkg/mac/framework.conf not found!"
echo "Copy pkg/mac/framework.conf.in to pkg/mac/framework.conf and edit as required for the current system."
echo
exit 1
fi
CODESIGN=1
if [ ! -f ${SCRIPT_DIR}/codesign.conf ]; then
echo
echo "******************************************************************"
echo "* ${SCRIPT_DIR}/codesign.conf not found. NOT signing the binaries."
echo "******************************************************************"
echo
CODESIGN=0
sleep 5
else
source ${SCRIPT_DIR}/codesign.conf
2016-06-02 07:56:56 -05:00
fi
if [ "x${PGADMIN_PYTHON_DIR}" == "x" ]; then
echo "PGADMIN_PYTHON_DIR not set. Setting it to the default: /usr/local/python"
export PGADMIN_PYTHON_DIR=/usr/local/python
fi
PYTHON_EXE=${PGADMIN_PYTHON_DIR}/bin/python3
2016-06-02 07:56:56 -05:00
# Check if Python is working and calculate PYTHON_VERSION
if ${PYTHON_EXE} -V > /dev/null 2>&1; then
PYTHON_VERSION=`${PYTHON_EXE} -V 2>&1 | awk '{print $2}' | cut -d"." -f1-2 | sed 's/\.//'`
2016-06-02 07:56:56 -05:00
else
echo "Error: Python installation missing!"
exit 1
fi
if [ "${PYTHON_VERSION}" -gt "38" ] && [ "${PYTHON_VERSION}" -lt "34" ]; then
echo "Python version not supported."
2016-06-02 07:56:56 -05:00
exit 1
fi
if [ "x${PGADMIN_QT_DIR}" == "x" ]; then
echo "PGADMIN_QT_DIR not set. Setting it to the default: ~/Qt/5.13.2/clang_64"
export PGADMIN_QT_DIR=~/Qt/5.13.2/clang_64
2016-06-02 07:56:56 -05:00
fi
QMAKE=${PGADMIN_QT_DIR}/bin/qmake
2019-03-21 09:02:19 -05:00
if ! ${QMAKE} --version > /dev/null 2>&1; then
2016-06-02 07:56:56 -05:00
echo "Error: qmake not found. QT installation is not present or incomplete."
exit 1
fi
if [ "x${PGADMIN_POSTGRES_DIR}" == "x" ]; then
echo "PGADMIN_POSTGRES_DIR not set. Setting it to the default: /usr/local/pgsql"
export PGADMIN_POSTGRES_DIR=/usr/local/pgsql
2016-06-02 07:56:56 -05:00
fi
source ${SCRIPT_DIR}/build-functions.sh
_setup_env
2016-06-02 07:56:56 -05:00
_cleanup
_create_venv
_build_runtime
_build_docs
2016-06-02 07:56:56 -05:00
_complete_bundle
_framework_config
_codesign_binaries
_codesign_bundle
2016-06-02 07:56:56 -05:00
_create_dmg
_codesign_dmg