1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 06:32:10 +02:00
cdt/build/org.eclipse.cdt.managedbuilder.gnu.ui/plugin.properties
Jonah Graham b8bd15844b Bug 571722: Add ALL_FLAGS for scanner discovery
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.
2022-11-21 10:46:49 -05:00

234 lines
No EOL
10 KiB
Properties

###############################################################################
# Copyright (c) 2005, 2010 Texas Instruments Inc. and others.
#
# This program and the accompanying materials
# are made available under the terms of the Eclipse Public License 2.0
# which accompanies this distribution, and is available at
# https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Texas Instruments Inc. - initial API and implementation
# IBM Corporation
###############################################################################
# plugin names
pluginName=GNU Managed Build Definitions
providerName=Eclipse CDT
# Build Model Names
TargetName.gnu=GNU
TargetName.gnu.exe=Gnu Executable
TargetName.gnu.so=Gnu Shared Library
TargetName.gnu.lib=Gnu Static Library
TargetName.cygw.exe=Cygwin Executable
TargetName.cygw.so=Cygwin DLL
TargetName.cygw.lib=Cygwin Library
TargetName.macosx.exe=MacOS X Executable
TargetName.macosx.so=MacOS X Shared Library
TargetName.macosx.lib=MacOS X Static Library
TargetName.solaris.exe=Solaris Gnu Executable
TargetName.solaris.so=Solaris Gnu Shared Library
TargetName.solaris.lib=Solaris Gnu Static Library
# No longer needed post-2.0
TargetName.cygw=Cygwin
TargetName.cygw.dll=Cygwin Export Library (DLL)
TargetName.linux=Linux
TargetName.linux.exe=Linux Executable
TargetName.linux.so=Linux Shared Library
TargetName.linux.lib=Linux Static Library
TargetName.solaris=Solaris
# Default Configuration Names
# START NON-TRANSLATABLE
ConfigName.Rel=Release
ConfigName.Dbg=Debug
# END NON-TRANSLATABLE
# Generic tool-chain names
ToolChainName.Rel=GCC Tool Chain
ToolChainName.Dbg=GCC Tool Chain
ToolChainName.Linux=Linux GCC
ToolChainName.Cygwin=Cygwin GCC
ToolChainName.MinGW=MinGW GCC
ToolChainName.Macosx=MacOSX GCC
ToolChainName.Solaris=Solaris GCC
# Generic platform names
PlatformName.Rel=Release Platform
PlatformName.Dbg=Debug Platform
# Generic builder names
BuilderName.Rel=Gnu Make
BuilderName.Dbg=Gnu Make
# Generic tool names
ToolName.preprocessor = Preprocessor
ToolName.compiler.c = C Compiler
ToolName.compiler.cpp = C++ Compiler
ToolName.archiver = Archiver
ToolName.linker.c = C Linker
ToolName.linker.cpp = C++ Linker
ToolName.windres = Resource compiler
# GNU tool names
ToolName.compiler.gnu.c = GCC C Compiler
ToolName.compiler.gnu.cpp = GCC C++ Compiler
ToolName.linker.gnu.c = GCC C Linker
ToolName.linker.gnu.cpp = GCC C++ Linker
ToolName.archiver.gnu = GCC Archiver
ToolName.assembler.gnu = GCC Assembler
#Cygwin tool names
ToolName.linker.cygwin.gnu.c=Cygwin C Linker
ToolName.linker.cygwin.gnu.cpp=Cygwin C++ Linker
ToolName.compiler.cygwin.gnu.c = Cygwin C Compiler
ToolName.compiler.cygwin.gnu.cpp = Cygwin C++ Compiler
#MinGW tool names
ToolName.linker.mingw.gnu.c=MinGW C Linker
ToolName.linker.mingw.gnu.cpp=MinGW C++ Linker
# Mach-O tool names
ToolName.linker.macosx.c = MacOS X C Linker
ToolName.linker.macosx.cpp = MacOS X C++ Linker
#Solaris tool names
ToolName.compiler.solaris.c = Solaris C Compiler
ToolName.compiler.solaris.cpp = Solaris C++ Compiler
# Generic Category Names
OptionCategory.Symbols = Symbols
OptionCategory.Dialect = Dialect
OptionCategory.Preproc = Preprocessor
OptionCategory.Dirs = Includes
OptionCategory.General = General
OptionCategory.Optimize=Optimization
OptionCategory.Debug=Debugging
OptionCategory.Warn=Warnings
OptionCategory.Misc=Miscellaneous
OptionCategory.Libs=Libraries
OptionCategory.Shared.Settings=Shared Library Settings
# Generic Option Names
Option.Posix.Dialect=Language standard
Option.Posix.Dialect.default=
Option.Posix.Dialect.c90=ISO C90 / ANSI C89 (-std=c90)
Option.Posix.Dialect.c99=ISO C99 (-std=c99)
Option.Posix.Dialect.c11=ISO C11 (-std=c11)
Option.Posix.Dialect.c++98=ISO C++98 (-std=c++98)
Option.Posix.Dialect.c++11=ISO C++11 (-std=c++11)
Option.Posix.Dialect.c++14=ISO C++14 (-std=c++14)
Option.Posix.Dialect.c++17=ISO C++17 (-std=c++17)
Option.Posix.Dialect.c++2a=ISO C++20 (-std=c++2a)
Option.Posix.Dialect.Flags=Other dialect flags
Option.Posix.PreprocOnly=Preprocess only (-E)
Option.Posix.Nostdinc=Do not search system directories (-nostdinc)
Option.Posix.DefSym=Defined symbols (-D)
Option.Posix.UndefSym=Undefined symbols (-U)
Option.Posix.InclPaths=Include paths (-I)
Option.Posix.InclFiles=Include files (-include)
Option.Posix.OptLevel=Optimization Level
Option.Posix.Optimize.None=None (-O0)
Option.Posix.Optimize.Optimize=Optimize (-O1)
Option.Posix.Optimize.More=Optimize more (-O2)
Option.Posix.Optimize.Most=Optimize most (-O3)
Option.Posix.Optimize.Size=Optimize for size (-Os)
Option.Posix.Optimize.Flags=Other optimization flags
Option.Posix.DebugLevel=Debug Level
Option.Posix.Debug.None=None
Option.Posix.Debug.Min=Minimal (-g1)
Option.Posix.Debug.Def=Default (-g)
Option.Posix.Debug.Max=Maximum (-g3)
Option.Posix.Debug.Other=Other debugging flags
Option.Posix.Debug.gprof=Generate gprof information (-pg)
Option.Posix.Debug.prof=Generate prof information (-p)
Option.Posix.Debug.sanitaddress=Sanitize address (-fsanitize=address)
Option.Posix.Debug.sanitpointers=Sanitize pointer operations (-fsanitize=pointer-compare -fsanitize=pointer-subtract)
Option.Posix.Debug.sanitthread=Sanitize data race in multi-thread (-fsanitize=thread)
Option.Posix.Debug.sanitleak=Sanitize memory leak (-fsanitize=leak)
Option.Posix.Debug.sanitundefined=Sanitize undefined behavior (-fsanitize=undefined)
Option.Posix.Warn.Syntax=Check syntax only (-fsyntax-only)
Option.Posix.Warn.Pedandic=Pedantic (-pedantic)
Option.Posix.Warn.PedErrors=Pedantic warnings as errors (-pedantic-errors)
Option.Posix.Warn.nowarn=Inhibit all warnings (-w)
Option.Posix.Warn.allwarn=All warnings (-Wall)
Option.Posix.Warn.extrawarn=Extra warnings (-Wextra)
Option.Posix.Warn.toerrs=Warnings as errors (-Werror)
Option.Posix.Warn.wconversion=Implicit conversion warnings (-Wconversion)
Option.Posix.Warn.wfloatequal=Direct float equal check (-Wfloat-equal)
Option.Posix.Warn.wcastalign=Pointer cast with different alignment (-Wcast-align)
Option.Posix.Warn.wcastqual=Removing type qualifier from cast target type (-Wcast-qual)
Option.Posix.Warn.wctordtorprivacy=All ctor and dtor private (-Wctor-dtor-privacy)
Option.Posix.Warn.wdisabledopt=Requested optimization pass is disabled (-Wdisabled-optimization)
Option.Posix.Warn.wlogicalop=Suspicious uses of logical operators (-Wlogical-op)
Option.Posix.Warn.wmissingdecl=Global function without previous declaration (-Wmissing-declarations)
Option.Posix.Warn.wmissingincdir=User-supplied include directory does not exist (-Wmissing-include-dirs)
Option.Posix.Warn.wnoexccept=Noexcept false but never throw exception (-Wnoexcept)
Option.Posix.Warn.woldstylecast=C-style cast used (-Wold-style-cast)
Option.Posix.Warn.woverloadedvirtual=Function hides virtual functions from base class (-Woverloaded-virtual)
Option.Posix.Warn.wredundantdecl=More than one declaration in the same scope (-Wredundant-decls)
Option.Posix.Warn.wshadow=Local symbol shadows upper scope symbol (-Wshadow)
Option.Posix.Warn.wsignconv=Implicit conversions that may change the sign (-Wsign-conversion)
Option.Posix.Warn.wsignpromo=Overload resolution promotes unsigned to signed type (-Wsign-promo)
Option.Posix.Warn.wstrictnullsent=Use of an uncasted NULL as sentinel (-Wstrict-null-sentinel)
Option.Posix.Warn.wswitchdef=A switch statement does not have a default case (-Wswitch-default)
Option.Posix.Warn.wundef=An undefined identifier is evaluated in an #if directive (-Wundef)
Option.Posix.Warn.weffcpp=Effective C++ guidelines (-Weffc++)
Option.Posix.Warn.wwritestring=Treat strings always as const (-Wwrite-strings)
Option.Posix.Verbose=Verbose (-v)
Option.OtherFlags=Other flags
Option.OtherFlagsExcludedFromScannerDiscovery=Other flags (excluded from discovery)
Option.OtherFlagsExcludedFromScannerDiscoveryTip=Flags that will not be passed to the compiler when discovering compiler built-in macros and include paths. Include compiler flags here that may interfere with the correct operation of scanner discovery.
Option.Posix.Ansi=Support ANSI programs (-ansi)
Option.PIC=Position Independent Code (-fPIC)
Option.codecov=Generate gcov information (-ftest-coverage -fprofile-arcs)
Option.codecovTip="Check this flag if you want to enable Profile Code Coverage in your application. Remember to enable this option in both the Compiler-> Miscellaneous and Linker -> General. Then rebuild your project and run Code Coverage again."
Option.Pthread=Support for pthread (-pthread)
Option.PthreadCompilerTip="If you select this option, you probably want to select -pthread in the linker settings."
Option.PthreadLinkerTip="If you select this option, you probably want to select -pthread in the compiler settings."
Option.Security=Hardening options (-fstack-protector-all -Wformat=2 -Wformat-security -Wstrict-overflow)
Option.Randomization=Address randomization (-fPIE)
Option.Posix.Linker.NoStartFiles=Do not use standard start files (-nostartfiles)
Option.Posix.Linker.NoDefLibs=Do not use default libraries (-nodefaultlibs)
Option.Posix.Linker.NoStdLibs=No startup or default libs (-nostdlib)
Option.Posix.Linker.Strip=Omit all symbol information (-s)
Option.Posix.Linker.Strip.debug=Omit debug symbol information (-S)
Option.Posix.Linker.Static=No shared libraries (-static)
Option.Posix.Linker.XLinker=Other options (-Xlinker [option])
Option.Posix.Linker.Flags=Linker flags
Option.Posix.Libs=Libraries (-l)
Option.Posix.Libsearch=Library search path (-L)
Option.Posix.UserObjs=Other objects
Option.Posix.Linker.Shared=Shared (-shared)
Option.Posix.Linker.SOName=Shared object name (-Wl,-soname=)
Option.Posix.Linker.Implib=Import Library name (-Wl,--out-implib=)
Option.Posix.Linker.Defname=DEF file name (-Wl,--output-def=)
Option.Posix.Archiver.Flags=Archiver flags
Option.Gnu.Assembler.Flags=Assembler flags
Option.Gnu.Assembler.warn.suppress=Suppress warnings (-W)
Option.Gnu.Assembler.version=Announce version (-v)
# Platform specific option names
Option.Windows.Windres.OutputFormat = Output format
Option.Windows.Windres.OutputFormat.Coff = coff (--output-format coff)
Option.Windows.Windres.OutputFormat.RC = rc (--output-format rc)
Option.Windows.Windres.OutputFormat.Res = res (--output-format res)
Option.MacOSX.Linker.Shared=Shared (-dynamiclib)
GNUMakeBuilder.name=Gnu Make Builder
extension.name = Managed Build Tools Description