On 13/04/16 11:43, Ilia Mirkin wrote:
Hi Tim,
It seems like building swr forces c++11 mode for the whole build, even
other drivers being built that aren't necessarily ready for it.
Unfortunately c++11 isn't backwards compatible with c++03, so the switch
can't be made unilaterally. Could you have a look at why this is happening?
An example of something that does this properly is clover, which also
requires c++11 to be built.
Thanks,
-ilia
Ilia,
Even before SWR was merged and today's isinf fix was commited,
nv50_ir_ra.cpp already has code to make it portable for C++11 (see below).
I honestly don't understand what you're trying to achieve with this
thread...
Are you seriously plan to require C++03 to build nouveau? It would be
insane try to do that once GCC 6 is widely available.
Rather than see you swimming upstream, I much rather see you helping me
helping you to keep nouveau C++11 portable...
Jose
$ git grep -C3 __cplusplus
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-#include <algorithm>
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-#include <stack>
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-#include <limits>
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp:#if __cplusplus >=
201103L
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-#include <unordered_map>
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-#else
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-#include
<tr1/unordered_map>
--
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-namespace nv50_ir {
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp:#if __cplusplus >=
201103L
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-using std::hash;
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-using std::unordered_map;
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-#elif !defined(ANDROID)
--
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-
bestScore = score;
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp- }
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp- }
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp:#if __cplusplus >=
201103L
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp- if
(std::isinf(bestScore)) {
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp-#else
src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp- if
(isinf(bestScore)) {
_______________________________________________
mesa-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-dev