Created attachment 550570 [details] full build log Thanks for the work on bug#666518 but the fix there seems to be incomplete. I still get a similar error, tho further down in the compile, now, and the same ... append-cxxflags -DU_USING_ICU_NAMESPACE=1 ... band-aid seems to fix it. In file included from ../src/mgr/swmgr.cpp:108: ../include/utf8transliterator.h:53:2: error: 'UnicodeString' does not name a type; did you mean 'uset_addString'? UnicodeString resource; ^~~~~~~~~~~~~ uset_addString ../include/utf8transliterator.h:56:24: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive] typedef std::map<const UnicodeString, SWTransData> SWTransMap; ^~~~~~~~~~~~~ ../include/utf8transliterator.h:56:50: error: wrong number of template arguments (1, should be at least 2) typedef std::map<const UnicodeString, SWTransData> SWTransMap; ^ In file included from /lib64/gcc/x86_64-pc-linux-gnu/8.2.0/include/g++-v8/map:61, from ../include/swmgr.h:60, from ../src/mgr/swmgr.cpp:33: /lib64/gcc/x86_64-pc-linux-gnu/8.2.0/include/g++-v8/bits/stl_map.h:100:11: note: provided for 'template<class _Key, class _Tp, class _Compare, class _Alloc> class std::map' class map ^~~ In file included from ../src/mgr/swmgr.cpp:108: ../include/utf8transliterator.h:57:19: error: 'UnicodeString' was not declared in this scope typedef std::pair<UnicodeString, SWTransData> SWTransPair; ^~~~~~~~~~~~~ ../include/utf8transliterator.h:57:19: note: suggested alternative: In file included from ../include/utf8transliterator.h:41, from ../src/mgr/swmgr.cpp:108: /include/unicode/unistr.h:286:20: note: 'icu::UnicodeString' class U_COMMON_API UnicodeString : public Replaceable ^~~~~~~~~~~~~ In file included from ../src/mgr/swmgr.cpp:108: ../include/utf8transliterator.h:57:45: error: template argument 1 is invalid typedef std::pair<UnicodeString, SWTransData> SWTransPair; ^ ../include/utf8transliterator.h:84:2: error: 'Transliterator' does not name a type; did you mean 'UTransliterator'? Transliterator *createTrans(const UnicodeString& ID, UTransDirection dir, UErrorCode &status); ^~~~~~~~~~~~~~ UTransliterator make[1]: *** [Makefile:1335: swmgr.lo] Error 1 make[1]: *** Waiting for unfinished jobs.... Package USE flags: USE="curl icu -clucene -debug -doc -static-libs"
That's strange, the patch should have added U_USING_ICU_NAMESPACE to definitions. What ICU version do you have installed?
(In reply to Chris Reffett from comment #1) > That's strange, the patch should have added U_USING_ICU_NAMESPACE to > definitions. While this is definitely beyond my knowledge comfort zone, see if the theory fits... Based on the fact that the first bug's error was while using libtool in compile mode, while this one seems to be while using libtool to link already built binary object files, at a guess the problem may be that the patch applied the definition only to the compile step and here it's needed with the linker step as well. But simply doing the append-cxxflags adds it at a different level so it gets applied to both, explaining why that works while the patch didn't. ... If that makes any sense at all... > What ICU version do you have installed? It's in the title/summary. icu-62.1 =:^)
> But simply doing the append-cxxflags adds it at a different level so it gets > applied to both, explaining why that works while the patch didn't. > > ... If that makes any sense at all... Sounds plausible enough. I just noticed that you have USE=icu and I didn't when testing, so I suppose that's why this slipped by before. Investigating further now. > > > What ICU version do you have installed? > > It's in the title/summary. icu-62.1 =:^) Whoops. So you did.
Also, looks like the Fedora build doesn't enable -DWITH_ICU either, so I suspect that they just didn't define it somewhere they needed to. Probably will end up re-spinning their patch.
...Or it could be that Fedora is using the cmake build system and we're using the make build system (why on earth do they have two build systems!?) Oh well. We're using cmake now! Fixed in the revbump, please reopen if this still doesn't fix it.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6a34df8eae4ad4debd0d170f1fe73cc0b3e62ff8 commit 6a34df8eae4ad4debd0d170f1fe73cc0b3e62ff8 Author: Chris Reffett <creffett@gentoo.org> AuthorDate: 2018-10-12 22:37:53 +0000 Commit: Chris Reffett <creffett@gentoo.org> CommitDate: 2018-10-12 22:38:46 +0000 app-text/sword: Revbump, switch to cmake build Switch to using CMake build system. Incidentally fixes 668296. Bug: https://bugs.gentoo.org/668296 Signed-off-by: Chris Reffett <creffett@gentoo.org> Package-Manager: Portage-2.3.51, Repoman-2.3.11 .../{sword-1.8.1.ebuild => sword-1.8.1-r1.ebuild} | 41 +++++++++------------- 1 file changed, 16 insertions(+), 25 deletions(-)
(In reply to Chris Reffett from comment #5) > Oh well. We're using cmake now! Fixed in the revbump, please reopen if this > still doesn't fix it. It does. Thanks again. =:^)