Created attachment 181199 [details] add c++11-lang featue to USES keyword. On powerpc64, the default compiler is still gcc 4.2.1, and it produces following error: /usr/local/lib/libicui18n.so.58: undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8' adding USES=c++11-lang feature, gcc49 is used and it succeed in building the port.
Created attachment 181200 [details] build failure log from poudriere on powerpc64
This seems not correct to me and I was able to build Pango on powerpc before without this. CC linimon@ and Piotr Kubaj who have access to powerpc64 hardware and can hopefully confirm/reject the patch
(In reply to Tobias Kortkamp from comment #2) The log that was attached also shows syntax error reports, such as: /usr/include/dirent.h:109: syntax error, unexpected '^' in ' int (^)(const struct dirent *),' at '^' /usr/include/dirent.h:109: syntax error, unexpected ')', expecting identifier or '(' in ' int (^)(const struct dirent *),' at ')' /usr/include/dirent.h:110: syntax error, unexpected ',', expecting identifier or '(' in ' int (^)(const struct dirent **, const struct dirent **));' at ',' /usr/include/dirent.h:110: syntax error, unexpected ')', expecting identifier or '(' in ' int (^)(const struct dirent **, const struct dirent **));' at ')' and: /usr/include/dirent.h:109: syntax error, unexpected '^' in ' int (^)(const struct dirent *),' at '^' /usr/include/dirent.h:109: syntax error, unexpected ')', expecting identifier or '(' in ' int (^)(const struct dirent *),' at ')' /usr/include/dirent.h:110: syntax error, unexpected ',', expecting identifier or '(' in ' int (^)(const struct dirent **, const struct dirent **));' at ',' /usr/include/dirent.h:110: syntax error, unexpected ')', expecting identifier or '(' in ' int (^)(const struct dirent **, const struct dirent **));' at ')' /usr/include/stdlib.h:261: syntax error, unexpected '^' in 'int atexit_b(void (^ )(void));' at '^' /usr/include/stdlib.h:263: syntax error, unexpected '^' in ' size_t, int (^ )(const void *, const void *));' at '^' /usr/include/stdlib.h:263: syntax error, unexpected ',', expecting identifier or '(' in ' size_t, int (^ )(const void *, const void *));' at ',' /usr/include/stdlib.h:263: syntax error, unexpected ')', expecting identifier or '(' in ' size_t, int (^ )(const void *, const void *));' at ')' /usr/include/stdlib.h:291: syntax error, unexpected '^' in ' int (^ )(const void *, const void *));' at '^' /usr/include/stdlib.h:291: syntax error, unexpected ',', expecting identifier or '(' in ' int (^ )(const void *, const void *));' at ',' /usr/include/stdlib.h:291: syntax error, unexpected ')', expecting identifier or '(' in ' int (^ )(const void *, const void *));' at ')' /usr/include/stdlib.h:293: syntax error, unexpected '^' in ' int (^ )(const void *, const void *));' at '^' /usr/include/stdlib.h:293: syntax error, unexpected ',', expecting identifier or '(' in ' int (^ )(const void *, const void *));' at ',' /usr/include/stdlib.h:293: syntax error, unexpected ')', expecting identifier or '(' in ' int (^ )(const void *, const void *));' at ')' /usr/include/stdlib.h:298: syntax error, unexpected '^' in 'int mergesort_b(void *, size_t, size_t, int (^)(const void *, const void *));' at '^' /usr/include/stdlib.h:298: syntax error, unexpected ',', expecting identifier or '(' in 'int mergesort_b(void *, size_t, size_t, int (^)(const void *, const void *));' at ',' /usr/include/stdlib.h:298: syntax error, unexpected ')', expecting identifier or '(' in 'int mergesort_b(void *, size_t, size_t, int (^)(const void *, const void *));' at ')' They did not seem to stop the build. This seems odd but I'm not familiar with the context.
Comment on attachment 181200 [details] build failure log from poudriere on powerpc64 > `-- Installing glib-2.46.2_4... > | `-- Installing icu-58.2,1... > | | `-- Installing gcc-4.9.4... COLLATION_FIX was a *non-default* option, gone after ports r483807
(In reply to Mark Millard from comment #3) These syntax error messages come from gobject-introspection, or more specifically, g-ir-scanner. It has no preprocessor and uses an incomplete C parser to scan C source and header files. As long as the problem doesn't happen in the library itself, it is usually safe to ignore them. However, it is still better to have this issue fixed upstream if someone has time to debug it.
*** Bug 233673 has been marked as a duplicate of this bug. ***
This patch is ok, it fixes build on powerpc64.
A commit references this bug: Author: linimon Date: Thu Dec 6 14:01:15 UTC 2018 New revision: 486758 URL: https://svnweb.freebsd.org/changeset/ports/486758 Log: To fix undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8', add compiler:c11 to USES. PR: 218131 Submitted by: Hiroo Ono <hiroo.ono plus freebsd at gmail dot com> Approved by: portmgr (tier-2 blanket) Changes: head/x11-toolkits/pango/Makefile