This change adds the ALL_FLAGS that does not limit tool options to
those declared as IOption::isForScannerDiscovery when launching the
compiler to discover compiler built-ins.
This is needed as many other flags, either entered manually in "Other
flags" or some of the existing flags with checkboxes such as "-ansi",
"-fPIC", and "-fstack-protector-all" which all affect scanner discovery
as they can all change what macros are built-in to the compiler.
The current solution has as a drawback that some settings, like -I and -D
then appear twice. For example in the "Includes" node in the "Project
Explorer"
My only reservation about this change is if there is an option
that can be specified successfully at build time, but when used
at scanner discovery time causes the compiler to fail, or return
incorrect results. Therefore I have added a new field,
excludeFromScannerDiscovery to tool options (buildDefinitions
extension point) that allows tool integrators to always exclude
a command line option from ALL_FLAGS. I have also added
a new "Other flags (excluded from discovery)" to the
"Miscellaneous" tab to allow compiler options to be entered
by the user.
Add common warning options usually not included in -Wall. (GCC/Clang)
Added hardening options and address randomization under misc
section (GCC)
Added sanitize options under debug section. (GCC/Clang)
Change-Id: I885d8f49192018e50fcc5d28ee5e60d8785aa947
Signed-off-by: Marco Stornelli <marco.stornelli@gmail.com>
Renamed c++0x to c++11, c++1y to c++14. Added c++17 and c++20
aka c++2a.
Change-Id: I3939cb56bf887e193bffe7484c6568cf45bd315d
Signed-off-by: Marco Stornelli <marco.stornelli@gmail.com>
Command used:
# Remove space at eol in comments
find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/^(#.*)[ \t]+$/\1/' {} +
# Remove space at eol in blank lines
find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/^[ \t]+$//' {} +
# Replace escaped spaces at eol with unicode
find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/([^\\])\\ $/\1\\u0020/' {} +
# Replace unescaped spaces at eol with unicode
find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/([^\\]) $/\1\\u0020/' {} +
# Replace escaped tabs at eol with unicode
find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/([^\\])\\\t$/\1\\u0009/' {} +
# Replace unescaped tabs at eol with unicode
find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/([^\\])\t$/\1\\u0009/' {} +
# Stage all changes
git add -A .
# trim any remaining whitespace and then identify and fixup
# manually
# Only dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/MessagesForDebugVM.properties
# needed this due to missing newline at end of the file
find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/[ \t]+$//' {} +
Change-Id: I858f16891fe001f4f7e62d5a4f904146e891cd39
I added a checkbox to enable gCov via a single checkbox to
enable gcov in the compiler. It then uses the
applicability calculator to automatically enable the linker if
the compiler option is set.
Signed-off-by: Leo Ufimtsev <lufimtse@redhat.com>
Change-Id: I561d7263d578a7807e890fce5518e6fc2ebb2bb2
Reviewed-on: https://git.eclipse.org/r/29403
Reviewed-by: Elena Laskavaia <elaskavaia.cdt@gmail.com>
Tested-by: Elena Laskavaia <elaskavaia.cdt@gmail.com>