2001-01-18 Jeff Johnston <jjohnstn@redhat.com>
* libc/sys/arc/Makefile.am: New file.
        * libc/sys/arc/Makefile.in: Ditto.
        * libc/sys/arc/aclocal.m4: Ditto.
        * libc/sys/arc/configure: Ditto.
        * libc/sys/arc/configure.in: Ditto.
        * libc/sys/arc/crt0.S: Ditto.
        * libc/sys/arc/isatty.c: Ditto.
        * libc/sys/arc/mem-layout.c: Ditto.
        * libc/sys/arc/sbrk.c: Ditto.
        * libc/sys/arc/syscalls.c: Ditto.
        * libc/sys/arc/sys/syscall.h: Ditto.
			
			
This commit is contained in:
		| @@ -1,3 +1,17 @@ | ||||
| 2001-01-18  Jeff Johnston  <jjohnstn@redhat.com> | ||||
|  | ||||
| 	* libc/sys/arc/Makefile.am: New file. | ||||
| 	* libc/sys/arc/Makefile.in: Ditto. | ||||
| 	* libc/sys/arc/aclocal.m4: Ditto. | ||||
| 	* libc/sys/arc/configure: Ditto. | ||||
| 	* libc/sys/arc/configure.in: Ditto. | ||||
| 	* libc/sys/arc/crt0.S: Ditto. | ||||
| 	* libc/sys/arc/isatty.c: Ditto. | ||||
| 	* libc/sys/arc/mem-layout.c: Ditto. | ||||
| 	* libc/sys/arc/sbrk.c: Ditto. | ||||
| 	* libc/sys/arc/syscalls.c: Ditto. | ||||
| 	* libc/sys/arc/sys/syscall.h: Ditto. | ||||
|  | ||||
| Wed Jan 17 23:20:56 2001  Christopher Faylor <cgf@cygnus.com> | ||||
|  | ||||
| 	* libc/include/sys/unistd.h: Use correct declaration for setdtablesize. | ||||
|   | ||||
							
								
								
									
										14
									
								
								newlib/libc/sys/arc/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								newlib/libc/sys/arc/Makefile.am
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| ## Process this file with automake to generate Makefile.in | ||||
|  | ||||
| AUTOMAKE_OPTIONS = cygnus | ||||
|  | ||||
| INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) | ||||
|  | ||||
| noinst_LIBRARIES = lib.a | ||||
|  | ||||
| lib_a_SOURCES = isatty.c mem-layout.c sbrk.c syscalls.c | ||||
|  | ||||
| all: crt0.o | ||||
|  | ||||
| ACLOCAL_AMFLAGS = -I ../../.. | ||||
| CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host | ||||
							
								
								
									
										299
									
								
								newlib/libc/sys/arc/Makefile.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										299
									
								
								newlib/libc/sys/arc/Makefile.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,299 @@ | ||||
