Created attachment 170898 [details]
Work around -isystem strangeness in libreoffice build system
After libc++ 3.8.0 was imported in r300770 (see also bug 208158), Antoine found that editors/libreoffice failed with the following errors :
In file included from /wrkdirs/usr/ports/editors/libreoffice/work/libreoffice-220.127.116.11/ucb/source/ucp/webdav/AprEnv.cxx:20:
In file included from /wrkdirs/usr/ports/editors/libreoffice/work/libreoffice-18.104.22.168/ucb/source/ucp/webdav/AprEnv.hxx:25:
In file included from /wrkdirs/usr/ports/editors/libreoffice/work/libreoffice-22.214.171.124/ucb/source/ucp/webdav/SerfLockStore.hxx:24:
In file included from /usr/include/c++/v1/map:442:
In file included from /usr/include/c++/v1/__tree:15:
In file included from /usr/include/c++/v1/iterator:343:
In file included from /usr/include/c++/v1/__functional_base:15:
In file included from /usr/include/c++/v1/type_traits:363:
/usr/include/c++/v1/cstddef:43:15: fatal error: 'stddef.h' file not found
1 error generated.
This is because libreoffice's build system transforms some of the -I options passed via the port Makefile to -isystem, and one of those options is -I/usr/include, which screws up the include path order for C++ programs. It turns out the -I/usr/include path is brought in via OPENSSL_CFLAGS, so set that to a single space to work around this. (Note that OPENSSL_CFLAGS cannot be empty, otherwise the configure script will complain about not being able to find openssl.)
Obsolete after ports r416875.