Commit Graph

43 Commits

Author SHA1 Message Date
Jeff Law c2c9f05a05 libgloss fix for bfin port
gcc-14 will complain loudly both for calling a function without an in-scope
prototype or when the in scope prototype differs from the known signature.

"main" happens to be one of the functions the compiler knows about.  So not
only do we need to prototype it, we need to make sure the prototype matches
what GCC thinks it should be.

This fixes the bfin libgloss port to do the right thing for bfin-elf.
2023-12-18 21:29:51 -07:00
Mike Frysinger 42ddb40b58 libgloss: bfin: switch to CPPASCOMPILE for .S->.o
We're compiling .S files, so use CPPAS instead of CC to compile since
the point of CPPAS is to preprocess+assemble .S files.
2022-12-14 04:14:50 -05:00
Mike Frysinger d4fa7379b0 libgloss: bfin: fix various warnings
No functional changes here, just fix warnings the compiler noticed.

bfin/syscalls.c:156:13: warning: conflicting types for built-in function ‘memset’

bfin/syscalls.c: In function ‘_unlink’:
bfin/syscalls.c:193:3: warning: passing argument 2 of ‘do_syscall’ discards qualifiers from pointer target type
bfin/syscalls.c:33:1: note: expected ‘void *’ but argument is of type ‘const char *’

bfin/syscalls.c: In function ‘_exit’:
bfin/syscalls.c:104:1: warning: ‘noreturn’ function does return
2022-02-12 01:34:21 -05:00
Mike Frysinger 395ce0f4c0 libgloss: bfin: fix local header usage after automake move
Compiling the basiccrt .S files missed an include to the local bfin/
headers causing the build to break when installing anew.

Reported-by: Jeff Law <jeffreyalaw@gmail.com>
2022-02-12 01:29:33 -05:00
Mike Frysinger 66dfedc287 libgloss: merge bfin into top-level Makefile
Avoid a recursive make to speed things up a bit.
2022-02-11 06:14:55 -05:00
Mike Frysinger c6c414fcb3 libgloss: bfin: fix missing dir with parallel install
Depending on the processing order of rules when installing in parallel,
install-board might run first and the target dirs don't yet exist.
2022-01-28 05:57:37 -05:00
Dimitar Dimitrov b095628ecf libgloss: Fix PRU & Blackfin mkinstalldirs path
With the move of configure scripts out of target directories, relative
paths to top_srcdir got broken:

  /bin/sh: .../newlib/libgloss/../../mkinstalldirs: No such file or directory

Fix the PRU build by switching to srcroot relative path, as rest of targets do.

Fix the Blackfin build in the same way.

Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
2022-01-27 19:40:10 -05:00
Mike Frysinger 754f8def0d libgloss: merge stub arch configure scripts up a level
For about half the ports, we don't need a subdir configure script.
They're using the config/default.m[ht] rules, and they aren't doing
any unique configure tests, so they exist just to pass top-level
settings down to create the arch Makefile.  We can just as easily
do that from the top-level Mkaefile directly and skip configure.

Most of the remaining configure scripts could be migrated up to
the top-level too, but that would require care in each subdir.
So let's be lazy and put that off to another day.
2022-01-26 04:32:54 -05:00
Mike Frysinger dfa088ab66 libgloss: bfin: fix subdir install for sim files
When building in parallel, make sure the subdir for the sim files
exist before trying to install into them.
2022-01-23 21:08:07 -05:00
Mike Frysinger 7c02fc3075 libgloss: clean up redundant shared lib warnings
Use standard AC_MSG_WARN macro in the top-level configure, and delete
the message from all the subdirs.  There's no need to issue this more
than once per libgloss build.
2022-01-17 04:30:37 -05:00
Mike Frysinger a100e80fc9 require autoconf-2.69 exactly
The newlib & libgloss dirs are already generated using autoconf-2.69.
To avoid merging new code and/or accidental regeneration using diff
versions, leverage config/override.m4 to pin to 2.69 exactly.  This
matches what gcc/binutils/gdb are already doing.

The README file already says to use autoconf-2.69.

