On Wed 25 Jul 2018, Tomasz Figa wrote: > Hi Chad, > > On Wed, Jul 25, 2018 at 10:11 AM Chad Versace <chadvers...@chromium.org> > wrote: > > > > Problem 1: u_debug_stack_android.cpp transitively included > > "pipe/p_compiler.h", but src/gallium/include was missing from the C++ > > include path. > > > > Problem 2: Add -std=c++11 to AM_CXXFLAGS. Android's libbacktrace headers > > require C++11, but the Android toolchain (at least in the Chrome OS SDK) > > does not enable C++11 by default. > > > > v2: Add -std=c++11. > > > > Cc: Gurchetan Singh <gurchetansi...@chromium.org> > > Cc: Eric Engestrom <eric.engest...@intel.com> > > --- > > src/gallium/auxiliary/Makefile.am | 6 +++++- > > 1 file changed, 5 insertions(+), 1 deletion(-)
[snip] > > if HAVE_PLATFORM_ANDROID > > +# Android's libbacktrace headers required C++11, but the Android toolchain > > (at > > +# least in the Chrome OS SDK) does not enable C++11 by default. > > +AM_CXXFLAGS += $(CXX11_CXXFLAGS) > > + > > This is something that would normally be handled by the .pc file for > given library. Package build system shouldn't be polluted with such > system-specific low level dependencies. Normally, I would agree. "If libbacktrace needs a CXXFLAG, then put in the pc file". That's reasonable for most flags, because most flags are *additive*. But the -std flag is not. If backtrace.pc added '-std=c++11' to CXXFLAGS, but a different package required c++14, how should Mesa resolve that conflict? As precedent, I searched all pc files on my Debian machine. The only pc files that add -std to CFLAGS or CXXFLAGS are the icu-*.pc files. And those files should serve as anti-precedent in most cases; they are badly written compared to all other pc files I've seen. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev