https://marc.info/?l=xerces-c-users&m=150396606201867&w=2 Note that this release includes a replacement of the autotools build with CMake. The autotools build still exists, but the CMake build includes pkg-config and cmake configuration, and also builds and run the unit tests correctly on FreeBSD, which was tested extensively during the development (the autotools unit tests fail due to erroneous newlines in the output--a behaviour difference on FreeBSD and other platforms due to odd implementation details). In practice, this means the cmake build is preferable if you would like to switch. The CMake build also conditionally enables C++11 features including use of char16_t string literals. Regards, Roger
Created attachment 185962 [details] Update port to 3.2.0 Initial patch. Note that dependent ports will require updating when they are relying on broken implicit conversions to XMLCh*.
You guys are aware that what went into the ports tree doesn't work on 11.0, neither amd64 nor i386 and breaks e.g. open-vm-tools building? libtool: compile: c++ -DHAVE_CONFIG_H -DXERCES_BUILDING_LIBRARY -I. -I.. -I../src/xercesc/util -DLIBICONV_PLUG -O2 -pipe -DLIBICONV_PLUG -fstack-protector -fno-strict-aliasing -DLIBICONV_PLUG -D_THREAD_SAFE -msse2 -MT xercesc/util/HeaderDummy.lo -MD -MP -MF xercesc/util/.deps/HeaderDummy.Tpo -c xercesc/util/HeaderDummy.cpp -fPIC -DPIC -o xercesc/util/.libs/HeaderDummy.o xercesc/util/Base64.cpp:149:14: error: use of undeclared identifier 'SIZE_MAX' else if (XERCES_SIZE_MAX - inputLength < 2) { ^ ./xercesc/util/Xerces_autoconf_config.hpp:112:25: note: expanded from macro 'XERCES_SIZE_MAX' #define XERCES_SIZE_MAX SIZE_MAX ^ 1 error generated. gmake[5]: *** [Makefile:3992: xercesc/util/Base64.lo] Error 1
Hi Franco, I didn't realise the patch had been committed yet; it was a preliminary patch which didn't update any of the ports. Sorry for any confusion and breakage I might have caused here. https://github.com/rleigh-codelibre/freebsd-ports/tree/xerces-c-3.2.0 is the work I have in progress. I've updated most of the reverse dependencies, including open-vm-tools. It should be ready soon; I am waiting on some test builds of remaining ports. Kind regards, Roger
Hi Roger, No worries. I would just like to mention it since the following is in the tree since Saturday, not working so well: https://svnweb.freebsd.org/ports?view=revision&revision=449138 I can help with checking your patch at least. :) Cheers, Franco
Hi Roger, Your version of xerces-c3 builds fine. Thanks, Franco
Great, thanks for testing. I've got about 40 reverse dependencies still to go through and test build (mainly just enabling C++11 and checking it builds, and fixing any breakage).
Created attachment 186127 [details] Build Xerces with cmake and update distinfo
Created attachment 186128 [details] 0002-textproc-xerces-c3-Reverse-dependencies-require-C-11.patch
Created attachment 186129 [details] 0003-games-enigma-Patch-assumptions-which-break-C-11-buil.patch
Created attachment 186130 [details] 0004-textproc-xqilla-Patch-to-replace-use-of-internal-Xer.patch
Created attachment 186131 [details] 0005-devel-libepp-nicbr-Patch-to-correct-use-of-CXXFLAGS-.patch
Created attachment 186132 [details] 0006-security-apache-xml-security-c-Patch-to-build-with-C.patch
Created attachment 186133 [details] 0007-graphics-cegui-Patch-C-11-narrowing-errors.patch
Created attachment 186134 [details] 0008-graphics-cegui-Patch-invalid-pointer-and-integer-com.patch
Created attachment 186135 [details] 0009-editors-xmlcopyeditor-Patch-to-build-with-C-11.patch
Created attachment 186136 [details] 0010-graphics-appleseed-Correct-spinlock-initialisation-w.patch
Dear Franco and sunpoet, Please find the 10 attached patches to improve xerces-c and fix its reverse dependencies, rebased onto the current git master and should all apply cleanly to current svn. If it's more convenient, you can also find them here: https://github.com/rleigh-codelibre/freebsd-ports/commits/xerces-c-3.2.0 I've tested each port with poudriere for the 11.1 and 10.3 releases. The only one missing is graphics/mitsuba for which you can find some patches in git, but it needs more patching and really this port simply needs updating to the current version, which I can look at, but I thought you might not want the other fixes to be held up. This is only the second time I've submitted anything to the FreeBSD ports, the first being the xalan-c port, so I hope the above are meeting the requirements for submissions. If there's anything not right, please do let me know. Kind regards, Roger
Note that all of the patches have been upstreamed, or are in the process of being submitted. Some are already applied.
Created attachment 186153 [details] 0008-graphics-cegui-Patch-invalid-pointer-and-integer-com.patch Updated patch 0008 to match the change already merged by cegui upstream. All patches are now submitted upstream or are already fixed upstream.
Comment on attachment 186136 [details] 0010-graphics-appleseed-Correct-spinlock-initialisation-w.patch Moved patch 0010 to #222392
Comment on attachment 186135 [details] 0009-editors-xmlcopyeditor-Patch-to-build-with-C-11.patch Moved patch 0009 to #222396
Comment on attachment 186133 [details] 0007-graphics-cegui-Patch-C-11-narrowing-errors.patch Moved patch 0007 to #222394
Comment on attachment 186153 [details] 0008-graphics-cegui-Patch-invalid-pointer-and-integer-com.patch Moved patch 0007 to #222394
Comment on attachment 186132 [details] 0006-security-apache-xml-security-c-Patch-to-build-with-C.patch Moved patch 0006 to #222397
Comment on attachment 186131 [details] 0005-devel-libepp-nicbr-Patch-to-correct-use-of-CXXFLAGS-.patch Moved patch 0005 to #222399
Comment on attachment 186130 [details] 0004-textproc-xqilla-Patch-to-replace-use-of-internal-Xer.patch Moved patch 0004 to #222400
Comment on attachment 186129 [details] 0003-games-enigma-Patch-assumptions-which-break-C-11-buil.patch Moved patch 0003 to #222403
Comment on attachment 185962 [details] Update port to 3.2.0 Obsolete original patch (replaced)
I have split out all the C++11 and Xerces-C 3.2 support patches for reverse dependencies into separate tickets (all linked here as blockers). The remaining two patches (1) enable CMake and Doxygen support and (2) switch on C++11 support. Any thoughts on proceeding with these actions? Regards, Roger
Makefile shows PORTNAME= xerces-c PORTVERSION= 3.2.0 PORTREVISION= 2 is this still relevant?
Yes, it's still relevant. But it's blocked on the linked C++11 fixes in other ports being applied.
See also bug #226277 (update to 3.2.1).
No more blocked by other PR's.