Age | Commit message (Collapse) | Author | Files | Lines |
|
Synopsys ARCv3 ISA includes 32-bit ARC HS5x targets and
64-bit ARC HS6x targets. Both CPU families are placed
in "arc64" subdirectories as it done for GCC port.
Target name arc64 is used for historical reasons and
Synopsys ARCv3 baremetal toolchains contain multilib
configurations both for 32-bit and 64-bit families.
arc32 target name is reserved for 32-bit ARC HS5x
targets in case of non-multilib 32-bit builds.
Note that libgloss libraries for ARCv3 are compatible with
libgloss for ARCv1/2. Thus, Makefile.inc for libgloss uses
sources from libgloss/arc directory except crtX.S files.
Co-authored-by: Shahab Vahedi <list@vahedi.org>
Co-authored-by: Claudiu Zissulescu <claziss@gmail.com>
Co-authored-by: Bruno Mauricio <brunoasmauricio@gmail.com>
Co-authored-by: Luis Silva <luis.m.silva99@hotmail.com>
Signed-off-by: Yuriy Kolerov <ykolerov@synopsys.com>
|
|
- The PRU newlib port is supposed to implement case #2 as described in
newlib/libc/include/reent.h . Thus drop the defining of
MISSING_SYSCALL_NAMES.
- libgloss/configure: Regenerate.
- libgloss/libnosys/acinclude.m4: Do not define
MISSING_SYSCALL_NAMES for pru.
Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
|
|
Avoid a recursive make to speed things up a bit.
A cr16-elf build shows installed objects & libs produce same code.
The test targets were dropped as they didn't actually work -- there
is no test.o rule in here.
|
|
Avoid a recursive make to speed things up a bit. This change was
inspired by the recent similar patch for c6x:
https://sourceware.org/pipermail/newlib/2023/020869.html
While at it, fork crt0-minrt.S into a separate source file instead of
relying on a predefined macro to generate two different object files.
This improves clarity, simplifies the build rules, and would allow
further optimization in crt0-minrt.S to be implemented more cleanly.
Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
|
|
First off, afaict, xc16x support has never been merged into gcc.
Upstream merge isn't strictly required for new ports, but it seems
like people should merge eventually in some shape, and considering
the libgloss port was merged in 2009, ~14 years seems like plenty
of leeway. Which is to say, no one else can seem to build this
which makes updating & testing things very difficult.
Ignoring that, from what I can tell, this port has only ever built
and installed a crt0.o file. It defines libeval.a & libcygmon.a
targets, but nothing depends on them. The SCRIPTS & BSP variables
are always empty. The original port merge define these in the
configure script as substitutes, but never set the vars, so they
were always replaced with nothing.
I actually broke this build 2 years ago when merging the configure
up a level in commit 30f244155b8e82aa948ddcb8f2350654fc1adb92
("libgloss: merge subdirs that have unique makefile_frags up a
level"). I saw that it was exporting a bunch of vars in the
configure script, but never set them, so I incorrectly assumed
they weren't used. Which means the Makefile has been setting them
to invalid values like literal @bsp_list@ and @script_list@.
Considering no one has complained, I have to assume no one cares
about this port, and we can all stop wasting time on it.
|
|
Avoid a recursive make to speed things up a bit.
A microblaze-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A tic6x-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A sparc-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A sparc-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A ft32-elf build shows installed objects & libs produce same code.
Mention of ft32-elf-common.ld is dropped as it has never existed
in the tree, and has been an (ignored) error in the past.
|
|
Avoid a recursive make to speed things up a bit.
A fr30-elf build shows installed objects & libs produce same code.
A lot of code seems like it hasn't been migrated, but that's because
it's all disabled/unused (i.e. all the test & mon code). It looks
like a lot of copy & paste holdovers from the original port.
|
|
Avoid a recursive make to speed things up a bit.
A or1k-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A epiphany-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A visium-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A m32r-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A rl78-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A rx-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A xstormy16-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A nds32le-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A mcore-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
Untested, but follows the same pattern as mn10300, but simpler.
|
|
Avoid a recursive make to speed things up a bit.
A mn10300-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A i386-elf build shows installed objects & libs produce same code other
than a rename from cygmon-gmon.o & cygmon-salib.o to i386_libcygmon_a-*.o
due to the use of custom CPPFLAGS in here.
|
|
Avoid a recursive make to speed things up a bit.
A frv-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A msp430-elf build shows installed objects & libs produce same code.
|
|
A bunch of ports hack together these values rather than setting them
up in the configure script for everyone.
|
|
Avoid a recursive make to speed things up a bit.
I can't test this as current versions of binutils doesn't support i960.
|
|
Avoid a recursive make to speed things up a bit.
A v850e-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A moxie-elf build shows installed objects & libs produce same code.
|
|
Commit 8d758283785042589e95c93d7899cecf28ef00ea ("libgloss: merge
sparc configure script up a level") missed including the sparc
acinclude.m4 file which meant none of the sparc-specific vars were
propagating to the sub-makefile.
|
|
|
|
Supported esp32 and esp32s2 boards:
https://github.com/espressif/esp-toolchain-docs/blob/main/gcc/build-and-run-native-app.md
|
|
- conditionally use -idirafter option for arm
|
|
Avoid a recursive make to speed things up a bit.
A csky-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
A nios2-elf build shows installed objects & libs produce same code.
|
|
Avoid a recursive make to speed things up a bit.
|
|
Avoid a recursive make to speed things up a bit.
|
|
Avoid a recursive make to speed things up a bit.
|
|
Avoid a recursive make to speed things up a bit.
|
|
Move the minor arm-specific logic to a dedicated variable so we can
merge its configure logic up a level.
|
|
Move the minor aarch64-specific logic to a dedicated variable so we can
merge its configure logic up a level.
|
|
PR 29515 points out our documentation builds are broken, let's just move
over to the new non-recursive builds.
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
|
|
Avoid a recursive make to speed things up a bit.
This drops the header install logic because the lm32/ subdir doesn't
actually have any header files to install.
|
|
It's functionally the same, but the configure.ac code is simpler and
less boiler plate duplicated.
|
|
Now that we require Automake 1.15, we can use this macro rather than
set the tool up ourselves. The current code doesn't properly search
for a prefixed ar tool as-is.
|
|
When merging iq2000 up a level, it included a partial conversion to
AM_PROG_AS in the common directory. Finish it for all directories
to kill off the custom LIB_AM_PROG_AS which we no longer need since
we require Automake 1.15 now.
|
|
Now that we use AC_NO_EXECUTABLES, and we require a recent version of
autoconf, we don't need to define our own copies of these macros. So
switch to the standard AC_PROG_CC.
|
|
Move the minor sparc-specific logic to a dedicated variable so we can
merge its configure logic up a level.
|
|
Use AM_MAINTAINER_MODE so devs have to opt-in to automatic rebuilds
of autotools. This matches what newlib (and most every other GNU
toolchain package) does with automake.
|
|
Move the minor mips-specific logic to a dedicated file & namespace
them so we can merge its configure logic up a level.
|