| # Makefile.in generated automatically by automake 1.3 from Makefile.am | ||||
|  | ||||
| # Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. | ||||
| # This Makefile.in is free software; the Free Software Foundation | ||||
| # gives unlimited permission to copy and/or distribute it, | ||||
| # with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| # This program is distributed in the hope that it will be useful, | ||||
| # but WITHOUT ANY WARRANTY, to the extent permitted by law; without | ||||
| # even the implied warranty of MERCHANTABILITY or FITNESS FOR A | ||||
| # PARTICULAR PURPOSE. | ||||
|  | ||||
|  | ||||
| SHELL = @SHELL@ | ||||
|  | ||||
| srcdir = @srcdir@ | ||||
| top_srcdir = @top_srcdir@ | ||||
| VPATH = @srcdir@ | ||||
| prefix = @prefix@ | ||||
| exec_prefix = @exec_prefix@ | ||||
|  | ||||
| bindir = @bindir@ | ||||
| sbindir = @sbindir@ | ||||
| libexecdir = @libexecdir@ | ||||
| datadir = @datadir@ | ||||
| sysconfdir = @sysconfdir@ | ||||
| sharedstatedir = @sharedstatedir@ | ||||
| localstatedir = @localstatedir@ | ||||
| libdir = @libdir@ | ||||
| infodir = @infodir@ | ||||
| mandir = @mandir@ | ||||
| includedir = @includedir@ | ||||
| oldincludedir = /usr/include | ||||
|  | ||||
| DISTDIR = | ||||
|  | ||||
| pkgdatadir = $(datadir)/@PACKAGE@ | ||||
| pkglibdir = $(libdir)/@PACKAGE@ | ||||
| pkgincludedir = $(includedir)/@PACKAGE@ | ||||
|  | ||||
| top_builddir = . | ||||
|  | ||||
| ACLOCAL = @ACLOCAL@ | ||||
| AUTOCONF = @AUTOCONF@ | ||||
| AUTOMAKE = @AUTOMAKE@ | ||||
| AUTOHEADER = @AUTOHEADER@ | ||||
|  | ||||
| INSTALL = @INSTALL@ | ||||
| INSTALL_PROGRAM = @INSTALL_PROGRAM@ | ||||
| INSTALL_DATA = @INSTALL_DATA@ | ||||
| INSTALL_SCRIPT = @INSTALL_SCRIPT@ | ||||
| transform = @program_transform_name@ | ||||
|  | ||||
| NORMAL_INSTALL = : | ||||
| PRE_INSTALL = : | ||||
| POST_INSTALL = : | ||||
| NORMAL_UNINSTALL = : | ||||
| PRE_UNINSTALL = : | ||||
| POST_UNINSTALL = : | ||||
| host_alias = @host_alias@ | ||||
| host_triplet = @host@ | ||||
| AR = @AR@ | ||||
| AS = @AS@ | ||||
| CC = @CC@ | ||||
| CPP = @CPP@ | ||||
| EXEEXT = @EXEEXT@ | ||||
| MAINT = @MAINT@ | ||||
| MAKEINFO = @MAKEINFO@ | ||||
| NEWLIB_CFLAGS = @NEWLIB_CFLAGS@ | ||||
| PACKAGE = @PACKAGE@ | ||||
| RANLIB = @RANLIB@ | ||||
| VERSION = @VERSION@ | ||||
| machine_dir = @machine_dir@ | ||||
| newlib_basedir = @newlib_basedir@ | ||||
| sys_dir = @sys_dir@ | ||||
|  | ||||
| AUTOMAKE_OPTIONS = cygnus | ||||
|  | ||||
| INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) | ||||
|  | ||||
| noinst_LIBRARIES = lib.a | ||||
|  | ||||
| lib_a_SOURCES = isatty.c mem-layout.c sbrk.c syscalls.c | ||||
|  | ||||
| ACLOCAL_AMFLAGS = -I ../../.. | ||||
| CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host | ||||
| ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | ||||
| mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs | ||||
| CONFIG_CLEAN_FILES =  | ||||
| LIBRARIES =  $(noinst_LIBRARIES) | ||||
|  | ||||
|  | ||||
| DEFS = @DEFS@ -I. -I$(srcdir)  | ||||
| CPPFLAGS = @CPPFLAGS@ | ||||
| LDFLAGS = @LDFLAGS@ | ||||
| LIBS = @LIBS@ | ||||
| lib_a_LIBADD =  | ||||
| lib_a_OBJECTS =  isatty.o mem-layout.o sbrk.o syscalls.o | ||||
| CFLAGS = @CFLAGS@ | ||||
| COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) | ||||
| LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@ | ||||
| DIST_COMMON =  Makefile.am Makefile.in aclocal.m4 configure configure.in | ||||
|  | ||||
|  | ||||
| DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) | ||||
|  | ||||
| TAR = tar | ||||
| GZIP = --best | ||||
| SOURCES = $(lib_a_SOURCES) | ||||
| OBJECTS = $(lib_a_OBJECTS) | ||||
|  | ||||
| all: Makefile $(LIBRARIES) | ||||
|  | ||||
| .SUFFIXES: | ||||
| .SUFFIXES: .S .c .o .s | ||||
| $(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) | ||||
| 	cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile | ||||
|  | ||||
| Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status | ||||
| 	cd $(top_builddir) \ | ||||
| 	  && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status | ||||
|  | ||||
| $(ACLOCAL_M4): @MAINT@ configure.in  ../../../acinclude.m4 \ | ||||
| 		../../../aclocal.m4 | ||||
| 	cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) | ||||
|  | ||||
| config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) | ||||
| 	$(SHELL) ./config.status --recheck | ||||
| $(srcdir)/configure: @MAINT@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) | ||||
| 	cd $(srcdir) && $(AUTOCONF) | ||||
|  | ||||
| mostlyclean-noinstLIBRARIES: | ||||
|  | ||||
| clean-noinstLIBRARIES: | ||||
| 	-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) | ||||
|  | ||||
| distclean-noinstLIBRARIES: | ||||
|  | ||||
| maintainer-clean-noinstLIBRARIES: | ||||
|  | ||||
| .c.o: | ||||
| 	$(COMPILE) -c $< | ||||
|  | ||||
| .s.o: | ||||
| 	$(COMPILE) -c $< | ||||
|  | ||||
| .S.o: | ||||
| 	$(COMPILE) -c $< | ||||
|  | ||||
| mostlyclean-compile: | ||||
| 	-rm -f *.o core *.core | ||||
|  | ||||
| clean-compile: | ||||
|  | ||||
| distclean-compile: | ||||
| 	-rm -f *.tab.c | ||||
|  | ||||
| maintainer-clean-compile: | ||||
|  | ||||
| lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES) | ||||
| 	-rm -f lib.a | ||||
| 	$(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD) | ||||
| 	$(RANLIB) lib.a | ||||
|  | ||||
| tags: TAGS | ||||
|  | ||||
| ID: $(HEADERS) $(SOURCES) $(LISP) | ||||
| 	here=`pwd` && cd $(srcdir) \ | ||||
| 	  && mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP) | ||||
|  | ||||
| TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) $(LISP) | ||||
| 	tags=; \ | ||||
| 	here=`pwd`; \ | ||||
| 	list='$(SOURCES) $(HEADERS)'; \ | ||||
| 	unique=`for i in $$list; do echo $$i; done | \ | ||||
| 	  awk '    { files[$$0] = 1; } \ | ||||
| 	       END { for (i in files) print i; }'`; \ | ||||
| 	test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ | ||||
| 	  || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS) | ||||
|  | ||||
| mostlyclean-tags: | ||||
|  | ||||
| clean-tags: | ||||
|  | ||||
| distclean-tags: | ||||
| 	-rm -f TAGS ID | ||||
|  | ||||
| maintainer-clean-tags: | ||||
|  | ||||
| distdir = $(PACKAGE)-$(VERSION) | ||||
| top_distdir = $(distdir) | ||||
|  | ||||
| # This target untars the dist file and tries a VPATH configuration.  Then | ||||
| # it guarantees that the distribution is self-contained by making another | ||||
| # tarfile. | ||||
| distcheck: dist | ||||
| 	-rm -rf $(distdir) | ||||
| 	GZIP=$(GZIP) $(TAR) zxf $(distdir).tar.gz | ||||
| 	mkdir $(distdir)/=build | ||||
| 	mkdir $(distdir)/=inst | ||||
| 	dc_install_base=`cd $(distdir)/=inst && pwd`; \ | ||||
| 	cd $(distdir)/=build \ | ||||
| 	  && ../configure --srcdir=.. --prefix=$$dc_install_base \ | ||||
| 	  && $(MAKE) $(AM_MAKEFLAGS) \ | ||||
| 	  && $(MAKE) $(AM_MAKEFLAGS) dvi \ | ||||
| 	  && $(MAKE) $(AM_MAKEFLAGS) check \ | ||||
| 	  && $(MAKE) $(AM_MAKEFLAGS) install \ | ||||
| 	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \ | ||||
| 	  && $(MAKE) $(AM_MAKEFLAGS) dist | ||||
| 	-rm -rf $(distdir) | ||||
| 	@echo "========================"; \ | ||||
| 	echo "$(distdir).tar.gz is ready for distribution"; \ | ||||
| 	echo "========================" | ||||
| dist: distdir | ||||
| 	-chmod -R a+r $(distdir) | ||||
| 	GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) | ||||
| 	-rm -rf $(distdir) | ||||
| dist-all: distdir | ||||
| 	-chmod -R a+r $(distdir) | ||||
| 	GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) | ||||
| 	-rm -rf $(distdir) | ||||
| distdir: $(DISTFILES) | ||||
| 	-rm -rf $(distdir) | ||||
| 	mkdir $(distdir) | ||||
| 	-chmod 777 $(distdir) | ||||
| 	@for file in $(DISTFILES); do \ | ||||
| 	  if test -f $$file; then d=.; else d=$(srcdir); fi; \ | ||||
| 	  test -f $(distdir)/$$file \ | ||||
| 	  || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ | ||||
| 	  || cp -p $$d/$$file $(distdir)/$$file; \ | ||||
| 	done | ||||
| info: | ||||
| dvi: | ||||
| check: | ||||
| 	$(MAKE) $(AM_MAKEFLAGS) | ||||
| installcheck: | ||||
| install-info: | ||||
| install-exec:  | ||||
| 	@$(NORMAL_INSTALL) | ||||
|  | ||||
| install-data:  | ||||
| 	@$(NORMAL_INSTALL) | ||||
|  | ||||
| install: install-exec install-data all | ||||
| 	@: | ||||
|  | ||||
| uninstall:  | ||||
|  | ||||
| install-strip: | ||||
| 	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install | ||||
| installdirs: | ||||
|  | ||||
|  | ||||
| mostlyclean-generic: | ||||
| 	-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) | ||||
|  | ||||
| clean-generic: | ||||
| 	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) | ||||
|  | ||||
| distclean-generic: | ||||
| 	-rm -f Makefile $(DISTCLEANFILES) | ||||
| 	-rm -f config.cache config.log stamp-h stamp-h[0-9]* | ||||
| 	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) | ||||
|  | ||||
| maintainer-clean-generic: | ||||
| 	-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) | ||||
| 	-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) | ||||
| mostlyclean:  mostlyclean-noinstLIBRARIES mostlyclean-compile \ | ||||
| 		mostlyclean-tags mostlyclean-generic | ||||
|  | ||||
| clean:  clean-noinstLIBRARIES clean-compile clean-tags clean-generic \ | ||||
| 		mostlyclean | ||||
|  | ||||
| distclean:  distclean-noinstLIBRARIES distclean-compile distclean-tags \ | ||||
| 		distclean-generic clean | ||||
| 	-rm -f config.status | ||||
|  | ||||
| maintainer-clean:  maintainer-clean-noinstLIBRARIES \ | ||||
| 		maintainer-clean-compile maintainer-clean-tags \ | ||||
| 		maintainer-clean-generic distclean | ||||
| 	@echo "This command is intended for maintainers to use;" | ||||
| 	@echo "it deletes files that may require special tools to rebuild." | ||||
| 	-rm -f config.status | ||||
|  | ||||
| .PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ | ||||
| clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ | ||||
| mostlyclean-compile distclean-compile clean-compile \ | ||||
| maintainer-clean-compile tags mostlyclean-tags distclean-tags \ | ||||
| clean-tags maintainer-clean-tags distdir info dvi installcheck \ | ||||
| install-info install-exec install-data install uninstall all \ | ||||
| installdirs mostlyclean-generic distclean-generic clean-generic \ | ||||
| maintainer-clean-generic clean mostlyclean distclean maintainer-clean | ||||
|  | ||||
|  | ||||
| all: crt0.o | ||||
|  | ||||
| # Tell versions [3.59,3.63) of GNU make to not export all variables. | ||||
| # Otherwise a system limit (for SysV at least) may be exceeded. | ||||
| .NOEXPORT: | ||||
							
								
								
									
										282
									
								
								newlib/libc/sys/arc/aclocal.m4
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										282
									
								
								newlib/libc/sys/arc/aclocal.m4
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,282 @@ | ||||
| dnl aclocal.m4 generated automatically by aclocal 1.4 | ||||
|  | ||||
| dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| dnl This program is distributed in the hope that it will be useful, | ||||
| dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without | ||||
| dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A | ||||
| dnl PARTICULAR PURPOSE. | ||||
|  | ||||
| dnl This provides configure definitions used by all the newlib | ||||
| dnl configure.in files. | ||||
|  | ||||
| dnl Basic newlib configury.  This calls basic introductory stuff, | ||||
| dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST.  It also runs | ||||
| dnl configure.host.  The only argument is the relative path to the top | ||||
| dnl newlib directory. | ||||
|  | ||||
| AC_DEFUN(NEWLIB_CONFIGURE, | ||||
| [ | ||||
| dnl Default to --enable-multilib | ||||
| AC_ARG_ENABLE(multilib, | ||||
| [  --enable-multilib         build many library versions (default)], | ||||
| [case "${enableval}" in | ||||
|   yes) multilib=yes ;; | ||||
|   no)  multilib=no ;; | ||||
|   *)   AC_MSG_ERROR(bad value ${enableval} for multilib option) ;; | ||||
|  esac], [multilib=yes])dnl | ||||
|  | ||||
| dnl Support --enable-target-optspace | ||||
| AC_ARG_ENABLE(target-optspace, | ||||
| [  --enable-target-optspace  optimize for space], | ||||
| [case "${enableval}" in | ||||
|   yes) target_optspace=yes ;; | ||||
|   no)  target_optspace=no ;; | ||||
|   *)   AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;; | ||||
|  esac], [target_optspace=])dnl | ||||
|  | ||||
| dnl Support --enable-newlib-mb | ||||
| AC_ARG_ENABLE(newlib-mb, | ||||
| [  --enable-newlib-mb        enable multibyte support], | ||||
| [case "${enableval}" in | ||||
|   yes) newlib_mb=yes ;; | ||||
|   no)  newlib_mb=no ;; | ||||
|   *)   AC_MSG_ERROR(bad value ${enableval} for newlib-mb option) ;; | ||||
|  esac], [newlib_mb=no])dnl | ||||
|  | ||||
| dnl We may get other options which we don't document: | ||||
| dnl --with-target-subdir, --with-multisrctop, --with-multisubdir | ||||
|  | ||||
| test -z "[$]{with_target_subdir}" && with_target_subdir=. | ||||
|  | ||||
| if test "[$]{srcdir}" = "."; then | ||||
|   if test "[$]{with_target_subdir}" != "."; then | ||||
|     newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1" | ||||
|   else | ||||
|     newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1" | ||||
|   fi | ||||
| else | ||||
|   newlib_basedir="[$]{srcdir}/$1" | ||||
| fi | ||||
| AC_SUBST(newlib_basedir) | ||||
|  | ||||
| AC_CANONICAL_HOST | ||||
|  | ||||
| AM_INIT_AUTOMAKE(newlib, 1.9.0) | ||||
|  | ||||
| # FIXME: We temporarily define our own version of AC_PROG_CC.  This is | ||||
| # copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS.  We | ||||
| # are probably using a cross compiler, which will not be able to fully | ||||
| # link an executable.  This should really be fixed in autoconf | ||||
| # itself. | ||||
|  | ||||
| AC_DEFUN(LIB_AC_PROG_CC, | ||||
| [AC_BEFORE([$0], [AC_PROG_CPP])dnl | ||||
| AC_CHECK_PROG(CC, gcc, gcc) | ||||
| if test -z "$CC"; then | ||||
|   AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc) | ||||
|   test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH]) | ||||
| fi | ||||
|  | ||||
| AC_PROG_CC_GNU | ||||
|  | ||||
| if test $ac_cv_prog_gcc = yes; then | ||||
|   GCC=yes | ||||
| dnl Check whether -g works, even if CFLAGS is set, in case the package | ||||
| dnl plays around with CFLAGS (such as to build both debugging and | ||||
| dnl normal versions of a library), tasteless as that idea is. | ||||
|   ac_test_CFLAGS="${CFLAGS+set}" | ||||
|   ac_save_CFLAGS="$CFLAGS" | ||||
|   CFLAGS= | ||||
|   AC_PROG_CC_G | ||||
|   if test "$ac_test_CFLAGS" = set; then | ||||
|     CFLAGS="$ac_save_CFLAGS" | ||||
|   elif test $ac_cv_prog_cc_g = yes; then | ||||
|     CFLAGS="-g -O2" | ||||
|   else | ||||
|     CFLAGS="-O2" | ||||
|   fi | ||||
| else | ||||
|   GCC= | ||||
|   test "${CFLAGS+set}" = set || CFLAGS="-g" | ||||
| fi | ||||
| ]) | ||||
|  | ||||
| LIB_AC_PROG_CC | ||||
|  | ||||
| # AC_CHECK_TOOL does AC_REQUIRE (AC_CANONICAL_BUILD).  If we don't | ||||
| # run it explicitly here, it will be run implicitly before | ||||
| # NEWLIB_CONFIGURE, which doesn't work because that means that it will | ||||
| # be run before AC_CANONICAL_HOST. | ||||
| AC_CANONICAL_BUILD | ||||
|  | ||||
| AC_CHECK_TOOL(AS, as) | ||||
| AC_CHECK_TOOL(AR, ar) | ||||
| AC_CHECK_TOOL(RANLIB, ranlib, :) | ||||
|  | ||||
| AC_PROG_INSTALL | ||||
|  | ||||
| AM_MAINTAINER_MODE | ||||
|  | ||||
| # We need AC_EXEEXT to keep automake happy in cygnus mode.  However, | ||||
| # at least currently, we never actually build a program, so we never | ||||
| # need to use $(EXEEXT).  Moreover, the test for EXEEXT normally | ||||
| # fails, because we are probably configuring with a cross compiler | ||||
| # which can't create executables.  So we include AC_EXEEXT to keep | ||||
| # automake happy, but we don't execute it, since we don't care about | ||||
| # the result. | ||||
| if false; then | ||||
|   AC_EXEEXT | ||||
| fi | ||||
|  | ||||
| . [$]{newlib_basedir}/configure.host | ||||
|  | ||||
| case [$]{newlib_basedir} in | ||||
| /* | [A-Za-z]:[/\\]*) newlib_flagbasedir=[$]{newlib_basedir} ;; | ||||
| *) newlib_flagbasedir='[$](top_builddir)/'[$]{newlib_basedir} ;; | ||||
| esac | ||||
|  | ||||
| newlib_cflags="[$]{newlib_cflags} -I"'[$](top_builddir)'"/$1/targ-include -I[$]{newlib_flagbasedir}/libc/include" | ||||
| case "${host}" in | ||||
|   *-*-cygwin*) | ||||
|     newlib_cflags="[$]{newlib_cflags} -I[$]{newlib_flagbasedir}/../winsup/cygwin/include  -I[$]{newlib_flagbasedir}/../winsup/w32api/include" | ||||
|     ;; | ||||
| esac | ||||
|  | ||||
| newlib_cflags="[$]{newlib_cflags} -fno-builtin" | ||||
|  | ||||
| NEWLIB_CFLAGS=${newlib_cflags} | ||||
| AC_SUBST(NEWLIB_CFLAGS) | ||||
|  | ||||
| AC_SUBST(machine_dir) | ||||
| AC_SUBST(sys_dir) | ||||
| ]) | ||||
|  | ||||
| # Do all the work for Automake.  This macro actually does too much -- | ||||
| # some checks are only needed if your package does certain things. | ||||
| # But this isn't really a big deal. | ||||
|  | ||||
| # serial 1 | ||||
|  | ||||
| dnl Usage: | ||||
| dnl AM_INIT_AUTOMAKE(package,version, [no-define]) | ||||
|  | ||||
| AC_DEFUN(AM_INIT_AUTOMAKE, | ||||
| [AC_REQUIRE([AC_PROG_INSTALL]) | ||||
| PACKAGE=[$1] | ||||
| AC_SUBST(PACKAGE) | ||||
| VERSION=[$2] | ||||
| AC_SUBST(VERSION) | ||||
| dnl test to see if srcdir already configured | ||||
| if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then | ||||
|   AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) | ||||
| fi | ||||
| ifelse([$3],, | ||||
| AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) | ||||
| AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])) | ||||
| AC_REQUIRE([AM_SANITY_CHECK]) | ||||
| AC_REQUIRE([AC_ARG_PROGRAM]) | ||||
| dnl FIXME This is truly gross. | ||||
| missing_dir=`cd $ac_aux_dir && pwd` | ||||
| AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) | ||||
| AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) | ||||
| AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) | ||||
| AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) | ||||
| AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) | ||||
| AC_REQUIRE([AC_PROG_MAKE_SET])]) | ||||
|  | ||||
| # | ||||
| # Check to make sure that the build environment is sane. | ||||
| # | ||||
|  | ||||
| AC_DEFUN(AM_SANITY_CHECK, | ||||
| [AC_MSG_CHECKING([whether build environment is sane]) | ||||
| # Just in case | ||||
| sleep 1 | ||||
| echo timestamp > conftestfile | ||||
| # Do `set' in a subshell so we don't clobber the current shell's | ||||
| # arguments.  Must try -L first in case configure is actually a | ||||
| # symlink; some systems play weird games with the mod time of symlinks | ||||
| # (eg FreeBSD returns the mod time of the symlink's containing | ||||
| # directory). | ||||
| if ( | ||||
|    set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null` | ||||
|    if test "[$]*" = "X"; then | ||||
|       # -L didn't work. | ||||
|       set X `ls -t $srcdir/configure conftestfile` | ||||
|    fi | ||||
|    if test "[$]*" != "X $srcdir/configure conftestfile" \ | ||||
|       && test "[$]*" != "X conftestfile $srcdir/configure"; then | ||||
|  | ||||
|       # If neither matched, then we have a broken ls.  This can happen | ||||
|       # if, for instance, CONFIG_SHELL is bash and it inherits a | ||||
|       # broken ls alias from the environment.  This has actually | ||||
|       # happened.  Such a system could not be considered "sane". | ||||
|       AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken | ||||
| alias in your environment]) | ||||
|    fi | ||||
|  | ||||
|    test "[$]2" = conftestfile | ||||
|    ) | ||||
| then | ||||
|    # Ok. | ||||
|    : | ||||
| else | ||||
|    AC_MSG_ERROR([newly created file is older than distributed files! | ||||
| Check your system clock]) | ||||
| fi | ||||
| rm -f conftest* | ||||
| AC_MSG_RESULT(yes)]) | ||||
|  | ||||
| dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) | ||||
| dnl The program must properly implement --version. | ||||
| AC_DEFUN(AM_MISSING_PROG, | ||||
| [AC_MSG_CHECKING(for working $2) | ||||
| # Run test in a subshell; some versions of sh will print an error if | ||||
| # an executable is not found, even if stderr is redirected. | ||||
| # Redirect stdin to placate older versions of autoconf.  Sigh. | ||||
| if ($2 --version) < /dev/null > /dev/null 2>&1; then | ||||
|    $1=$2 | ||||
|    AC_MSG_RESULT(found) | ||||
| else | ||||
|    $1="$3/missing $2" | ||||
|    AC_MSG_RESULT(missing) | ||||
| fi | ||||
| AC_SUBST($1)]) | ||||
|  | ||||
| # Add --enable-maintainer-mode option to configure. | ||||
| # From Jim Meyering | ||||
|  | ||||
| # serial 1 | ||||
|  | ||||
| AC_DEFUN(AM_MAINTAINER_MODE, | ||||
| [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) | ||||
|   dnl maintainer-mode is disabled by default | ||||
|   AC_ARG_ENABLE(maintainer-mode, | ||||
| [  --enable-maintainer-mode enable make rules and dependencies not useful | ||||
|                           (and sometimes confusing) to the casual installer], | ||||
|       USE_MAINTAINER_MODE=$enableval, | ||||
|       USE_MAINTAINER_MODE=no) | ||||
|   AC_MSG_RESULT($USE_MAINTAINER_MODE) | ||||
|   AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes) | ||||
|   MAINT=$MAINTAINER_MODE_TRUE | ||||
|   AC_SUBST(MAINT)dnl | ||||
| ] | ||||
| ) | ||||
|  | ||||
| # Define a conditional. | ||||
|  | ||||
| AC_DEFUN(AM_CONDITIONAL, | ||||
| [AC_SUBST($1_TRUE) | ||||
| AC_SUBST($1_FALSE) | ||||
| if $2; then | ||||
|   $1_TRUE= | ||||
|   $1_FALSE='#' | ||||
| else | ||||
|   $1_TRUE='#' | ||||
|   $1_FALSE= | ||||
| fi]) | ||||
|  | ||||
							
								
								
									
										1687
									
								
								newlib/libc/sys/arc/configure
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										1687
									
								
								newlib/libc/sys/arc/configure
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										12
									
								
								newlib/libc/sys/arc/configure.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								newlib/libc/sys/arc/configure.in
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| dnl This is the newlib/libc/sys/arc configure.in file. | ||||
| dnl Process this file with autoconf to produce a configure script. | ||||
|  | ||||
| AC_PREREQ(2.5) | ||||
| AC_INIT(isatty.c) | ||||
|  | ||||
| dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.  | ||||
| AC_CONFIG_AUX_DIR(../../../..) | ||||
|  | ||||
| NEWLIB_CONFIGURE(../../..) | ||||
|  | ||||
| AC_OUTPUT(Makefile) | ||||
							
								
								
									
										75
									
								
								newlib/libc/sys/arc/crt0.S
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								newlib/libc/sys/arc/crt0.S
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,75 @@ | ||||
| ; ARC start up file | ||||
| ; In the absence of a custom linker script, go with something simple. | ||||
| ; We do not support passing arguments to "main", but this is an embedded | ||||
| ; system anyway. | ||||
| ; | ||||
| ; We call init/fini here without cpu prefixes because there is always | ||||
| ; only one .init/.fini section per image. | ||||
|  | ||||
| 	.section .text | ||||
| 	.align 4 | ||||
|  | ||||
| 	.global	start | ||||
| start: | ||||
|  | ||||
| 	mov	sp,end		; Round "sp" up to page after "end". | ||||
| 	add	sp,sp,4095 | ||||
| 	and	sp,sp,-4096 | ||||
|  | ||||
| 	ld	r8,[stack_size]	; Add stack size to "sp". | ||||
| 	add	sp,sp,r8 | ||||
|  | ||||
| 	st	sp,[sbrk_start]	; Initialize malloc heap. | ||||
| 	st	sp,[sbrk_loc] | ||||
|  | ||||
| 	sub	sp,sp,16	; callee expects 16 bytes already "pushed". | ||||
| 	mov	fp,0		; Top of stack frame indicator. | ||||
|  | ||||
| 	mov	r0,edata	; Zero bss. | ||||
| 	mov	r2,end | ||||
| 	sub	r2,r2,r0 | ||||
| 	mov	r1,0 | ||||
|  | ||||
| #ifdef __base__ | ||||
| 	bl.nd	_memset | ||||
| 	bl.nd	init		; .init section entry point. | ||||
| 	mov	r0,%st(fini)	; .fini section entry point. | ||||
| 	bl.nd	_atexit | ||||
| 	mov	r0,0		; argc | ||||
| 	mov	r1,0		; argv | ||||
| 	bl.nd	_main | ||||
| 	bl.nd	_exit | ||||
| #endif | ||||
|  | ||||
| #ifdef __host__ | ||||
| 	bl.nd	_host_memset | ||||
| 	bl.nd	init		; .init section entry point. | ||||
| 	mov	r0,%st(fini)	; .fini section entry point. | ||||
| 	bl.nd	_host_atexit | ||||
| 	mov	r0,0		; argc | ||||
| 	mov	r1,0		; argv | ||||
| 	bl.nd	_host_main | ||||
| 	bl.nd	_host_exit | ||||
| #endif | ||||
|  | ||||
| #ifdef __graphics__ | ||||
| 	bl.nd	_graphics_memset | ||||
| 	bl.nd	init		; .init section entry point. | ||||
| 	mov	r0,%st(fini)	; .fini section entry point. | ||||
| 	bl.nd	_graphics_atexit | ||||
| 	mov	r0,0		; argc | ||||
| 	mov	r1,0		; argv | ||||
| 	bl.nd	_graphics_main | ||||
| 	bl.nd	_graphics_exit | ||||
| #endif | ||||
|  | ||||
| #ifdef __audio__ | ||||
| 	bl.nd	_audio_memset | ||||
| 	bl.nd	init		; .init section entry point. | ||||
| 	mov	r0,%st(fini)	; .fini section entry point. | ||||
| 	bl.nd	_audio_atexit | ||||
| 	mov	r0,0		; argc | ||||
| 	mov	r1,0		; argv | ||||
| 	bl.nd	_audio_main | ||||
| 	bl.nd	_audio_exit | ||||
| #endif | ||||
							
								
								
									
										17
									
								
								newlib/libc/sys/arc/isatty.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								newlib/libc/sys/arc/isatty.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| /* isatty.c */ | ||||
