@@ -6,6 +6,7 @@ cd $(dirname ${0}) | |||
PAWPAW_ROOT="${PWD}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# check target | |||
target="${1}" | |||
@@ -14,23 +15,120 @@ if [ -z "${target}" ]; then | |||
exit 1 | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# run bootstrap dependencies | |||
./bootstrap-common.sh "${target}" | |||
./bootstrap-plugins.sh "${target}" | |||
./bootstrap-qt.sh "${target}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# source setup code | |||
source setup/check_target.sh | |||
source setup/env.sh | |||
source setup/functions.sh | |||
source setup/versions.sh | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# custom function as needed for pyqt packages | |||
function build_pyqt() { | |||
local name="${1}" | |||
local version="${2}" | |||
local extraconfrules="${3}" | |||
local pkgdir="${PAWPAW_BUILDDIR}/${name}-${version}" | |||
local python=python3 | |||
if ! which python3 > /dev/null; then | |||
python=python | |||
fi | |||
local EXTRA_CFLAGS2="${EXTRA_CFLAGS}" | |||
local EXTRA_CXXFLAGS2="${EXTRA_CXXFLAGS}" | |||
local EXTRA_LDFLAGS2="${EXTRA_LDFLAGS}" | |||
local EXTRA_MAKE_ARGS2="${EXTRA_MAKE_ARGS}" | |||
_prebuild "${name}" "${pkgdir}" | |||
if [ ! -f "${pkgdir}/.stamp_preconfigured" ]; then | |||
pushd "${pkgdir}" | |||
${python} configure.py build ${extraconfrules} | |||
touch .stamp_preconfigured | |||
popd | |||
fi | |||
_postbuild | |||
export EXTRA_CFLAGS="${EXTRA_CFLAGS2}" | |||
export EXTRA_CXXFLAGS="${EXTRA_CXXFLAGS2}" | |||
export EXTRA_LDFLAGS="${EXTRA_LDFLAGS2}" | |||
export EXTRA_MAKE_ARGS="${EXTRA_MAKE_ARGS2}" | |||
build_make "${name}" "${version}" | |||
} | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# file/magic (posix only) | |||
# if [ "${WIN32}" -eq 0 ]; then | |||
# download file "${FILE_VERSION}" "ftp://ftp.astron.com/pub/file" | |||
# build_autoconf file "${FILE_VERSION}" | |||
# fi | |||
if [ "${WIN32}" -eq 0 ]; then | |||
download file "${FILE_VERSION}" "ftp://ftp.astron.com/pub/file" | |||
build_autoconf file "${FILE_VERSION}" | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# python | |||
download Python "${PYTHON_VERSION}" "https://www.python.org/ftp/python/${PYTHON_VERSION}" "tgz" | |||
if [ "${MACOS}" -eq 0 ]; then | |||
sed -i -e "s/#zlib zlibmodule.c/zlib zlibmodule.c/" Modules/Setup.dist | |||
fi | |||
build_conf Python "${PYTHON_VERSION}" "--enable-optimizations --enable-shared" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# sip | |||
download sip "${SIP_VERSION}" "https://files.kde.org/krita/build/dependencies" | |||
build_pyqt sip "${SIP_VERSION}" "--sip-module PyQt5.sip" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# pyqt5 | |||
download PyQt5_gpl "${PYQT5_VERSION}" "https://files.kde.org/krita/build/dependencies" | |||
build_pyqt PyQt5_gpl "${PYQT5_VERSION}" "--concatenate --confirm-license -c" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# pyliblo | |||
download pyliblo "${PYLIBLO_VERSION}" "http://das.nasophon.de/download" | |||
build_python pyliblo "${PYLIBLO_VERSION}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# toml | |||
download toml "${TOML_VERSION}" "https://files.pythonhosted.org/packages/be/ba/1f744cdc819428fc6b5084ec34d9b30660f6f9daaf70eead706e3203ec3c" | |||
build_python toml "${TOML_VERSION}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# zipp | |||
download zipp "${ZIPP_VERSION}" "https://files.pythonhosted.org/packages/ce/b0/757db659e8b91cb3ea47d90350d7735817fe1df36086afc77c1c4610d559" | |||
build_python zipp "${ZIPP_VERSION}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# importlib_metadata | |||
download importlib_metadata "${IMPORTLIB_METADATA_VERSION}" "https://files.pythonhosted.org/packages/3f/a8/16dc098b0addd1c20719c18a86e985be851b3ec1e103e703297169bb22cc" | |||
build_python importlib_metadata "${IMPORTLIB_METADATA_VERSION}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# cxfreeze | |||
download cx_Freeze "${CXFREEZE_VERSION}" "https://github.com/anthony-tuininga/cx_Freeze/archive" | |||
sed -i -e 's/, use_builtin_types=False//' cx_Freeze/macdist.py | |||
sed -i -e 's/"python%s.%s"/"python%s.%sm"/' setup.py | |||
sed -i -e 's/extra_postargs=extraArgs,/extra_postargs=extraArgs+os.getenv("LDFLAGS").split(),/' setup.py | |||
build_python cx_Freeze "${CXFREEZE_VERSION}" | |||
# --------------------------------------------------------------------------------------------------------------------- |
@@ -6,6 +6,7 @@ cd $(dirname ${0}) | |||
PAWPAW_ROOT="${PWD}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# check target | |||
target="${1}" | |||
@@ -26,11 +27,17 @@ fi | |||
# - sed | |||
# - tar | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# source setup code | |||
source setup/check_target.sh | |||
source setup/env.sh | |||
source setup/functions.sh | |||
source setup/versions.sh | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# create common directories | |||
mkdir -p "${PAWPAW_BUILDDIR}" | |||
mkdir -p "${PAWPAW_DOWNLOADDIR}" | |||
mkdir -p "${PAWPAW_PREFIX}" | |||
@@ -39,10 +46,14 @@ mkdir -p "${PAWPAW_TMPDIR}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# let's use native glib for linux builds | |||
if [ "${LINUX}" -eq 1 ] && [ ! -e "${TARGET_PKG_CONFIG_PATH}/glib-2.0.pc" ]; then | |||
if [ "${LINUX}" -eq 1 ]; then | |||
mkdir -p ${TARGET_PKG_CONFIG_PATH} | |||
ln -s $(pkg-config --variable=pcfiledir glib-2.0)/g{io,lib,module,object,thread}-2.0.pc ${TARGET_PKG_CONFIG_PATH}/ | |||
ln -s $(pkg-config --variable=pcfiledir libpcre)/libpcre.pc ${TARGET_PKG_CONFIG_PATH}/ | |||
if [ ! -e "${TARGET_PKG_CONFIG_PATH}/glib-2.0.pc" ]; then | |||
ln -s $(pkg-config --variable=pcfiledir glib-2.0)/g{io,lib,module,object,thread}-2.0.pc ${TARGET_PKG_CONFIG_PATH}/ | |||
fi | |||
if [ "${LINUX}" -eq 1 ] && [ ! -e "${TARGET_PKG_CONFIG_PATH}/libpcre.pc" ]; then | |||
ln -s $(pkg-config --variable=pcfiledir libpcre)/libpcre.pc ${TARGET_PKG_CONFIG_PATH}/ | |||
fi | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
@@ -90,6 +101,6 @@ build_autoconf libsamplerate "${LIBSAMPLERATE_VERSION}" "--disable-fftw --disabl | |||
download libsndfile "${LIBSNDFILE_VERSION}" "http://www.mega-nerd.com/libsndfile/files" | |||
patch_file libsndfile "${LIBSNDFILE_VERSION}" "configure" 's/ -Wvla//' | |||
build_autoconf libsndfile "${LIBSNDFILE_VERSION}" "--disable-full-suite --disable-alsa --disable-sqlite" | |||
build_autoconf libsndfile "${LIBSNDFILE_VERSION}" "--disable-alsa --disable-full-suite --disable-sqlite" | |||
# --------------------------------------------------------------------------------------------------------------------- |
@@ -9,6 +9,7 @@ JACK2_VERSION=${JACK2_VERSION:=git} | |||
QJACKCTL_VERSION=${QJACKCTL_VERSION:=0.6.2} | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# check target | |||
target="${1}" | |||
@@ -18,10 +19,12 @@ if [ -z "${target}" ]; then | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# run bootstrap dependencies | |||
./bootstrap-common.sh "${target}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# source setup code | |||
source setup/check_target.sh | |||
source setup/env.sh | |||
@@ -6,6 +6,7 @@ cd $(dirname ${0}) | |||
PAWPAW_ROOT="${PWD}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# check target | |||
target="${1}" | |||
@@ -15,10 +16,12 @@ if [ -z "${target}" ]; then | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# run bootstrap dependencies | |||
./bootstrap-common.sh "${target}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# source setup code | |||
source setup/check_target.sh | |||
source setup/env.sh | |||
@@ -86,7 +89,7 @@ if [ "${MACOS}" -eq 1 ] || [ "${WIN32}" -eq 1 ]; then | |||
GLIB_EXTRAFLAGS+=" glib_cv_uscore=no" | |||
GLIB_EXTRAFLAGS+=" ac_cv_func_posix_getpwuid_r=yes" | |||
GLIB_EXTRAFLAGS+=" ac_cv_func_posix_getgrgid_r=yes" | |||
patch_file glib ${GLIB_VERSION} "configure.in" 's/G_ATOMIC_I486/G_ATOMIC_I486_NOT/' | |||
patch_file glib ${GLIB_VERSION} "configure.in" 's/G_ATOMIC_I486/G_ATOMIC_NOT_I486/' | |||
fi | |||
fi | |||
@@ -6,6 +6,7 @@ cd $(dirname ${0}) | |||
PAWPAW_ROOT="${PWD}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# check target | |||
target="${1}" | |||
@@ -15,37 +16,29 @@ if [ -z "${target}" ]; then | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# run bootstrap dependencies | |||
./bootstrap-common.sh "${target}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# source setup code | |||
source setup/check_target.sh | |||
source setup/env.sh | |||
source setup/functions.sh | |||
source setup/versions.sh | |||
mkdir -p "${PAWPAW_BUILDDIR}" | |||
mkdir -p "${PAWPAW_DOWNLOADDIR}" | |||
mkdir -p "${PAWPAW_PREFIX}" | |||
mkdir -p "${PAWPAW_TMPDIR}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# let's use native glib for linux builds | |||
# qt package suffix changes depending on the version | |||
if [ "${LINUX}" -eq 1 ] && [ ! -e "${TARGET_PKG_CONFIG_PATH}/glib-2.0.pc" ]; then | |||
mkdir -p ${TARGET_PKG_CONFIG_PATH} | |||
ln -s $(pkg-config --variable=pcfiledir glib-2.0)/g{io,lib,module,object,thread}-2.0.pc ${TARGET_PKG_CONFIG_PATH}/ | |||
ln -s $(pkg-config --variable=pcfiledir libpcre)/libpcre.pc ${TARGET_PKG_CONFIG_PATH}/ | |||
if [ "${QT5_MVERSION}" = "5.12" ]; then | |||
qtsuffix="-everywhere-src" | |||
else | |||
qtsuffix="-opensource-src" | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# pkgconfig | |||
download pkg-config "${PKG_CONFIG_VERSION}" "https://pkg-config.freedesktop.org/releases" | |||
build_host_autoconf pkg-config "${PKG_CONFIG_VERSION}" "--enable-indirect-deps --with-internal-glib --with-pc-path=${TARGET_PKG_CONFIG_PATH}" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
qtsuffix="-opensource-src" | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# custom functions for qt handling | |||
function download_qt() { | |||
local name="${1}" | |||
@@ -62,15 +55,8 @@ function download_qt() { | |||
mkdir "${dlfolder}" | |||
tar -xf "${dlfile}" -C "${dlfolder}" --strip-components=1 | |||
fi | |||
# if [ ! -d "${dlfolder}" ]; then | |||
# unzip "${dlfile}" -d "${PAWPAW_BUILDDIR}" | |||
# chmod +x "${dlfolder}/configure" | |||
# dos2unix "${dlfolder}/configure" | |||
# fi | |||
} | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
function build_qt_conf() { | |||
local name="${1}" | |||
local extraconfrules="${2}" | |||
@@ -101,10 +87,22 @@ function build_qt_conf() { | |||
done | |||
fi | |||
if [ -d "${PAWPAW_ROOT}/patches/${name}/${PAWPAW_TARGET}" ]; then | |||
for p in $(ls "${PAWPAW_ROOT}/patches/${name}/${PAWPAW_TARGET}/" | grep "\.patch" | sort); do | |||
if [ ! -f "${pkgdir}/.stamp_applied_${p}" ]; then | |||
patch -p1 -d "${pkgdir}" -i "${PAWPAW_ROOT}/patches/${name}/${PAWPAW_TARGET}/${p}" | |||
touch "${pkgdir}/.stamp_applied_${p}" | |||
fi | |||
done | |||
fi | |||
if [ ! -f "${pkgdir}/.stamp_configured" ]; then | |||
pushd "${pkgdir}" | |||
./configure ${extraconfrules} | |||
touch .stamp_configured | |||
#sed -i -e 's/sub-tests //' Makefile | |||
#sed -i -e 's/sub-tests-all //' Makefile | |||
#sed -i -e 's/sub-tests-qmake_all //' Makefile | |||
popd | |||
fi | |||
@@ -134,10 +132,16 @@ function build_qt_conf() { | |||
} | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# qt config | |||
# base | |||
qtbase_conf_args="-opensource -confirm-license" | |||
qtbase_conf_args+=" -c++std c++11" | |||
qtbase_conf_args+=" -c++std" | |||
if [ "${MACOS_UNIVERSAL}" -eq 1 ]; then | |||
qtbase_conf_args+=" c++14" | |||
else | |||
qtbase_conf_args+=" c++11" | |||
fi | |||
# qtbase_conf_args+=" -optimized-qmake" | |||
qtbase_conf_args+=" -optimize-size" | |||
qtbase_conf_args+=" -release -strip" | |||
@@ -159,7 +163,12 @@ qtbase_conf_args+=" -libexecdir ${PAWPAW_PREFIX}/libexec" | |||
qtbase_conf_args+=" -plugindir ${PAWPAW_PREFIX}/lib/qt5/plugins" | |||
# enable optimizations (sse2 only) | |||
qtbase_conf_args+=" -sse2" | |||
if [ "${MACOS_UNIVERSAL}" -eq 1 ]; then | |||
# TODO SSE2 and NEON | |||
qtbase_conf_args+=" -no-sse2" | |||
else | |||
qtbase_conf_args+=" -sse2" | |||
fi | |||
qtbase_conf_args+=" -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -no-avx -no-avx2 -no-avx512" | |||
# enable some basic stuff | |||
@@ -194,9 +203,11 @@ qtbase_conf_args+=" -no-sctp" | |||
qtbase_conf_args+=" -no-securetransport" | |||
qtbase_conf_args+=" -no-syslog" | |||
qtbase_conf_args+=" -no-tslib" | |||
qtbase_conf_args+=" -no-xinput2" | |||
qtbase_conf_args+=" -no-xkbcommon-evdev" | |||
qtbase_conf_args+=" -no-xkbcommon-x11" | |||
if [ "${MACOS_UNIVERSAL}" -eq 0 ]; then | |||
qtbase_conf_args+=" -no-xinput2" | |||
qtbase_conf_args+=" -no-xkbcommon-evdev" | |||
qtbase_conf_args+=" -no-xkbcommon-x11" | |||
fi | |||
# font stuff | |||
qtbase_conf_args+=" -qt-freetype" | |||
@@ -251,26 +262,47 @@ else | |||
qtbase_conf_args+=" -qt-zlib" | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# qt build | |||
download_qt qtbase | |||
# patch_file qtbase${qtsuffix} ${QT5_VERSION} "configure" 's/ --sdk $sdk / /' | |||
# patch_file qtbase${qtsuffix} ${QT5_VERSION} "mkspecs/features/mac/sdk.prf" 's/ --sdk $$sdk / /' | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "mkspecs/macx-clang/qmake.conf" 's/10.10/10.8/' | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "mkspecs/win32-g++/qmake.conf" 's/= -shared/= -static -shared/' | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "src/plugins/platforms/direct2d/direct2d.pro" 's/-lVersion/-lversion/' | |||
if [ "${MACOS_UNIVERSAL}" -eq 1 ]; then | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "mkspecs/common/macx.conf" 's/QMAKE_APPLE_DEVICE_ARCHS = x86_64/QMAKE_APPLE_DEVICE_ARCHS = arm64 x86_64/' | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "mkspecs/common/macx.conf" 's/QT_MAC_SDK_VERSION_MIN = 10.13/QT_MAC_SDK_VERSION_MIN = 10.12/' | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "mkspecs/common/macx.conf" 's/QT_MAC_SDK_VERSION_MAX = 10.15/QT_MAC_SDK_VERSION_MAX = 10.12/' | |||
elif [ "${MACOS}" -eq 1 ]; then | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "mkspecs/macx-clang/qmake.conf" 's/10.10/10.8/' | |||
fi | |||
if [ "${WIN32}" -eq 1 ]; then | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "mkspecs/win32-g++/qmake.conf" 's/= -shared/= -static -shared/' | |||
patch_file qtbase${qtsuffix} ${QT5_VERSION} "src/plugins/platforms/direct2d/direct2d.pro" 's/-lVersion/-lversion/' | |||
fi | |||
build_qt_conf qtbase "${qtbase_conf_args}" | |||
if [ "${MACOS}" -eq 1 ] && [ ! -e "ln -s ${PAWPAW_PREFIX}/include/qt5/QtCore" ]; then | |||
if [ "${MACOS}" -eq 1 ] && [ ! -e "${PAWPAW_PREFIX}/include/qt5/QtCore" ]; then | |||
ln -sfv ${PAWPAW_PREFIX}/lib/QtCore.framework/Headers ${PAWPAW_PREFIX}/include/qt5/QtCore | |||
ln -sfv ${PAWPAW_PREFIX}/lib/QtGui.framework/Headers ${PAWPAW_PREFIX}/include/qt5/QtGui | |||
ln -sfv ${PAWPAW_PREFIX}/lib/QtWidgets.framework/Headers ${PAWPAW_PREFIX}/include/qt5/QtWidgets | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# qtmacextras | |||
if [ "${MACOS}" -eq 1 ]; then | |||
download_qt qtmacextras | |||
build_qmake qtmacextras${qtsuffix} ${QT5_VERSION} | |||
fi | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# qtsvg | |||
download_qt qtsvg | |||
build_qmake qtsvg${qtsuffix} ${QT5_VERSION} | |||
# --------------------------------------------------------------------------------------------------------------------- | |||
# qttools (host only, thus not needed if cross-compiling) | |||
if [ "${CROSS_COMPILING}" -eq 0 ]; then | |||
download_qt qttools | |||
@@ -0,0 +1,101 @@ | |||
diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp | |||
index 5bab897..ef2f6b2 100644 | |||
--- a/src/corelib/io/qfilesystemengine_unix.cpp | |||
+++ b/src/corelib/io/qfilesystemengine_unix.cpp | |||
@@ -195,7 +195,7 @@ static bool isPackage(const QFileSystemMetaData &data, const QFileSystemEntry &e | |||
namespace { | |||
namespace GetFileTimes { | |||
-#if !QT_CONFIG(futimens) && (QT_CONFIG(futimes)) | |||
+#if 1 | |||
template <typename T> | |||
static inline typename QtPrivate::QEnableIf<(&T::st_atim, &T::st_mtim, true)>::Type get(const T *p, struct timeval *access, struct timeval *modification) | |||
{ | |||
@@ -1401,7 +1401,7 @@ bool QFileSystemEngine::setFileTime(int fd, const QDateTime &newDate, QAbstractF | |||
return false; | |||
} | |||
-#if QT_CONFIG(futimens) | |||
+#if 0 | |||
struct timespec ts[2]; | |||
ts[0].tv_sec = ts[1].tv_sec = 0; | |||
diff --git a/src/gui/painting/qdrawhelper.cpp b/src/gui/painting/qdrawhelper.cpp | |||
index 6265d51..e3d96d7 100644 | |||
--- a/src/gui/painting/qdrawhelper.cpp | |||
+++ b/src/gui/painting/qdrawhelper.cpp | |||
@@ -6622,3 +6622,5 @@ static void qInitDrawhelperFunctions() | |||
Q_CONSTRUCTOR_FUNCTION(qInitDrawhelperFunctions); | |||
QT_END_NAMESPACE | |||
+ | |||
+#include "qdrawhelper_sse2.cpp" | |||
diff --git a/src/gui/painting/qdrawhelper_sse2.cpp b/src/gui/painting/qdrawhelper_sse2.cpp | |||
index 3212ffd..05ca742 100644 | |||
--- a/src/gui/painting/qdrawhelper_sse2.cpp | |||
+++ b/src/gui/painting/qdrawhelper_sse2.cpp | |||
@@ -40,7 +40,7 @@ | |||
#include <private/qdrawhelper_x86_p.h> | |||
-#ifdef QT_COMPILER_SUPPORTS_SSE2 | |||
+#ifdef __SSE2__ | |||
#include <private/qdrawingprimitive_sse2_p.h> | |||
#include <private/qpaintengine_raster_p.h> | |||
diff --git a/src/plugins/platforms/cocoa/qcocoahelpers.h b/src/plugins/platforms/cocoa/qcocoahelpers.h | |||
index 69aa793..ba65b74 100644 | |||
--- a/src/plugins/platforms/cocoa/qcocoahelpers.h | |||
+++ b/src/plugins/platforms/cocoa/qcocoahelpers.h | |||
@@ -178,7 +178,7 @@ T qt_mac_resolveOption(const T &fallback, QWindow *window, const QByteArray &pro | |||
// ------------------------------------------------------------------------- | |||
-#if !defined(Q_PROCESSOR_X86_64) | |||
+#if !defined(Q_PROCESSOR_X86_64) && !defined(Q_PROCESSOR_ARM_64) | |||
#error "32-bit builds are not supported" | |||
#endif | |||
@@ -281,6 +281,7 @@ ReturnType qt_msgSendSuper(id receiver, SEL selector, Args... args) | |||
return superFn(&sup, selector, args...); | |||
} | |||
+#if !defined(Q_PROCESSOR_ARM_64) | |||
template <typename ReturnType, typename... Args> | |||
ReturnType qt_msgSendSuper_stret(id receiver, SEL selector, Args... args) | |||
{ | |||
@@ -295,6 +296,7 @@ ReturnType qt_msgSendSuper_stret(id receiver, SEL selector, Args... args) | |||
superStretFn(&ret, &sup, selector, args...); | |||
return ret; | |||
} | |||
+#endif | |||
template<typename... Args> | |||
class QSendSuperHelper { | |||
@@ -335,11 +337,13 @@ private: | |||
return qt_msgSendSuper<ReturnType>(m_receiver, m_selector, std::get<Is>(args)...); | |||
} | |||
+#if !defined(Q_PROCESSOR_ARM_64) | |||
template <typename ReturnType, int... Is> | |||
if_requires_stret<ReturnType, true> msgSendSuper(std::tuple<Args...>& args, QtPrivate::IndexesList<Is...>) | |||
{ | |||
return qt_msgSendSuper_stret<ReturnType>(m_receiver, m_selector, std::get<Is>(args)...); | |||
} | |||
+#endif | |||
template <typename ReturnType> | |||
ReturnType msgSendSuper(std::tuple<Args...>& args) | |||
diff --git a/src/plugins/platforms/cocoa/qcocoahelpers.mm b/src/plugins/platforms/cocoa/qcocoahelpers.mm | |||
index d36a7f6..039fdf4 100644 | |||
--- a/src/plugins/platforms/cocoa/qcocoahelpers.mm | |||
+++ b/src/plugins/platforms/cocoa/qcocoahelpers.mm | |||
@@ -372,7 +372,7 @@ QString qt_mac_removeAmpersandEscapes(QString s) | |||
// ------------------------------------------------------------------------- | |||
-#if !defined(Q_PROCESSOR_X86_64) | |||
+#if !defined(Q_PROCESSOR_X86_64) && !defined(Q_PROCESSOR_ARM_64) | |||
#error "32-bit builds are not supported" | |||
#endif | |||
@@ -338,6 +338,37 @@ function build_meson() { | |||
_postbuild | |||
} | |||
function build_python() { | |||
local name="${1}" | |||
local version="${2}" | |||
local extraconfrules="${3}" | |||
local pkgdir="${PAWPAW_BUILDDIR}/${name}-${version}" | |||
local python=python3 | |||
if ! which python3 > /dev/null; then | |||
python=python | |||
fi | |||
_prebuild "${name}" "${pkgdir}" | |||
if [ ! -f "${pkgdir}/.stamp_built" ]; then | |||
pushd "${pkgdir}" | |||
${python} setup.py build ${extraconfrules} | |||
touch .stamp_built | |||
popd | |||
fi | |||
if [ ! -f "${pkgdir}/.stamp_installed" ]; then | |||
pushd "${pkgdir}" | |||
${python} setup.py install --prefix="${PAWPAW_PREFIX}" ${extraconfrules} | |||
touch .stamp_installed | |||
popd | |||
fi | |||
_postbuild | |||
} | |||
function build_qmake() { | |||
local name="${1}" | |||
local version="${2}" | |||
@@ -4,7 +4,6 @@ | |||
PKG_CONFIG_VERSION=0.28 | |||
# common | |||
FILE_VERSION=5.34 | |||
FLAC_VERSION=1.3.3 | |||
FLUIDSYNTH_VERSION=1.1.11 | |||
FFTW_VERSION=3.3.8 | |||
@@ -25,11 +24,32 @@ SRATOM_VERSION=0.6.6 | |||
ZLIB_VERSION=1.2.11 | |||
# qt stuff | |||
QT5_VERSION=5.9.8 | |||
QT5_MVERSION=5.9 | |||
# PYTHON_VERSION=3.7.4 | |||
# PYLIBLO_VERSION=0.9.2 | |||
# CXFREEZE_VERSION=6.1 | |||
if [ "${MACOS_UNIVERSAL}" -eq 1 ]; then | |||
QT5_VERSION=5.12.5 | |||
QT5_MVERSION=5.12 | |||
else | |||
QT5_VERSION=5.9.8 | |||
QT5_MVERSION=5.9 | |||
fi | |||
# carla builds only | |||
FILE_VERSION=5.34 | |||
if [ "${MACOS_UNIVERSAL}" -eq 1 ]; then | |||
CXFREEZE_VERSION=6.4.2 | |||
PYTHON_VERSION=3.9.1 | |||
PYQT5_VERSION=5.13.1 | |||
SIP_VERSION=4.19.19 | |||
# extra, needed only for cxfreeze | |||
IMPORTLIB_METADATA_VERSION=3.1.1 | |||
SETUPTOOLS_SCM_VERSION=5.0.0 | |||
TOML_VERSION=0.10.2 | |||
ZIPP_VERSION=3.4.0 | |||
else | |||
CXFREEZE_VERSION=6.1 | |||
PYTHON_VERSION=3.7.4 | |||
PYQT5_VERSION=5.9.2 | |||
SIP_VERSION=4.19.13 | |||
fi | |||
# jack builds only | |||
AFTEN_VERSION=0.0.8 | |||