10 KiB
GNU ARM Eclipse
The GNU ARM Eclipse is an open source project that includes a family of Eclipse plug-ins and tools for multi-platform embedded ARM development, based on GNU toolchains. The project is hosted on GitHub.
This exporter aims to create managed GNU ARM Eclipse projects, ready to build, and with as many options properly identified and set in the Eclipse C/C++ Build -> Settings page.
Build plug-in configuration options
All options are prefixed by ilg.gnuarmeclipse.managedbuild.cross.option..
Target Processor
-
arm.target.familyenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.mcpu.cortex-m3 '-mcpu=cortex-m3'
- cortex-m0 '-mcpu=%s'
- cortex-m0-small-multiply '-mcpu=%s'
- cortex-m0plus '-mcpu=%s'
- cortex-m0plus-small-multiply '-mcpu=%s'
- cortex-m1 '-mcpu=%s'
- cortex-m1-small-multiply '-mcpu=%s'
- cortex-m4 '-mcpu=%s'
- cortex-m7 '-mcpu=%s'
-
arm.target.architectureenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.arch.none ''
- armv6-m '-march=%s'
- armv7-m '-march=%s'
-
arm.target.instructionsetenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.instructionset.thumb '-mthumb'
- arm '-marm'
-
arm.target.thumbinterworkbool- true
-mthumb-interwork
- true
-
arm.target.endiannessenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.endianness.default
- little
-mlittle-endian - big
-mbig-endian
-
arm.target.fpu.abienumerated- ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.fpu.abi.default
- soft '-mfloat-abi=soft'
- softfp '-mfloat-abi=softfp'
- hard '-mfloat-abi=hard'
-
arm.target.fpu.unitenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.fpu.unit.default
- fpv4spd16 '-mfpu=fpv4-sp-d16'
- fpv5d16 '-mfpu=fpv5-d16'
- fpv5spd16 '-mfpu=fpv5-sp-d16'
- ...
-
arm.target.unalignedaccess- ilg.gnuarmeclipse.managedbuild.cross.option.arm.target.unalignedaccess.default
- enabled '-munaligned-access'
- disabled '-mno-unaligned-access'
-
target.otherstring
Optimization
-
optimization.levelenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.optimization.level.more '-O2'
- none '-O0'
- optimize '-O1'
- most '-O3'
- size '-Os'
- debug '-Og'
-
optimization.messagelengthbool- false ''
- true '-fmessage-length=0'
-
optimization.signedcharbool- false
- true '-fsigned-char'
-
optimization.functionsectionsbool- false
- true '-ffunction-sections'
-
optimization.datasectionsbool- false
- true '-fdata-sections'
-
optimization.nocommonbool- false
- true '-fno-common'
-
optimization.noinlinefunctionsbool- false ''
- true '-fno-inline-functions'
-
optimization.freestandingbool- false ''
- true '-ffreestanding'
-
optimization.nobuiltinbool- false ''
- true '-fno-builtin'
-
optimization.spconstantbool- false ''
- true '-fsingle-precision-constant'
-
optimization.PICbool- false ''
- true '-fPIC'
-
optimization.ltobool- false ''
- true '-flto'
-
optimization.nomoveloopinvariantsbool- false ''
- true '-fno-move-loop-invariants'
-
optimization.otherstring -
`` bool
- false ''
- true ''
Warnings
-
warnings.syntaxonlybool- false ''
- true '-fsyntax-only'
-
warnings.pedanticbool- false ''
- true '-pedantic'
-
warnings.pedanticerrorsbool- false ''
- true '-pedantic-errors'
-
warnings.nowarnbool- false ''
- true '-w'
-
warnings.unusedbool- false ''
- true '-Wunused'
-
warnings.uninitializedbool- false ''
- true '-Wuninitialized'
-
warnings.allwarnbool- false ''
- true '-Wall'
-
warnings.extrawarnbool- false ''
- true '-Wextra'
-
warnings.missingdeclarationbool- false ''
- true '-Wmissing-declarations'
-
warnings.conversionbool- false ''
- true '-Wconversion'
-
warnings.pointerarithbool- false ''
- true '-Wpointer-arith'
-
warnings.paddedbool- false ''
- true '-Wpadded'
-
warnings.shadowbool- false ''
- true '-Wshadow'
-
warnings.logicalopbool- false ''
- true '-Wlogical-op'
-
warnings.agreggatereturnbool- false ''
- true '-Waggregate-return'
-
warnings.floatequalbool- false ''
- true '-Wfloat-equal'
-
warnings.toerrorsbool- false ''
- true '-Werror'
-
warnings.otherstring
Debugging
-
debugging.levelenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.debugging.level.default '-g'
- none ''
- minimal '-g1'
- max '-g3'
-
debugging.formatenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.debugging.format.default ''
- gdb '-ggdb'
- stabs '-gstabs'
- stabsplus '-gstabs+'
- dwarf2 '-gdwarf-2'
- dwarf3 '-gdwarf-3'
- dwarf4 '-gdwarf-4'
- dwarf5 '-gdwarf-5'
-
debugging.profbool- false ''
- true '-p'
-
debugging.gprofbool- false ''
- true '-pg'
-
debugging.otherstring
Compiler common options
-
verbosebool- false ''
- true '-v'
-
savetempsbool- false ''
- true '--save-temps'
-
nostdincbool- false ''
- true '-nostdinc'
-
asmlistingbool- false ''
- true '-Wa,-adhlns="$@.lst"'
-
preprocessor.preprocessonlybool- false ''
- true '-E'
-
dirs.include.files- '-include%s'
-
compiler.otherstring
Linker common options
-
mapfilenamestring- '-Wl,-Map,"${BuildArtifactFileBaseName}.map"'
-
linker.scriptfile- '-T %s'
-
crefbool- false ''
- true '-Xlinker --cref'
-
printmapbool- false ''
- true '-Xlinker --print-map'
-
linker.nostartbool- false ''
- true '-nostartfiles'
-
linker.nodeflibsbool- false ''
- true '-nodefaultlibs'
-
linker.nostdlibsbool- false ''
- true '-nostdlib'
-
linker.gcsectionsbool- false ''
- true '-Xlinker --gc-sections'
-
linker.printgcsectionsbool- false ''
- true '-Xlinker --print-gc-sections'
-
linker.stripbool- false ''
- true '-s'
-
linker.otherstring -
linker.usenewlibnanobool- false ''
- true '--specs=nano.specs'
-
linker.useprintffloatbool- false ''
- true '-u _printf_float'
-
linker.usescanffloatbool- false ''
- true '-u _scanf_float'
Cross ARM GNU Assembler
Preprocessor
nostdincbool- false ''
- true '-nostdinc'
Includes
Warnings
Miscellaneous
-
verbosebool- false ''
- true '-v'
-
assembler.otherstring
Cross ARM GNU C Compiler
Preprocessor
nostdincbool- false ''
- true '-nostdinc'
Includes
Optimization
c.compiler.stdenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.c.compiler.std.default ''
- ansi '-ansi'
- c90 '-std=c90' (c89)
- gnu90 '-std=gnu90' (gnu89)
- c99 '-std=c99' (c9x)
- gnu99 '-std=gnu99' (gnu9x)
- c11 '-std=c11' (c1x)
- gnu11 '-std=gnu11' (gnu1x)
Warnings
-
c.compiler.warning.missingprototypesbool- false ''
- true '-Wmissing-prototypes'
-
c.compiler.warning.strictprototypesbool- false ''
- true '-Wstrict-prototypes'
-
c.compiler.warning.badfunctioncastbool- false ''
- true '-Wbad-function-cast'
Miscellaneous
-
verbosebool- false ''
- true '-v'
-
c.compiler.otherstring
Cross ARM GNU C++ Compiler
Preprocessor
-
nostdincbool- false ''
- true '-nostdinc'
-
nostdincppbool- false ''
- true '-nostdinc++'
Includes
Optimization
-
cpp.compiler.stdenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.std.default ''
- ansi (-ansi)
- cpp98 '-std=c++98' (c++03)
- gnucpp98 '-std=gnu++98' (gnu++03)
- cpp0x '-std=c++0x'
- gnucpp0x '-std=gnu++0x'
- cpp11 '-std=c++11'
- gnucpp11 '-std=gnu++11'
- cpp1y '-std=c++1y'
- gnucpp1y '-std=gnu++1y'
- cpp14 '-std=c++14'
- gnucpp1 4'-std=gnu++14'
- cpp1z '-std=c++1z'
- gnucpp1z '-std=gnu++1z'
-
cpp.compiler.abiversionenumerated- ilg.gnuarmeclipse.managedbuild.cross.option.cpp.compiler.abiversion.0 '-fabi-version=0'
- default ''
- 1 '-fabi-version=1'
- 2 '-fabi-version=2'
- 3 '-fabi-version=3'
- 4 '-fabi-version=4'
- 5 '-fabi-version=5'
- 6 '-fabi-version=6'
-
cpp.compiler.noexceptionsbool- false ''
- true '-fno-exceptions'
-
cpp.compiler.norttibool- false ''
- true '-fno-rtti'
-
cpp.compiler.nousecxaatexitbool- false ''
- true '-fno-use-cxa-atexit'
-
cpp.compiler.nothreadsafestaticsbool- false ''
- true '-fno-threadsafe-statics'
Warnings
-
cpp.compiler.warnabibool- false '-Wabi'
-
cpp.compiler.warning.ctordtorprivacybool- false '-Wctor-dtor-privacy'
-
cpp.compiler.warning.noexceptbool- false '-Wnoexcept'
-
cpp.compiler.warning.nonvirtualdtorbool- false '-Wnon-virtual-dtor'
-
cpp.compiler.warning.strictnullsentinelbool- false '-Wstrict-null-sentinel'
-
cpp.compiler.warning.signpromobool- false '-Wsign-promo'
-
cpp.compiler.warneffcbool- false ''
- true '-Weffc++'
Miscellaneous
-
verbosebool- false ''
- true '-v'
-
cpp.compiler.otherstring
Cross ARM GNU C++ Linker
General
-
cpp.linker.nostart- false ''
- true '-nostartfiles'
-
cpp.linker.nodeflibs- false ''
- true '-nodefaultlibs'
-
cpp.linker.nostdlibs- false ''
- true '-nostdlib'
Libraries
Miscellaneous
Template
- `` bool
- false ''
- true ''