|  | ||||
| /* Dumb implementation so programs will at least run.  */ | ||||
|  | ||||
| #include <sys/stat.h> | ||||
|  | ||||
| int | ||||
| isatty (int fd) | ||||
| { | ||||
|   struct stat buf; | ||||
|  | ||||
|   if (fstat (fd, &buf) < 0) | ||||
|     return 0; | ||||
|   if (S_ISCHR (buf.st_mode)) | ||||
|     return 1; | ||||
|   return 0; | ||||
| } | ||||
							
								
								
									
										21
									
								
								newlib/libc/sys/arc/mem-layout.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								newlib/libc/sys/arc/mem-layout.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| /* Ideally this kind of stuff is specified in a linker script.  It's not clear | ||||
|    what the default linker script should do, so for now we have this.  */ | ||||
|  | ||||
| /* Keep this file separate from sbrk.c so the programmer can supply his/her | ||||
|    own _sbrk_r.  This file could go in crt0.S, but I want to keep this in C. | ||||
|    This is all just an experiment anyway.  */ | ||||
|  | ||||
| #ifndef STACK_SIZE | ||||
| /* Cache lines recycle at 4096 I think, and 4096 is listed as the page size, | ||||
|    so we make the stack size a multiple of it.  Not that it's relevant or | ||||
|    anything, but why not base it on *something*?  */ | ||||
| #define STACK_SIZE (4096 * 4) | ||||
| #endif | ||||
|  | ||||
| int stack_size asm ("stack_size") = STACK_SIZE; | ||||
|  | ||||
| #ifndef SBRK_SIZE | ||||
| #define SBRK_SIZE (4096 * 32) | ||||
| #endif | ||||
|  | ||||
| int sbrk_size asm ("sbrk_size") = SBRK_SIZE; | ||||
							
								
								
									
										43
									
								
								newlib/libc/sys/arc/sbrk.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								newlib/libc/sys/arc/sbrk.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,43 @@ | ||||
