Browse Source

Finalize scripts to build windows deps and main code

Signed-off-by: falkTX <falktx@falktx.com>
tags/v2.1-rc1
falkTX 6 years ago
parent
commit
e9a639b957
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
4 changed files with 225 additions and 177 deletions
  1. +0
    -2
      data/windows/build-deps.sh
  2. +159
    -166
      data/windows/build-pyqt.sh
  3. +11
    -9
      data/windows/build-win.sh
  4. +55
    -0
      data/windows/patches/pyliblo-python3.7.patch

+ 0
- 2
data/windows/build-deps.sh View File

@@ -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


+ 159
- 166
data/windows/build-pyqt.sh View File

@@ -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

# ---------------------------------------------------------------------------------------------------------------------

+ 11
- 9
data/windows/build-win.sh View File

@@ -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"

# ---------------------------------------------------------------------------------------------------------------------

+ 55
- 0
data/windows/patches/pyliblo-python3.7.patch View File

@@ -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);

Loading…
Cancel
Save