To accomplish this, it's just as simple as adding -I flags to the
top-level config/ dir when running aclocal.  This is because the
override.m4 file overrides AC_INIT to first require the specific
autoconf version before calling the real AC_INIT.
2022-01-14 15:24:33 -05:00
Mike Frysinger 7f8fa1de4f libgloss: hardcode AC_CONFIG_AUX_DIR path
In order to transition to automake, we have to use hardcoded paths in
the AC_CONFIG_AUX_DIR macro call (since automake evaluates the path
itself, and doesn't expand vars), so simplify all the calls here.
2022-01-10 19:50:35 -05:00
Mike Frysinger 873da400e0 libgloss: regenerate aclocal.m4 & configure w/newer versions
Regenerate the files using automake-1.15 & autoconf-2.69 to match the
binutils/gdb/gcc projects.  Ran:

libgloss $ find -name configure.ac -printf '%h\n' | while read d; do
  (cd $d; export WANT_AUTOCONF=2.69 WANT_AUTOMAKE=1.15;
   aclocal-1.15 -I.. && autoconf-2.69); done
2021-11-06 14:14:50 -04:00
Mike Frysinger 920617998e libgloss/newlib: rename configure.in to configure.ac
The .in name has been deprecated for a long time in favor of .ac.
2021-09-13 10:14:37 -04:00
Yaakov Selkowitz 9087163804 ansification: remove _DEFUN
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2018-01-17 11:47:26 -06:00
Yaakov Selkowitz 67ee0cac4c ansification: remove _VOID
Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2018-01-17 11:47:20 -06:00
Nick Clifton c30356443e * configure.in: Remove config_libnosys=false
* configure: Regenerated.
	* msp430/nosyscalls.S: Rename to ciosyscalls.S
	* msp430/Makefile.in: Change LIBNOSYS to LIB_CIO.
2014-09-22 15:26:46 +00:00
Jeff Johnston 24fb7750f3 2012-12-17 Stuart Henderson <shenders@gcc.gnu.org>
* bfin/Makefile.in: Add BF60x support.
	* bfin/basiccrt.S: Add core1 support.
	* bfin/bf606.ld: New file.
	* bfin/bf606c0.ld: New file.
	* bfin/bf606c1.ld: New file.
	* bfin/bf606m.ld: New file.
	* bfin/bf607.ld: New file.
	* bfin/bf607c0.ld: New file.
	* bfin/bf607c1.ld: New file.
	* bfin/bf607m.ld: New file.
	* bfin/bf608.ld: New file.
	* bfin/bf608c0.ld: New file.
	* bfin/bf608c1.ld: New file.
	* bfin/bf608m.ld: New file.
	* bfin/bf609.ld: New file.
	* bfin/bf609c0.ld: New file.
	* bfin/bf609c1.ld: New file.
	* bfin/bf609m.ld: New file.
	* bfin/bfin-common-mc0.ld: New file.
	* bfin/include/cdefBF606.h : New file.
	* bfin/include/cdefBF607.h : New file.
	* bfin/include/cdefBF608.h : New file.
	* bfin/include/cdefBF609.h : New file.
	* bfin/include/defBF606.h : New file.
	* bfin/include/defBF607.h : New file.
	* bfin/include/defBF608.h : New file.
	* bfin/include/defBF609.h : New file.
	* bfin/include/sys/_adi_platform.h: Add BF60x support.
	* bfin/include/sys/anomaly_macros_rtl.h : Clean up.
2012-12-17 17:44:38 +00:00
Michael Frysinger f171a1e0a6 libgloss: bfin: add a better default _exit 2012-01-24 04:41:10 +00:00
Michael Frysinger 6e6193cd23 libgloss: bfin: add clear_cache_range support (for gcc) 2011-12-18 18:41:20 +00:00
Michael Frysinger 1df99a60b3 libgloss: bfin: implement getpid/fstat/stat/link/unlink syscalls
The current syscalls.c implements getpid/fstat/stat/link/unlink as mere
stubs.  So replace them with useful calls to do_syscall now that our sim
can support them.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-01 21:47:36 +00:00
Michael Frysinger ecd3577e1d libgloss: bfin: fix sim lseek() syscall
The sim lseek() syscall in the Blackfin libgloss code did not pass down
the "whence" argument making lseek() in general kind of useless.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-01 20:55:42 +00:00
Michael Frysinger 4dfc786b8b libgloss: bfin: handle result2/errcode in sim syscalls
The sim passes back results via two values, and the error code via a 3rd.
make sure libgloss extracts all three so that things like errno work as
expected.  This fixes many gdb tests which look for this sort of thing.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-06-22 04:18:45 +00:00
Michael Frysinger 3a81efd10e libgloss: bfin: trim trailing whitespace 2011-06-22 03:00:44 +00:00
Michael Frysinger d2d0cc5c32 libgloss: bfin: fix asm constraints for raise/excpt helpers
The RAISE and EXPT insns take a constant, not a register.  So make
sure the asm constraints reflect this.
2011-03-27 03:47:30 +00:00
Michael Frysinger 0f6ab41477 libgloss: bfin: abort on install errors 2011-03-27 03:40:00 +00:00
Michael Frysinger 1cfc2fea73 libgloss: bfin: sync headers to VDSP 5.0 Update 8
A new release of VDSP means syncing random updates to the libgloss headers.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-17 23:52:49 +00:00
Michael Frysinger 76b10bc44a libgloss: bfin: add support for bf592 processors
Import the headers from VisualDSP and add a linker script for them.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-16 17:06:55 +00:00
Michael Frysinger b1b01f2615 libgloss: bfin: add support for bf50x processors
Import the headers from VisualDSP and add linker scripts for them.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-15 20:32:11 +00:00
Michael Frysinger 809f1ef494 libgloss: bfin: handle L1 sections in linker scripts
Make sure gcc L1 attributes work with the default Blackfin linker scripts.

Signed-off-by: Stuart Henderson <stuart.henderson@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-15 05:41:53 +00:00
Michael Frysinger 3fb5779745 libgloss: bfin: drop BF541 headers
The BF541 never actually existed, so punt it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-10-15 05:38:51 +00:00
Jeff Johnston b1da4d8277 2009-10-08 Jie Zhang <jie.zhang@analog.com>
* bfin/Makefile.in (basiccrt.o, basiccrts.o): Use
        -mcpu=bf532-any for the default multilib.
2009-10-08 16:35:34 +00:00
Jeff Johnston 4834826e92 2009-09-16 Mike Frysinger <michael.frysinger@analog.com>
* bfin/include/cdefBF512.h, bfin/include/cdefBF514.h,
        bfin/include/cdefBF516.h, bfin/include/cdefBF518.h,
        bfin/include/cdefBF51x_base.h, bfin/include/cdefBF523.h,
        bfin/include/cdefBF524.h, bfin/include/cdefBF526.h,
        bfin/include/cdefBF542M.h, bfin/include/cdefBF544M.h,
        bfin/include/cdefBF547M.h, bfin/include/cdefBF548M.h,
        bfin/include/cdefBF549M.h, bfin/include/defBF512.h,
        bfin/include/defBF514.h, bfin/include/defBF516.h,
        bfin/include/defBF518.h, bfin/include/defBF51x_base.h,
        bfin/include/defBF523.h, bfin/include/defBF524.h,
        bfin/include/defBF526.h, bfin/include/defBF542M.h,
        bfin/include/defBF544M.h, bfin/include/defBF547M.h,
        bfin/include/defBF548M.h, bfin/include/defBF549M.h:
        New file.
        * bfin/include/ccblkfn.h, bfin/include/cdefBF525.h,
        bfin/include/cdefBF527.h, bfin/include/cdefBF52x_base.h,
        bfin/include/cdefBF532.h, bfin/include/cdefBF534.h,
        bfin/include/cdefBF535.h, bfin/include/cdefBF538.h,
        bfin/include/cdefBF539.h, bfin/include/cdefBF542.h,
        bfin/include/cdefBF544.h, bfin/include/cdefBF547.h,
        bfin/include/cdefBF548.h, bfin/include/cdefBF549.h,
        bfin/include/cdefBF54x_base.h, bfin/include/cdefBF561.h,
        bfin/include/cdefblackfin.h, bfin/include/cdef_LPBlackfin.h,
        bfin/include/cplb.h, bfin/include/defBF527.h,
        bfin/include/defBF52x_base.h, bfin/include/defBF532.h,
        bfin/include/defBF534.h, bfin/include/defBF535.h,
        bfin/include/defBF537.h, bfin/include/defBF538.h,
        bfin/include/defBF539.h, bfin/include/defBF542.h,
        bfin/include/defBF544.h, bfin/include/defBF547.h,
        bfin/include/defBF548.h, bfin/include/defBF549.h,
        bfin/include/defBF54x_base.h, bfin/include/defBF561.h,
        bfin/include/defblackfin.h, bfin/include/def_LPBlackfin.h,
        bfin/include/sys/_adi_platform.h,
        bfin/include/sys/anomaly_macros_rtl.h,
        bfin/include/sys/exception.h, bfin/include/sysreg.h:
        Update to Visual DSP 5.0 Update 6.
2009-09-16 16:08:27 +00:00
Jeff Johnston 5e0fdf685b 2009-09-16 Mike Frysinger <michael.frysinger@analog.com>
* bfin/Makefile.in (BOARD_SCRIPTS): Add bf512.ld, bf514.ld,
        and bf516.ld, bf518.ld.
        * bfin/bf512.ld: New file.
        * bfin/bf514.ld: Likewise.
        * bfin/bf516.ld: Likewise.
        * bfin/bf518.ld: Likewise
2009-09-16 15:59:40 +00:00
Jeff Johnston 38254ca29a 2009-09-16 Jie Zhang <jie.zhang@analog.com>
* bfin/*.ld: Fix typos in comments.
2009-09-16 15:56:58 +00:00
Jeff Johnston 899b4718a2 2009-09-08 Bernd Schmidt <bernd.schmidt@analog.com>
* bfin/include/ccblkfn.h: New file.
2009-09-08 21:22:06 +00:00
Jeff Johnston 580295f6a8 2009-09-08 Mike Frysinger <michael.frysinger@analog.com>
* bfin/include/sys/_adi_platform.h: Convert __ASSEMBLY__ to
	__ASSEMBLER__.
	* bfin/include/sys/pll.h: Likewise
2009-09-08 21:20:12 +00:00
Jeff Johnston 18384f4fdf 2009-09-08 Jie Zhang <jie.zhang@analog.com>
* bfin/Makefile.in (basiccrt.o, basiccrts.o): Don't use
        -mcpu=bf532-any for the default multilib.
2009-09-08 21:17:58 +00:00
Jeff Johnston 84132c9d9f 2008-08-14 Jie Zhang <jie.zhang@analog.com>
* bfin/Makefile.in: (top_srcdir): Define.
        (mkinstalldirs): Define.
        (BOARD_SCRIPTS): Define.
        (BOARD_LDFLAGS): Define.
        (BOARD_BSP): Define.
        (BOARD_CRT0S): Define.
        (BOARD_OBJS): Define.
        (BOARD_TEST): Define.
        (BOARD_INSTALL): Define.
        (INCLUDES): Add -I$(srcdir)/include.
        (all): Add ${BOARD_CRT0S} and ${BOARD_BSP}.
        (.c.S): Remove target.
        (crt0.o): New target.
        (basiccrt.o): Likewise.
        (basiccrtb.o): Likewise.
        (basiccrts.o): Likewise.
        (basiccrt561.o, basiccrt561s.o, basiccrt561b.o): Likewise
        (clean mostlyclean): Remove ${BOARD_BSP}.
        (install): Depend on ${BOARD_INSTALL}.
        (install-sim): Reformat.
        (install-board): New target.
        * bfin/basiccrt.S: Remove useless __ADSPBF561_COREB__ in
        workaround code for 05000229.
        * bfin/syscalls.c (do_syscall): Use `EXCPT 0' instead of
        `RAISE 0' for syscall.
        * bfin/basiccrt.S: New file.
        * bfin/bf5*ld: New file.
        * bfin/bfin-common-mc.ld: New file.
        * bfin/bfin-common-sc.ld: New file.
        * bfin/include/blackfin.h: New file.
        * bfin/include/cdefBF5*.h: New file.
        * bfin/include/cdef_LPBlackfin.h: New file.
        * bfin/include/cdefblackfin.h: New file.
        * bfin/include/cplb.h: New file.
        * bfin/include/cplbtab.h: New file.
        * bfin/include/defBF5*.h: New files.
        * bfin/include/def_LPBlackfin.h: New files.
        * bfin/include/defblackfin.h: New file.
        * bfin/include/sys/_adi_platform.h: New file.
        * bfin/include/sys/anomaly_macros_rtl.h: New file.
        * bfin/include/sys/excause.h: New file.
        * bfin/include/sys/exception.h: New file.
        * bfin/include/sys/mc_typedef.h: New file.
        * bfin/include/sys/platform.h: New file.
        * bfin/include/sys/pll.h: New file.
        * bfin/include/sysreg.h: New file.
        * libnosys/configure.in (MISSING_SYSCALL_NAMES): Don't define
        for bfin.
        * libnosys/configure: Regenerate.
2008-08-14 22:00:47 +00:00
DJ Delorie 6f810581fb [newlib]
* libm/machine/spu/configure: Regenerate with autoconf 2.61.
	* libc/sys/configure: Regenerate with autoconf 2.61.
	* libc/machine/configure: Regenerate with autoconf 2.61.
[libgloss]
	* hp74x/configure: Regenerate with autoconf 2.61.
	* fr30/configure: Regenerate with autoconf 2.61.
	* mips/configure: Regenerate with autoconf 2.61.
	* xstormy16/configure: Regenerate with autoconf 2.61.
	* rs6000/configure: Regenerate with autoconf 2.61.
	* d30v/configure: Regenerate with autoconf 2.61.
	* i386/configure: Regenerate with autoconf 2.61.
	* configure: Regenerate with autoconf 2.61.
	* wince/configure: Regenerate with autoconf 2.61.
	* pa/configure: Regenerate with autoconf 2.61.
	* m32r/configure: Regenerate with autoconf 2.61.
	* mn10200/configure: Regenerate with autoconf 2.61.
	* iq2000/configure: Regenerate with autoconf 2.61.
	* cris/configure: Regenerate with autoconf 2.61.
	* m68k/configure: Regenerate with autoconf 2.61.
	* spu/configure: Regenerate with autoconf 2.61.
	* m32c/configure: Regenerate with autoconf 2.61.
	* mn10300/configure: Regenerate with autoconf 2.61.
	* i960/configure: Regenerate with autoconf 2.61.
	* arm/configure: Regenerate with autoconf 2.61.
	* libnosys/configure: Regenerate with autoconf 2.61.
	* m68hc11/configure: Regenerate with autoconf 2.61.
	* bfin/configure: Regenerate with autoconf 2.61.
	* crx/configure: Regenerate with autoconf 2.61.
	* mt/configure: Regenerate with autoconf 2.61.
	* sparc/configure: Regenerate with autoconf 2.61.
	* sparc/libsys/configure: Regenerate with autoconf 2.61.
	* mcore/configure: Regenerate with autoconf 2.61.
	* mep/configure: Regenerate with autoconf 2.61.
	* frv/configure: Regenerate with autoconf 2.61.
	* doc/configure: Regenerate with autoconf 2.61.
2008-04-04 21:52:01 +00:00
Jeff Johnston 277723722f 2008-01-03 Jeff Johnston <jjohnstn@redhat.com>
* arm/redboot-syscalls.c: Consistently supply _isatty if syscalls
        dir is used in newlib.
        * bfin/syscalls.c: Ditto.
        * cris/gensyscalls: Ditto.
        * fr30/syscalls.c: Ditto.
        * frv/isatty.c: Ditto.
        * iq2000/isatty.c: Ditto.
        * libnosys/isatty.c: Ditto.
        * m32r/isatty.c: Ditto.
        * mn10200/isatty.c: Ditto.
        * mn10300/isatty.c: Ditto.
        * xstormy16/isatty.c: New file with _isatty function.
2008-01-03 22:38:31 +00:00
Jeff Johnston de229adb1a 2007-07-06 Jeff Johnston <jjohnstn@redhat.com>
* arm/syscalls.c (gettimeofday): Change to POSIX signature
        where second argument is passed as void *.
        * bfin/syscalls.c (gettimeofday): Ditto.
        * cris/gensyscalls (gettimeofday): Ditto.
        * cris/linunistd.h (gettimeofday): Ditto.
        * crx/time.c (gettimeofday): Ditto.
        * frv/sim-time.c (gettimeofday): Ditto.
        * i386/cygmon-salib.c (gettimeofday): Ditto.
        * libnosys/gettod.c (gettimeofday): Ditto.
        * m68k/io-gettimeofday.c (gettimeofday): Ditto.
        * sparc/cygmon-salib.c (gettimeofday): Ditto.
        * spu/gettimeofday.c (gettimeofday): Ditto.
2007-07-06 17:00:13 +00:00
Jeff Johnston c0977673ac 2006-11-08 Jie Zhang <jzhang918@gmail.com>
* bfin/configure.in: New.
        * bfin/crt0.S: New.
        * bfin/Makefile.in: New.
        * bfin/syscalls.c: New.
        * bfin/aclocal.m4: Generate.
        * bfin/configure: Ditto.
        * configure.in: Add support for bfin-*-*.
        * configure: Regenerate.
        * syscall.h (SYS_argc): Define.
        (SYS_argnlen): Define.
        (SYS_argn): Define.
2006-11-08 19:36:56 +00:00