On Tuesday, 28 April 2015 at 00:34:42 UTC, Mike wrote:
The build script:
../gcc/configure --disable-bootstrap \
--enable-languages=c,d --disable-nls --target=arm-eabi \
--without-headers --with-newlib --without-isl --without-cloog
\
--disable-libphobos --disable-libstdcxx --disable-libbacktrace\
--enable-multilib
And I replace the whole gcc/config/arm/t-arm-elf with this:
MULTILIB_OPTIONS +=
mcpu=cortex-m0/mcpu=cortex-m3/mcpu=cortex-m4
mfloat-abi=hard mfpu=fpv4-sp-d16
MULTILIB_DIRNAMES += cortex-m0 cortex-m3 cortex-m4
MULTILIB_REQUIRED += mcpu=cortex-m0
MULTILIB_REQUIRED += mcpu=cortex-m3
MULTILIB_REQUIRED += mcpu=cortex-m4 #/mfloat-abi=hard
#/mfpu=fpv4-sp-d16
MULTILIB_EXTRA_OPTS += mthumb
[...]
If you suspect it might work for GCC 4.9.2, I'll give it a try.
I tested this script generating an arm-none-eabil 4.9.2
cross-compiler with a 4.9.2 host. My build script is here:
https://github.com/JinShil/arm-none-eabi-gdc
The lib dir looks like this:
lib
└── gcc
└── arm-none-eabi
└── 4.9.2
├── cortex-m0
├── cortex-m3
├── cortex-m4
├── include
├── include-fixed
├── install-tools
│ └── include
└── plugin
└── include
├── ada
│ └── gcc-interface
├── c-family
├── config
│ └── arm
├── cp
├── d
├── java
└── objc
The "cortex-m{x}" folder have the following files:
crtbegin.o crtend.o crti.o crtn.o libgcc.a libgcov.a
I haven't tried to compile anything yet though. Again, none of
my software uses these binaries.
Mike