| /* sbrk support */ | ||||
|  | ||||
| /* The current plan is to have one sbrk handler for all cpus. | ||||
|    Hence use `asm' for each global variable here to avoid the cpu prefix. | ||||
|    We can't intrude on the user's namespace (another reason to use asm).  */ | ||||
|  | ||||
| #include <sys/types.h> | ||||
| #include <sys/syscall.h> | ||||
| #include <errno.h> | ||||
| #include <stddef.h> | ||||
|  | ||||
| /* These variables are publicly accessible for debugging purposes. | ||||
|    The user is also free to set sbrk_size to something different. | ||||
|    See mem-layout.c.  */ | ||||
|  | ||||
| extern int sbrk_size asm ("sbrk_size"); | ||||
|  | ||||
| caddr_t sbrk_start asm ("sbrk_start"); | ||||
| caddr_t sbrk_loc asm ("sbrk_loc"); | ||||
|  | ||||
| /*caddr_t _sbrk_r (struct _reent *, size_t) asm ("__sbrk_r");*/ | ||||
|  | ||||
| /* FIXME: We need a semaphore here.  */ | ||||
|  | ||||
| caddr_t | ||||
| _sbrk_r (struct _reent *r, size_t nbytes) | ||||
| { | ||||
|   caddr_t result; | ||||
|  | ||||
|   if ( | ||||
|       /* Ensure we don't underflow.  */ | ||||
|       sbrk_loc + nbytes < sbrk_start | ||||
|       /* Ensure we don't overflow.  */ | ||||
|       || sbrk_loc + nbytes > sbrk_start + sbrk_size) | ||||
|     { | ||||
|       errno = ENOMEM; | ||||
|       return ((caddr_t) -1); | ||||
|     } | ||||
|  | ||||
|   result = sbrk_loc; | ||||
|   sbrk_loc += nbytes; | ||||
|   return result; | ||||
| } | ||||
							
								
								
									
										53
									
								
								newlib/libc/sys/arc/sys/syscall.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								newlib/libc/sys/arc/sys/syscall.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,53 @@ | ||||
