diff --git a/data/windows/build-deps.sh b/data/windows/build-deps.sh index 72e0d0b90..f8ab82797 100755 --- a/data/windows/build-deps.sh +++ b/data/windows/build-deps.sh @@ -113,8 +113,6 @@ export CXX=${MINGW_PREFIX}-g++ export STRIP=${MINGW_PREFIX}-strip export WINDRES=${MINGW_PREFIX}-windres -export PATH=/opt/mingw${ARCH}/${MINGW_PREFIX}/bin:/opt/mingw${ARCH}/bin:${PATH} - if [ -z "${NOSSE}" ]; then export CFLAGS="-O3 -mtune=generic -msse -msse2 -mfpmath=sse -mstackrealign -fvisibility=hidden -fdata-sections -ffunction-sections" else diff --git a/data/windows/build-pyqt.sh b/data/windows/build-pyqt.sh index 8b4e0b2fc..8588f32bd 100755 --- a/data/windows/build-pyqt.sh +++ b/data/windows/build-pyqt.sh @@ -15,31 +15,11 @@ cd $(dirname $0) source common.env -# ------------------------------------------------------------------------------------ -# function to build python - -build_python() -{ - # --------------------------------------------------------------------------------------------------------------------- -# clean env - -unset AR -unset CC -unset CXX -unset STRIP -unset WINDRES - -unset PKG_CONFIG_PATH - -unset CFLAGS -unset CPPFLAGS -unset CXXFLAGS -unset LDFLAGS +# function to download python stuff from msys2 -export PREFIX=${TARGETDIR}/carla-w${ARCH_PREFIX} -export PATH=${PREFIX}/bin:/usr/sbin:/usr/bin:/sbin:/bin -export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig +download_python() +{ # --------------------------------------------------------------------------------------------------------------------- # setup @@ -51,160 +31,171 @@ else fi # --------------------------------------------------------------------------------------------------------------------- -# download stuff +# list packages + +PACKAGES=( + "binutils-2.32-3" + "bzip2-1.0.8-1" + "crt-git-7.0.0.5524.2346384e-1" + "dbus-1.12.8-1" + "double-conversion-3.1.5-1" + "expat-2.2.8-1" + "freetype-2.10.1-1" + "gcc-9.2.0-2" + "gcc-libs-9.2.0-2" + "gettext-0.19.8.1-8" + "glib2-2.62.1-1" + "gmp-6.1.2-1" + "graphite2-1.3.13-1" + "harfbuzz-2.6.2-1" + "icu-64.2-1" + "jasper-2.0.16-1" + "libffi-3.2.1-4" + "libiconv-1.16-1" + "libjpeg-turbo-2.0.3-1" + "libpng-1.6.37-3" + "libtiff-4.0.9-2" + "libwebp-1.0.3-1" + "libxml2-2.9.9-2" + "libxslt-1.1.33-1" + "libwinpthread-git-7.0.0.5522.977a9720-1" + "headers-git-7.0.0.5524.2346384e-1" + "openssl-1.1.1.d-1" + "pcre-8.43-1" + "pcre2-10.33-1" + "pyqt5-common-5.13.1-1" + "python3-3.7.4-7" + "python3-cx_Freeze-5.1.1-3" + "python3-nuitka-0.6.4-1" + "python3-sip-4.19.19-1" + "python3-pyqt5-5.13.1-1" + "qt5-5.13.1-1" + "qtwebkit-5.212.0alpha2-6" + "sqlite3-3.30.0-1" + "windows-default-manifest-6.4-3" + "winpthreads-git-7.0.0.5522.977a9720-1" + "xz-5.2.4-1" + "zlib-1.2.11-7" + "zstd-1.4.3-1" +) +# qt5-static-5.12.4-1 + +PKG_DIR="$(pwd)/python-pkgs-${CPUARCH}" +PKG_PREFIX="mingw-w64-${CPUARCH}-" +PKG_SUFFIX="-any.pkg.tar.xz" REPO_URL="http://repo.msys2.org/mingw/${CPUARCH}" -GCC_VERSION="9.2.0-2" -WINPTHREADS_VERSION="git-7.0.0.5522.977a9720-1" -PYTHON_VERSION="3.7.4-7" -QT5_VERSION="5.13.1-1" -SIP_VERSION="4.19.19-1" -PYQT5_VERSION="5.13.1-1" - -PKGDIR="$(pwd)/python-pkgs-${CPUARCH}" - -mkdir -p "${PKGDIR}" -pushd "${PKGDIR}" - -# # gcc -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-gcc-${GCC_VERSION}-any.pkg.tar.xz" -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-gcc-libs-${GCC_VERSION}-any.pkg.tar.xz" -# -# # winpthreads -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-libwinpthread-${WINPTHREADS_VERSION}-any.pkg.tar.xz" -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-winpthreads-${WINPTHREADS_VERSION}-any.pkg.tar.xz" -# -# # python3 -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-python3-${PYTHON_VERSION}-any.pkg.tar.xz" -# -# # sip -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-python3-sip-${SIP_VERSION}-any.pkg.tar.xz" -# -# # qt5 -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-qt5-${QT5_VERSION}-any.pkg.tar.xz" -# # /mingw-w64-${CPUARCH}-qt5-static-5.12.4-1-any.pkg.tar.xz -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-qtwebkit-5.212.0alpha2-6-any.pkg.tar.xz" - -# # pyqt5 -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-pyqt5-common-${PYQT5_VERSION}-any.pkg.tar.xz" -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-python3-pyqt5-${PYQT5_VERSION}-any.pkg.tar.xz" -# -# # misc -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-zlib-1.2.11-7-any.pkg.tar.xz" -# wget -c "${REPO_URL}/mingw-w64-${CPUARCH}-zstd-1.4.3-1-any.pkg.tar.xz" -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-expat-2.2.8-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-icu-64.2-1-any.pkg.tar.xz -# # wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-pcre-8.43-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-pcre2-10.33-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-double-conversion-3.1.5-1-any.pkg.tar.xz - -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-harfbuzz-2.6.2-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-libpng-1.6.37-3-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-dbus-1.12.8-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-freetype-2.10.1-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-glib2-2.62.1-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-graphite2-1.3.13-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-bzip2-1.0.8-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-gettext-0.19.8.1-8-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-libiconv-1.16-1-any.pkg.tar.xz - -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-libffi-3.2.1-4-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-openssl-1.1.1.d-1-any.pkg.tar.xz - -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-libjpeg-turbo-2.0.3-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-sqlite3-3.30.0-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-libwebp-1.0.3-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-libxml2-2.9.9-2-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-libxslt-1.1.33-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-xz-5.2.4-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-jasper-2.0.16-1-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-libtiff-4.0.9-2-any.pkg.tar.xz -# wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-python3-nuitka-0.6.4-1-any.pkg.tar.xz -wget -c http://repo.msys2.org/mingw/i686/mingw-w64-i686-python3-cx_Freeze-5.1.1-3-any.pkg.tar.xz - -# wget -c +# --------------------------------------------------------------------------------------------------------------------- +# download stuff + +mkdir -p "${PKG_DIR}" +pushd "${PKG_DIR}" + +for PKG in ${PACKAGES[@]}; do + wget -c "${REPO_URL}/${PKG_PREFIX}${PKG}${PKG_SUFFIX}" +done popd # --------------------------------------------------------------------------------------------------------------------- # extract into target dir -# rm -rf "${TARGETDIR}/msys2-${CPUARCH}" -# mkdir "${TARGETDIR}/msys2-${CPUARCH}" +rm -rf "${TARGETDIR}/msys2-${CPUARCH}" +mkdir "${TARGETDIR}/msys2-${CPUARCH}" pushd "${TARGETDIR}/msys2-${CPUARCH}" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-gcc-${GCC_VERSION}-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-gcc-libs-${GCC_VERSION}-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-libwinpthread-${WINPTHREADS_VERSION}-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-winpthreads-${WINPTHREADS_VERSION}-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-python3-${PYTHON_VERSION}-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-python3-sip-${SIP_VERSION}-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-qt5-${QT5_VERSION}-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-pyqt5-common-${PYQT5_VERSION}-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-python3-pyqt5-${PYQT5_VERSION}-any.pkg.tar.xz" - -# tar xf "${PKGDIR}/mingw-w64-i686-expat-2.2.8-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-icu-64.2-1-any.pkg.tar.xz" -# # tar xf "${PKGDIR}/mingw-w64-i686-pcre-8.43-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-pcre2-10.33-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-double-conversion-3.1.5-1-any.pkg.tar.xz" - -# tar xf "${PKGDIR}/mingw-w64-i686-harfbuzz-2.6.2-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-libpng-1.6.37-3-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-dbus-1.12.8-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-freetype-2.10.1-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-glib2-2.62.1-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-graphite2-1.3.13-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-bzip2-1.0.8-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-gettext-0.19.8.1-8-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-libiconv-1.16-1-any.pkg.tar.xz" - -# tar xf "${PKGDIR}/mingw-w64-${CPUARCH}-qtwebkit-5.212.0alpha2-6-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-libffi-3.2.1-4-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-openssl-1.1.1.d-1-any.pkg.tar.xz" - -# tar xf "${PKGDIR}/mingw-w64-i686-libjpeg-turbo-2.0.3-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-sqlite3-3.30.0-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-libwebp-1.0.3-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-libxml2-2.9.9-2-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-libxslt-1.1.33-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-xz-5.2.4-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-jasper-2.0.16-1-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-libtiff-4.0.9-2-any.pkg.tar.xz" -# tar xf "${PKGDIR}/mingw-w64-i686-python3-nuitka-0.6.4-1-any.pkg.tar.xz" -tar xf "${PKGDIR}/mingw-w64-i686-python3-cx_Freeze-5.1.1-3-any.pkg.tar.xz" - -# tar xf "${PKGDIR}/" - -sed -i "s|E:/mingwbuild/mingw-w64-qt5/pkg/mingw-w64-i686-qt5|${TARGETDIR}/msys2-${CPUARCH}|" ./mingw${ARCH}/lib/pkgconfig/Qt5*.pc +for PKG in ${PACKAGES[@]}; do + tar xf "${PKG_DIR}/${PKG_PREFIX}${PKG}${PKG_SUFFIX}" +done + +sed -i "s|E:/mingwbuild/mingw-w64-qt5/pkg/mingw-w64-${CPUARCH}-qt5|${TARGETDIR}/msys2-${CPUARCH}|" ./mingw${ARCH}/lib/pkgconfig/Qt5*.pc popd -# HOST_ARCH=$(dpkg-architecture -qDEB_BUILD_GNU_TYPE) -# MINGW_PREFIX="${CPUARCH}-w64-mingw32" - -# export AR=${MINGW_PREFIX}-ar -# export CC=${MINGW_PREFIX}-gcc -# export CXX=${MINGW_PREFIX}-g++ -# export STRIP=${MINGW_PREFIX}-strip -# export WINDRES=${MINGW_PREFIX}-windres -# -# export PATH=/opt/mingw${ARCH}/${MINGW_PREFIX}/bin:/opt/mingw${ARCH}/bin:${PATH} -# -# if [ -z "${NOSSE}" ]; then -# export CFLAGS="-O3 -mtune=generic -msse -msse2 -mfpmath=sse -mstackrealign -fvisibility=hidden -fdata-sections -ffunction-sections" -# else -# export CFLAGS="-O2 -mstackrealign -fvisibility=hidden -fdata-sections -ffunction-sections" -# fi -# -# export CFLAGS="${CFLAGS} -DNDEBUG -DPTW32_STATIC_LIB -DFLUIDSYNTH_NOT_A_DLL -I${PREFIX}/include -I/opt/mingw${ARCH}/include" -# export CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden" -# export CPPFLAGS="-DPIC -DNDEBUG -DPTW32_STATIC_LIB -I${PREFIX}/include -I/opt/mingw${ARCH}/include" -# -# export LDFLAGS="-fdata-sections -ffunction-sections -Wl,--gc-sections -Wl,-O1 -Wl,--as-needed -Wl,--strip-all" -# export LDFLAGS="${LDFLAGS} -L${PREFIX}/lib -L/opt/mingw${ARCH}/lib" +} + +# --------------------------------------------------------------------------------------------------------------------- +# function to build python modules + +build_python() +{ + +# --------------------------------------------------------------------------------------------------------------------- +# setup + +if [ x"${ARCH}" != x"32" ]; then + CPUARCH="x86_64" +else + CPUARCH="i686" +fi + +# --------------------------------------------------------------------------------------------------------------------- +# clean env + +unset AR +unset CC +unset CXX +unset STRIP +unset WINDRES + +unset CFLAGS +unset CPPFLAGS +unset CXXFLAGS +unset LDFLAGS + +export DEPS_PREFIX=${TARGETDIR}/carla-w${ARCH_PREFIX} +export MSYS2_PREFIX=${TARGETDIR}/msys2-${CPUARCH}/mingw${ARCH} + +export PATH=${DEPS_PREFIX}/bin:${MSYS2_PREFIX}/bin:/usr/sbin:/usr/bin:/sbin:/bin +export PKG_CONFIG_PATH=${DEPS_PREFIX}/lib/pkgconfig:${MSYS2_PREFIX}/lib/pkgconfig + +HOST_ARCH=$(dpkg-architecture -qDEB_BUILD_GNU_TYPE) +MINGW_PREFIX="${CPUARCH}-w64-mingw32" + +export AR=${MINGW_PREFIX}-ar +export CC=${MINGW_PREFIX}-gcc +export CXX=${MINGW_PREFIX}-g++ +export STRIP=${MINGW_PREFIX}-strip +export WINDRES=${MINGW_PREFIX}-windres + +export CFLAGS="-O2 -DNDEBUG -mstackrealign -fvisibility=hidden -fdata-sections -ffunction-sections" +export CFLAGS="${CFLAGS} -I${DEPS_PREFIX}/include -I${MSYS2_PREFIX}/include" +export CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden" +export LDFLAGS="-Wl,--gc-sections -Wl,-O1 -Wl,--as-needed -Wl,--strip-all" +export LDFLAGS="${LDFLAGS} -L${DEPS_PREFIX}/lib -L${MSYS2_PREFIX}/lib" + +# --------------------------------------------------------------------------------------------------------------------- +# pyliblo + +if [ ! -d pyliblo-${PYLIBLO_VERSION} ]; then + wget -c http://das.nasophon.de/download/pyliblo-${PYLIBLO_VERSION}.tar.gz + tar -xf pyliblo-${PYLIBLO_VERSION}.tar.gz +fi + +if [ ! -f pyliblo-${PYLIBLO_VERSION}/build-done ]; then + cd pyliblo-${PYLIBLO_VERSION} + if [ ! -f patched ]; then + patch -p1 -i ../patches/pyliblo-python3.7.patch + touch patched + fi + mkdir -p build + # build + ${CC} -pthread -Wall ${CFLAGS} \ + src/liblo.c -c -o build/liblo.o \ + $(python3-config --cflags | awk 'sub("-ne ","")') \ + -D_FORTIFY_SOURCE=2 -fPIC -fno-strict-aliasing \ + -Wdate-time -Werror-implicit-function-declaration -Wfatal-errors + # link + ${CC} -pthread -shared ${LDFLAGS} \ + build/liblo.o -o build/liblo-cpython-37m.dll \ + -llo $(python3-config --ldflags | awk 'sub("-ne ","")') -lws2_32 -liphlpapi + # install + install -m 644 build/liblo-cpython-37m.dll ${MSYS2_PREFIX}/lib/python3.7/site-packages/ + touch build-done + cd .. +fi } @@ -212,11 +203,13 @@ popd # build base libs export ARCH=32 -export ARCH_PREFIX=32 +export ARCH_PREFIX=32nosse +download_python build_python -# export ARCH=64 -# export ARCH_PREFIX=64 -# build_python +export ARCH=64 +export ARCH_PREFIX=64 +download_python +build_python # --------------------------------------------------------------------------------------------------------------------- diff --git a/data/windows/build-win.sh b/data/windows/build-win.sh index c044d6f4b..205e044cf 100755 --- a/data/windows/build-win.sh +++ b/data/windows/build-win.sh @@ -52,11 +52,11 @@ local _ARCH="${1}" local _ARCH_PREFIX="${2}" local _MINGW_PREFIX="${3}-w64-mingw32" -export PREFIX=${TARGETDIR}/carla-w${_ARCH_PREFIX} -export MSYS2_PREFIX="${TARGETDIR}/msys2-${CPUARCH}/mingw${ARCH}" +export DEPS_PREFIX=${TARGETDIR}/carla-w${ARCH_PREFIX} +export MSYS2_PREFIX=${TARGETDIR}/msys2-${CPUARCH}/mingw${ARCH} -export PATH=${PREFIX}/bin:/usr/sbin:/usr/bin:/sbin:/bin -export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig:${MSYS2_PREFIX}/lib/pkgconfig +export PATH=${DEPS_PREFIX}/bin:/opt/wine-staging/bin:/usr/sbin:/usr/bin:/sbin:/bin +export PKG_CONFIG_PATH=${DEPS_PREFIX}/lib/pkgconfig:${MSYS2_PREFIX}/lib/pkgconfig export AR=${_MINGW_PREFIX}-ar export CC=${_MINGW_PREFIX}-gcc @@ -65,9 +65,9 @@ export STRIP=${_MINGW_PREFIX}-strip export WINDRES=${_MINGW_PREFIX}-windres export CFLAGS="-DPTW32_STATIC_LIB -DFLUIDSYNTH_NOT_A_DLL" -export CFLAGS="${CFLAGS} -I${PREFIX}/include" +export CFLAGS="${CFLAGS} -I${DEPS_PREFIX}/include" export CXXFLAGS="${CFLAGS}" -export LDFLAGS="-L${PREFIX}/lib" +export LDFLAGS="-L${DEPS_PREFIX}/lib" export MOC_QT5="wine ${MSYS2_PREFIX}/bin/moc.exe" export RCC_QT5="wine ${MSYS2_PREFIX}/bin/rcc.exe" @@ -82,8 +82,8 @@ export WINEARCH=win${ARCH} export WINEDEBUG=-all export WINEPREFIX=~/.winepy3_x${ARCH} export PYTHON_EXE="wine ${MSYS2_PREFIX}/bin/python.exe" -export PYRCC="$PYTHON_EXE -m PyQt5.pyrcc_main" -export PYUIC="$PYTHON_EXE -m PyQt5.uic.pyuic" +export PYRCC="${PYTHON_EXE} -m PyQt5.pyrcc_main" +export PYUIC="${PYTHON_EXE} -m PyQt5.uic.pyuic" make ${MAKE_ARGS} @@ -94,4 +94,6 @@ fi # Testing: echo "export WINEPREFIX=~/.winepy3_x${ARCH}" -echo "$PYTHON_EXE ./source/frontend/carla" +echo "/opt/wine-staging/bin/${PYTHON_EXE} ./source/frontend/carla" + +# --------------------------------------------------------------------------------------------------------------------- diff --git a/data/windows/patches/pyliblo-python3.7.patch b/data/windows/patches/pyliblo-python3.7.patch new file mode 100644 index 000000000..5cee8ea98 --- /dev/null +++ b/data/windows/patches/pyliblo-python3.7.patch @@ -0,0 +1,55 @@ +diff --git a/src/liblo.c b/src/liblo.c +index bb314a5..6535baf 100644 +--- a/src/liblo.c ++++ b/src/liblo.c +@@ -13882,12 +13882,12 @@ static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) + *value = local_value; + *tb = local_tb; + #if CYTHON_COMPILING_IN_CPYTHON +- tmp_type = tstate->exc_type; +- tmp_value = tstate->exc_value; +- tmp_tb = tstate->exc_traceback; +- tstate->exc_type = local_type; +- tstate->exc_value = local_value; +- tstate->exc_traceback = local_tb; ++ tmp_type = tstate->exc_state.exc_type; ++ tmp_value = tstate->exc_state.exc_value; ++ tmp_tb = tstate->exc_state.exc_traceback; ++ tstate->exc_state.exc_type = local_type; ++ tstate->exc_state.exc_value = local_value; ++ tstate->exc_state.exc_traceback = local_tb; + /* Make sure tstate is in a consistent state when we XDECREF + these objects (DECREF may run arbitrary code). */ + Py_XDECREF(tmp_type); +@@ -13927,9 +13927,9 @@ bad: + static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) { + #if CYTHON_COMPILING_IN_CPYTHON + PyThreadState *tstate = PyThreadState_GET(); +- *type = tstate->exc_type; +- *value = tstate->exc_value; +- *tb = tstate->exc_traceback; ++ *type = tstate->exc_state.exc_type; ++ *value = tstate->exc_state.exc_value; ++ *tb = tstate->exc_state.exc_traceback; + Py_XINCREF(*type); + Py_XINCREF(*value); + Py_XINCREF(*tb); +@@ -13941,12 +13941,12 @@ static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) + #if CYTHON_COMPILING_IN_CPYTHON + PyObject *tmp_type, *tmp_value, *tmp_tb; + PyThreadState *tstate = PyThreadState_GET(); +- tmp_type = tstate->exc_type; +- tmp_value = tstate->exc_value; +- tmp_tb = tstate->exc_traceback; +- tstate->exc_type = type; +- tstate->exc_value = value; +- tstate->exc_traceback = tb; ++ tmp_type = tstate->exc_state.exc_type; ++ tmp_value = tstate->exc_state.exc_value; ++ tmp_tb = tstate->exc_state.exc_traceback; ++ tstate->exc_state.exc_type = type; ++ tstate->exc_state.exc_value = value; ++ tstate->exc_state.exc_traceback = tb; + Py_XDECREF(tmp_type); + Py_XDECREF(tmp_value); + Py_XDECREF(tmp_tb);