Created attachment 246537 [details] Update to 4.0.3 Hello, While unbundling minizip from emulators/qmc2 (while moving it from WebKit to Webegnine), I noticed that minizip-ng was outdated, so here is my attempt to update it. Update minizip-ng to 4.0.3: https://github.com/zlib-ng/minizip-ng/compare/3.0.8...4.0.3 Thanks.
poudriere-testport: > 12.4-{amd64,i386}-release: OK > 13.2-{amd64,i386}-release: OK > 14.0-{amd64,i386}-release: OK > main-{amd64,i386}: OK
Forgot to add, pathfix was added to ${USES} because CMake is fixed to install pkg-config data in /usr/local/lib.
Thanks, lgtm, I'm building depending ports and push the commit after.
(In reply to Loïc Bartoletti from comment #3) Thanks.
ping
Is it correct: +lib/libminizip-ng.so.1 +lib/libminizip-ng.so.4.0.3 ? Maybe: +lib/libminizip-ng.so.4 +lib/libminizip-ng.so.4.0.3 ?
4.0.4 released: https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.4
Created attachment 248381 [details] Update to 4.0.4 Update minizip-ng to 4.0.4: https://github.com/zlib-ng/minizip-ng/compare/3.0.8...4.0.4
(In reply to Vladimir Druzenko from comment #6) How should this be reflected in the Port? Install lib/libminizip-ng.so.1 as lib/libminizip-ng.so.4?
(In reply to Alastair Hogge from comment #9) It's look "bizarre/weird": libminizip-ng.so -> libminizip-ng.so.1 libminizip-ng.so.1 -> libminizip-ng.so.4.0.4 libminizip-ng.so.4.0.4 Moreover, earlier it was lib/libminizip-ng.so.3. Also we need to bump all(?) consumers: emulators/qmc2 emulators/dolphin-emu devel/axmldec graphics/blender graphics/opencolorio
Attached patch build fine for me on live 13.2-p9 amd64.
I believe the default compatibility mode, MZ_COMPAT will set the shared object version to 1, otherwise it is 4: https://github.com/zlib-ng/minizip-ng/blob/13b01a74a44108557e00c78ffac54e4fae7f8c7f/CMakeLists.txt#L616
(In reply to Alastair Hogge from comment #12) Do we need it?
(In reply to Vladimir Druzenko from comment #13) Not sure. I will OPTION'ify MZ_COMPAT and test with emulators/qmc2, however, that could be a few days away.
At least emulators/dolphin-emu doesn't build with minizip-ng 4.0.4: /wrkdirs/usr/ports/emulators/dolphin-emu/work/dolphin-8c2a1c1/Source/Core/UICommon/ResourcePack/ResourcePack.cpp:39:7: error: no matching function for call to 'unzLocateFile' if (unzLocateFile(file, "manifest.json", nullptr) == UNZ_END_OF_LIST_OF_FILE) ^~~~~~~~~~~~~ /usr/local/include/minizip-ng/mz_compat.h:364:17: note: candidate function not viable: no known conversion from 'std::nullptr_t' to 'unzFileNameCase' (aka 'int') for 3rd argument ZEXPORT int unzLocateFile(unzFile file, const char *filename, unzFileNameCase filename_case); ^ /wrkdirs/usr/ports/emulators/dolphin-emu/work/dolphin-8c2a1c1/Source/Core/UICommon/ResourcePack/ResourcePack.cpp:66:7: error: no matching function for call to 'unzLocateFile' if (unzLocateFile(file, "logo.png", nullptr) != UNZ_END_OF_LIST_OF_FILE) ^~~~~~~~~~~~~ /usr/local/include/minizip-ng/mz_compat.h:364:17: note: candidate function not viable: no known conversion from 'std::nullptr_t' to 'unzFileNameCase' (aka 'int') for 3rd argument ZEXPORT int unzLocateFile(unzFile file, const char *filename, unzFileNameCase filename_case); ^ 2 errors generated. ninja: build stopped: subcommand failed. *** Error code 1 Stop. make: stopped in /usr/ports/emulators/dolphin-emu
Added maintainer of the emulators/dolphin-emu to CC. Maybe maintainer can fix it. Or we need to create archivers/minizip-ng4 (or archivers/minizip-ng3).
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=2bb42eb19eff8bd5b5b5333f6341dbe3d0a038f3 commit 2bb42eb19eff8bd5b5b5333f6341dbe3d0a038f3 Author: Ganael LAPLANCHE <martymac@FreeBSD.org> AuthorDate: 2024-02-14 15:02:31 +0000 Commit: Ganael LAPLANCHE <martymac@FreeBSD.org> CommitDate: 2024-02-14 15:02:31 +0000 emulators/dolphin-emu: Fix build with upcoming minizip-ng 4.0.4 PR: 275303 Reported by: lbartoletti emulators/dolphin-emu/Makefile | 2 +- ...re-UICommon-ResourcePack-ResourcePack.cpp (new) | 27 ++++++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-)
Hello folks, Thanks for having added me to this PR. FYI, I've just pushed a patch to emulators/dolphin-emu that fixes build problems with minizip-ng 4.0.4. Cheers, Ganael.
New versions of the graphics/blender and graphics/opencolorio build fine with archivers/minizip-ng 4.0.4. emulators/qmc2 and devel/axmldec are not tested.
emulators/qmc2 and devel/axmldec build fine with archivers/minizip-ng 4.0.4 in poudriere 13.2-p9 amd64.
(In reply to Vladimir Druzenko from comment #20) Thanks. I am doing the testport run now. I do recall testing all this the last time emulators/qmc2[1] was updated, when the external dependency on minizip-ng was added. I will report back when the 6 runs complete...overnight. 1: bug #275324
So far poudriere-testport reports: > 13.2-amd64-release: OK > 14.0-amd64-release: OK > main-amd64: OK main-i386 is failing: > --- ../../lib/libQt5WebEngineCore.so.5.15.16 --- > rm -f libQt5WebEngineCore.so.5.15.16 libQt5WebEngineCore.so libQt5WebEngineCore.so.5 libQt5WebEngineCore.so.5.15 > c++ -B/usr/local/bin -Wl,--undefined-version -Wl,--as-needed -fstack-protector-strong @/wrkdirs/usr/ports/www/qt5-webengine/work/.build/src/core/release/QtWebEngineCore_o.rsp -Wl,--start-group @/wrkdirs/usr/ports/www/qt5-webengine/work/.build/src/core/release/QtWebEngineCore_a.rsp -Wl,--end-group -Wl,-z,noexecstack -Wl,--build-id=sha1 -fPIC -Wl,-z,relro -Wl,-z,now -m32 -Wl,-O2 -Wl,--gc-sections -rdynamic -Wl,--undefined-version -fstack-protector-strong -pthread -Wl,-rpath=/usr/local/lib/qt5 -Wl,-whole-archive -lqtwebenginecoreapi -Wl,-no-whole-archive -Wl,--version-script,QtWebEngineCore.version -pthread -Wl,-rpath,/usr/local/lib/qt5 -shared -Wl,-Bsymbolic-functions -Wl,-soname,libQt5WebEngineCore.so.5 -o libQt5WebEngineCore.so.5.15.16 -L/wrkdirs/usr/ports/www/qt5-webengine/work/.build/lib -L/usr/local/lib /usr/local/lib/qt5/libQt5Quick.so /usr/local/lib/qt5/libQt5Gui.so /usr/local/lib/qt5/libQt5QmlModels.so /usr/local/lib/qt5/libQt5WebChannel.so /usr/local/lib/qt5/libQt5Qml.so /usr/local/lib/qt5/libQt5Network.so /usr/local/lib/qt5/libQt5Positioning.so /usr/local/lib/qt5/libQt5Core.so -lGL -lpthread -lnss3 -lsmime3 -lnssutil3 -lplds4 -lplc4 -lnspr4 -ldl -lexecinfo -lkvm -lutil -lz -levent -lrt -ljpeg -lm -lopus -lavcodec -lavformat -lavutil -lopenh264 -lvpx -lX11 -lXcomposite -lXdamage -lXext -lXfixes -lXrender -lXrandr -lXtst -lpng16 -lwebp -lwebpdemux -lwebpmux -lfreetype -lexpat -lfontconfig -lharfbuzz-subharfbuzz -lre2 -lX11-xcb -lxcb -lxkbcommon -ldbus-1 -lXi -lpci -lasound -lsnappy -lxml2 -lxslt -lminizip -llcms2 -llcms2_fast_float -llcms2_threaded -L/wrkdirs/usr/ports/www/qt5-webengine/work/.build/src/core/api/release -lGL > /usr/local/bin/ld: /usr/lib/libgcc_s.so: error adding symbols: memory exhausted > c++: error: linker command failed with exit code 1 (use -v to see invocation) > *** [../../lib/libQt5WebEngineCore.so.5.15.16] Error code 1
(In reply to Alastair Hogge from comment #22) Seems a problem with your memory in poudriere. VVD@ fluffy@ you can commit the patches related to minizip-ng and others (blender, opencolorio, etc)
(In reply to Alastair Hogge from comment #22) What is this: > main-i386 is failing: > --- ../../lib/libQt5WebEngineCore.so.5.15.16 --- ? Just did testport on 13.2 i386 without errors.
(In reply to Vladimir Druzenko from comment #24) I do not know, so I updated hosts, and jails, and poudriere-testport has started the run for the i386 releases and main, but I will not know for some hours, sorry.
Bug #277287 has allowed me to progress further, however, the main-i386 build is still failing on www/qt5-webengine due do to memory exhaustion, and 14.0-i386-release fails at bug #277277.
(In reply to Alastair Hogge from comment #26) > www/qt5-webengine It's "archivers/minizip-ng: Update to 4.0.4" - why do you build www/qt5-webengine? I don't understand…
(In reply to Vladimir Druzenko from comment #27) Perhaps I have misunderstood comment #19, I thought you were after a test against emulators/qmc2 with minizip-ng-4.0.4. If that is not the case, then minizip-ng-4.0.4 has passed on the following: > 12.4-{amd64,i386}-release: OK > 13.2-{amd64,i386}-release: OK > 14.0-{amd64,i386}-release: OK > main-{amd64,i386}: OK Bug #275324 was the origin for the original 4.0.3 update, at that time both minizip-ng and qmc2 completed: > 12.4-{amd64,i386}-release: OK > 13.2-{amd64,i386}-release: OK > 14.0-{amd64,i386}-release: OK > main-{amd64,i386}: OK It is only recently that I am having problems with qt5 on i386, tho, I believe that is not relevant because we are only interested in minizip-ng-4.0.4.
(In reply to Alastair Hogge from comment #28) Sometimes it's impossible to build all consumers on all supported platforms. For example, if the consumer depends on another port that doesn't build on this platform (our case). Or if you don't have hardware for test (ppc*, arm*, etc). If this port is very popular and have a lot of consumers, then ask for exp-run. archivers/minizip-ng have few not popular consumers - build it on 13.2, 14.0 amd64 and i386 + build consumers on at least one platform is enough. IMHO.
(In reply to Vladimir Druzenko from comment #29) OK, thanks for clarifying, and in light of that, I can report that the poudriere-testport run of minizip-ng-4.0.4 completed (2024-02-26): > 13.2-{amd64,i386}-release: OK > 14.0-{amd64,i386}-release: OK > main-{amd64,i386}: OK poudriere-testport run of one consumer, emulators/qmc2 completed (2024-02-20): > 13.2-amd64-release: OK > 14.0-amd64-release: OK > main-amd64: OK Thanks.
The attached patch is incorrect (sorry about that), it does not update the pkg-plist to reflect the 4.0.4 shared library, I failed to update it from so.4.0.3 to so.4.0.4. There is also a new release, 4.0.5: https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.5 I will make an attempt to rectify my mistake, and update the Port later today.
Created attachment 249486 [details] Update to 4.0.5 Done. Poudriere 13.3 amd64 - ok.
(In reply to Vladimir Druzenko from comment #32) Thanks.
Comment on attachment 248381 [details] Update to 4.0.4 Obsoleted by 4.0.5 patch from, vvd@
(In reply to Vladimir Druzenko from comment #32) poudriere-testport archivers/minizip-ng: main-amd64-current: PASS main-i386-current: PASS 13_2-amd64-release: PASS 13_2-i386-release: PASS 13_3-amd64-release: PASS 13_3-i386-release: PASS 14_0-amd64-release: PASS 14_0-i386-release: PASS
poudriere-testport emulators/qmc2: main-amd64-current: PASS 13_2-amd64-release: PASS 13_2-i386-release: PASS 13_3-amd64-release: PASS 13_3-i386-release: PASS 14_0-amd64-release: PASS 14_0-i386-release: PASS
Can I commit this update without committing updates for the blender and opencolorio?
We can't update it without update graphics/opencolorio - current version of the graphics/opencolorio 2.2.1 isn't compatible with archivers/minizip-ng 4.x. So we must update together archivers/minizip-ng, graphics/opencolorio, graphics/blender and all other deps of the graphics/blender.
Update of blender and all dependencies in one patch: https://reviews.freebsd.org/D45051
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=5d8f13e960f38a980f166c3097940d54423dea1b commit 5d8f13e960f38a980f166c3097940d54423dea1b Author: Vladimir Druzenko <vvd@FreeBSD.org> AuthorDate: 2024-05-29 20:24:37 +0000 Commit: Vladimir Druzenko <vvd@FreeBSD.org> CommitDate: 2024-05-29 20:26:13 +0000 devel/axmldec, emulators/dolphin-emu, emulators/qmc2: bump after update archivers/minizip-ng PR: 275303 Tested by: Alastair Hogge <agh@riseup.net>, martymac, lbartoletti devel/axmldec/Makefile | 2 +- emulators/dolphin-emu/Makefile | 1 + emulators/qmc2/Makefile | 1 + 3 files changed, 3 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=56526524998089f9fe43d8dbb63140cc16db20ca commit 56526524998089f9fe43d8dbb63140cc16db20ca Author: Vladimir Druzenko <vvd@FreeBSD.org> AuthorDate: 2024-05-29 20:01:54 +0000 Commit: Vladimir Druzenko <vvd@FreeBSD.org> CommitDate: 2024-05-29 20:26:11 +0000 archivers/minizip-ng: update to 4.0.5 Changelogs: https://github.com/zlib-ng/minizip-ng/releases/tag/3.0.9 https://github.com/zlib-ng/minizip-ng/releases/tag/3.0.10 https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.0 https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.1 https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.2 https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.3 https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.4 https://github.com/zlib-ng/minizip-ng/releases/tag/4.0.5 PR: 275303 Tested by: Alastair Hogge <agh@riseup.net>, lbartoletti Approved by: Shane <FreeBSD@ShaneWare.Biz> (maintaner) archivers/minizip-ng/Makefile | 9 +++++---- archivers/minizip-ng/distinfo | 6 +++--- archivers/minizip-ng/pkg-plist | 5 +++-- 3 files changed, 11 insertions(+), 9 deletions(-)
Thanks!