| /* ARC system call interface */ | ||||
|  | ||||
| /* A special version of the flag insn is used to distinguish syscalls from | ||||
|    breakpoints (a breakpoint might be set at the same place). | ||||
|  | ||||
|    The upper 23 bits of the argument to a flag insn are not currently used. | ||||
|    By convention, bit 31 is one to indicate this is a specially coded operand. | ||||
|    The next 15 bits (bits 30-16) can be used for software purposes. | ||||
|    The format isn't documented yet, so the pattern we use here may change.  */ | ||||
|  | ||||
| #define SYSCALL_MARKER 0x80010000 | ||||
| #define SYSCALL_MAGIC 0x61082300 | ||||
|  | ||||
| /* Perform a system call. | ||||
|  | ||||
|    If ERR is 0, it succeeded.  Otherwise it is a positive value for errno.  */ | ||||
|  | ||||
| #define SYSCALL(op, rc, err, r0, r1, r2) \ | ||||
| asm volatile ( "\ | ||||
| 	      mov r0,%2\n\t \ | ||||
| 	      mov r1,%3\n\t \ | ||||
| 	      mov r2,%4\n\t \ | ||||
| 	      mov r3,%5\n\t \ | ||||
| 	      mov r4,%6\n\t \ | ||||
| 	      flag %7\n\t \ | ||||
| 	      nop\n\t \ | ||||
| 	      nop\n\t \ | ||||
| 	      nop\n\t \ | ||||
| 	      mov %0,r0\n\t \ | ||||
| 	      mov %1,r1" \ | ||||
| 	      : "=r" (rc), "=r" (err) \ | ||||
| 	      : "i" (SYSCALL_MAGIC), "r" (op), "r" (r0), "r" (r1), "r" (r2), \ | ||||
| 	        "i" (1 | SYSCALL_MARKER) \ | ||||
| 	      : "r0", "r1", "r2", "r3", "r4"); | ||||
|  | ||||
| #define	SYS_exit	1 | ||||
| #define	SYS_open	2 | ||||
| #define	SYS_close	3 | ||||
| #define	SYS_read	4 | ||||
| #define	SYS_write	5 | ||||
| #define	SYS_lseek	6 | ||||
| #define	SYS_link	7 | ||||
| #define	SYS_unlink	8 | ||||
| #define	SYS_chdir	9 | ||||
| #define	SYS_chmod	10 | ||||
| #define SYS_stat	11 | ||||
| #define SYS_fstat	12 | ||||
| #define SYS_access	13 | ||||
| #define	SYS_getpid	14 | ||||
| #define SYS_kill	15 | ||||
| #define SYS_time	16 | ||||
|  | ||||
| #define SYS_MAX		17 | ||||
							
								
								
									
										130
									
								
								newlib/libc/sys/arc/syscalls.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										130
									
								
								newlib/libc/sys/arc/syscalls.c
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,130 @@ | ||||
| #include <sys/types.h> | ||||
| #include <sys/stat.h> | ||||
| #include <sys/syscall.h> | ||||
| #include <_ansi.h> | ||||
| #include <errno.h> | ||||
| #include <fcntl.h> | ||||
| #include <stdarg.h> | ||||
| #include <reent.h> | ||||
|  | ||||
| _ssize_t | ||||
| _read_r (struct _reent *r, int fd, void *buf, size_t nbytes) | ||||
| { | ||||
|   int err; | ||||
|   _ssize_t rc; | ||||
|  | ||||
|   SYSCALL (SYS_read, rc, err, fd, buf, nbytes); | ||||
|   if (err) | ||||
|     errno = err; | ||||
|   return rc; | ||||
| } | ||||
|  | ||||
| _ssize_t | ||||
| _write_r (struct _reent *r, int fd, const void *buf, size_t nbytes) | ||||
| { | ||||
|   int err; | ||||
|   _ssize_t rc; | ||||
|  | ||||
|   SYSCALL (SYS_write, rc, err, fd, buf, nbytes); | ||||
|   if (err) | ||||
|     errno = err; | ||||
|   return rc; | ||||
| } | ||||
|  | ||||
| /* FIXME: The prototype in <fcntl.h> for open() uses ..., | ||||
|    but reent.h uses int.  */ | ||||
|  | ||||
| int | ||||
| _open_r (struct _reent *r, const char *buf, int flags, int mode) | ||||
| { | ||||
|   int rc,err; | ||||
| #if 0 | ||||
|   int mode; | ||||
|   va_list ap; | ||||
|  | ||||
|   va_start (ap, flags); | ||||
|   mode = va_arg (ap, int); | ||||
|   va_end (ap); | ||||
| #endif | ||||
|  | ||||
|   SYSCALL (SYS_open, rc, err, buf, flags, mode); | ||||
|   errno = err; | ||||
|   return rc; | ||||
| } | ||||
|  | ||||
| int | ||||
| _close_r (struct _reent *r, int fd) | ||||
| { | ||||
|   int rc,err; | ||||
|  | ||||
|   SYSCALL (SYS_close, rc, err, fd, 0, 0); | ||||
|   if (err) | ||||
|     errno = err; | ||||
|   return rc; | ||||
| } | ||||
|  | ||||
| off_t | ||||
| _lseek_r (struct _reent *r, int fd,  off_t offset, int whence) | ||||
| { | ||||
|   int err; | ||||
|   off_t rc; | ||||
|  | ||||
|   SYSCALL (SYS_lseek, rc, err, fd, offset, whence); | ||||
|   if (err) | ||||
|     errno = err; | ||||
|   return rc; | ||||
| } | ||||
|  | ||||
| int | ||||
| _fstat_r (struct _reent *r, int fd, struct stat *buf) | ||||
| { | ||||
|   int rc,err; | ||||
|  | ||||
|   SYSCALL (SYS_fstat, rc, err, fd, buf, 0); | ||||
|   if (err) | ||||
|     errno = err; | ||||
|   return rc; | ||||
| } | ||||
|  | ||||
| /* FIXME: Shouldn't this be _exit_r?  */ | ||||
|  | ||||
| void | ||||
| _exit (int ret) | ||||
| { | ||||
|   int rc,err; | ||||
|  | ||||
|   SYSCALL (SYS_exit, rc, err, ret, 0, 0); | ||||
|  | ||||
|   /* If that failed, use an infinite loop.  */ | ||||
|   while (1) | ||||
|     continue; | ||||
| } | ||||
|  | ||||
| time_t | ||||
| _time (time_t *timer) | ||||
| { | ||||
|   return 0; | ||||
| } | ||||
|  | ||||
| int | ||||
| _creat_r (struct _reent *r, const char *path, int mode) | ||||
| { | ||||
|   return _open_r (r, path, O_CREAT | O_TRUNC, mode); | ||||
| } | ||||
|  | ||||
| int | ||||
| _getpid_r (struct _reent *r) | ||||
| { | ||||
|   return 42; | ||||
| } | ||||
|  | ||||
| int | ||||
| _kill_r (struct _reent *r, int pid, int sig) | ||||
| { | ||||
|   int rc,err; | ||||
|  | ||||
|   SYSCALL (SYS_kill, rc, err, pid, sig, 0); | ||||
|   if (err) | ||||
|     errno = err; | ||||
|   return rc; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user