Skip to content

tools/build.py does not adhere to $CXX env variable settings #24289

@mulander

Description

@mulander

While building on OpenBSD the base system ships with g++ 4.2.1

$ g++ --version
g++ (GCC) 4.2.1 20070719 
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

There is a newer gcc/g++ installed via ports as egcc/eg++

$ eg++ --version
eg++ (GCC) 4.9.3
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Doing export CXX=eg++ allowed me to move forward with the port but after a significant amount of code got build the setting seems to no longer being adhered to. Leading to a build failure due to a flag that is not recognised in g++ but would normally be recognized by eg++.

$ ./tools/build.py -v runtime
gmake -j 2 BUILDTYPE=DebugX64 V=1 runtime
  g++ '-DDEBUG' '-D_FORTIFY_SOURCE=2' '-DNATIVE_CODE_HAS_FRAME_POINTERS' -Iruntime  -Werror -Wall -Wextra -Wno-unused-parameter -Wnon-virtual-dtor -Wvla -Wno-conversion-null -Woverloaded-virtual -g3 -ggdb3 -fno-rtti -fno-exceptions -fstack-protector -m64 -msse2 -mno-omit-leaf-frame-pointer -O2 -fno-omit-frame-pointer  -MMD -MF out/DebugX64/.deps/out/DebugX64/obj.host/libdart_lib_nosnapshot/runtime/vm/bootstrap.o.d.raw  -c -o out/DebugX64/obj.host/libdart_lib_nosnapshot/runtime/vm/bootstrap.o runtime/vm/bootstrap.cc
  g++ '-DDEBUG' '-D_FORTIFY_SOURCE=2' '-DNATIVE_CODE_HAS_FRAME_POINTERS' -Iruntime  -Werror -Wall -Wextra -Wno-unused-parameter -Wnon-virtual-dtor -Wvla -Wno-conversion-null -Woverloaded-virtual -g3 -ggdb3 -fno-rtti -fno-exceptions -fstack-protector -m64 -msse2 -mno-omit-leaf-frame-pointer -O2 -fno-omit-frame-pointer  -MMD -MF out/DebugX64/.deps/out/DebugX64/obj.host/libdart_lib_nosnapshot/gen/async_gen.o.d.raw  -c -o out/DebugX64/obj.host/libdart_lib_nosnapshot/gen/async_gen.o out/DebugX64/obj/gen/async_gen.cc
cc1plus: error: unrecognized command line option "-Wvla"
cc1plus: error: unrecognized command line option "-Wno-conversion-null"
runtime/libdart_lib_nosnapshot.host.mk:1319: recipe for target 'out/DebugX64/obj.host/libdart_lib_nosnapshot/runtime/vm/bootstrap.o' failed
cc1plus: error: unrecognized command line option "-Wvla"gmake: *** [out/DebugX64/obj.host/libdart_lib_nosnapshot/runtime/vm/bootstrap.o] Error 1

cc1plus: error: unrecognized command line option "-Wno-conversion-null"
gmake: *** Waiting for unfinished jobs....
runtime/libdart_lib_nosnapshot.host.mk:1327: recipe for target 'out/DebugX64/obj.host/libdart_lib_nosnapshot/gen/async_gen.o' failed
gmake: *** [out/DebugX64/obj.host/libdart_lib_nosnapshot/gen/async_gen.o] Error 1
BUILD FAILED
$ echo $CXX
eg++

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-infrastructureUse area-infrastructure for SDK infrastructure issues, like continuous integration bot changes.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions