
* Start cleanup for improved packaging Signed-off-by: falkTX <falktx@falktx.com> * Use the same folder for VST2 plugins Signed-off-by: falkTX <falktx@falktx.com> * Fix static build Signed-off-by: falkTX <falktx@falktx.com> * Do not set source-dir in CI builds Signed-off-by: falkTX <falktx@falktx.com> * Set a custom fallback systemdir per OS Signed-off-by: falkTX <falktx@falktx.com> * CI tweaks Signed-off-by: falkTX <falktx@falktx.com> * Build the whole pyqt on windows Signed-off-by: falkTX <falktx@falktx.com> * Mention AU in readme and differences docs Signed-off-by: falkTX <falktx@falktx.com> * Add specialized utils for macOS packaging Signed-off-by: falkTX <falktx@falktx.com> * Fix plugin-validation build Signed-off-by: falkTX <falktx@falktx.com> * Fix build Signed-off-by: falkTX <falktx@falktx.com> * Do not create window for lv2lint tests * Start enabling AU builds * Copy over mod.lv2 specs for validation * Skip main cardinal lv2lint, the custom CVPorts are not supported * au build needs carla * More CI tweaks * Build headless version for plugin validation * Fix typo * Only show missing resources error message once Signed-off-by: falkTX <falktx@falktx.com> * Fallback to system path even if using a plugin bundle Signed-off-by: falkTX <falktx@falktx.com> * CI fixes, build full carla on Windows Signed-off-by: falkTX <falktx@falktx.com> * Rename script Signed-off-by: falkTX <falktx@falktx.com> * Silly typo Signed-off-by: falkTX <falktx@falktx.com> * More CI tweaks, add windows installer Signed-off-by: falkTX <falktx@falktx.com> * Setup Carla paths for Windows Signed-off-by: falkTX <falktx@falktx.com> * Yet more tweaks Signed-off-by: falkTX <falktx@falktx.com> * Package carla on windows, use xvfb-run Signed-off-by: falkTX <falktx@falktx.com> * Test win32 build too Signed-off-by: falkTX <falktx@falktx.com> * Finalize rework Signed-off-by: falkTX <falktx@falktx.com>
53 lines
1.4 KiB
Bash
Executable file
53 lines
1.4 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
if [ ! -d bin ]; then
|
|
echo "Please run this script from the root folder"
|
|
exit
|
|
fi
|
|
|
|
# args
|
|
bit=${1}
|
|
bit=${bit:=64}
|
|
|
|
# setup innosetup
|
|
dlfile="${PWD}/bin/innosetup-6.0.5.exe"
|
|
innodir="${PWD}/build/innosetup-6.0.5"
|
|
iscc="${innodir}/drive_c/InnoSetup/ISCC.exe"
|
|
|
|
# download it
|
|
if [ ! -f "${dlfile}" ]; then
|
|
# FIXME proper dl version
|
|
curl -L https://jrsoftware.org/download.php/is.exe?site=2 -o "${dlfile}"
|
|
fi
|
|
|
|
# initialize wine
|
|
if [ ! -d "${innodir}"/drive_c ]; then
|
|
env WINEPREFIX="${innodir}" wineboot -u
|
|
fi
|
|
|
|
# install innosetup in custom wineprefix
|
|
if [ ! -f "${innodir}"/drive_c/InnoSetup/ISCC.exe ]; then
|
|
env WINEPREFIX="${innodir}" wine "${dlfile}" /allusers /dir=C:\\InnoSetup /nocancel /norestart /verysilent
|
|
fi
|
|
|
|
# generate resources
|
|
echo -n "" > utils/inno/resources.iss
|
|
IFS='
|
|
'
|
|
for f in $(find -L bin/Cardinal.lv2/resources/ -type f); do
|
|
d=$(dirname $(echo ${f} | sed "s|bin/Cardinal.lv2/resources/||"))
|
|
echo "Source: \"..\\..\\$(echo ${f} | tr '/' '\\')\"; DestDir: \"{commoncf${bit}}\\Cardinal\\$(echo ${d} | tr '/' '\\')\"; Components: resources; Flags: ignoreversion;" >> utils/inno/resources.iss
|
|
done
|
|
|
|
# generate version
|
|
echo "#define VERSION \"$(make version)\"" > utils/inno/version.iss
|
|
|
|
# create the installer file
|
|
pushd "utils/inno"
|
|
env WINEPREFIX="${innodir}" wine "${iscc}" "win${bit}.iss"
|
|
popd
|
|
|
|
# move installer file where CI expects it to be
|
|
mv utils/inno/*.exe .
|