mxe icon indicating copy to clipboard operation
mxe copied to clipboard

LTS Qt5.6.3 support

Open lindyang opened this issue 2 years ago • 3 comments

To suppoet XP, I choose LTS Qt5.6.3. after reading specified QT version and qt5.12.8, I ran

git checkout -b branch_qt_5.6.3
git diff 341bca52^ -- src/qt*.* | git apply --reverse
# restore non-Qt5 files
git checkout src/qt.mk src/qt-*.* src/qtservice.mk
git add -i
git commit -m 'set Qt5 to v5.6.0'

after that, I almost fixed all the src/qt*.*'s $(PKG)_CHECKSUM(dowload one by one, and sha256 them) and $(PKG)_URL, but I don't know how to fix src/qt*.patch, how to use tools/patch-tool-mxe?

Sine qt5.6.3 is the LTS that supoort xp, why not make a new branch for Qt5.6.3. here I post a patch if you need it(checksum and url fixing)

qt5.6.3_checksum_and_url_fixing.patch.txt

lindyang avatar Jun 16 '22 03:06 lindyang

You might want to consider using the plug/overlay feature to MXE to do this, rather than a git branch. Look in the "plugins" directory for examples.

mabrand avatar Jun 16 '22 10:06 mabrand

I'd read qt-freeze before, but it is based on Qt5.7.1 As you said in Qt5.12.8

I assume you're starting with the qtbase-1-fixes.patch intended for qtbase 5.12.4, 
since that was the last 5.12 version built by MXE. 
Now you need to rebase these patches onto version 5.12.8 
if that is what you want to build. tools/patch-tool-mxe might help you.

For Qt5.6, the last version is Qt5.6.0(1be3717e), one commit before upgrade to Qt 5.7.0(341bca52), If I want to update Qt to 5.6.3 basing on 5.6.0, how can I get all the correctqt*.patch? Is there some ways I can follow?

lindyang avatar Jun 17 '22 02:06 lindyang

If the patches in qtbase-1-fixes.patch for qtbase 5.6.0 don't apply to qtbase 5.6.3 as-is, then you will need to remove obsolete patches and/or rebase the patches onto 5.6.3.

The tool patch-tool-mxe can make this less tedious. Something like this:

# create a temporary git repo from the source tarball
./tools/patch-tool-mxe init qtbase
# apply patches from file as commits in the repository
./tools/patch-tool-mxe import-all qtbase
# if patches did not apply, continue manually
pushd gits/qtbase-opensource-src-5.6.3
git am --show-current-patch | patch -p1 --merge
# manually resolve conflicts if necessary
git add -u
git am --continue
popd
# overwrite the patch file with the commits from the repository
./tools/patch-tool-mxe export

mabrand avatar Jun 17 '22 19:06 mabrand