diff --git a/newlib/ChangeLog b/newlib/ChangeLog index 04298dcbd..31dc6c1f7 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,8 @@ +2002-12-19 Jeff Johnston + + * configure.host: Remove references to go32. + * libc/sys/go32/*: Removed. + 2002-12-16 Kazu Hirata * libc/include/sys/config.h: Change setting of INT_MAX diff --git a/newlib/configure.host b/newlib/configure.host index 42efd76d5..3780366d6 100644 --- a/newlib/configure.host +++ b/newlib/configure.host @@ -113,7 +113,7 @@ case "${host_cpu}" in i[3456]86) # Don't use for these since they provide their own setjmp. case ${host} in - *-*-go32 | *-*-sco* | *-*-cygwin*) + *-*-sco* | *-*-cygwin*) libm_machine_dir=i386 machine_dir=i386 ;; @@ -323,9 +323,6 @@ case "${host}" in h8500-*-elf*) sys_dir=h8500hms ;; - i[3456]86-*-go32) - sys_dir=go32 - ;; i[3456]86-*-sco*) sys_dir=sysvi386 unix_dir=unix @@ -496,9 +493,6 @@ case "${host}" in i[3456]86-*-netware*) newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES -DNO_EXEC -DABORT_PROVIDED -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DHAVE_FCNTL" ;; - i[3456]86-*-go32) - newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES -DNO_EXEC -DHAVE_FCNTL" - ;; m32r-*-*) # Pass -msdata=sdata so _impure_ptr goes in .sdata. # We don't generate sda relocs however for upward compatibility. diff --git a/newlib/libc/sys/go32/Makefile.am b/newlib/libc/sys/go32/Makefile.am deleted file mode 100644 index 4ccd669da..000000000 --- a/newlib/libc/sys/go32/Makefile.am +++ /dev/null @@ -1,105 +0,0 @@ -## 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 = \ - _exit.s \ - _main.c \ - abort.c \ - access.c \ - bdos.c \ - bdosptr.c \ - brk.s \ - chdir.s \ - chmod.c \ - chown.c \ - clock.S \ - close.s \ - creat.s \ - crlf2nl.c \ - dir.c \ - dosmem.S \ - dpmi.c \ - dup.s \ - dup2.s \ - exec.c \ - fchmod.c \ - findfirs.s \ - findnext.s \ - fixpath.c \ - fstat.s \ - fsync.s \ - ftruncat.c \ - gerrno.s \ - getcwd.c \ - getdate.c \ - getdtabl.c \ - getgid.c \ - getkey.s \ - getpages.c \ - getpid.c \ - getrusag.c \ - gettime.c \ - gettimeo.c \ - getuid.c \ - getwd.s \ - go32func.c \ - infoblk.c \ - inportb.s \ - inportl.s \ - inportsb.s \ - inportsl.s \ - inportsw.s \ - inportw.s \ - int86x.s \ - intdos.c \ - intdosx.c \ - isatty.s \ - kbhit.s \ - kill.c \ - link.s \ - longjmp.S \ - lseek.s \ - lstat.s \ - mkdir.s \ - open.s \ - outportb.s \ - outportl.s \ - outportw.s \ - outprtsb.s \ - outprtsl.s \ - outprtsw.s \ - read.s \ - readv.c \ - rename.s \ - rmdir.s \ - sbrk.s \ - screen.S \ - setjmp.S \ - setmode.s \ - setstack.S \ - settimeo.s \ - sleep.c \ - stat.c \ - stat_ast.s \ - syserr.c \ - system.s \ - tell.s \ - time.c \ - truncate.c \ - turbo.s \ - umask.c \ - unlink.s \ - utime.c \ - utimes.c \ - write.s \ - writev.c - -all: crt0.o - -ACLOCAL_AMFLAGS = -I ../../.. -CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host diff --git a/newlib/libc/sys/go32/Makefile.in b/newlib/libc/sys/go32/Makefile.in deleted file mode 100644 index 8cc221963..000000000 --- a/newlib/libc/sys/go32/Makefile.in +++ /dev/null @@ -1,433 +0,0 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am - -# Copyright (C) 1994, 1995-8, 1999 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 - -DESTDIR = - -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@ $(AM_INSTALL_PROGRAM_FLAGS) -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -transform = @program_transform_name@ - -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_alias = @build_alias@ -build_triplet = @build@ -host_alias = @host_alias@ -host_triplet = @host@ -target_alias = @target_alias@ -target_triplet = @target@ -AR = @AR@ -AS = @AS@ -CC = @CC@ -CPP = @CPP@ -EXEEXT = @EXEEXT@ -LDFLAGS = @LDFLAGS@ -MAINT = @MAINT@ -MAKEINFO = @MAKEINFO@ -NEWLIB_CFLAGS = @NEWLIB_CFLAGS@ -OBJEXT = @OBJEXT@ -PACKAGE = @PACKAGE@ -RANLIB = @RANLIB@ -VERSION = @VERSION@ -aext = @aext@ -libm_machine_dir = @libm_machine_dir@ -machine_dir = @machine_dir@ -newlib_basedir = @newlib_basedir@ -oext = @oext@ -sys_dir = @sys_dir@ - -AUTOMAKE_OPTIONS = cygnus - -INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) - -noinst_LIBRARIES = lib.a - -lib_a_SOURCES = \ - _exit.s \ - _main.c \ - abort.c \ - access.c \ - bdos.c \ - bdosptr.c \ - brk.s \ - chdir.s \ - chmod.c \ - chown.c \ - clock.S \ - close.s \ - creat.s \ - crlf2nl.c \ - dir.c \ - dosmem.S \ - dpmi.c \ - dup.s \ - dup2.s \ - exec.c \ - fchmod.c \ - findfirs.s \ - findnext.s \ - fixpath.c \ - fstat.s \ - fsync.s \ - ftruncat.c \ - gerrno.s \ - getcwd.c \ - getdate.c \ - getdtabl.c \ - getgid.c \ - getkey.s \ - getpages.c \ - getpid.c \ - getrusag.c \ - gettime.c \ - gettimeo.c \ - getuid.c \ - getwd.s \ - go32func.c \ - infoblk.c \ - inportb.s \ - inportl.s \ - inportsb.s \ - inportsl.s \ - inportsw.s \ - inportw.s \ - int86x.s \ - intdos.c \ - intdosx.c \ - isatty.s \ - kbhit.s \ - kill.c \ - link.s \ - longjmp.S \ - lseek.s \ - lstat.s \ - mkdir.s \ - open.s \ - outportb.s \ - outportl.s \ - outportw.s \ - outprtsb.s \ - outprtsl.s \ - outprtsw.s \ - read.s \ - readv.c \ - rename.s \ - rmdir.s \ - sbrk.s \ - screen.S \ - setjmp.S \ - setmode.s \ - setstack.S \ - settimeo.s \ - sleep.c \ - stat.c \ - stat_ast.s \ - syserr.c \ - system.s \ - tell.s \ - time.c \ - truncate.c \ - turbo.s \ - umask.c \ - unlink.s \ - utime.c \ - utimes.c \ - write.s \ - writev.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@ -LIBS = @LIBS@ -lib_a_LIBADD = -lib_a_OBJECTS = _exit.o _main.o abort.o access.o bdos.o bdosptr.o brk.o \ -chdir.o chmod.o chown.o clock.o close.o creat.o crlf2nl.o dir.o \ -dosmem.o dpmi.o dup.o dup2.o exec.o fchmod.o findfirs.o findnext.o \ -fixpath.o fstat.o fsync.o ftruncat.o gerrno.o getcwd.o getdate.o \ -getdtabl.o getgid.o getkey.o getpages.o getpid.o getrusag.o gettime.o \ -gettimeo.o getuid.o getwd.o go32func.o infoblk.o inportb.o inportl.o \ -inportsb.o inportsl.o inportsw.o inportw.o int86x.o intdos.o intdosx.o \ -isatty.o kbhit.o kill.o link.o longjmp.o lseek.o lstat.o mkdir.o open.o \ -outportb.o outportl.o outportw.o outprtsb.o outprtsl.o outprtsw.o \ -read.o readv.o rename.o rmdir.o sbrk.o screen.o setjmp.o setmode.o \ -setstack.o settimeo.o sleep.o stat.o stat_ast.o syserr.o system.o \ -tell.o time.o truncate.o turbo.o umask.o unlink.o utime.o utimes.o \ -write.o writev.o -CFLAGS = @CFLAGS@ -COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ -DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in - - -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) - -TAR = gtar -GZIP_ENV = --best -SOURCES = $(lib_a_SOURCES) -OBJECTS = $(lib_a_OBJECTS) - -all: all-redirect -.SUFFIXES: -.SUFFIXES: .S .c .o .s -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ 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): @MAINTAINER_MODE_TRUE@ configure.in \ - ../../../acinclude.m4 ../../../aclocal.m4 \ - ../../../libtool.m4 - cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) - -config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - $(SHELL) ./config.status --recheck -$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(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) - list='$(SOURCES) $(HEADERS)'; \ - unique=`for i in $$list; do echo $$i; done | \ - awk ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - here=`pwd` && cd $(srcdir) \ - && mkid -f$$here/ID $$unique $(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_ENV) $(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) - @banner="$(distdir).tar.gz is ready for distribution"; \ - dashes=`echo "$$banner" | sed s/./=/g`; \ - echo "$$dashes"; \ - echo "$$banner"; \ - echo "$$dashes" -dist: distdir - -chmod -R a+r $(distdir) - GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir) - -rm -rf $(distdir) -dist-all: distdir - -chmod -R a+r $(distdir) - GZIP=$(GZIP_ENV) $(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; \ - if test -d $$d/$$file; then \ - cp -pr $$d/$$file $(distdir)/$$file; \ - else \ - test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ - fi; \ - done -info-am: -info: info-am -dvi-am: -dvi: dvi-am -check-am: -check: check-am -installcheck-am: -installcheck: installcheck-am -install-info-am: -install-info: install-info-am -install-exec-am: -install-exec: install-exec-am - -install-data-am: -install-data: install-data-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am -install: install-am -uninstall-am: -uninstall: uninstall-am -all-am: Makefile $(LIBRARIES) -all-redirect: all-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: - - -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* - -maintainer-clean-generic: -mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \ - mostlyclean-tags mostlyclean-generic - -mostlyclean: mostlyclean-am - -clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \ - mostlyclean-am - -clean: clean-am - -distclean-am: distclean-noinstLIBRARIES distclean-compile \ - distclean-tags distclean-generic clean-am - -distclean: distclean-am - -rm -f config.status - -maintainer-clean-am: maintainer-clean-noinstLIBRARIES \ - maintainer-clean-compile maintainer-clean-tags \ - maintainer-clean-generic distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - -maintainer-clean: maintainer-clean-am - -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-am info dvi-am dvi check \ -check-am installcheck-am installcheck install-info-am install-info \ -install-exec-am install-exec install-data-am install-data install-am \ -install uninstall-am uninstall all-redirect all-am 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: diff --git a/newlib/libc/sys/go32/_exit.s b/newlib/libc/sys/go32/_exit.s deleted file mode 100644 index 9ea01cec4..000000000 --- a/newlib/libc/sys/go32/_exit.s +++ /dev/null @@ -1,20 +0,0 @@ -# /* This is file _EXIT.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl __exit -__exit: - movb 4(%esp),%al - movb $0x4c,%ah - int $0x21 diff --git a/newlib/libc/sys/go32/_main.c b/newlib/libc/sys/go32/_main.c deleted file mode 100644 index c8c6136f7..000000000 --- a/newlib/libc/sys/go32/_main.c +++ /dev/null @@ -1,3 +0,0 @@ -__main() -{ -} diff --git a/newlib/libc/sys/go32/abort.c b/newlib/libc/sys/go32/abort.c deleted file mode 100644 index f2466c84c..000000000 --- a/newlib/libc/sys/go32/abort.c +++ /dev/null @@ -1,8 +0,0 @@ - -void -abort() -{ - - exit(1); - -} diff --git a/newlib/libc/sys/go32/access.c b/newlib/libc/sys/go32/access.c deleted file mode 100644 index 8e08b3a7f..000000000 --- a/newlib/libc/sys/go32/access.c +++ /dev/null @@ -1,33 +0,0 @@ -/* This is file ACCESS.C */ -/* - * Copyright (C) 1993 DJ Delorie - * All rights reserved. - * - * Redistribution and use in source and binary forms is permitted - * provided that the above copyright notice and following paragraph are - * duplicated in all such forms. - * - * This file is distributed WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - */ - -#include -#include -#include - -int access(const char *fn, int flags) -{ - struct stat s; - if (stat(fn, &s)) - return -1; - if (s.st_mode & S_IFDIR) - return 0; - if (flags & W_OK) - { - if (s.st_mode & S_IWRITE) - return 0; - return -1; - } - return 0; -} - diff --git a/newlib/libc/sys/go32/aclocal.m4 b/newlib/libc/sys/go32/aclocal.m4 deleted file mode 100644 index 60622e841..000000000 --- a/newlib/libc/sys/go32/aclocal.m4 +++ /dev/null @@ -1,324 +0,0 @@ -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-malloc-debugging - currently only supported for Cygwin -AC_ARG_ENABLE(malloc-debugging, -[ --enable-malloc-debugging indicate malloc debugging requested], -[case "${enableval}" in - yes) malloc_debugging=yes ;; - no) malloc_debugging=no ;; - *) AC_MSG_ERROR(bad value ${enableval} for malloc-debugging option) ;; - esac], [malloc_debugging=])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=])dnl - -dnl Support --enable-newlib-multithread -AC_ARG_ENABLE(newlib-multithread, -[ --enable-newlib-multithread enable support for multiple threads], -[case "${enableval}" in - yes) newlib_multithread=yes ;; - no) newlib_multithread=no ;; - *) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;; - esac], [newlib_multithread=yes])dnl - -dnl Support --enable-newlib-elix-level -AC_ARG_ENABLE(newlib-elix-level, -[ --enable-newlib-elix-level supply desired elix library level (1-4)], -[case "${enableval}" in - 0) newlib_elix_level=0 ;; - 1) newlib_elix_level=1 ;; - 2) newlib_elix_level=2 ;; - 3) newlib_elix_level=3 ;; - 4) newlib_elix_level=4 ;; - *) AC_MSG_ERROR(bad value ${enableval} for newlib-elix-level option) ;; - esac], [newlib_elix_level=0])dnl - -dnl Support --disable-newlib-io-float -AC_ARG_ENABLE(newlib-io-float, -[ --disable-newlib-io-float disable printf/scanf family float support], -[case "${enableval}" in - yes) newlib_io_float=yes ;; - no) newlib_io_float=no ;; - *) AC_MSG_ERROR(bad value ${enableval} for newlib-io-float option) ;; - esac], [newlib_io_float=yes])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_SYSTEM - -AM_INIT_AUTOMAKE(newlib, 1.10.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(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 - -newlib_cflags="[$]{newlib_cflags} -fno-builtin" - -NEWLIB_CFLAGS=${newlib_cflags} -AC_SUBST(NEWLIB_CFLAGS) - -LDFLAGS=${ldflags} -AC_SUBST(LDFLAGS) - -AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0) -AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1) -AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2) -AM_CONDITIONAL(ELIX_LEVEL_3, test x[$]{newlib_elix_level} = x3) -AM_CONDITIONAL(ELIX_LEVEL_4, test x[$]{newlib_elix_level} = x4) - -AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes) - -# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we -# use oext, which is set in configure.host based on the target platform. -OBJEXT=${oext} - -AC_SUBST(OBJEXT) -AC_SUBST(oext) -AC_SUBST(aext) - -AC_SUBST(libm_machine_dir) -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]) - diff --git a/newlib/libc/sys/go32/bdos.c b/newlib/libc/sys/go32/bdos.c deleted file mode 100644 index 523f73aa6..000000000 --- a/newlib/libc/sys/go32/bdos.c +++ /dev/null @@ -1,12 +0,0 @@ -#include -#include "dos.h" - -bdos(int func, unsigned dx, unsigned al) -{ - union REGS r; - r.x.dx = dx; - r.h.ah = func; - r.h.al = al; - int86(0x21, &r, &r); - return r.x.ax; -} diff --git a/newlib/libc/sys/go32/bdosptr.c b/newlib/libc/sys/go32/bdosptr.c deleted file mode 100644 index 214d40baf..000000000 --- a/newlib/libc/sys/go32/bdosptr.c +++ /dev/null @@ -1,12 +0,0 @@ -#include -#include "dos.h" - -bdosptr(int func, void *dx, unsigned al) -{ - union REGS r; - r.x.dx = dx; - r.h.ah = func; - r.h.al = al; - int86(0x21, &r, &r); - return r.x.ax; -} diff --git a/newlib/libc/sys/go32/brk.s b/newlib/libc/sys/go32/brk.s deleted file mode 100644 index dded61df6..000000000 --- a/newlib/libc/sys/go32/brk.s +++ /dev/null @@ -1,27 +0,0 @@ -# /* This is file BRK.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _brk -_brk: - pushl %ebx - pushl %esi - pushl %edi - movw $0x4a00,%ax - movl 16(%esp),%ebx - int $0x21 - popl %edi - popl %esi - popl %ebx - ret diff --git a/newlib/libc/sys/go32/chdir.s b/newlib/libc/sys/go32/chdir.s deleted file mode 100644 index 071c345fb..000000000 --- a/newlib/libc/sys/go32/chdir.s +++ /dev/null @@ -1,27 +0,0 @@ -# /* This is file CHDIR.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _chdir -_chdir: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%edx - movb $0x3b,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - jmp syscall_check diff --git a/newlib/libc/sys/go32/chmod.c b/newlib/libc/sys/go32/chmod.c deleted file mode 100644 index e90f0e10e..000000000 --- a/newlib/libc/sys/go32/chmod.c +++ /dev/null @@ -1,15 +0,0 @@ -/* This is file CHMOD.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -chmod(){} diff --git a/newlib/libc/sys/go32/chown.c b/newlib/libc/sys/go32/chown.c deleted file mode 100644 index 3daa7eaa2..000000000 --- a/newlib/libc/sys/go32/chown.c +++ /dev/null @@ -1,15 +0,0 @@ -/* This is file CHOWN.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -chown(){} diff --git a/newlib/libc/sys/go32/clock.S b/newlib/libc/sys/go32/clock.S deleted file mode 100644 index 198c7e6e8..000000000 --- a/newlib/libc/sys/go32/clock.S +++ /dev/null @@ -1,45 +0,0 @@ -/* This is file CLOCK.S */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -** -** Modified by C. Sandmann for DPMI support (sandmann@clio.rice.edu) -*/ - .data -clock_init: - .long 0 - - .text - .globl _clock -_clock: - call _rawclock - imull $54931,%eax,%eax - ret - - .align 4,0x90 - .globl _rawclock -_rawclock: - movzwl __core_select,%eax - testl %eax,%eax - je old_clock /* Image run with pre-DPMI extender */ - movw %ax,%gs - movl %gs:0x46c(,1),%eax - jmp check_initted -old_clock: - movl 0xe000046c,%eax -check_initted: - cmp $0,clock_init - jne clock_initted - movl %eax,clock_init -clock_initted: - subl clock_init,%eax - ret - diff --git a/newlib/libc/sys/go32/close.s b/newlib/libc/sys/go32/close.s deleted file mode 100644 index aee000451..000000000 --- a/newlib/libc/sys/go32/close.s +++ /dev/null @@ -1,27 +0,0 @@ -# /* This is file CLOSE.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _close -_close: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movb $0x3e,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - jmp syscall_check diff --git a/newlib/libc/sys/go32/configure b/newlib/libc/sys/go32/configure deleted file mode 100755 index a2625d8fe..000000000 --- a/newlib/libc/sys/go32/configure +++ /dev/null @@ -1,1863 +0,0 @@ -#! /bin/sh - -# Guess values for system-dependent variables and create Makefiles. -# Generated automatically using autoconf version 2.13 -# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. -# -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. - -# Defaults: -ac_help= -ac_default_prefix=/usr/local -# Any additions from configure.in: -ac_help="$ac_help - --enable-multilib build many library versions (default)" -ac_help="$ac_help - --enable-target-optspace optimize for space" -ac_help="$ac_help - --enable-malloc-debugging indicate malloc debugging requested" -ac_help="$ac_help - --enable-newlib-mb enable multibyte support" -ac_help="$ac_help - --enable-newlib-multithread enable support for multiple threads" -ac_help="$ac_help - --enable-newlib-elix-level supply desired elix library level (1-4)" -ac_help="$ac_help - --disable-newlib-io-float disable printf/scanf family float support" -ac_help="$ac_help - --enable-maintainer-mode enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer" - -# Initialize some variables set by options. -# The variables have the same names as the options, with -# dashes changed to underlines. -build=NONE -cache_file=./config.cache -exec_prefix=NONE -host=NONE -no_create= -nonopt=NONE -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -sitefile= -srcdir= -target=NONE -verbose= -x_includes=NONE -x_libraries=NONE -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datadir='${prefix}/share' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -libdir='${exec_prefix}/lib' -includedir='${prefix}/include' -oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' - -# Initialize some other variables. -subdirs= -MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} -# Maximum number of lines to put in a shell here document. -ac_max_here_lines=12 - -ac_prev= -for ac_option -do - - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval "$ac_prev=\$ac_option" - ac_prev= - continue - fi - - case "$ac_option" in - -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; - *) ac_optarg= ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case "$ac_option" in - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir="$ac_optarg" ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build="$ac_optarg" ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file="$ac_optarg" ;; - - -datadir | --datadir | --datadi | --datad | --data | --dat | --da) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ - | --da=*) - datadir="$ac_optarg" ;; - - -disable-* | --disable-*) - ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - eval "enable_${ac_feature}=no" ;; - - -enable-* | --enable-*) - ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; - *) ac_optarg=yes ;; - esac - eval "enable_${ac_feature}='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix="$ac_optarg" ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he) - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat << EOF -Usage: configure [options] [host] -Options: [defaults in brackets after descriptions] -Configuration: - --cache-file=FILE cache test results in FILE - --help print this message - --no-create do not create output files - --quiet, --silent do not print \`checking...' messages - --site-file=FILE use FILE as the site file - --version print the version of autoconf that created configure -Directory and file names: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [same as prefix] - --bindir=DIR user executables in DIR [EPREFIX/bin] - --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] - --libexecdir=DIR program executables in DIR [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data in DIR - [PREFIX/share] - --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data in DIR - [PREFIX/com] - --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] - --libdir=DIR object code libraries in DIR [EPREFIX/lib] - --includedir=DIR C header files in DIR [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] - --infodir=DIR info documentation in DIR [PREFIX/info] - --mandir=DIR man documentation in DIR [PREFIX/man] - --srcdir=DIR find the sources in DIR [configure dir or ..] - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM - run sed PROGRAM on installed program names -EOF - cat << EOF -Host type: - --build=BUILD configure for building on BUILD [BUILD=HOST] - --host=HOST configure for HOST [guessed] - --target=TARGET configure for TARGET [TARGET=HOST] -Features and packages: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --x-includes=DIR X include files are in DIR - --x-libraries=DIR X library files are in DIR -EOF - if test -n "$ac_help"; then - echo "--enable and --with options recognized:$ac_help" - fi - exit 0 ;; - - -host | --host | --hos | --ho) - ac_prev=host ;; - -host=* | --host=* | --hos=* | --ho=*) - host="$ac_optarg" ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir="$ac_optarg" ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir="$ac_optarg" ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir="$ac_optarg" ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir="$ac_optarg" ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir="$ac_optarg" ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir="$ac_optarg" ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir="$ac_optarg" ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix="$ac_optarg" ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix="$ac_optarg" ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix="$ac_optarg" ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name="$ac_optarg" ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir="$ac_optarg" ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir="$ac_optarg" ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site="$ac_optarg" ;; - - -site-file | --site-file | --site-fil | --site-fi | --site-f) - ac_prev=sitefile ;; - -site-file=* | --site-file=* | --site-fil=* | --site-fi=* | --site-f=*) - sitefile="$ac_optarg" ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir="$ac_optarg" ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir="$ac_optarg" ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target="$ac_optarg" ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers) - echo "configure generated by autoconf version 2.13" - exit 0 ;; - - -with-* | --with-*) - ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; - *) ac_optarg=yes ;; - esac - eval "with_${ac_package}='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`echo $ac_option|sed -e 's/-*without-//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - eval "with_${ac_package}=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes="$ac_optarg" ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries="$ac_optarg" ;; - - -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } - ;; - - *) - if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then - echo "configure: warning: $ac_option: invalid host type" 1>&2 - fi - if test "x$nonopt" != xNONE; then - { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } - fi - nonopt="$ac_option" - ;; - - esac -done - -if test -n "$ac_prev"; then - { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } -fi - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -# File descriptor usage: -# 0 standard input -# 1 file creation -# 2 errors and warnings -# 3 some systems may open it to /dev/tty -# 4 used on the Kubota Titan -# 6 checking for... messages and results -# 5 compiler messages saved in config.log -if test "$silent" = yes; then - exec 6>/dev/null -else - exec 6>&1 -fi -exec 5>./config.log - -echo "\ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. -" 1>&5 - -# Strip out --no-create and --no-recursion so they do not pile up. -# Also quote any args containing shell metacharacters. -ac_configure_args= -for ac_arg -do - case "$ac_arg" in - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) ;; - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) - ac_configure_args="$ac_configure_args '$ac_arg'" ;; - *) ac_configure_args="$ac_configure_args $ac_arg" ;; - esac -done - -# NLS nuisances. -# Only set these to C if already set. These must not be set unconditionally -# because not all systems understand e.g. LANG=C (notably SCO). -# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! -# Non-C LC_CTYPE values break the ctype check. -if test "${LANG+set}" = set; then LANG=C; export LANG; fi -if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi -if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi -if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo > confdefs.h - -# A filename unique to this package, relative to the directory that -# configure is in, which we can look for to find out if srcdir is correct. -ac_unique_file=djtime.h - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_prog=$0 - ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` - test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } - else - { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } - fi -fi -srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` - -# Prefer explicitly selected file to automatically selected ones. -if test -z "$sitefile"; then - if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi - fi -else - CONFIG_SITE="$sitefile" -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - echo "loading site script $ac_site_file" - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - echo "loading cache $cache_file" - . $cache_file -else - echo "creating cache $cache_file" - > $cache_file -fi - -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross - -ac_exeext= -ac_objext=o -if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then - # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. - if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then - ac_n= ac_c=' -' ac_t=' ' - else - ac_n=-n ac_c= ac_t= - fi -else - ac_n= ac_c='\c' ac_t= -fi - - - -ac_aux_dir= -for ac_dir in ../../../.. $srcdir/../../../..; do - if test -f $ac_dir/install-sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f $ac_dir/install.sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - fi -done -if test -z "$ac_aux_dir"; then - { echo "configure: error: can not find install-sh or install.sh in ../../../.. $srcdir/../../../.." 1>&2; exit 1; } -fi -ac_config_guess=$ac_aux_dir/config.guess -ac_config_sub=$ac_aux_dir/config.sub -ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. - - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:586: checking for a BSD compatible install" >&5 -if test -z "$INSTALL"; then -if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - ac_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_IFS" - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL="$ac_cv_path_install" - else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the path is relative. - INSTALL="$ac_install_sh" - fi -fi -echo "$ac_t""$INSTALL" 1>&6 - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 -echo "configure:639: checking whether build environment is sane" >&5 -# 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". - { echo "configure: error: ls -t appears to fail. Make sure there is not a broken -alias in your environment" 1>&2; exit 1; } - fi - - test "$2" = conftestfile - ) -then - # Ok. - : -else - { echo "configure: error: newly created file is older than distributed files! -Check your system clock" 1>&2; exit 1; } -fi -rm -f conftest* -echo "$ac_t""yes" 1>&6 -if test "$program_transform_name" = s,x,x,; then - program_transform_name= -else - # Double any \ or $. echo might interpret backslashes. - cat <<\EOF_SED > conftestsed -s,\\,\\\\,g; s,\$,$$,g -EOF_SED - program_transform_name="`echo $program_transform_name|sed -f conftestsed`" - rm -f conftestsed -fi -test "$program_prefix" != NONE && - program_transform_name="s,^,${program_prefix},; $program_transform_name" -# Use a double $ so make ignores it. -test "$program_suffix" != NONE && - program_transform_name="s,\$\$,${program_suffix},; $program_transform_name" - -# sed with no file args requires a program. -test "$program_transform_name" = "" && program_transform_name="s,x,x," - -echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 -echo "configure:696: checking whether ${MAKE-make} sets \${MAKE}" >&5 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` -if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftestmake <<\EOF -all: - @echo 'ac_maketemp="${MAKE}"' -EOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftestmake -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$ac_t""yes" 1>&6 - SET_MAKE= -else - echo "$ac_t""no" 1>&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -if test $host != $build; then - ac_tool_prefix=${host_alias}- -else - ac_tool_prefix= -fi - -echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6 -echo "configure:729: checking for Cygwin environment" >&5 -if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - ac_cv_cygwin=yes -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_cygwin=no -fi -rm -f conftest* -rm -f conftest* -fi - -echo "$ac_t""$ac_cv_cygwin" 1>&6 -CYGWIN= -test "$ac_cv_cygwin" = yes && CYGWIN=yes -echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 -echo "configure:762: checking for mingw32 environment" >&5 -if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - ac_cv_mingw32=yes -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - rm -rf conftest* - ac_cv_mingw32=no -fi -rm -f conftest* -rm -f conftest* -fi - -echo "$ac_t""$ac_cv_mingw32" 1>&6 -MINGW32= -test "$ac_cv_mingw32" = yes && MINGW32=yes - -# Check whether --enable-multilib or --disable-multilib was given. -if test "${enable_multilib+set}" = set; then - enableval="$enable_multilib" - case "${enableval}" in - yes) multilib=yes ;; - no) multilib=no ;; - *) { echo "configure: error: bad value ${enableval} for multilib option" 1>&2; exit 1; } ;; - esac -else - multilib=yes -fi - -# Check whether --enable-target-optspace or --disable-target-optspace was given. -if test "${enable_target_optspace+set}" = set; then - enableval="$enable_target_optspace" - case "${enableval}" in - yes) target_optspace=yes ;; - no) target_optspace=no ;; - *) { echo "configure: error: bad value ${enableval} for target-optspace option" 1>&2; exit 1; } ;; - esac -else - target_optspace= -fi - -# Check whether --enable-malloc-debugging or --disable-malloc-debugging was given. -if test "${enable_malloc_debugging+set}" = set; then - enableval="$enable_malloc_debugging" - case "${enableval}" in - yes) malloc_debugging=yes ;; - no) malloc_debugging=no ;; - *) { echo "configure: error: bad value ${enableval} for malloc-debugging option" 1>&2; exit 1; } ;; - esac -else - malloc_debugging= -fi - -# Check whether --enable-newlib-mb or --disable-newlib-mb was given. -if test "${enable_newlib_mb+set}" = set; then - enableval="$enable_newlib_mb" - case "${enableval}" in - yes) newlib_mb=yes ;; - no) newlib_mb=no ;; - *) { echo "configure: error: bad value ${enableval} for newlib-mb option" 1>&2; exit 1; } ;; - esac -else - newlib_mb= -fi - -# Check whether --enable-newlib-multithread or --disable-newlib-multithread was given. -if test "${enable_newlib_multithread+set}" = set; then - enableval="$enable_newlib_multithread" - case "${enableval}" in - yes) newlib_multithread=yes ;; - no) newlib_multithread=no ;; - *) { echo "configure: error: bad value ${enableval} for newlib-multithread option" 1>&2; exit 1; } ;; - esac -else - newlib_multithread=yes -fi - -# Check whether --enable-newlib-elix-level or --disable-newlib-elix-level was given. -if test "${enable_newlib_elix_level+set}" = set; then - enableval="$enable_newlib_elix_level" - case "${enableval}" in - 0) newlib_elix_level=0 ;; - 1) newlib_elix_level=1 ;; - 2) newlib_elix_level=2 ;; - 3) newlib_elix_level=3 ;; - 4) newlib_elix_level=4 ;; - *) { echo "configure: error: bad value ${enableval} for newlib-elix-level option" 1>&2; exit 1; } ;; - esac -else - newlib_elix_level=0 -fi - -# Check whether --enable-newlib-io-float or --disable-newlib-io-float was given. -if test "${enable_newlib_io_float+set}" = set; then - enableval="$enable_newlib_io_float" - case "${enableval}" in - yes) newlib_io_float=yes ;; - no) newlib_io_float=no ;; - *) { echo "configure: error: bad value ${enableval} for newlib-io-float option" 1>&2; exit 1; } ;; - esac -else - newlib_io_float=yes -fi - - - -test -z "${with_target_subdir}" && with_target_subdir=. - -if test "${srcdir}" = "."; then - if test "${with_target_subdir}" != "."; then - newlib_basedir="${srcdir}/${with_multisrctop}../../../.." - else - newlib_basedir="${srcdir}/${with_multisrctop}../../.." - fi -else - newlib_basedir="${srcdir}/../../.." -fi - - - -# Do some error checking and defaulting for the host and target type. -# The inputs are: -# configure --host=HOST --target=TARGET --build=BUILD NONOPT -# -# The rules are: -# 1. You are not allowed to specify --host, --target, and nonopt at the -# same time. -# 2. Host defaults to nonopt. -# 3. If nonopt is not specified, then host defaults to the current host, -# as determined by config.guess. -# 4. Target and build default to nonopt. -# 5. If nonopt is not specified, then target and build default to host. - -# The aliases save the names the user supplied, while $host etc. -# will get canonicalized. -case $host---$target---$nonopt in -NONE---*---* | *---NONE---* | *---*---NONE) ;; -*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;; -esac - - -# Make sure we can run config.sub. -if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : -else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } -fi - -echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:921: checking host system type" >&5 - -host_alias=$host -case "$host_alias" in -NONE) - case $nonopt in - NONE) - if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : - else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } - fi ;; - *) host_alias=$nonopt ;; - esac ;; -esac - -host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` -host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$ac_t""$host" 1>&6 - -echo $ac_n "checking target system type""... $ac_c" 1>&6 -echo "configure:942: checking target system type" >&5 - -target_alias=$target -case "$target_alias" in -NONE) - case $nonopt in - NONE) target_alias=$host_alias ;; - *) target_alias=$nonopt ;; - esac ;; -esac - -target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias` -target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$ac_t""$target" 1>&6 - -echo $ac_n "checking build system type""... $ac_c" 1>&6 -echo "configure:960: checking build system type" >&5 - -build_alias=$build -case "$build_alias" in -NONE) - case $nonopt in - NONE) build_alias=$host_alias ;; - *) build_alias=$nonopt ;; - esac ;; -esac - -build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias` -build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$ac_t""$build" 1>&6 - -test "$host_alias" != "$target_alias" && - test "$program_prefix$program_suffix$program_transform_name" = \ - NONENONEs,x,x, && - program_prefix=${target_alias}- - - - -PACKAGE=newlib - -VERSION=1.10.0 - -if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then - { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } -fi -cat >> confdefs.h <> confdefs.h <&6 -echo "configure:1003: checking for working aclocal" >&5 -# 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 (aclocal --version) < /dev/null > /dev/null 2>&1; then - ACLOCAL=aclocal - echo "$ac_t""found" 1>&6 -else - ACLOCAL="$missing_dir/missing aclocal" - echo "$ac_t""missing" 1>&6 -fi - -echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 -echo "configure:1016: checking for working autoconf" >&5 -# 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 (autoconf --version) < /dev/null > /dev/null 2>&1; then - AUTOCONF=autoconf - echo "$ac_t""found" 1>&6 -else - AUTOCONF="$missing_dir/missing autoconf" - echo "$ac_t""missing" 1>&6 -fi - -echo $ac_n "checking for working automake""... $ac_c" 1>&6 -echo "configure:1029: checking for working automake" >&5 -# 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 (automake --version) < /dev/null > /dev/null 2>&1; then - AUTOMAKE=automake - echo "$ac_t""found" 1>&6 -else - AUTOMAKE="$missing_dir/missing automake" - echo "$ac_t""missing" 1>&6 -fi - -echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 -echo "configure:1042: checking for working autoheader" >&5 -# 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 (autoheader --version) < /dev/null > /dev/null 2>&1; then - AUTOHEADER=autoheader - echo "$ac_t""found" 1>&6 -else - AUTOHEADER="$missing_dir/missing autoheader" - echo "$ac_t""missing" 1>&6 -fi - -echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 -echo "configure:1055: checking for working makeinfo" >&5 -# 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 (makeinfo --version) < /dev/null > /dev/null 2>&1; then - MAKEINFO=makeinfo - echo "$ac_t""found" 1>&6 -else - MAKEINFO="$missing_dir/missing makeinfo" - echo "$ac_t""missing" 1>&6 -fi - - - -# 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. - - - -# Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1080: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_CC="gcc" - break - fi - done - IFS="$ac_save_ifs" -fi -fi -CC="$ac_cv_prog_CC" -if test -n "$CC"; then - echo "$ac_t""$CC" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1110: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_prog_rejected=no - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - break - fi - done - IFS="$ac_save_ifs" -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# -gt 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - set dummy "$ac_dir/$ac_word" "$@" - shift - ac_cv_prog_CC="$@" - fi -fi -fi -fi -CC="$ac_cv_prog_CC" -if test -n "$CC"; then - echo "$ac_t""$CC" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - - test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } -fi - -echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:1159: checking whether we are using GNU C" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then - ac_cv_prog_gcc=yes -else - ac_cv_prog_gcc=no -fi -fi - -echo "$ac_t""$ac_cv_prog_gcc" 1>&6 - -if test $ac_cv_prog_gcc = yes; then - GCC=yes - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1183: checking whether ${CC-cc} accepts -g" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - echo 'void f(){}' > conftest.c -if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then - ac_cv_prog_cc_g=yes -else - ac_cv_prog_cc_g=no -fi -rm -f conftest* - -fi - -echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 - 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 - - -# Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args. -set dummy ${ac_tool_prefix}as; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1214: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$AS"; then - ac_cv_prog_AS="$AS" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_AS="${ac_tool_prefix}as" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_prog_AS" && ac_cv_prog_AS="as" -fi -fi -AS="$ac_cv_prog_AS" -if test -n "$AS"; then - echo "$ac_t""$AS" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - - - -# Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. -set dummy ${ac_tool_prefix}ar; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1246: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$AR"; then - ac_cv_prog_AR="$AR" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_AR="${ac_tool_prefix}ar" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar" -fi -fi -AR="$ac_cv_prog_AR" -if test -n "$AR"; then - echo "$ac_t""$AR" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - - - -# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1278: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - break - fi - done - IFS="$ac_save_ifs" -fi -fi -RANLIB="$ac_cv_prog_RANLIB" -if test -n "$RANLIB"; then - echo "$ac_t""$RANLIB" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - - -if test -z "$ac_cv_prog_RANLIB"; then -if test -n "$ac_tool_prefix"; then - # Extract the first word of "ranlib", so it can be a program name with args. -set dummy ranlib; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1310: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test -n "$RANLIB"; then - ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -else - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_prog_RANLIB="ranlib" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" -fi -fi -RANLIB="$ac_cv_prog_RANLIB" -if test -n "$RANLIB"; then - echo "$ac_t""$RANLIB" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -else - RANLIB=":" -fi -fi - - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# ./install, which can be erroneously created by make from ./install.sh. -echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:1355: checking for a BSD compatible install" >&5 -if test -z "$INSTALL"; then -if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - ac_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_IFS" - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL="$ac_cv_path_install" - else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the path is relative. - INSTALL="$ac_install_sh" - fi -fi -echo "$ac_t""$INSTALL" 1>&6 - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - - -echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 -echo "configure:1409: checking whether to enable maintainer-specific portions of Makefiles" >&5 - # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then - enableval="$enable_maintainer_mode" - USE_MAINTAINER_MODE=$enableval -else - USE_MAINTAINER_MODE=no -fi - - echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6 - - -if test $USE_MAINTAINER_MODE = yes; then - MAINTAINER_MODE_TRUE= - MAINTAINER_MODE_FALSE='#' -else - MAINTAINER_MODE_TRUE='#' - MAINTAINER_MODE_FALSE= -fi - MAINT=$MAINTAINER_MODE_TRUE - - - -# 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 - - -echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 -echo "configure:1443: checking for executable suffix" >&5 -if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - if test "$CYGWIN" = yes || test "$MINGW32" = yes; then - ac_cv_exeext=.exe -else - rm -f conftest* - echo 'int main () { return 0; }' > conftest.$ac_ext - ac_cv_exeext= - if { (eval echo configure:1453: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then - for file in conftest.*; do - case $file in - *.c | *.o | *.obj | *.ilk | *.pdb) ;; - *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; - esac - done - else - { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; } - fi - rm -f conftest* - test x"${ac_cv_exeext}" = x && ac_cv_exeext=no -fi -fi - -EXEEXT="" -test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext} -echo "$ac_t""${ac_cv_exeext}" 1>&6 -ac_exeext=$EXEEXT - -fi - -. ${newlib_basedir}/configure.host - -newlib_cflags="${newlib_cflags} -fno-builtin" - -NEWLIB_CFLAGS=${newlib_cflags} - - -LDFLAGS=${ldflags} - - - - -if test x${newlib_elix_level} = x0; then - ELIX_LEVEL_0_TRUE= - ELIX_LEVEL_0_FALSE='#' -else - ELIX_LEVEL_0_TRUE='#' - ELIX_LEVEL_0_FALSE= -fi - - -if test x${newlib_elix_level} = x1; then - ELIX_LEVEL_1_TRUE= - ELIX_LEVEL_1_FALSE='#' -else - ELIX_LEVEL_1_TRUE='#' - ELIX_LEVEL_1_FALSE= -fi - - -if test x${newlib_elix_level} = x2; then - ELIX_LEVEL_2_TRUE= - ELIX_LEVEL_2_FALSE='#' -else - ELIX_LEVEL_2_TRUE='#' - ELIX_LEVEL_2_FALSE= -fi - - -if test x${newlib_elix_level} = x3; then - ELIX_LEVEL_3_TRUE= - ELIX_LEVEL_3_FALSE='#' -else - ELIX_LEVEL_3_TRUE='#' - ELIX_LEVEL_3_FALSE= -fi - - -if test x${newlib_elix_level} = x4; then - ELIX_LEVEL_4_TRUE= - ELIX_LEVEL_4_FALSE='#' -else - ELIX_LEVEL_4_TRUE='#' - ELIX_LEVEL_4_FALSE= -fi - - - -if test x${use_libtool} = xyes; then - USE_LIBTOOL_TRUE= - USE_LIBTOOL_FALSE='#' -else - USE_LIBTOOL_TRUE='#' - USE_LIBTOOL_FALSE= -fi - -# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we -# use oext, which is set in configure.host based on the target platform. -OBJEXT=${oext} - - - - - - - - - - -trap '' 1 2 15 -cat > confcache <<\EOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -EOF -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -(set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote substitution - # turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - -e "s/'/'\\\\''/g" \ - -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' - ;; - esac >> confcache -if cmp -s $cache_file confcache; then - : -else - if test -w $cache_file; then - echo "updating cache $cache_file" - cat confcache > $cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# Any assignment to VPATH causes Sun make to only execute -# the first set of double-colon rules, so remove it if not needed. -# If there is a colon in the path, we need to keep it. -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' -fi - -trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 - -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -cat > conftest.defs <<\EOF -s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g -s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g -s%\[%\\&%g -s%\]%\\&%g -s%\$%$$%g -EOF -DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` -rm -f conftest.defs - - -# Without the "./", some shells look in PATH for config.status. -: ${CONFIG_STATUS=./config.status} - -echo creating $CONFIG_STATUS -rm -f $CONFIG_STATUS -cat > $CONFIG_STATUS </dev/null | sed 1q`: -# -# $0 $ac_configure_args -# -# Compiler output produced by configure, useful for debugging -# configure, is in ./config.log if it exists. - -ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" -for ac_option -do - case "\$ac_option" in - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" - exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; - -version | --version | --versio | --versi | --vers | --ver | --ve | --v) - echo "$CONFIG_STATUS generated by autoconf version 2.13" - exit 0 ;; - -help | --help | --hel | --he | --h) - echo "\$ac_cs_usage"; exit 0 ;; - *) echo "\$ac_cs_usage"; exit 1 ;; - esac -done - -ac_given_srcdir=$srcdir -ac_given_INSTALL="$INSTALL" - -trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 -EOF -cat >> $CONFIG_STATUS < conftest.subs <<\\CEOF -$ac_vpsub -$extrasub -s%@SHELL@%$SHELL%g -s%@CFLAGS@%$CFLAGS%g -s%@CPPFLAGS@%$CPPFLAGS%g -s%@CXXFLAGS@%$CXXFLAGS%g -s%@FFLAGS@%$FFLAGS%g -s%@DEFS@%$DEFS%g -s%@LDFLAGS@%$LDFLAGS%g -s%@LIBS@%$LIBS%g -s%@exec_prefix@%$exec_prefix%g -s%@prefix@%$prefix%g -s%@program_transform_name@%$program_transform_name%g -s%@bindir@%$bindir%g -s%@sbindir@%$sbindir%g -s%@libexecdir@%$libexecdir%g -s%@datadir@%$datadir%g -s%@sysconfdir@%$sysconfdir%g -s%@sharedstatedir@%$sharedstatedir%g -s%@localstatedir@%$localstatedir%g -s%@libdir@%$libdir%g -s%@includedir@%$includedir%g -s%@oldincludedir@%$oldincludedir%g -s%@infodir@%$infodir%g -s%@mandir@%$mandir%g -s%@newlib_basedir@%$newlib_basedir%g -s%@host@%$host%g -s%@host_alias@%$host_alias%g -s%@host_cpu@%$host_cpu%g -s%@host_vendor@%$host_vendor%g -s%@host_os@%$host_os%g -s%@target@%$target%g -s%@target_alias@%$target_alias%g -s%@target_cpu@%$target_cpu%g -s%@target_vendor@%$target_vendor%g -s%@target_os@%$target_os%g -s%@build@%$build%g -s%@build_alias@%$build_alias%g -s%@build_cpu@%$build_cpu%g -s%@build_vendor@%$build_vendor%g -s%@build_os@%$build_os%g -s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g -s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g -s%@INSTALL_DATA@%$INSTALL_DATA%g -s%@PACKAGE@%$PACKAGE%g -s%@VERSION@%$VERSION%g -s%@ACLOCAL@%$ACLOCAL%g -s%@AUTOCONF@%$AUTOCONF%g -s%@AUTOMAKE@%$AUTOMAKE%g -s%@AUTOHEADER@%$AUTOHEADER%g -s%@MAKEINFO@%$MAKEINFO%g -s%@SET_MAKE@%$SET_MAKE%g -s%@CC@%$CC%g -s%@AS@%$AS%g -s%@AR@%$AR%g -s%@RANLIB@%$RANLIB%g -s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g -s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g -s%@MAINT@%$MAINT%g -s%@EXEEXT@%$EXEEXT%g -s%@NEWLIB_CFLAGS@%$NEWLIB_CFLAGS%g -s%@ELIX_LEVEL_0_TRUE@%$ELIX_LEVEL_0_TRUE%g -s%@ELIX_LEVEL_0_FALSE@%$ELIX_LEVEL_0_FALSE%g -s%@ELIX_LEVEL_1_TRUE@%$ELIX_LEVEL_1_TRUE%g -s%@ELIX_LEVEL_1_FALSE@%$ELIX_LEVEL_1_FALSE%g -s%@ELIX_LEVEL_2_TRUE@%$ELIX_LEVEL_2_TRUE%g -s%@ELIX_LEVEL_2_FALSE@%$ELIX_LEVEL_2_FALSE%g -s%@ELIX_LEVEL_3_TRUE@%$ELIX_LEVEL_3_TRUE%g -s%@ELIX_LEVEL_3_FALSE@%$ELIX_LEVEL_3_FALSE%g -s%@ELIX_LEVEL_4_TRUE@%$ELIX_LEVEL_4_TRUE%g -s%@ELIX_LEVEL_4_FALSE@%$ELIX_LEVEL_4_FALSE%g -s%@USE_LIBTOOL_TRUE@%$USE_LIBTOOL_TRUE%g -s%@USE_LIBTOOL_FALSE@%$USE_LIBTOOL_FALSE%g -s%@OBJEXT@%$OBJEXT%g -s%@oext@%$oext%g -s%@aext@%$aext%g -s%@libm_machine_dir@%$libm_machine_dir%g -s%@machine_dir@%$machine_dir%g -s%@sys_dir@%$sys_dir%g - -CEOF -EOF - -cat >> $CONFIG_STATUS <<\EOF - -# Split the substitutions into bite-sized pieces for seds with -# small command number limits, like on Digital OSF/1 and HP-UX. -ac_max_sed_cmds=60 # Maximum number of lines to put in a sed script. -ac_file=1 # Number of current file. -ac_beg=1 # First line for current file. -ac_end=$ac_max_sed_cmds # Line after last line for current file. -ac_more_lines=: -ac_sed_cmds="" -while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file - else - sed "${ac_end}q" conftest.subs > conftest.s$ac_file - fi - if test ! -s conftest.s$ac_file; then - ac_more_lines=false - rm -f conftest.s$ac_file - else - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f conftest.s$ac_file" - else - ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" - fi - ac_file=`expr $ac_file + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_cmds` - fi -done -if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat -fi -EOF - -cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF -for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case "$ac_file" in - *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` - ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - *) ac_file_in="${ac_file}.in" ;; - esac - - # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. - - # Remove last slash and all that follows it. Not all systems have dirname. - ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - # The file is in a subdirectory. - test ! -d "$ac_dir" && mkdir "$ac_dir" - ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" - # A "../" for each directory in $ac_dir_suffix. - ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` - else - ac_dir_suffix= ac_dots= - fi - - case "$ac_given_srcdir" in - .) srcdir=. - if test -z "$ac_dots"; then top_srcdir=. - else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; - /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; - *) # Relative path. - srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" - top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - - case "$ac_given_INSTALL" in - [/$]*) INSTALL="$ac_given_INSTALL" ;; - *) INSTALL="$ac_dots$ac_given_INSTALL" ;; - esac - - echo creating "$ac_file" - rm -f "$ac_file" - configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." - case "$ac_file" in - *Makefile*) ac_comsub="1i\\ -# $configure_input" ;; - *) ac_comsub= ;; - esac - - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` - sed -e "$ac_comsub -s%@configure_input@%$configure_input%g -s%@srcdir@%$srcdir%g -s%@top_srcdir@%$top_srcdir%g -s%@INSTALL@%$INSTALL%g -" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file -fi; done -rm -f conftest.s* - -EOF -cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF - -exit 0 -EOF -chmod +x $CONFIG_STATUS -rm -fr confdefs* $ac_clean_files -test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 - diff --git a/newlib/libc/sys/go32/configure.in b/newlib/libc/sys/go32/configure.in deleted file mode 100644 index 5706733f0..000000000 --- a/newlib/libc/sys/go32/configure.in +++ /dev/null @@ -1,12 +0,0 @@ -dnl This is the newlib/libc/sys/go32 configure.in file. -dnl Process this file with autoconf to produce a configure script. - -AC_PREREQ(2.5) -AC_INIT(djtime.h) - -dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake. -AC_CONFIG_AUX_DIR(../../../..) - -NEWLIB_CONFIGURE(../../..) - -AC_OUTPUT(Makefile) diff --git a/newlib/libc/sys/go32/copying.dj b/newlib/libc/sys/go32/copying.dj deleted file mode 100644 index 392311fa7..000000000 --- a/newlib/libc/sys/go32/copying.dj +++ /dev/null @@ -1,61 +0,0 @@ -This is the file "copying.dj". - - Copyright Information for sources and executables that are marked - Copyright (C) DJ Delorie - -This document is Copyright (C) DJ Delorie and may be distributed -verbatim, but changing it is not allowed. - -Source code copyright DJ Delorie is distributed under the terms of the -GNU General Public Licence, with the following exceptions: - - -* Source code copyright DJ Delorie is distributed under the terms of the - GNU General Public Licence, with the following exceptions: - ("go32.exe" refers to go32.exe and debug32.exe) - - * There are no conditions on distributing copies of stub.exe as - it is originally distributed in this software package, prepended - onto a binary or otherwise. This is the recommended distribution - mechanism for applications. - - * Binaries of emu387 may be distributed with no restrictions. - - * If a user creates an application, prepends a copy of go32.exe onto - the beginning of it, and distributes it free of charge, then the - user is under no obligations to distribute source or pay royalties. - Note that the copyright terms of the FSF and/or UCB must be - obeyed regardless of this. - - * If a user creates an application, prepends a copy of go32.exe onto - the beginning of it, and charges a fee for the software, then a - royalty of $5 or 5% of the selling price per copy sold must be paid - to DJ Delorie. DJ's mailing address is documented on the web page: - http://www.delorie.com/users/dj/. Note that shareware programs are - not considered "sold" until payment is rendered for them. - - * For all other cases, source code for go32.exe must be distributed - with any distributed copies of go32.exe. - - * Software that requires go32.exe to run, but is not distributed with - a copy of go32.exe, incurs no obligations with regards to the - above sections. - - * Contact me for special terms if none of the above are suitable. - - * Donations are always appreciated. - - The intent of this copyright is this: If you make money by using the - programs I wrote, I get some of it. If you use your sources to - teach others how to write programs, I'll support you. - -Changes to source code copyright BSD or FSF are copyright DJ Delorie, but -fall under the terms of the original copyright. - -A copy of the file "COPYING" is included with this document. If you did not -receive a copy of "COPYING", you may obtain one from whence this document -was obtained, or by writing: - Free Software Foundation - 675 Mass Ave - Cambridge, MA 02139 - USA diff --git a/newlib/libc/sys/go32/creat.s b/newlib/libc/sys/go32/creat.s deleted file mode 100644 index a8665251e..000000000 --- a/newlib/libc/sys/go32/creat.s +++ /dev/null @@ -1,19 +0,0 @@ -# /* This is file CREAT.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _creat -_creat: - movb $1,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/crlf2nl.c b/newlib/libc/sys/go32/crlf2nl.c deleted file mode 100644 index 79939c949..000000000 --- a/newlib/libc/sys/go32/crlf2nl.c +++ /dev/null @@ -1,69 +0,0 @@ -/* This is file CRLF2NL.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -unsigned crlf2nl(char *buf, unsigned len) -{ - char *bp = buf; - int i=0; - while (len--) - { - if (*bp != 13) - { - *buf++ = *bp; - i++; - } - bp++; - } - return i; -} - -unsigned readcr(int fd, char *buf, unsigned len) -{ - unsigned i; - i = read(fd, buf, len); - if (i <= 0) - return i; - return crlf2nl(buf, i); -} - -static char *sbuf = 0; -#define BUFSIZE 4096 - -unsigned writecr(int fd, char *buf, unsigned len) -{ - unsigned bufp=0, sbufp=0, crcnt=0, rlen=0; - int rv; - if (sbuf == 0) - sbuf = (char *)malloc(BUFSIZE+1); - while (len--) - { - if (buf[bufp] == 10) - { - crcnt++; - sbuf[sbufp++] = 13; - } - sbuf[sbufp++] = buf[bufp++]; - if ((sbufp >= BUFSIZE) || (len == 0)) - { - rv = write(fd, sbuf, sbufp); - if (rv < 0) - return rv; - rlen += rv - crcnt; - crcnt = 0; - sbufp = 0; - } - } - return rlen; -} - diff --git a/newlib/libc/sys/go32/crt0.S b/newlib/libc/sys/go32/crt0.S deleted file mode 100644 index 5fc6cf77c..000000000 --- a/newlib/libc/sys/go32/crt0.S +++ /dev/null @@ -1,233 +0,0 @@ - -/* -** Called as start(argc, argv, envp) -*/ - -/* gs:edx points to prog_info structure. All other registers are OBSOLETE -** but included for backwards compatibility -*/ - -/* These symbols are for global constructors and destructors */ -#if 0 - .section .ctor - .globl ___go32_first_ctor -___go32_first_ctor: - .section .dtor - .globl ___go32_last_ctor -___go32_last_ctor: - .globl ___go32_first_dtor -___go32_first_dtor: - .data - .globl ___go32_last_dtor -___go32_last_dtor: -#endif - .text - .globl _start -_start: - .globl start -start: -#ifdef EMU387 - pusha - push %gs -#endif - movl %eax,__hard_master - movl %esi,___pid - movl %edi,___transfer_buffer - movl %ebx,_ScreenPrimary - movl %ebp,_ScreenSecondary - - cmpl $0, %edx - je Lcopy_none - movw %gs,%cx - movw %ds,%ax - cmpw %cx,%ax - je Lcopy_none - - movl %gs:(%edx), %ecx - cmpl __go32_info_block, %ecx - jbe Lcopy_less - movl __go32_info_block, %ecx -Lcopy_less: - movl $__go32_info_block, %edi - addl $3, %ecx - andl $0xfffffffc, %ecx - movl %ecx, (%edi) - addl $4, %edi - addl $4, %edx - subl $4, %ecx -Lcopy_more: - movl %gs:(%edx), %eax - movl %eax, (%edi) - addl $4, %edx - addl $4, %edi - subl $4, %ecx - jnz Lcopy_more - - movl __go32_info_block+4, %eax - movl %eax, _ScreenPrimary - movl __go32_info_block+8, %eax - movl %eax, _ScreenSecondary -/* Backward compatibility - do not copy this one! -** movl __go32_info_block+12, %eax -** movl %eax, ___transfer_buffer -*/ - movl __go32_info_block+20, %eax - movl %eax, ___pid - movl __go32_info_block+24, %eax - movl %eax, __hard_master - - jmp Lcopy_done - -Lcopy_none: - movl %ebx,__go32_info_block+4 - movl %ebp,__go32_info_block+8 - movl %edi,__go32_info_block+12 - movl $4096,__go32_info_block+16 - movl %esi,__go32_info_block+20 - movl %eax,__go32_info_block+24 - movl $28, __go32_info_block -Lcopy_done: - -#ifndef EMU387 - call __setstack -#endif - xorl %esi,%esi - xorl %edi,%edi - xorl %ebp,%ebp - xorl %ebx,%ebx - - movl %esp,%ebx -#ifdef MAKE_GCRT0 - call mcount_init /* initialize the profiler */ -#endif - movl 8(%ebx),%eax - pushl %eax - movl %eax,_environ - pushl 4(%ebx) - pushl (%ebx) - call ___main - call _main - addl $12,%esp -#ifdef EMU387 - pop %gs - popa -#else - pushl %eax - call _exit - -exit_again: - movl $0x4c00,%eax - int $0x21 - jmp exit_again -#endif - - ret - - -#ifdef MAKE_GCRT0 - .globl __exit -__exit: - call mcount_write /* make sure we dump the output */ -exit_again2: - movb 4(%esp),%al - movb $0x4c,%ah - int $0x21 - jmp exit_again2 - -/* Here is where we initialize the timer interrupt - specific to go32 */ -/* In this case, the timer calls mcount_isr */ - .globl mcount_isr_init -mcount_isr_init: - movw __go32_info_block+36, %ax /* run mode */ - cmp $1,%ax - jb skip_mcount - cmp $3,%ax - ja skip_mcount - - movw $16,%ax - movw %ax,%gs - - movzbl __hard_master,%eax /* timer is on irq 0 */ - shll $3,%eax /* times 8 bpv */ -/* movl $960,%eax vector 0x78 * 8 bpv */ - movw %gs:(%eax),%cx - movw %cx,mc_chain - movw %gs:6(%eax),%cx - movw %cx,mc_chain_hi - movw %gs:2(%eax),%cx - movw %cx,mc_chain_sel - - movl $mcount_isr,%ecx - movw %cx,%gs:(%eax) - movw $0xd8,%gs:2(%eax) /* selector 27 == 32-bit code */ - movw $0x8f00,%gs:4(%eax) - rorl $16,%ecx - movw %cx,%gs:6(%eax) - movw %ds,%ax - movw %ax,%gs -skip_mcount: - movl mcount_histogram,%eax - movl $1,(%eax) - ret - -/* Obtain the PC where we interrupted, and bump the histogram. We should */ -/* do error checking here, but we don't. This routine is specific to go32 */ -/* in some spots */ -mcount_isr: - pushl %eax - cmpl $1,mcount_skip - je L0 - movl 4(%esp),%eax /* get the PC */ - subl $0x1020,%eax /* to fit in low..high */ - andl $0xfffffffc,%eax - shrl $1,%eax /* now points to one 4-byte entry */ - addl mcount_histogram,%eax - incw (%eax) -L0: - popl %eax - ljmp mc_chain /* chain to the next timer vector */ - iret -#endif - - .data - - .globl _environ -_environ: - .long 0 - - .globl ___pid -___pid: - .long 42 - - .globl ___transfer_buffer -___transfer_buffer: - .long 0 - - .globl _ScreenPrimary -_ScreenPrimary: - .long 0 - - .globl _ScreenSecondary -_ScreenSecondary: - .long 0 - - .globl __hard_master - .globl __hard_slave - .globl __core_select -__hard_master: - .byte 0 -__hard_slave: - .byte 0 -__core_select: - .short 0 - -#ifdef MAKE_GCRT0 -mc_chain: - .short 0 -mc_chain_hi: - .short 0 -mc_chain_sel: - .short 0 -#endif - - diff --git a/newlib/libc/sys/go32/dir.c b/newlib/libc/sys/go32/dir.c deleted file mode 100644 index ba3831a82..000000000 --- a/newlib/libc/sys/go32/dir.c +++ /dev/null @@ -1,95 +0,0 @@ -#include - -#include "sys/dir.h" -#include "sys/dirent.h" -#include - -DIR *opendir(char *name) -{ - int length; - DIR *dir = (DIR *)malloc(sizeof(DIR)); - dir->num_read = 0; - dir->name = (char *)malloc(strlen(name)+6); - strcpy(dir->name, name); - - /* Append a "." if we got only the device name */ - if (dir->name[1] == ':' && strlen(dir->name) == 2) - strcat(dir->name, "."); - - /* Strip trailing slashes, so we can append "/*.*" */ - while (1) - { - length = strlen(dir->name); - if (length == 0) break; - if (dir->name[length - 1] == '/' || - dir->name[length - 1] == '\\') - dir->name[length - 1] = '\0'; - else - break; - } - - strcat(dir->name, "/*.*"); - return dir; -} - - - -static char *strlwr(char *s) -{ - char *p = s; - while (*s) - { - if ((*s >= 'A') && (*s <= 'Z')) - *s += 'a'-'A'; - s++; - } - return p; -} - -struct dirent *readdir(DIR *dir) -{ - int done; - int oerrno = errno; - if (dir->num_read) - done = findnext(&dir->ff); - else - done = findfirst(dir->name, &dir->ff, - FA_ARCH|FA_RDONLY|FA_DIREC|FA_HIDDEN|FA_SYSTEM); - if (done) - { - if (errno == ENMFILE) - errno = oerrno; - return 0; - } - dir->num_read ++; - dir->de.d_namlen = strlen(dir->ff.ff_name); - strcpy(dir->de.d_name,dir->ff.ff_name); - strlwr(dir->de.d_name); - return &dir->de; -} - -long telldir(DIR *dir) -{ - return dir->num_read; -} - -void seekdir(DIR *dir, long loc) -{ - int i; - rewinddir(dir); - for (i=0; inum_read = 0; -} - -int closedir(DIR *dir) -{ - free(dir->name); - free(dir); - return 0; -} - diff --git a/newlib/libc/sys/go32/dir.h b/newlib/libc/sys/go32/dir.h deleted file mode 100644 index 826c4604d..000000000 --- a/newlib/libc/sys/go32/dir.h +++ /dev/null @@ -1,53 +0,0 @@ -#ifndef _DIR_H_ -#define _DIR_H_ - -struct ffblk { - char ff_reserved[21]; - char ff_attrib; - short ff_ftime; - short ff_fdate; - short ff_filler; - long ff_fsize; - char ff_name[16]; -}; - -#define FA_RDONLY 1 -#define FA_HIDDEN 2 -#define FA_SYSTEM 4 -#define FA_LABEL 8 -#define FA_DIREC 16 -#define FA_ARCH 32 - -/* for fnmerge/fnsplit */ -#define MAXPATH 80 -#define MAXDRIVE 3 -#define MAXDIR 66 -#define MAXFILE 9 -#define MAXEXT 5 - -#define WILDCARDS 0x01 -#define EXTENSION 0x02 -#define FILENAME 0x04 -#define DIRECTORY 0x08 -#define DRIVE 0x10 - -#ifdef __cplusplus -extern "C" { -#endif - -int findfirst(const char *pathname, struct ffblk *ffblk, int attrib); -int findnext(struct ffblk *ffblk); - -void fnmerge (char *path, const char *drive, const char *dir, - const char *name, const char *ext); -int fnsplit (const char *path, char *drive, char *dir, - char *name, char *ext); - -int getdisk(void); -int setdisk(int drive); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/newlib/libc/sys/go32/djtime.h b/newlib/libc/sys/go32/djtime.h deleted file mode 100644 index 7a14d2ae2..000000000 --- a/newlib/libc/sys/go32/djtime.h +++ /dev/null @@ -1,42 +0,0 @@ -/* This is file TIME.H */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _SYS_TIME_H_ -#define _SYS_TIME_H_ - -#include - -struct timeval { - long tv_sec; - long tv_usec; -}; - -struct timezone { - int tz_minuteswest; - int tz_dsttime; -}; - -#ifdef __cplusplus -extern "C" { -#endif - -int gettimeofday(struct timeval *tp, struct timezone *tzp); - -#ifdef __cplusplus -} -#endif - -#endif - - diff --git a/newlib/libc/sys/go32/dos.h b/newlib/libc/sys/go32/dos.h deleted file mode 100644 index 8b42562d2..000000000 --- a/newlib/libc/sys/go32/dos.h +++ /dev/null @@ -1,107 +0,0 @@ -#ifndef _DOS_H_ -#define _DOS_H_ - -#include "pc.h" - -union REGS { - struct { - unsigned long ax; - unsigned long bx; - unsigned long cx; - unsigned long dx; - unsigned long si; - unsigned long di; - unsigned long cflag; - unsigned long flags; - } x; - struct { - unsigned char al; - unsigned char ah; - unsigned short upper_ax; - unsigned char bl; - unsigned char bh; - unsigned short upper_bx; - unsigned char cl; - unsigned char ch; - unsigned short upper_cx; - unsigned char dl; - unsigned char dh; - unsigned short upper_dx; - } h; -}; - -struct SREGS { - unsigned short cs; - unsigned short ds; - unsigned short es; - unsigned short fs; - unsigned short gs; - unsigned short ss; -}; - -struct ftime { - unsigned ft_tsec:5; /* 0-29, double to get real seconds */ - unsigned ft_min:6; /* 0-59 */ - unsigned ft_hour:5; /* 0-23 */ - unsigned ft_day:5; /* 1-31 */ - unsigned ft_month:4; /* 1-12 */ - unsigned ft_year:7; /* since 1980 */ -}; - -struct date { - short da_year; - char da_day; - char da_mon; -}; - -struct time { - unsigned char ti_min; - unsigned char ti_hour; - unsigned char ti_hund; - unsigned char ti_sec; -}; - -struct dfree { - unsigned df_avail; - unsigned df_total; - unsigned df_bsec; - unsigned df_sclus; -}; - -#ifdef __cplusplus -extern "C" { -#endif - -int bdos(int func, unsigned dx, unsigned al); -int bdosptr(int func, void *dx, unsigned al); -int int86(int ivec, union REGS *in, union REGS *out); -int int86x(int ivec, union REGS *in, union REGS *out, struct SREGS *seg); -int intdos(union REGS *in, union REGS *out); -int intdosx(union REGS *in, union REGS *out, struct SREGS *seg); - -int enable(void); -int disable(void); - -int getftime(int handle, struct ftime *ftimep); -int setftime(int handle, struct ftime *ftimep); - -int getcbrk(void); -int setcbrk(int new_value); - -void getdate(struct date *); -void gettime(struct time *); -void setdate(struct date *); -void settime(struct time *); - -void getdfree(unsigned char drive, struct dfree *ptr); - -void delay(unsigned msec); -int _get_default_drive(void); -void _fixpath(const char *, char *); - -#ifdef __cplusplus -} -#endif - -#endif - diff --git a/newlib/libc/sys/go32/dosmem.S b/newlib/libc/sys/go32/dosmem.S deleted file mode 100644 index c1956f767..000000000 --- a/newlib/libc/sys/go32/dosmem.S +++ /dev/null @@ -1,120 +0,0 @@ -/* DOSMEM.S */ -/* -** Copyright (C) 1993 C.W. Sandmann -** -** This file may be freely distributed as long as the author's name remains. -** Extender environment independent way to set up Real area 1Mb access. -** Procedure takes a single argument %eax which contains the real area offset. -** After call, access may be made with "%gs:(%eax)" -*/ - .text - .align 2 - .globl dosmemsetup -dosmemsetup: /* no params, expected ASM call only */ - pushl %eax - movzwl __core_select,%eax - testl %eax,%eax - je old_go32 /* Image run with pre-DPMI extender */ - movw %ax,%gs /* Use real area selector */ - popl %eax /* Plus real offset */ - andl $0x0fffffff,%eax /* Clear any linear access bits */ - ret - .align 2,0x90 -old_go32: - push %ds - pop %gs /* Use arena selector */ - popl %eax - orl $0xe0000000,%eax /* Plus linear access area */ - ret - - .align 2 - .globl _dosmemget -_dosmemget: /* long offset, long len, long *buf */ - push %gs - movl 8(%esp),%eax /* offset */ - call dosmemsetup - movl 12(%esp),%ecx /* length */ - movl 16(%esp),%edx /* arena offset */ - pushl %esi - pushl %edi - movl %eax,%esi - movl %edx,%edi - push %ds - push %es - push %ds - pop %es - push %gs - pop %ds - cld - rep - movsb /* move ECX bytes from Real area */ - pop %es - pop %ds - popl %edi - popl %esi - pop %gs - ret - - .align 2 - .globl _dosmemput -_dosmemput: /* long *buf, long len, long offset */ - push %gs - movl 16(%esp),%eax /* offset */ - call dosmemsetup - movl 12(%esp),%ecx /* length */ - movl 8(%esp),%edx /* arena offset */ - pushl %esi - pushl %edi - movl %eax,%edi - movl %edx,%esi - push %es - push %gs - pop %es - cld - rep - movsb /* move ECX bytes to Real area */ - pop %es - popl %edi - popl %esi - pop %gs - ret - - .align 2 /* 8(bp) 12(bp) 16(bp) 20(bp) 24(bp) */ - .globl _movedata /* src_sel, src_ofs, dest_sel, dest_ofs, len */ -_movedata: - pushl %ebp - movl %esp,%ebp - pushw %ds - pushw %es - pushl %esi - pushl %edi - - movl 8(%ebp),%eax - movw %ax,%ds - movl 12(%ebp),%esi - - movl 16(%ebp),%eax - movw %ax,%es - movl 20(%ebp),%edi - - movl 24(%ebp),%ecx - pushl %ecx - shrl $2,%ecx - jcxz no_big_move - rep - movsl -no_big_move: - popl %ecx - andl $3,%ecx - jcxz no_little_move - rep - movsb -no_little_move: - - popl %edi - popl %esi - popw %es - popw %ds - leave - ret - diff --git a/newlib/libc/sys/go32/dpmi.c b/newlib/libc/sys/go32/dpmi.c deleted file mode 100644 index 5215065e1..000000000 --- a/newlib/libc/sys/go32/dpmi.c +++ /dev/null @@ -1,413 +0,0 @@ -#include -#include "dos.h" -#include "go32.h" -#include -#include "dpmi.h" - -static union REGS r; -static struct SREGS s; - -int _go32_dpmi_allocate_dos_memory(_go32_dpmi_seginfo *info) -{ - r.x.ax = 0x0100; - r.x.bx = info->size; - int86(0x31, &r, &r); - if (r.x.flags & 1) - { - info->size = r.x.bx; - return r.x.ax; - } - else - { - info->rm_segment = r.x.ax; - info->pm_selector = r.x.dx; - return 0; - } -} - -int _go32_dpmi_free_dos_memory(_go32_dpmi_seginfo *info) -{ - r.x.ax = 0x0101; - r.x.dx = info->pm_selector; - int86(0x31, &r, &r); - if (r.x.flags & 1) - { - return r.x.ax; - } - else - { - return 0; - } -} - -int _go32_dpmi_resize_dos_memory(_go32_dpmi_seginfo *info) -{ - r.x.ax = 0x0102; - r.x.bx = info->size; - r.x.dx = info->pm_selector; - int86(0x31, &r, &r); - if (r.x.flags & 1) - { - info->size = r.x.bx; - return r.x.ax; - } - else - { - return 0; - } -} - -int _go32_dpmi_get_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info) -{ - r.x.ax = 0x0200; - r.h.bl = vector; - int86(0x31, &r, &r); - info->rm_segment = r.x.cx; - info->rm_offset = r.x.dx; - return 0; -} - -int _go32_dpmi_set_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info) -{ - r.x.ax = 0x0201; - r.h.bl = vector; - r.x.cx = info->rm_segment; - r.x.dx = info->rm_offset; - int86(0x31, &r, &r); - return 0; -} - -int _go32_dpmi_get_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info) -{ - r.x.ax = 0x0204; - r.h.bl = vector; - int86(0x31, &r, &r); - info->pm_selector = r.x.cx; - info->pm_offset = r.x.dx; - return 0; -} - -int _go32_dpmi_set_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info) -{ - r.x.ax = 0x0205; - r.h.bl = vector; - r.x.cx = info->pm_selector; - r.x.dx = info->pm_offset; - int86(0x31, &r, &r); - if (r.x.flags & 1) - { - return r.x.ax; - } - else - { - return 0; - } -} - -/* In real DPMI, we enter with only CS known, and SS on a locked 4K stack which - is *NOT* our SS. We must set up everthing, including a stack swap, then - restore it the way we found it. C. Sandmann 4-93 */ - -static unsigned char wrapper_intcommon[] = { -0x1e, /* push ds */ -0x06, /* push es */ -0x0f, 0xa0, /* push fs */ -0x0f, 0xa8, /* push gs */ -0x60, /* pusha */ -0x66, 0xb8, 0x34, 0x12, /* mov ax,0x1234 */ -0x8e, 0xd8, /* mov ds,ax */ -0x8e, 0xc0, /* mov es,ax */ -0x8e, 0xe0, /* mov fs,ax */ -0x8e, 0xe8, /* mov gs,ax */ -0xbb, 0x00, 0x00, 0x00, 0x00, /* mov ebx,_local_stack */ -0xfc, /* cld */ -0x89, 0xe1, /* mov ecx,esp */ -0x8c, 0xd2, /* mov dx,ss */ -0x8e, 0xd0, /* mov ss,ax */ -0x89, 0xdc, /* mov esp,ebx */ -0x52, /* push edx */ -0x51, /* push ecx */ -0xe8, 0x00, 0x00, 0x00, 0x00, /* call _rmih */ -0x58, /* pop eax */ -0x5b, /* pop ebx */ -0x8e, 0xd3, /* mov ss,bx */ -0x89, 0xc4, /* mov esp,eax */ -0x61, /* popa */ -0x0f, 0xa9, /* pop gs */ -0x0f, 0xa1, /* pop fs */ -0x07, /* pop es */ -0x1f /* pop ds */ -}; - -static unsigned char wrapper_intiret[] = { -0xcf /* iret */ -}; - -static unsigned char wrapper_intchain[] = { -0x2e, 0xff, 0x2d, 0x00, 0x00, 0x00, 0x00, /* jmp cs:[_old_int+39] */ -0xcf, /* iret */ -0x78, 0x56, 0x34, 0x12, -0xcd, 0xab -}; - -/* _interrupt_stack_size can be changed globally before calling this routine if - needed. Don't change it between calls or you will mess up the malloc chain ! */ - -unsigned _interrupt_stack_size = 32256; - -int _go32_dpmi_chain_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info) -{ - char *mystack; - unsigned char *wrapper = (unsigned char *)malloc(sizeof(wrapper_intcommon) + sizeof(wrapper_intchain)); - if (wrapper == 0) - return 0x8015; - mystack = (char *)malloc(_interrupt_stack_size); - if (mystack == 0) - return 0x8015; - - r.x.ax = 0x0204; - r.h.bl = vector; - int86(0x31, &r, &r); - - memcpy(wrapper, wrapper_intcommon, sizeof(wrapper_intcommon)); - memcpy(wrapper+sizeof(wrapper_intcommon), wrapper_intchain, sizeof(wrapper_intchain)); - *(short *)(wrapper+9) = _go32_my_ds(); - *(long *)(wrapper+20) = (int)mystack + _interrupt_stack_size; - *(long *)(wrapper+36) = info->pm_offset - (int)wrapper - 40; - *(long *)(wrapper+sizeof(wrapper_intcommon)+3) = (long)wrapper+sizeof(wrapper_intcommon)+8; - *(long *)(wrapper+sizeof(wrapper_intcommon)+8) = r.x.dx; - *(short *)(wrapper+sizeof(wrapper_intcommon)+12) = r.x.cx; - - r.x.ax = 0x0205; - r.h.bl = vector; - r.x.cx = _go32_my_cs(); - r.x.dx = (int)wrapper; - int86(0x31, &r, &r); - return 0; -} - -int _go32_dpmi_allocate_iret_wrapper(_go32_dpmi_seginfo *info) -{ - char *mystack; - unsigned char *wrapper = (unsigned char *)malloc(sizeof(wrapper_intcommon) + sizeof(wrapper_intiret)); - if (wrapper == 0) - return 0x8015; - mystack = (char *)malloc(_interrupt_stack_size); - if (mystack == 0) - return 0x8015; - - memcpy(wrapper, wrapper_intcommon, sizeof(wrapper_intcommon)); - memcpy(wrapper+sizeof(wrapper_intcommon), wrapper_intiret, sizeof(wrapper_intiret)); - *(short *)(wrapper+9) = _go32_my_ds(); - *(long *)(wrapper+20) = (int)mystack + _interrupt_stack_size; - *(long *)(wrapper+36) = info->pm_offset - (int)wrapper - 40; - - info->pm_offset = (int)wrapper; - return 0; -} - -int _go32_dpmi_free_iret_wrapper(_go32_dpmi_seginfo *info) -{ - char *mystack; - char *wrapper = (char *)info->pm_offset; - mystack = (char *)(*(long *)(wrapper+20) - _interrupt_stack_size); - free(mystack); - free(wrapper); - return 0; -} - -int _go32_dpmi_simulate_int(int vector, _go32_dpmi_registers *regs) -{ - r.h.bl = vector; - r.h.bh = 0; - r.x.cx = 0; - r.x.di = (int)regs; - if (vector == 0x21 && regs->x.ax == 0x4b00) - { - r.x.ax = 0xff0a; - int86(0x21, &r, &r); - } - else - { - r.x.ax = 0x0300; - int86(0x31, &r, &r); - } - if (r.x.flags & 1) - { - return r.x.ax; - } - else - { - return 0; - } -} - -int _go32_dpmi_simulate_fcall(_go32_dpmi_registers *regs) -{ - r.x.ax = 0x0301; - r.h.bh = 0; - r.x.cx = 0; - r.x.di = (int)regs; - int86(0x31, &r, &r); - if (r.x.flags & 1) - { - return r.x.ax; - } - else - { - return 0; - } -} - -int _go32_dpmi_simulate_fcall_iret(_go32_dpmi_registers *regs) -{ - r.x.ax = 0x0302; - r.h.bh = 0; - r.x.cx = 0; - r.x.di = (int)regs; - int86(0x31, &r, &r); - if (r.x.flags & 1) - { - return r.x.ax; - } - else - { - return 0; - } -} - -/* Bug here; this needs to be fixed like above with SS & CLD */ - -static unsigned char wrapper_common[] = { -0x66, 0x06, /* push es */ -0x66, 0x1e, /* push ds */ -0x66, 0x06, /* push es */ -0x66, 0x1f, /* pop ds */ -0x56, /* push esi */ -0x57, /* push edi */ -0xe8, 0x00, 0x00, 0x00, 0x00, /* call _rmcb */ -0x5f, /* pop edi */ -0x5e, /* pop esi */ -0x66, 0x1f, /* pop ds */ -0x66, 0x07, /* pop es */ -0xfc, /* cld */ -0x66, 0x8b, 0x06, /* mov ax,[esi] */ -0x66, 0x26, 0x89, 0x47, 0x2a, /* mov es:[edi+42],ax */ -0x66, 0x8b, 0x46, 0x02, /* mov ax,[esi+2] */ -0x66, 0x26, 0x89, 0x47, 0x2c, /* mov es:[edi+44],ax */ -}; - -static unsigned char wrapper_retf[] = { -0x66, 0x26, 0x83, 0x47, 0x2e, 0x04, /* add es:[edi+46],0x4 */ -0xcf /* iret */ -}; - -static unsigned char wrapper_iret[] = { -0x66, 0x8b, 0x46, 0x04, /* mov ax,[esi+4] */ -0x66, 0x26, 0x89, 0x47, 0x20, /* mov es:[edi+32],ax */ -0x66, 0x26, 0x83, 0x47, 0x2e, 0x06, /* add es:[edi+46],0x6 */ -0xcf /* iret */ -}; - -int _go32_dpmi_allocate_real_mode_callback_retf(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs) -{ - unsigned char *wrapper = (unsigned char *)malloc(sizeof(wrapper_common) + sizeof(wrapper_retf)); - if (wrapper == 0) - return 0x8015; - - memcpy(wrapper, wrapper_common, sizeof(wrapper_common)); - memcpy(wrapper+sizeof(wrapper_common), wrapper_retf, sizeof(wrapper_retf)); - *(long *)(wrapper+11) = info->pm_offset - (int)wrapper - 15; - info->size = (int)wrapper; - - r.x.ax = 0x0303; - r.x.si = (int)wrapper; - r.x.di = (int)regs; - s.ds = _go32_my_cs(); - s.es = _go32_my_ds(); - s.fs = 0; - s.gs = 0; - int86x(0x31, &r, &r, &s); - if (r.x.flags & 1) - { - return r.x.ax; - } - else - { - info->rm_segment = r.x.cx; - info->rm_offset = r.x.dx; - return 0; - } -} - -int _go32_dpmi_allocate_real_mode_callback_iret(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs) -{ - unsigned char *wrapper = (unsigned char *)malloc(sizeof(wrapper_common) + sizeof(wrapper_iret)); - if (wrapper == 0) - return 0x8015; - - memcpy(wrapper, wrapper_common, sizeof(wrapper_common)); - memcpy(wrapper+sizeof(wrapper_common), wrapper_iret, sizeof(wrapper_iret)); - *(long *)(wrapper+11) = info->pm_offset - (int)wrapper - 15; - info->size = (int)wrapper; - - r.x.ax = 0x0303; - r.x.si = (int)wrapper; - r.x.di = (int)regs; - s.ds = _go32_my_cs(); - s.es = _go32_my_ds(); - s.fs = 0; - s.gs = 0; - int86x(0x31, &r, &r, &s); - if (r.x.flags & 1) - { - return r.x.ax; - } - else - { - info->rm_segment = r.x.cx; - info->rm_offset = r.x.dx; - return 0; - } -} - -int _go32_dpmi_free_real_mode_callback(_go32_dpmi_seginfo *info) -{ - free((char *)info->size); - r.x.ax = 0x0304; - r.x.cx = info->rm_segment; - r.x.dx = info->rm_offset; - int86(0x31, &r, &r); - if (r.x.flags & 1) - { - return r.x.ax; - } - else - { - return 0; - } -} - -int _go32_dpmi_get_free_memory_information(_go32_dpmi_meminfo *info) -{ - r.x.ax = 0x0500; - r.x.di = (int)info; - int86(0x31, &r, &r); - return 0; -} - -u_long _go32_dpmi_remaining_physical_memory() -{ - _go32_dpmi_meminfo info; - _go32_dpmi_get_free_memory_information(&info); - if (info.available_physical_pages) - return info.available_physical_pages * 4096; - return info.available_memory; -} - -u_long _go32_dpmi_remaining_virtual_memory() -{ - _go32_dpmi_meminfo info; - _go32_dpmi_get_free_memory_information(&info); - return info.available_memory; -} diff --git a/newlib/libc/sys/go32/dpmi.h b/newlib/libc/sys/go32/dpmi.h deleted file mode 100644 index 56bde19b9..000000000 --- a/newlib/libc/sys/go32/dpmi.h +++ /dev/null @@ -1,151 +0,0 @@ -/* This is file dpmi.h */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _DPMI_H_ -#define _DPMI_H_ - - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef union { - struct { - u_long edi; - u_long esi; - u_long ebp; - u_long res; - u_long ebx; - u_long edx; - u_long ecx; - u_long eax; - } d; - struct { - u_short di, di_hi; - u_short si, si_hi; - u_short bp, bp_hi; - u_short res, res_hi; - u_short bx, bx_hi; - u_short dx, dx_hi; - u_short cx, cx_hi; - u_short ax, ax_hi; - u_short flags; - u_short es; - u_short ds; - u_short fs; - u_short gs; - u_short ip; - u_short cs; - u_short sp; - u_short ss; - } x; - struct { - u_char edi[4]; - u_char esi[4]; - u_char ebp[4]; - u_char res[4]; - u_char bl, bh, ebx_b2, ebx_b3; - u_char dl, dh, edx_b2, edx_b3; - u_char cl, ch, ecx_b2, ecx_b3; - u_char al, ah, eax_b2, eax_b3; - } h; -} _go32_dpmi_registers; - -typedef struct { - u_long size; - u_long pm_offset; - u_short pm_selector; - u_short rm_offset; - u_short rm_segment; -} _go32_dpmi_seginfo; - -typedef struct { - u_long available_memory; - u_long available_pages; - u_long available_lockable_pages; - u_long linear_space; - u_long unlocked_pages; - u_long available_physical_pages; - u_long total_physical_pages; - u_long free_linear_space; - u_long max_pages_in_paging_file; - u_long reserved[3]; -} _go32_dpmi_meminfo; - -/* returns zero if success, else dpmi error and info->size is max size */ -int _go32_dpmi_allocate_dos_memory(_go32_dpmi_seginfo *info); - /* set size to bytes/16, call, use rm_segment. Do not - change anthing but size until the memory is freed. - If error, max size is returned in size as bytes/16. */ -int _go32_dpmi_free_dos_memory(_go32_dpmi_seginfo *info); - /* set new size to bytes/16, call. If error, max size - is returned in size as bytes/16 */ -int _go32_dpmi_resize_dos_memory(_go32_dpmi_seginfo *info); - /* uses pm_selector to free memory */ - -/* These both use the rm_segment:rm_offset fields only */ -int _go32_dpmi_get_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); -int _go32_dpmi_set_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); - -/* These do NOT wrap the function in pm_offset in an iret handler. - You must provide an assembler interface yourself, or alloc one below. - You may NOT longjmp out of an interrupt handler. */ -int _go32_dpmi_get_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); - /* puts vector in pm_selector:pm_offset. */ -int _go32_dpmi_set_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); - /* sets vector from pm_offset and pm_selector */ -int _go32_dpmi_chain_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); - /* sets up wrapper that calls function in pm_offset, chaining to old - handler when it returns */ - -/* These can be used to generate assember IRET-style wrappers for functions */ -int _go32_dpmi_allocate_iret_wrapper(_go32_dpmi_seginfo *info); - /* Put function ptr in pm_offset, call, returns wrapper entry in pm_offset. */ -int _go32_dpmi_free_iret_wrapper(_go32_dpmi_seginfo *info); - /* assumes pm_offset points to wrapper, frees it */ - -/* simulate real mode calls. CS:IP from regs for non-interrupt */ -int _go32_dpmi_simulate_int(int vector, _go32_dpmi_registers *regs); -int _go32_dpmi_simulate_fcall(_go32_dpmi_registers *regs); -int _go32_dpmi_simulate_fcall_iret(_go32_dpmi_registers *regs); - -/* These automatically handle the tasks of restructuring the - real-mode stack for the proper return type. The callback - (info->pm_offset) is called as (*pmcb)(_go32_dpmi_registers *regs); */ -int _go32_dpmi_allocate_real_mode_callback_retf(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs); - /* points callback at pm_offset, returns seg:ofs of callback addr - in rm_segment:rm_offset. Do not change any fields until freed. - Interface is added to simulate far return */ -int _go32_dpmi_allocate_real_mode_callback_iret(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs); - /* same, but simulates iret */ -int _go32_dpmi_free_real_mode_callback(_go32_dpmi_seginfo *info); - /* frees callback */ - -/* Only available_memory is guaranteed to be valid. Try - available_physical_pages for phys mem left */ -int _go32_dpmi_get_free_memory_information(_go32_dpmi_meminfo *info); - -/* Convenience functions. These use the above memory info call. - The return value is *bytes* */ -u_long _go32_dpmi_remaining_physical_memory(void); -u_long _go32_dpmi_remaining_virtual_memory(void); - - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/newlib/libc/sys/go32/dup.s b/newlib/libc/sys/go32/dup.s deleted file mode 100644 index 3d3aa0457..000000000 --- a/newlib/libc/sys/go32/dup.s +++ /dev/null @@ -1,28 +0,0 @@ -# /* This is file DUP.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _dup -_dup: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movb $0x45,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - jb syscall_error - ret diff --git a/newlib/libc/sys/go32/dup2.s b/newlib/libc/sys/go32/dup2.s deleted file mode 100644 index f06f0b75e..000000000 --- a/newlib/libc/sys/go32/dup2.s +++ /dev/null @@ -1,28 +0,0 @@ -# /* This is file DUP2.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _dup2 -_dup2: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movl 20(%esp),%ecx - movb $0x46,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - jmp syscall_check diff --git a/newlib/libc/sys/go32/exec.c b/newlib/libc/sys/go32/exec.c deleted file mode 100644 index 004666c71..000000000 --- a/newlib/libc/sys/go32/exec.c +++ /dev/null @@ -1,509 +0,0 @@ -#include -#include -#include -#include -#include -#include "go32.h" -#include "dpmi.h" -/*#include "process.h"*/ -#if 1 -#define P_WAIT 1 -#define P_NOWAIT 2 /* always generates error */ -#define P_OVERLAY 3 -#endif -extern const char **environ; -#define environ ((const char **)environ) - -#define scan_ptr() \ - char const **ptr; \ - for (ptr = &argv0; *ptr; ptr++); \ - ptr = (char const **)(*++ptr); - -int execl(const char *path, const char *argv0, ...) -{ - return spawnve(P_OVERLAY, path, &argv0, environ); -} - -int execle(const char *path, const char *argv0, ... /*, const char **envp */) -{ - scan_ptr(); - return spawnve(P_OVERLAY, path, &argv0, ptr); -} - -int execlp(const char *path, const char *argv0, ...) -{ - return spawnvpe(P_OVERLAY, path, &argv0, environ); -} - -int execlpe(const char *path, const char *argv0, ... /*, const char **envp */) -{ - scan_ptr(); - return spawnvpe(P_OVERLAY, path, &argv0, ptr); -} - -/*-------------------------------------------------*/ - -int execv(const char *path, const char **argv) -{ - return spawnve(P_OVERLAY, path, argv, environ); -} - -int execve(const char *path, const char **argv, const char **envp) -{ - return spawnve(P_OVERLAY, path, argv, envp); -} - -int execvp(const char *path, const char **argv) -{ - return spawnvpe(P_OVERLAY, path, argv, environ); -} - -int execvpe(const char *path, const char **argv, const char **envp) -{ - return spawnvpe(P_OVERLAY, path, argv, envp); -} - -/*-------------------------------------------------*/ - -int spawnl(int mode, const char *path, const char *argv0, ...) -{ - return spawnve(mode, path, &argv0, environ); -} - -int spawnle(int mode, const char *path, const char *argv0, ... /*, const char **envp */) -{ - scan_ptr(); - return spawnve(mode, path, &argv0, ptr); -} - -int spawnlp(int mode, const char *path, const char *argv0, ...) -{ - return spawnvpe(mode, path, &argv0, environ); -} - -int spawnlpe(int mode, const char *path, const char *argv0, ... /*, const char **envp */) -{ - scan_ptr(); - return spawnvpe(mode, path, &argv0, ptr); -} - -/*-------------------------------------------------*/ - -typedef struct { - u_short eseg; - u_short argoff; - u_short argseg; - u_short fcb1_off; - u_short fcb1_seg; - u_short fcb2_off; - u_short fcb2_seg; -} Execp; - -static Execp parm; - -static u_long tbuf; - -static u_long talloc(size_t amt) -{ - u_long rv = tbuf; - tbuf += amt; - return rv; -} - -static int direct_exec_tail(const char *program, const char *args, const char **envp) -{ - _go32_dpmi_registers r; - u_long program_la; - u_long arg_la; - u_long parm_la; - u_long env_la, env_e_la; - char arg_header[3]; - int i; - - program_la = talloc(strlen(program)+1); - arg_la = talloc(strlen(args)+3); - parm_la = talloc(sizeof(Execp)); - - dosmemput(program, strlen(program)+1, program_la); - - arg_header[0] = strlen(args); - arg_header[1] = '\r'; - dosmemput(arg_header, 1, arg_la); - dosmemput(args, strlen(args), arg_la+1); - dosmemput(arg_header+1, 1, arg_la+1+strlen(args)); - - do { - env_la = talloc(1); - } while (env_la & 15); - talloc(-1); - for (i=0; envp[i]; i++) - { - env_e_la = talloc(strlen(envp[i])+1); - dosmemput(envp[i], strlen(envp[i])+1, env_e_la); - } - arg_header[0] = 0; - arg_header[1] = 1; - arg_header[2] = 0; - dosmemput(arg_header, 3, talloc(3)); - env_e_la = talloc(strlen(program)+1); - dosmemput(program, strlen(program)+1, env_e_la); - - parm.eseg = env_la / 16; - parm.argseg = arg_la / 16; - parm.argoff = arg_la & 15; - dosmemput(&parm, sizeof(parm), parm_la); - - memset(&r, 0, sizeof(r)); - r.x.ax = 0x4b00; - r.x.ds = program_la / 16; - r.x.dx = program_la & 15; - r.x.es = parm_la / 16; - r.x.bx = parm_la & 15; - _go32_dpmi_simulate_int(0x21, &r); - if (r.x.flags & 1) - { - errno = r.x.ax; - return -1; - } - - memset(&r, 0, sizeof(r)); - r.h.ah = 0x4d; - _go32_dpmi_simulate_int(0x21, &r); - - if (r.x.flags & 1) - { - errno = r.x.ax; - return -1; - } - return r.x.ax; -} - -static int direct_exec(const char *program, const char **argv, const char **envp) -{ - int i, arglen; - char *args, *argp; - - tbuf = _go32_info_block.linear_address_of_transfer_buffer; - - arglen = 0; - for (i=1; argv[i]; i++) - arglen += strlen(argv[i]) + 1; - args = (char *)malloc(arglen+1); - argp = args; - for (i=1; argv[i]; i++) - { - const char *p = argv[i]; - if (argp - args > 125) - break; - *argp++ = ' '; - while (*p) - { - if (argp - args > 125) - break; - *argp++ = *p++; - } - } - *argp = 0; - - return direct_exec_tail(program, args, envp); -} - -typedef struct { - char magic[16]; - int struct_length; - char go32[16]; -} StubInfo; -#define STUB_INFO_MAGIC "StubInfoMagic!!" - -static int go32_exec(const char *program, const char **argv, const char **envp) -{ - int is_stubbed = 0; - int found_si = 0; - StubInfo si; - unsigned short header[3]; - int pf, has_dot, i; - char *go32, *sip; - const char *pp, *pe; - char rpath[80], *rp; - int stub_offset, argc; - - int si_la, rm_la, rm_seg; - short *rm_argv; - char cmdline[34]; - - pf = open(program, O_RDONLY|O_BINARY); - - read(pf, header, sizeof(header)); - if (header[0] == 0x010b || header[0] == 0x014c) - { - is_stubbed = 1; - } - else if (header[0] == 0x5a4d) - { - int header_offset = (long)header[2]*512L; - if (header[1]) - header_offset += (long)header[1] - 512L; - lseek(pf, header_offset - 4, 0); - read(pf, &stub_offset, 4); - header[0] = 0; - read(pf, header, sizeof(header)); - if (header[0] == 0x010b) - is_stubbed = 1; - if (header[0] == 0x014c) - is_stubbed = 1; - lseek(pf, stub_offset, 0); - read(pf, &si, sizeof(si)); - if (memcmp(STUB_INFO_MAGIC, si.magic, 16) == 0) - found_si = 1; - } - if (!is_stubbed) - { - close(pf); - return direct_exec(program, argv, envp); - } - - if (found_si) - go32 = si.go32; - else - go32 = "go32.exe"; - has_dot = 0; - for (i=0; go32[i]; i++) - if (go32[i] == '.') - has_dot = 1; - if (!has_dot) - strcpy(go32+i, ".exe"); - for (i=0; envp[i]; i++) - if (strncmp(envp[i], "PATH=", 5) == 0) - pp = envp[i]+5; - strcpy(rpath, go32); - while (access(rpath, 0)) - { - char *ptr; - rp = rpath; - for (pe=pp; *pe && *pe != ';'; pe++) - *rp++ = *pe; - pp = pe+1; - if (rp > rpath && rp[-1] != '/' && rp[-1] != '\\' && rp[-1] != ':') - *rp++ = '/'; - for (ptr = go32; *ptr; ptr++) - *rp++ = *ptr; - *rp = 0; - if (access(rpath, 0) == 0) - break; - if (*pe == 0) - return direct_exec(program, argv, envp); /* give up and just run it */ - } - - if (found_si) - { - lseek(pf, stub_offset, 0); - sip = (char *)malloc(si.struct_length); - read(pf, sip, si.struct_length); - } - close(pf); - - argv[0] = program; /* since that's where we really found it */ - - tbuf = _go32_info_block.linear_address_of_transfer_buffer; - - if (found_si) - { - si_la = talloc(si.struct_length); - dosmemput(sip, si.struct_length, si_la); - free(sip); - } - - for (argc=0; argv[argc]; argc++); - rm_la = talloc(2*(argc+1)); - rm_seg = (_go32_info_block.linear_address_of_transfer_buffer >> 4) & 0xffff; - rm_argv = (short *)malloc((argc+1) * sizeof(short)); - for (i=0; i /* For errno */ -#include /* For strlen() */ - -int -_get_default_drive(void) -{ - union REGS regs; - - regs.h.ah = 0x19; /* DOS Get Default Drive call */ - regs.h.al = 0; - (void) intdos(®s, ®s); - return regs.h.al; -} - -static char * -get_current_directory(char *out, int drive_number) -{ - union REGS regs; - - regs.h.ah = 0x47; - regs.h.dl = drive_number + 1; - regs.x.si = (unsigned long) (out + 1); - (void) intdos(®s, ®s); - if (regs.x.cflag != 0) - { - errno = regs.x.ax; - return out; - } - else - { - /* Root path, don't insert "/", it'll be added later */ - if (*(out + 1) != '\0') - *out = '/'; - else - *out = '\0'; - return out + strlen(out); - } -} - -static int -is_slash(int c) -{ - return c == '/' || c == '\\'; -} - -static int -is_term(int c) -{ - return c == '/' || c == '\\' || c == '\0'; -} - -/* Takes as input an arbitrary path. Fixes up the path by: - 1. Removing consecutive slashes - 2. Removing trailing slashes - 3. Making the path absolute if it wasn't already - 4. Removing "." in the path - 5. Removing ".." entries in the path (and the directory above them) - 6. Adding a drive specification if one wasn't there - 7. Converting all slashes to '/' - */ -void -_fixpath(const char *in, char *out) -{ - int drive_number; - const char *ip = in; - char *op = out; - - /* Add drive specification to output string */ - if (*(ip + 1) == ':' && ((*ip >= 'a' && *ip <= 'z') || - (*ip >= 'A' && *ip <= 'Z'))) - { - if (*ip >= 'a' && *ip <= 'z') - drive_number = *ip - 'a'; - else - drive_number = *ip - 'A'; - *op++ = *ip++; - *op++ = *ip++; - } - else - { - drive_number = _get_default_drive(); - *op++ = drive_number + 'a'; - *op++ = ':'; - } - - /* Convert relative path to absolute */ - if (!is_slash(*ip)) - op = get_current_directory(op, drive_number); - - /* Step through the input path */ - while (*ip) - { - /* Skip input slashes */ - if (is_slash(*ip)) - { - ip++; - continue; - } - - /* Skip "." and output nothing */ - if (*ip == '.' && is_term(*(ip + 1))) - { - ip++; - continue; - } - - /* Skip ".." and remove previous output directory */ - if (*ip == '.' && *(ip + 1) == '.' && is_term(*(ip + 2))) - { - ip += 2; - /* Don't back up over drive spec */ - if (op > out + 2) - /* This requires "/" to follow drive spec */ - while (!is_slash(*--op)); - continue; - } - - /* Copy path component from in to out */ - *op++ = '/'; - while (!is_term(*ip)) *op++ = *ip++; - } - - /* If root directory, insert trailing slash */ - if (op == out + 2) *op++ = '/'; - - /* Null terminate the output */ - *op = '\0'; -} - -#ifdef TEST -#include - -int -main(int argc, char **argv) -{ - char path[90]; - int i; - - for (i = 1; i < argc; i++) - { - _fixpath(argv[i], path); - (void) printf("'%s' -> '%s'\n", argv[i], path); - } - - return 0; -} -#endif diff --git a/newlib/libc/sys/go32/fstat.s b/newlib/libc/sys/go32/fstat.s deleted file mode 100644 index 71399767e..000000000 --- a/newlib/libc/sys/go32/fstat.s +++ /dev/null @@ -1,19 +0,0 @@ -# /* This is file FSTAT.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _fstat -_fstat: - movb $3,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/fsync.s b/newlib/libc/sys/go32/fsync.s deleted file mode 100644 index 1aca10562..000000000 --- a/newlib/libc/sys/go32/fsync.s +++ /dev/null @@ -1,27 +0,0 @@ -# /* This is file FSYNC.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _fsync -_fsync: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movb $0x68,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - ret diff --git a/newlib/libc/sys/go32/ftruncat.c b/newlib/libc/sys/go32/ftruncat.c deleted file mode 100644 index 4deb1b9ba..000000000 --- a/newlib/libc/sys/go32/ftruncat.c +++ /dev/null @@ -1,25 +0,0 @@ -/* This is file FTRUNCAT.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#include - -/* -** Note: this only works right if you close the file right after truncating! -*/ - -ftruncate(int fd, unsigned long where) -{ - lseek(fd, where, 0); - write(fd, 0, 0); -} diff --git a/newlib/libc/sys/go32/gerrno.s b/newlib/libc/sys/go32/gerrno.s deleted file mode 100644 index fa3f30774..000000000 --- a/newlib/libc/sys/go32/gerrno.s +++ /dev/null @@ -1,33 +0,0 @@ -# /* This is file GERRNO.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - -# Modified to use newlib's reent mechanism, 960414, dje. -# Reentrancy isn't really supported of course, the purpose is to -# record `errno' in the normal place. - - .text - .globl syscall_error -syscall_error: - pushl %eax - call ___errno - popl %edx - mov %edx,(%eax) - mov $-1,%eax - ret - - .globl syscall_check -syscall_check: - jb syscall_error - mov $0,%eax - ret diff --git a/newlib/libc/sys/go32/getcwd.c b/newlib/libc/sys/go32/getcwd.c deleted file mode 100644 index 9dda864bb..000000000 --- a/newlib/libc/sys/go32/getcwd.c +++ /dev/null @@ -1,37 +0,0 @@ -/* This is file GETCWD.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#include - -char *getcwd(char *buf, int n) -{ - char tmp[90]; - getwd(tmp); - if (strlen(tmp)+1 > n) - { - errno = ERANGE; - return 0; - } - if (buf == 0) - { - buf = malloc(n); - if (buf == 0) - { - errno = ENOMEM; - return 0; - } - } - strcpy(buf, tmp); - return buf; -} diff --git a/newlib/libc/sys/go32/getdate.c b/newlib/libc/sys/go32/getdate.c deleted file mode 100644 index 7593b0af0..000000000 --- a/newlib/libc/sys/go32/getdate.c +++ /dev/null @@ -1,11 +0,0 @@ -#include "dos.h" - -void getdate( struct date *dateblk) -{ - union REGS regs; - regs.h.ah = 0x2a; - intdos( ®s, ®s); - dateblk-> da_year = regs.x.cx; - dateblk-> da_mon = regs.h.dh; - dateblk-> da_day = regs.h.dl; -} diff --git a/newlib/libc/sys/go32/getdtabl.c b/newlib/libc/sys/go32/getdtabl.c deleted file mode 100644 index cfe6b107c..000000000 --- a/newlib/libc/sys/go32/getdtabl.c +++ /dev/null @@ -1,18 +0,0 @@ -/* This is file GETDTABL.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -getdtablesize() -{ - return 50; /* really depends on FILES= in config.sys */ -} diff --git a/newlib/libc/sys/go32/getgid.c b/newlib/libc/sys/go32/getgid.c deleted file mode 100644 index a0cd7b988..000000000 --- a/newlib/libc/sys/go32/getgid.c +++ /dev/null @@ -1,9 +0,0 @@ - -#include - -getgid() -{ - - return 20; - -} diff --git a/newlib/libc/sys/go32/getkey.s b/newlib/libc/sys/go32/getkey.s deleted file mode 100644 index d70a27590..000000000 --- a/newlib/libc/sys/go32/getkey.s +++ /dev/null @@ -1,59 +0,0 @@ -/* This is file GETKEY.S */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -Modified by J. Alan Eldridge, Liberty Brokerage, 77 Water St, NYC 10005 - -Changed handling of characters starting with 0xE0: - Now calls interrupt 16, function 10 - if leading byte was 0x00, ah = 0x01 - if leading byte was 0xE0, ah = 0x02 - - The main function is now called getxkey()... - getkey is provided to maintain compatibility with - already written software -*/ - - .globl _getxkey -_getxkey: - pushl %ebx - pushl %esi - pushl %edi - movb $0x10,%ah - int $0x16 - mov $1,%bl - cmpb $0,%al - je L0 - cmpb $0xE0,%al - jne L1 - inc %bl -L0: - movb %ah,%al - movb %bl,%ah - jmp L2 -L1: - movb $0,%ah -L2: - andl $0xffff,%eax - popl %edi - popl %esi - popl %ebx - ret - - .globl _getkey -_getkey: - call _getxkey - testb $0x02,%ah - jz L3 - movb $0x01,%ah -L3: - ret diff --git a/newlib/libc/sys/go32/getpages.c b/newlib/libc/sys/go32/getpages.c deleted file mode 100644 index 2e1a07349..000000000 --- a/newlib/libc/sys/go32/getpages.c +++ /dev/null @@ -1,18 +0,0 @@ -/* This is file GETPAGES.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -getpagesize() -{ - return 4096; -} diff --git a/newlib/libc/sys/go32/getpid.c b/newlib/libc/sys/go32/getpid.c deleted file mode 100644 index 84b7e8163..000000000 --- a/newlib/libc/sys/go32/getpid.c +++ /dev/null @@ -1,18 +0,0 @@ -/* This is file GETPID.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -getpid() -{ - return 42; /* Why not? */ -} diff --git a/newlib/libc/sys/go32/getrusag.c b/newlib/libc/sys/go32/getrusag.c deleted file mode 100644 index 77370ed3a..000000000 --- a/newlib/libc/sys/go32/getrusag.c +++ /dev/null @@ -1,35 +0,0 @@ -/* This is file GETRUSAG.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#include -#include - -static struct timeval old_time = {0,0}; - -int getrusage(int who, struct rusage *rusage) -{ - struct timeval now; - bzero(rusage, sizeof(struct rusage)); - if (old_time.tv_sec == 0) - gettimeofday(&old_time, 0); - gettimeofday(&now, 0); - rusage->ru_utime.tv_usec = now.tv_usec - old_time.tv_usec; - rusage->ru_utime.tv_sec = now.tv_sec - old_time.tv_sec; - if (rusage->ru_utime.tv_usec < 0) - { - rusage->ru_utime.tv_usec += 1000000; - rusage->ru_utime.tv_sec -= 1; - } - return 0; -} diff --git a/newlib/libc/sys/go32/gettime.c b/newlib/libc/sys/go32/gettime.c deleted file mode 100644 index ba8116119..000000000 --- a/newlib/libc/sys/go32/gettime.c +++ /dev/null @@ -1,12 +0,0 @@ -#include "dos.h" - -void gettime( struct time *tp) -{ - union REGS regs; - regs.h.ah = 0x2c; - intdos( ®s, ®s); - tp->ti_hour = regs.h.ch; - tp->ti_min = regs.h.cl; - tp->ti_sec = regs.h.dh; - tp->ti_hund = regs.h.dl; -} diff --git a/newlib/libc/sys/go32/gettimeo.c b/newlib/libc/sys/go32/gettimeo.c deleted file mode 100644 index 7f4f7c874..000000000 --- a/newlib/libc/sys/go32/gettimeo.c +++ /dev/null @@ -1,61 +0,0 @@ -/* - (c) Copyright 1992 Eric Backus - - This software may be used freely so long as this copyright notice is - left intact. There is no warrantee on this software. -*/ - -#include -#include -#include "dos.h" - -static int daylight, gmtoffset; - -int -gettimeofday (struct timeval *tp, struct timezone *tzp) -{ - - if (tp) - { - struct time t; - struct date d; - struct tm tmrec; - - gettime (&t); - getdate (&d); - tmrec.tm_year = d.da_year - 1900; - tmrec.tm_mon = d.da_mon - 1; - tmrec.tm_mday = d.da_day; - tmrec.tm_hour = t.ti_hour; - tmrec.tm_min = t.ti_min; - tmrec.tm_sec = t.ti_sec; -/* tmrec.tm_gmtoff = gmtoffset;*/ - tmrec.tm_isdst = daylight; - tp->tv_sec = mktime (&tmrec); - tp->tv_usec = t.ti_hund * (1000000 / 100); - } - if (tzp) - { - tzp->tz_minuteswest = gmtoffset; - tzp->tz_dsttime = daylight; - } - - return 0; -} - -void -__gettimeofday_init () -{ - time_t ltm, gtm; - struct tm *lstm; - - daylight = 0; - gmtoffset = 0; - ltm = gtm = time (NULL); - ltm = mktime (lstm = localtime (<m)); - gtm = mktime (gmtime (>m)); - daylight = lstm->tm_isdst; - gmtoffset = (int)(gtm - ltm) / 60; - -} - diff --git a/newlib/libc/sys/go32/gettimeo.s b/newlib/libc/sys/go32/gettimeo.s deleted file mode 100644 index e1c9b1806..000000000 --- a/newlib/libc/sys/go32/gettimeo.s +++ /dev/null @@ -1,19 +0,0 @@ -# /* This is file GETTIMEO.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _gettimeofday -_gettimeofday: - movb $4,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/getuid.c b/newlib/libc/sys/go32/getuid.c deleted file mode 100644 index 4ce9a46c1..000000000 --- a/newlib/libc/sys/go32/getuid.c +++ /dev/null @@ -1,9 +0,0 @@ - -#include - -getuid() -{ - - return 10; - -} diff --git a/newlib/libc/sys/go32/getwd.s b/newlib/libc/sys/go32/getwd.s deleted file mode 100644 index 39876288f..000000000 --- a/newlib/libc/sys/go32/getwd.s +++ /dev/null @@ -1,31 +0,0 @@ -# /* This is file GETWD.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _getwd -_getwd: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%esi - movb $47,(%esi) - incl %esi - movb $0,%dl - movb $0x47,%ah - int $0x21 - movl 16(%esp),%eax - popl %edi - popl %esi - popl %ebx - ret diff --git a/newlib/libc/sys/go32/go32.h b/newlib/libc/sys/go32/go32.h deleted file mode 100644 index 0e4327474..000000000 --- a/newlib/libc/sys/go32/go32.h +++ /dev/null @@ -1,70 +0,0 @@ -/* This is file go32.h */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _GO32_H_ -#define _GO32_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* This must match go32/proginfo.h */ - -typedef struct { - u_long size_of_this_structure_in_bytes; - u_long linear_address_of_primary_screen; - u_long linear_address_of_secondary_screen; - u_long linear_address_of_transfer_buffer; - u_long size_of_transfer_buffer; /* >= 4k */ - u_long pid; - u_char master_interrupt_controller_base; - u_char slave_interrupt_controller_base; - u_short selector_for_linear_memory; - u_long linear_address_of_stub_info_structure; - u_long linear_address_of_original_psp; - u_short run_mode; - u_short run_mode_info; -} Go32_Info_Block; - -extern Go32_Info_Block _go32_info_block; - -#define _GO32_RUN_MODE_UNDEF 0 -#define _GO32_RUN_MODE_RAW 1 -#define _GO32_RUN_MODE_XMS 2 -#define _GO32_RUN_MODE_VCPI 3 -#define _GO32_RUN_MODE_DPMI 4 - -void dosmemget(int offset, int length, void *buffer); -void dosmemput(const void *buffer, int length, int offset); -void movedata(unsigned source_selector, unsigned source_offset, - unsigned dest_selector, unsigned dest_offset, - size_t length); - -/* returns number of times hit since last call. (zero first time) */ -u_long _go32_was_ctrl_break_hit(); -void _go32_want_ctrl_break(int yes); /* auto-yes if call above function */ - -u_short _go32_my_cs(); -u_short _go32_my_ds(); -u_short _go32_my_ss(); -u_short _go32_conventional_mem_selector(); - -#ifdef __cplusplus -} -#endif - -#endif - diff --git a/newlib/libc/sys/go32/go32func.c b/newlib/libc/sys/go32/go32func.c deleted file mode 100644 index ec3853ba1..000000000 --- a/newlib/libc/sys/go32/go32func.c +++ /dev/null @@ -1,69 +0,0 @@ -#include -#include "go32.h" -#include "dpmi.h" -#include "dos.h" - -u_short _go32_my_cs() -{ - asm("movw %cs,%ax"); -} - -u_short _go32_my_ds() -{ - asm("movw %ds,%ax"); -} - -u_short _go32_my_ss() -{ - asm("movw %ss,%ax"); -} - -u_short _go32_conventional_mem_selector() -{ - return _go32_info_block.selector_for_linear_memory; -} - -static _go32_dpmi_registers regs; -static volatile u_long ctrl_break_count = 0; -static int ctrl_break_hooked = 0; -static _go32_dpmi_seginfo old_vector; -static _go32_dpmi_seginfo new_vector; - -static ctrl_break_isr(_go32_dpmi_registers *regs) -{ - ctrl_break_count ++; -} - -u_long _go32_was_ctrl_break_hit() -{ - u_long cnt; - _go32_want_ctrl_break(1); - cnt = ctrl_break_count; - ctrl_break_count = 0; - return cnt; -} - -void _go32_want_ctrl_break(int yes) -{ - if (yes) - { - if (ctrl_break_hooked) - return; - _go32_dpmi_get_real_mode_interrupt_vector(0x1b, &old_vector); - - new_vector.pm_offset = (int)ctrl_break_isr; - _go32_dpmi_allocate_real_mode_callback_iret(&new_vector, ®s); - _go32_dpmi_set_real_mode_interrupt_vector(0x1b, &new_vector); - ctrl_break_count = 0; - ctrl_break_hooked = 1; - } - else - { - if (!ctrl_break_hooked) - return; - _go32_dpmi_set_real_mode_interrupt_vector(0x1b, &old_vector); - _go32_dpmi_free_real_mode_callback(&new_vector); - ctrl_break_count = 0; - ctrl_break_hooked = 0; - } -} diff --git a/newlib/libc/sys/go32/infoblk.c b/newlib/libc/sys/go32/infoblk.c deleted file mode 100644 index 0a54b6b18..000000000 --- a/newlib/libc/sys/go32/infoblk.c +++ /dev/null @@ -1,4 +0,0 @@ -#include "go32.h" - -Go32_Info_Block _go32_info_block = { sizeof(Go32_Info_Block) }; - diff --git a/newlib/libc/sys/go32/inportb.s b/newlib/libc/sys/go32/inportb.s deleted file mode 100644 index 3ff71f192..000000000 --- a/newlib/libc/sys/go32/inportb.s +++ /dev/null @@ -1,21 +0,0 @@ -#/* This is file INPORTB.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _inportb -_inportb: - movl 4(%esp),%edx -# inb %dx,%al - .byte 0xec - movzb %al,%eax - ret diff --git a/newlib/libc/sys/go32/inportl.s b/newlib/libc/sys/go32/inportl.s deleted file mode 100644 index 5f3c19574..000000000 --- a/newlib/libc/sys/go32/inportl.s +++ /dev/null @@ -1,19 +0,0 @@ -#/* This is file INPORTL.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _inportl -_inportl: - movl 4(%esp),%edx - inl %dx,%eax - ret diff --git a/newlib/libc/sys/go32/inportsb.s b/newlib/libc/sys/go32/inportsb.s deleted file mode 100644 index feedd4077..000000000 --- a/newlib/libc/sys/go32/inportsb.s +++ /dev/null @@ -1,25 +0,0 @@ -#/* This is file INPORTSB.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _inportsb -_inportsb: - pushl %edi - movl 8(%esp),%edx - movl 12(%esp),%edi - movl 16(%esp),%ecx - rep - insb - popl %edi - ret - diff --git a/newlib/libc/sys/go32/inportsl.s b/newlib/libc/sys/go32/inportsl.s deleted file mode 100644 index 9865ed9e9..000000000 --- a/newlib/libc/sys/go32/inportsl.s +++ /dev/null @@ -1,24 +0,0 @@ -#/* This is file INPORTSL.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _inportsl -_inportsl: - pushl %edi - movl 8(%esp),%edx - movl 12(%esp),%edi - movl 16(%esp),%ecx - rep - insl - popl %edi - ret diff --git a/newlib/libc/sys/go32/inportsw.s b/newlib/libc/sys/go32/inportsw.s deleted file mode 100644 index 7fb2b4378..000000000 --- a/newlib/libc/sys/go32/inportsw.s +++ /dev/null @@ -1,24 +0,0 @@ -#/* This is file INPORTSW.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _inportsw -_inportsw: - pushl %edi - movl 8(%esp),%edx - movl 12(%esp),%edi - movl 16(%esp),%ecx - rep - insw - popl %edi - ret diff --git a/newlib/libc/sys/go32/inportw.s b/newlib/libc/sys/go32/inportw.s deleted file mode 100644 index 525f58a54..000000000 --- a/newlib/libc/sys/go32/inportw.s +++ /dev/null @@ -1,21 +0,0 @@ -#/* This is file INPORTW.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _inportw -_inportw: - movl 4(%esp),%edx -# inw (%dx),%ax - .byte 0x66, 0xed - movzwl %ax,%eax - ret diff --git a/newlib/libc/sys/go32/int86x.s b/newlib/libc/sys/go32/int86x.s deleted file mode 100644 index 7b49bcd12..000000000 --- a/newlib/libc/sys/go32/int86x.s +++ /dev/null @@ -1,103 +0,0 @@ - .data -ds: - .word 0 -es: - .word 0 -fs: - .word 0 -gs: - .word 0 - - .globl int86 -int86: - .byte 0x2e - push ds - pop %ds - .byte 0x2e - push es - pop %es - .byte 0x2e - push fs - pop %fs - .byte 0x2e - push gs - pop %gs - - .byte 0xcd -int86_vec: - .byte 0x03 - ret - - .text - .globl _int86x -_int86x: - movl 16(%esp), %eax - - movw 2(%eax), %cx - movw %cx, ds - movw 4(%eax), %cx - movw %cx, es - movw 6(%eax), %cx - movw %cx, fs - movw 8(%eax), %cx - movw %cx, gs - - jmp int86_common - - .globl _int86 -_int86: - movw %ds, %ax - movw %ax, ds - movw %ax, es - movw %ax, fs - movw %ax, gs - jmp int86_common - -int86_common: - pushl %ebp - movl %esp,%ebp - pushl %ebx - pushl %esi - pushl %edi - pushf - - movl 8(%ebp),%eax - movb %al,int86_vec - - movl 12(%ebp),%eax - movl 4(%eax),%ebx - movl 8(%eax),%ecx - movl 12(%eax),%edx - movl 16(%eax),%esi - movl 20(%eax),%edi - movl (%eax),%eax - - push %ds - push %es - call int86 - pop %es - pop %ds - - pushf - pushl %eax - movl %esp,%ebp - addl $24,%ebp - movl 16(%ebp),%eax - popl (%eax) - movl %ebx,4(%eax) - movl %ecx,8(%eax) - movl %edx,12(%eax) - movl %esi,16(%eax) - movl %edi,20(%eax) - popl %ebx /* flags */ - movl %ebx,28(%eax) - andl $1,%ebx - movl %ebx,24(%eax) - movl (%eax),%eax - - popf - popl %edi - popl %esi - popl %ebx - popl %ebp - ret diff --git a/newlib/libc/sys/go32/intdos.c b/newlib/libc/sys/go32/intdos.c deleted file mode 100644 index a13f38ec8..000000000 --- a/newlib/libc/sys/go32/intdos.c +++ /dev/null @@ -1,7 +0,0 @@ -#include - -int -intdos(union REGS *in, union REGS *out) -{ - return int86(0x21, in, out); -} diff --git a/newlib/libc/sys/go32/intdosx.c b/newlib/libc/sys/go32/intdosx.c deleted file mode 100644 index ec3e9fbc2..000000000 --- a/newlib/libc/sys/go32/intdosx.c +++ /dev/null @@ -1,6 +0,0 @@ -#include - -intdosx(union REGS *in, union REGS *out, struct SREGS *seg) -{ - return int86x(0x21, in, out, seg); -} diff --git a/newlib/libc/sys/go32/isatty.s b/newlib/libc/sys/go32/isatty.s deleted file mode 100644 index 40e55c974..000000000 --- a/newlib/libc/sys/go32/isatty.s +++ /dev/null @@ -1,33 +0,0 @@ -# /* This is file ISATTY.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _isatty -_isatty: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movw $0x4400,%ax - int $0x21 - popl %edi - popl %esi - popl %ebx - movl $0,%eax - jb tf - testl $0x80,%edx - jz tf - movl $1,%eax -tf: - ret diff --git a/newlib/libc/sys/go32/kbhit.s b/newlib/libc/sys/go32/kbhit.s deleted file mode 100644 index 6008cf238..000000000 --- a/newlib/libc/sys/go32/kbhit.s +++ /dev/null @@ -1,51 +0,0 @@ -/* This is file KBHIT.S */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - - .globl _kbhit -_kbhit: - pushl %ebp - movl %esp,%ebp - pushl %ebx - pushl %esi - pushl %edi - -try_again: - movl $0x41a,%eax - call dosmemsetup - movzwl %gs:(%eax),%ebx - movzwl %gs:2(%eax),%ecx - cmp %ebx,%ecx - je key_not_hit - - movb $0x11,%ah - int $0x16 - jz key_not_hit - cmp $0,%eax - jne key_hit - movb $0x10,%ah - int $0x16 - jmp try_again - -key_not_hit: - movl $0,%eax - jmp L1 - -key_hit: - movl $1,%eax -L1: - popl %edi - popl %esi - popl %ebx - leave - ret diff --git a/newlib/libc/sys/go32/kill.c b/newlib/libc/sys/go32/kill.c deleted file mode 100644 index 3335f1a56..000000000 --- a/newlib/libc/sys/go32/kill.c +++ /dev/null @@ -1,6 +0,0 @@ -kill() -{ - - -} - diff --git a/newlib/libc/sys/go32/link.s b/newlib/libc/sys/go32/link.s deleted file mode 100644 index cd9681b85..000000000 --- a/newlib/libc/sys/go32/link.s +++ /dev/null @@ -1,28 +0,0 @@ -# /* This is file LINK.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _link -_link: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%edx - movl 20(%esp),%edi - movb $0x56,%ah - int $0x21 - pop %edi - pop %esi - pop %ebx - jmp syscall_check diff --git a/newlib/libc/sys/go32/longjmp.S b/newlib/libc/sys/go32/longjmp.S deleted file mode 100644 index 3c9dca33b..000000000 --- a/newlib/libc/sys/go32/longjmp.S +++ /dev/null @@ -1,65 +0,0 @@ -/* This is file LONGJMP.S */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -/* -** jmp_buf: -** eax ebx ecx edx esi edi ebp esp eip es fs gs ss -** 0 4 8 12 16 20 24 28 32 36 38 40 42 -*/ - - .globl _longjmp /* jmp_buf, int */ -_longjmp: - pushl %ebp - movl %esp,%ebp - - movl 8(%ebp),%edi /* get jmp_buf */ - movl 12(%ebp),%eax /* store retval in j->eax */ - testl %eax,%eax - jne 0f - incl %eax -0: - movl %eax,0(%edi) - - movl 24(%edi),%ebp - - pushfl /* get flags so will only re-enable */ - popl %ebx /* interrupts if they were previously */ - /* enabled */ - - cli - movw 42(%edi),%ax - movw %ax,%ss - movl 28(%edi),%esp - - pushl 32(%edi) /* for a ret! */ - - pushl %ebx /* save flags that contain previous */ - /* interrupt state */ - - movw 36(%edi),%ax - movw %ax,%es - movw 38(%edi),%ax - movw %ax,%fs - movw 40(%edi),%ax - movw %ax,%gs - movl 0(%edi),%eax - movl 4(%edi),%ebx - movl 8(%edi),%ecx - movl 12(%edi),%edx - movl 16(%edi),%esi - movl 20(%edi),%edi - - popfl /* restore previous interrupt state */ - - ret /* actually jump to new eip */ diff --git a/newlib/libc/sys/go32/lseek.s b/newlib/libc/sys/go32/lseek.s deleted file mode 100644 index cd8f4eda7..000000000 --- a/newlib/libc/sys/go32/lseek.s +++ /dev/null @@ -1,36 +0,0 @@ -# /* This is file LSEEK.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _lseek -_lseek: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movl 20(%esp),%ecx - shrl $16,%ecx - movl 20(%esp),%edx - andl $0xffff,%edx - movb 24(%esp),%al - movb $0x42,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - jb syscall_error - shll $16,%edx - andl $0xffff,%eax - orl %edx,%eax - ret diff --git a/newlib/libc/sys/go32/lstat.s b/newlib/libc/sys/go32/lstat.s deleted file mode 100644 index caf650da8..000000000 --- a/newlib/libc/sys/go32/lstat.s +++ /dev/null @@ -1,19 +0,0 @@ -# /* This is file LSTAT.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _lstat -_lstat: - movb $6,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/mkdir.s b/newlib/libc/sys/go32/mkdir.s deleted file mode 100644 index 2a7caba61..000000000 --- a/newlib/libc/sys/go32/mkdir.s +++ /dev/null @@ -1,27 +0,0 @@ -# /* This is file MKDIR.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _mkdir -_mkdir: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%edx - movb $0x39,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - jmp syscall_check diff --git a/newlib/libc/sys/go32/open.s b/newlib/libc/sys/go32/open.s deleted file mode 100644 index 6dae45e31..000000000 --- a/newlib/libc/sys/go32/open.s +++ /dev/null @@ -1,31 +0,0 @@ -# /* This is file OPEN.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .data - .globl __fmode -__fmode: - .long 0x4000 - - .text - .globl _open -_open: - testl $0xc000,8(%esp) - jnz L0 - andl $0xc000,__fmode - movl __fmode,%eax - orl %eax,8(%esp) -L0: - movb $2,%al - jmp turbo_assist - diff --git a/newlib/libc/sys/go32/outportb.s b/newlib/libc/sys/go32/outportb.s deleted file mode 100644 index 2bcabaa0a..000000000 --- a/newlib/libc/sys/go32/outportb.s +++ /dev/null @@ -1,21 +0,0 @@ -#/* This is file OUTPORTB.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _outportb -_outportb: - movl 4(%esp),%edx - movl 8(%esp),%eax -# outb %al,%dx - .byte 0xee - ret diff --git a/newlib/libc/sys/go32/outportl.s b/newlib/libc/sys/go32/outportl.s deleted file mode 100644 index 5efb3efa2..000000000 --- a/newlib/libc/sys/go32/outportl.s +++ /dev/null @@ -1,20 +0,0 @@ -#/* This is file OUTPORTL.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _outportl -_outportl: - movl 4(%esp),%edx - movl 8(%esp),%eax - outl %eax,%dx - ret diff --git a/newlib/libc/sys/go32/outportw.s b/newlib/libc/sys/go32/outportw.s deleted file mode 100644 index ceac40c20..000000000 --- a/newlib/libc/sys/go32/outportw.s +++ /dev/null @@ -1,22 +0,0 @@ -#/* This is file OUTPORTW.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _outportw -_outportw: - movl 4(%esp),%edx - movl 8(%esp),%eax -# outw %ax,%dx - .byte 0x66, 0xef - ret - diff --git a/newlib/libc/sys/go32/outprtsb.s b/newlib/libc/sys/go32/outprtsb.s deleted file mode 100644 index 6cd80a22e..000000000 --- a/newlib/libc/sys/go32/outprtsb.s +++ /dev/null @@ -1,25 +0,0 @@ - -#/* This is file OUTPRTSB.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _outportsb -_outportsb: - pushl %esi - movl 8(%esp),%edx - movl 12(%esp),%esi - movl 16(%esp),%ecx - rep - outsb - popl %esi - ret diff --git a/newlib/libc/sys/go32/outprtsl.s b/newlib/libc/sys/go32/outprtsl.s deleted file mode 100644 index 707adc815..000000000 --- a/newlib/libc/sys/go32/outprtsl.s +++ /dev/null @@ -1,25 +0,0 @@ -#/* This is file OUTPRTSL.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ - - .globl _outportsl -_outportsl: - pushl %esi - movl 8(%esp),%edx - movl 12(%esp),%esi - movl 16(%esp),%ecx - rep - outsl - popl %esi - ret - diff --git a/newlib/libc/sys/go32/outprtsw.s b/newlib/libc/sys/go32/outprtsw.s deleted file mode 100644 index 93a84f660..000000000 --- a/newlib/libc/sys/go32/outprtsw.s +++ /dev/null @@ -1,25 +0,0 @@ -#/* This is file OUTPRTSW.S */ -#/* -#** Copyright (C) 1991 DJ Delorie -#** -#** This file is distributed under the terms listed in the document -#** "copying.dj". -#** A copy of "copying.dj" should accompany this file; if not, a copy -#** should be available from where this file was obtained. This file -#** may not be distributed without a verbatim copy of "copying.dj". -#** -#** This file is distributed WITHOUT ANY WARRANTY; without even the implied -#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -#*/ -# - .globl _outportsw -_outportsw: - pushl %esi - movl 8(%esp),%edx - movl 12(%esp),%esi - movl 16(%esp),%ecx - rep - outsw - popl %esi - ret - diff --git a/newlib/libc/sys/go32/pc.h b/newlib/libc/sys/go32/pc.h deleted file mode 100644 index 692901d0f..000000000 --- a/newlib/libc/sys/go32/pc.h +++ /dev/null @@ -1,71 +0,0 @@ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -** -** Modified by J. Alan Eldridge, Liberty Brokerage, 77 Water St, NYC 10005 -** -** added getxkey(), which can read extended keystrokes that start with -** 0xE0, as well as those which start with 0x00 -** -** added global char ScreenAttrib, the attribute used by ScreenClear(): -** it defaults to 0x07 so as not to break existing code. -** -** added ScreenMode(), to return the current video mode -*/ - -#ifndef _PC_H_ -#define _PC_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -unsigned char inportb(unsigned short port); -unsigned short inportw(unsigned short port); -unsigned long inportl(unsigned short port); -unsigned char inportsb(unsigned short port, unsigned char *buf, unsigned len); -unsigned short inportsw(unsigned short port, unsigned short *buf, unsigned len); -unsigned long inportsl(unsigned short port, unsigned long *buf, unsigned len); -void outportb(unsigned short port, unsigned char data); -void outportw(unsigned short port, unsigned short data); -void outportl(unsigned short port, unsigned long data); -void outportsb(unsigned short port, unsigned char *buf, unsigned len); -void outportsw(unsigned short port, unsigned short *buf, unsigned len); -void outportsl(unsigned short port, unsigned long *buf, unsigned len); - -int kbhit(void); -int getkey(void); /* ALT's have 0x100 set */ -int getxkey(void); /* ALT's have 0x100 set, 0xe0 sets 0x200 */ - -void sound(int frequency); -#define nosound() sound(0) - -extern unsigned char ScreenAttrib; -extern short *ScreenPrimary; -extern short *ScreenSecondary; - -/* For the primary screen: */ -int ScreenMode(void); -int ScreenRows(void); -int ScreenCols(void); -void ScreenPutChar(int ch, int attr, int x, int y); -void ScreenSetCursor(int row, int col); -void ScreenGetCursor(int *row, int *col); -void ScreenClear(void); -void ScreenUpdate(void *virtual_screen); -void ScreenUpdateLine(void *virtual_screen_line, int row); -void ScreenRetrieve(void *virtual_screen); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/newlib/libc/sys/go32/read.s b/newlib/libc/sys/go32/read.s deleted file mode 100644 index 2e271b8a0..000000000 --- a/newlib/libc/sys/go32/read.s +++ /dev/null @@ -1,30 +0,0 @@ -# /* This is file READ.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _read -_read: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movl 20(%esp),%edx - movl 24(%esp),%ecx - movb $0x3f,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - jb syscall_error - ret diff --git a/newlib/libc/sys/go32/readv.c b/newlib/libc/sys/go32/readv.c deleted file mode 100644 index e51744b2d..000000000 --- a/newlib/libc/sys/go32/readv.c +++ /dev/null @@ -1,31 +0,0 @@ -/* This is file READV.C */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#include -#include - -readv(int handle, struct iovec *iov, int count) -{ - unsigned long r, t=0; - while (count) - { - r = read(handle, iov->iov_base, iov->iov_len); - if (r < 0) - return r; - t += r; - iov++; - count--; - } - return t; -} diff --git a/newlib/libc/sys/go32/rename.s b/newlib/libc/sys/go32/rename.s deleted file mode 100644 index 8a325811f..000000000 --- a/newlib/libc/sys/go32/rename.s +++ /dev/null @@ -1,31 +0,0 @@ -# /* This is file RENAME.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _rename -_rename: - pushl %ebx - pushl %esi - pushl %edi - movl 20(%esp),%edx - movb $0x41,%ah - int $0x21 # remove "to" - movl 16(%esp),%edx - movl 20(%esp),%edi - movb $0x56,%ah - int $0x21 # move "from" to "to" - popl %edi - popl %esi - popl %ebx - jmp syscall_check diff --git a/newlib/libc/sys/go32/rmdir.s b/newlib/libc/sys/go32/rmdir.s deleted file mode 100644 index 3269cc9a3..000000000 --- a/newlib/libc/sys/go32/rmdir.s +++ /dev/null @@ -1,27 +0,0 @@ -# /* This is file RMDIR.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _rmdir -_rmdir: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%edx - movb $0x3a,%ah - int $0x21 - popl %edi - popl %esi - popl %ebx - jmp syscall_check diff --git a/newlib/libc/sys/go32/sbrk.s b/newlib/libc/sys/go32/sbrk.s deleted file mode 100644 index 77332d614..000000000 --- a/newlib/libc/sys/go32/sbrk.s +++ /dev/null @@ -1,27 +0,0 @@ -# /* This is file SBRK.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _sbrk -_sbrk: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movw $0x4a01,%ax - int $0x21 - popl %edi - popl %esi - popl %ebx - ret diff --git a/newlib/libc/sys/go32/screen.S b/newlib/libc/sys/go32/screen.S deleted file mode 100644 index 0d4b1732d..000000000 --- a/newlib/libc/sys/go32/screen.S +++ /dev/null @@ -1,256 +0,0 @@ -/* This is file SCREEN.S */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -** -** Modified by J. Alan Eldridge, Liberty Brokerage, 77 Water St, NYC 10005 -** -** added global char ScreenAttrib -- this is the attribute -** used by ScreenClear(): it defaults to 0x07 so as not to -** break existing code. -** -** Modified by C. Sandmann (sandmann@clio.rice.edu) for DPMI support -** Combined SCREEN2.S and SCREEN.C into SCREEN.S -*/ - - .data - - .globl _ScreenAttrib -_ScreenAttrib: - .byte 0x07 - - .text - - .align 2 - .globl _ScreenSetCursor - /* row, col */ -_ScreenSetCursor: - pushl %ebp - movl %esp,%ebp - pushl %ebx - pushl %esi - pushl %edi - movb $0x02,%ah - movb $0,%bh - movb 8(%ebp),%dh - movb 12(%ebp),%dl - int $0x10 - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - - .align 2 - .globl _ScreenGetCursor - /* &row, &col */ -_ScreenGetCursor: - pushl %ebp - movl %esp,%ebp - pushl %ebx - pushl %esi - pushl %edi - movb $0x03,%ah - movb $0,%bh - pushl %ebp - int $0x10 - popl %ebp - movl 8(%ebp),%esi - movzbl %dh,%eax - movl %eax,(%esi) - movl 12(%ebp),%esi - movzbl %dl,%eax - movl %eax,(%esi) - popl %edi - popl %esi - popl %ebx - popl %ebp - ret - - .align 2 - .globl _ScreenClear -_ScreenClear: - pushl %edi - call _ScreenCols - movl %eax,%ecx - call _ScreenRows - /* ECX is total words to store */ - imull %eax,%ecx - movl _ScreenPrimary,%eax - call dosmemsetup - movl %eax,%edi - push %es - push %gs - pop %es - movb $0x20,%al - movb _ScreenAttrib,%ah - rep - stosw - pop %es - popl %edi - ret - - .align 2 - .globl _ScreenRows -_ScreenRows: - movl $0x484,%eax - call dosmemsetup - movzbl %gs:(%eax),%eax - incl %eax - ret - - .align 2 - .globl _ScreenCols -_ScreenCols: - movl $0x44a,%eax - call dosmemsetup - movzwl %gs:(%eax),%eax - ret - - .align 2 - .globl _ScreenMode -_ScreenMode: - movl $0x449,%eax - call dosmemsetup - movzbl %gs:(%eax),%eax - ret - - .align 2 - .globl _ScreenPutChar -_ScreenPutChar: - /* int ch, int attr, unsigned x, unsigned y */ -/* - if ( (x >= ScreenCols()) || (y >= ScreenRows())) return; - ch &= 0xff; - attr = (attr & 0xff) << 8; - *(unsigned short *)(ScreenPrimary+x+y*ScreenCols()) = ch | attr; -*/ - call _ScreenRows - cmpl %eax,16(%esp) - jae L1 - call _ScreenCols - cmpl %eax,12(%esp) - jae L1 - /* Out of range */ - movl %eax,%edx - imull 16(%esp),%edx - addl 12(%esp),%edx - /* EDX = x + y*ScreenCols */ - - movb 4(%esp),%cl - movb 8(%esp),%ch - - movl _ScreenPrimary,%eax - call dosmemsetup - movw %cx,%gs:(%eax,%edx,2) -L1: - ret - -/* A quick way to update the screen from a logical video buffer, used - primarily for DPMI full screen management */ - .align 2 - .globl _ScreenUpdate - /* (void *)screenbuf */ -_ScreenUpdate: - call _ScreenRows - movl %eax,%ecx - call _ScreenCols - imull %eax,%ecx - sarl $1,%ecx - /* Number of long words in screen */ - - movl _ScreenPrimary,%eax - call dosmemsetup - movl 4(%esp),%edx - /* screenbuf */ - - pushl %esi - pushl %edi - movl %eax,%edi - movl %edx,%esi - push %es - push %gs - pop %es - rep - movsl - /* move ECX bytes to Real area */ - pop %es - popl %edi - popl %esi - ret - -/* A quick way to update a screen line from a logical video buffer, used - primarily for DPMI full screen management */ - .align 2 - .globl _ScreenUpdateLine - /* (void *)screenline, int row */ -_ScreenUpdateLine: - call _ScreenCols - movl %eax,%ecx - sarl $1,%ecx - /* Number of long words in screen line */ - shll $1,%eax - imull 8(%esp),%eax - addl _ScreenPrimary,%eax - call dosmemsetup - movl 4(%esp),%edx - /* screenbuf */ - - pushl %esi - pushl %edi - movl %eax,%edi - movl %edx,%esi - push %es - push %gs - pop %es - rep - movsl - /* move ECX bytes to Real area */ - pop %es - popl %edi - popl %esi - ret - - -/* A quick way to update the screen from a logical video buffer, used - primarily for DPMI full screen management */ - .align 2 - .globl _ScreenRetrieve - /* (void *)screenbuf */ -_ScreenRetrieve: - call _ScreenRows - movl %eax,%ecx - call _ScreenCols - imull %eax,%ecx - sarl $1,%ecx - /* Number of long words in screen */ - - movl _ScreenPrimary,%eax - call dosmemsetup - movl 4(%esp),%edx - /* screenbuf */ - - pushl %esi - pushl %edi - movl %eax,%esi - movl %edx,%edi - push %ds - push %gs - pop %ds - rep - movsl - /* move ECX bytes to Real area */ - pop %ds - popl %edi - popl %esi - ret - - diff --git a/newlib/libc/sys/go32/setjmp.S b/newlib/libc/sys/go32/setjmp.S deleted file mode 100644 index 3e3ef6f9d..000000000 --- a/newlib/libc/sys/go32/setjmp.S +++ /dev/null @@ -1,61 +0,0 @@ -/* This is file SETJMP.S */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -/* -** jmp_buf: -** eax ebx ecx edx esi edi ebp esp eip es fs gs ss -** 0 4 8 12 16 20 24 28 32 36 38 40 42 -*/ - - .globl _setjmp /* jmp_buf */ -_setjmp: - pushl %ebp - movl %esp,%ebp - - pushl %edi - movl 8(%ebp),%edi - - movl %eax,0(%edi) - movl %ebx,4(%edi) - movl %ecx,8(%edi) - movl %edx,12(%edi) - movl %esi,16(%edi) - - movl -4(%ebp),%eax - movl %eax,20(%edi) - - movl 0(%ebp),%eax - movl %eax,24(%edi) - - movl %esp,%eax - addl $12,%eax - movl %eax,28(%edi) - - movl 4(%ebp),%eax - movl %eax,32(%edi) - - movw %es, %ax - movw %ax, 36(%edi) - movw %fs, %ax - movw %ax, 38(%edi) - movw %gs, %ax - movw %ax, 40(%edi) - movw %ss, %ax - movw %ax, 42(%edi) - - popl %edi - movl $0,%eax - leave - ret - diff --git a/newlib/libc/sys/go32/setmode.s b/newlib/libc/sys/go32/setmode.s deleted file mode 100644 index ccca815b9..000000000 --- a/newlib/libc/sys/go32/setmode.s +++ /dev/null @@ -1,19 +0,0 @@ -# /* This is file SETMODE.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _setmode -_setmode: - movb $8,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/setstack.S b/newlib/libc/sys/go32/setstack.S deleted file mode 100644 index dcd3ac0b2..000000000 --- a/newlib/libc/sys/go32/setstack.S +++ /dev/null @@ -1,70 +0,0 @@ -/* This routine potentially increases the stack size at runtime based on - the _stklen variable. Only used by DPMI code. - Copyright (c) 1993 C. Sandmann - Environment: called by crt0.s (and gcrt0.s) - EAX, EBX, EBP, EDI, ESI disposable (cleared on return) */ - - .text - .globl __setstack -__setstack: - movl %esp,%eax - andl $0xc0000000,%eax /* clear all except upper bits */ - jne ok_stack /* obviously not DPMI! */ - movw %ss,%ax - lsll %eax,%ebx /* stack segment limit */ - movl %esp,%eax /* current location */ - subl %ebx,%eax /* Free stack */ - cmpl %eax,__stklen - jb ok_stack - -/* Not enough stack. Call sbrk() to get a new area. Copy current ESP + 20 - to end of new area (3 args + our stack). Change ESP to new area. Set new - limit to start of new area using DPMI services. */ - - pushl __stklen - call _sbrk /* eax = got memory base */ - popl %ebx /* remove _stklen */ - cmpl $0xffffffff,%eax /* if eax = -1 failure */ - je badstack - addl %eax,%ebx /* ebx now is end of new stack area */ - andl $0xfffffff0,%ebx /* 16 byte alignment */ - addl $0xfff,%eax /* make stack base page aligned */ - andl $0xfffff000,%eax /* 4096 byte alignment */ - -/* Now copy old stack to new stack. We only need our part + 4 words, 3 for - the parameters to pass to main, one for our return EIP (4 extra safety) */ - movl %esp, %esi /* Source is current stack */ - subl $0x20, %ebx /* 8 longwords */ - movl %ebx, %edi /* Destination is new stack */ - movl $8,%ecx - rep - movsl - -/* New stack in place. Change ESP to point to it. Assumes new stack is - higher in memory so we don't get caught by limit. Change limit using - DPMI services. */ - - movl %ebx,%esp /* Switch to new stack */ - subl $1,%eax /* Low 12 bits all 1s */ - pushl %eax /* Easiest way to move long to words */ - popw %dx - popw %cx - movl $8,%eax /* DPMI function Set Segment Limit */ - movw %ss,%bx /* Selector */ - int $0x31 /* Do service */ - - xor %ecx,%ecx /* Clean up */ - xor %edx,%edx /* Clean up */ - -ok_stack: - ret /* What we have is already bigger */ - -badstack: - movl $0x4c01,%eax - int $0x21 - jmp badstack - - .data - .globl __stklen - .comm __stklen,4 - diff --git a/newlib/libc/sys/go32/settimeo.s b/newlib/libc/sys/go32/settimeo.s deleted file mode 100644 index 8d85eb9c0..000000000 --- a/newlib/libc/sys/go32/settimeo.s +++ /dev/null @@ -1,19 +0,0 @@ -# /* This is file SETTIMEO.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _settimeofday -_settimeofday: - movb $5,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/sleep.c b/newlib/libc/sys/go32/sleep.c deleted file mode 100644 index 7254b15ce..000000000 --- a/newlib/libc/sys/go32/sleep.c +++ /dev/null @@ -1,27 +0,0 @@ -/* This is file sleep.c */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - - -sleep(unsigned int seconds) -{ - long tnow, tthen; - time(&tnow); - tthen = tnow + seconds; - while (1) - { - time(&tnow); - if (tnow >= tthen) - return; - } -} diff --git a/newlib/libc/sys/go32/stat.c b/newlib/libc/sys/go32/stat.c deleted file mode 100644 index e64e5b80c..000000000 --- a/newlib/libc/sys/go32/stat.c +++ /dev/null @@ -1,151 +0,0 @@ -/* - (c) Copyright 1992 Eric Backus - - This software may be used freely so long as this copyright notice is - left intact. There is no warrantee on this software. -*/ - -#include -#include -#include - -#include "dos.h" -#include -#include - -extern int _stat_assist(const char *, struct stat *); -extern void _fixpath(const char *, char *); - -struct path_list -{ - struct path_list *next; - char *path; - int inode; -}; - -static int -fixinode(const char *path, struct stat *buf) -{ - static struct path_list *path_list[1256]; - /* Start the inode count at three, since root path should be two */ - static int inode_count = 3; - - struct path_list *path_ptr, *prev_ptr; - const char *p; - int hash; - - /* Skip over device and leading '/' */ - if (path[1] == ':' && path[2] == '/') path += 3; - - /* We could probably use a better hash than this */ - p = path; - hash = 0; - while (*p != '\0') hash += *p++; - hash = hash & 0xff; - - /* Have we seen this string? */ - path_ptr = path_list[hash]; - prev_ptr = path_ptr; - while (path_ptr) - { - if (strcmp(path, path_ptr->path) == 0) break; - prev_ptr = path_ptr; - path_ptr = path_ptr->next; - } - - if (path_ptr) - /* Same string, so same inode */ - buf->st_ino = path_ptr->inode; - else - { - /* New string with same hash code */ - path_ptr = malloc(sizeof *path_ptr); - if (path_ptr == NULL) - { - errno = ENOMEM; - return -1; - } - path_ptr->next = NULL; - path_ptr->path = strdup(path); - if (path_ptr->path == NULL) - { - errno = ENOMEM; - return -1; - } - path_ptr->inode = inode_count; - if (prev_ptr) - prev_ptr->next = path_ptr; - else - path_list[hash] = path_ptr; - buf->st_ino = inode_count; - inode_count++; - } - return 0; -} - -int -stat(const char *path, struct stat *buf) -{ - static int stat_called_before = 0; - char p[1090]; /* Should be p[PATH_MAX+1] */ - int status; - - /* Normalize the path */ - _fixpath(path, p); - - /* Work around strange bug with stat and time */ - if (!stat_called_before) - { - stat_called_before = 1; - (void) time((time_t *) 0); - } - - /* Check for root path */ - if (strcmp(p, "/") == 0 || strcmp(p + 1, ":/") == 0) - { - /* Handle root path as special case, stat_assist doesn't like - the root directory. */ - if (p[1] == ':') - { - if (p[0] >= 'a' && p[0] <= 'z') - buf->st_dev = p[0] - 'a'; - else - buf->st_dev = p[0] - 'A'; - } - else - buf->st_dev = -1; /* No device? */ - buf->st_ino = 2; /* Root path always inode 2 */ - buf->st_mode = S_IFDIR | S_IREAD | S_IWRITE | S_IEXEC; - buf->st_nlink = 1; - buf->st_uid = getuid(); - buf->st_gid = getgid(); - buf->st_rdev = buf->st_dev; - buf->st_size = 0; - buf->st_atime = 0; - buf->st_mtime = 0; - buf->st_ctime = 0; - buf->st_blksize = 512; /* Not always correct? */ - status = 0; - } - else - { - status = _stat_assist(p, buf); - - /* Make inode numbers unique */ - if (status == 0) status = fixinode(p, buf); - - /* The stat_assist does something weird with st_dev, but sets - st_rdev to the drive number. Fix st_dev. */ - buf->st_dev = buf->st_rdev; - - /* Make all files owned by ourself. */ - buf->st_uid = getuid(); - buf->st_gid = getgid(); - - /* Make all directories writable. They always are in DOS, but - stat_assist doesn't think so. */ - if (S_ISDIR(buf->st_mode)) buf->st_mode |= S_IWRITE; - } - - return status; -} diff --git a/newlib/libc/sys/go32/stat.s b/newlib/libc/sys/go32/stat.s deleted file mode 100644 index edea068ef..000000000 --- a/newlib/libc/sys/go32/stat.s +++ /dev/null @@ -1,19 +0,0 @@ -# /* This is file STAT.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _stat -_stat: - movb $6,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/stat_ast.s b/newlib/libc/sys/go32/stat_ast.s deleted file mode 100644 index 08dfffe1c..000000000 --- a/newlib/libc/sys/go32/stat_ast.s +++ /dev/null @@ -1,21 +0,0 @@ -/* This is file STAT_AST.S */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -** -** Modified very slightly by Eric Backus. -*/ - - .text - .globl __stat_assist -__stat_assist: - movb $6,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/sys/dir.h b/newlib/libc/sys/go32/sys/dir.h deleted file mode 100644 index 6ac830f27..000000000 --- a/newlib/libc/sys/go32/sys/dir.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef _DIR_H_ -#define _DIR_H_ - -struct ffblk { - char ff_reserved[21]; - char ff_attrib; - short ff_ftime; - short ff_fdate; - short ff_filler; - long ff_fsize; - char ff_name[16]; -}; - -#define FA_RDONLY 1 -#define FA_HIDDEN 2 -#define FA_SYSTEM 4 -#define FA_LABEL 8 -#define FA_DIREC 16 -#define FA_ARCH 32 - -#ifdef __cplusplus -extern "C" { -#endif - -int findfirst(const char *pathname, struct ffblk *ffblk, int attrib); -int findnext(struct ffblk *ffblk); - -#ifdef __cplusplus -} -#endif - -#endif - diff --git a/newlib/libc/sys/go32/sys/dirent.h b/newlib/libc/sys/go32/sys/dirent.h deleted file mode 100644 index fef5fd83f..000000000 --- a/newlib/libc/sys/go32/sys/dirent.h +++ /dev/null @@ -1,39 +0,0 @@ -/* This is file DIRENT.H */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _dirent_h_ -#define _dirent_h_ - -#include - -struct dirent { - unsigned short d_namlen; - char d_name[14]; -}; - -typedef struct { - int num_read; - char *name; - struct ffblk ff; - struct dirent de; -} DIR; - -DIR *opendir(char *name); -struct dirent *readdir(DIR *dir); -long telldir(DIR *dir); -void seekdir(DIR *dir, long loc); -void rewinddir(DIR *dir); -int closedir(DIR *dir); - -#endif diff --git a/newlib/libc/sys/go32/sys/dos.h b/newlib/libc/sys/go32/sys/dos.h deleted file mode 100644 index ff3103f93..000000000 --- a/newlib/libc/sys/go32/sys/dos.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef _DOS_H_ -#define _DOS_H_ - -union REGS { - struct { - unsigned long ax; - unsigned long bx; - unsigned long cx; - unsigned long dx; - unsigned long si; - unsigned long di; - unsigned long cflag; - unsigned long flags; - } x; - struct { - unsigned char al; - unsigned char ah; - unsigned short upper_ax; - unsigned char bl; - unsigned char bh; - unsigned short upper_bx; - unsigned char cl; - unsigned char ch; - unsigned short upper_cx; - unsigned char dl; - unsigned char dh; - unsigned short upper_dx; - } h; -}; - -struct SREGS { - unsigned short cs; - unsigned short ds; - unsigned short es; - unsigned short fs; - unsigned short gs; - unsigned short ss; -}; - -#ifdef __cplusplus -extern "C" { -#endif - -int bdos(int func, unsigned dx, unsigned al); -int bdosptr(int func, void *dx, unsigned al); -int int86(int ivec, union REGS *in, union REGS *out); -int int86x(int ivec, union REGS *in, union REGS *out, struct SREGS *seg); -int intdos(union REGS *in, union REGS *out); -int intdosx(union REGS *in, union REGS *out, struct SREGS *seg); - -#ifdef __cplusplus -} -#endif - -#endif - - diff --git a/newlib/libc/sys/go32/sys/dpmi.h b/newlib/libc/sys/go32/sys/dpmi.h deleted file mode 100644 index 56bde19b9..000000000 --- a/newlib/libc/sys/go32/sys/dpmi.h +++ /dev/null @@ -1,151 +0,0 @@ -/* This is file dpmi.h */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _DPMI_H_ -#define _DPMI_H_ - - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -typedef union { - struct { - u_long edi; - u_long esi; - u_long ebp; - u_long res; - u_long ebx; - u_long edx; - u_long ecx; - u_long eax; - } d; - struct { - u_short di, di_hi; - u_short si, si_hi; - u_short bp, bp_hi; - u_short res, res_hi; - u_short bx, bx_hi; - u_short dx, dx_hi; - u_short cx, cx_hi; - u_short ax, ax_hi; - u_short flags; - u_short es; - u_short ds; - u_short fs; - u_short gs; - u_short ip; - u_short cs; - u_short sp; - u_short ss; - } x; - struct { - u_char edi[4]; - u_char esi[4]; - u_char ebp[4]; - u_char res[4]; - u_char bl, bh, ebx_b2, ebx_b3; - u_char dl, dh, edx_b2, edx_b3; - u_char cl, ch, ecx_b2, ecx_b3; - u_char al, ah, eax_b2, eax_b3; - } h; -} _go32_dpmi_registers; - -typedef struct { - u_long size; - u_long pm_offset; - u_short pm_selector; - u_short rm_offset; - u_short rm_segment; -} _go32_dpmi_seginfo; - -typedef struct { - u_long available_memory; - u_long available_pages; - u_long available_lockable_pages; - u_long linear_space; - u_long unlocked_pages; - u_long available_physical_pages; - u_long total_physical_pages; - u_long free_linear_space; - u_long max_pages_in_paging_file; - u_long reserved[3]; -} _go32_dpmi_meminfo; - -/* returns zero if success, else dpmi error and info->size is max size */ -int _go32_dpmi_allocate_dos_memory(_go32_dpmi_seginfo *info); - /* set size to bytes/16, call, use rm_segment. Do not - change anthing but size until the memory is freed. - If error, max size is returned in size as bytes/16. */ -int _go32_dpmi_free_dos_memory(_go32_dpmi_seginfo *info); - /* set new size to bytes/16, call. If error, max size - is returned in size as bytes/16 */ -int _go32_dpmi_resize_dos_memory(_go32_dpmi_seginfo *info); - /* uses pm_selector to free memory */ - -/* These both use the rm_segment:rm_offset fields only */ -int _go32_dpmi_get_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); -int _go32_dpmi_set_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); - -/* These do NOT wrap the function in pm_offset in an iret handler. - You must provide an assembler interface yourself, or alloc one below. - You may NOT longjmp out of an interrupt handler. */ -int _go32_dpmi_get_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); - /* puts vector in pm_selector:pm_offset. */ -int _go32_dpmi_set_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); - /* sets vector from pm_offset and pm_selector */ -int _go32_dpmi_chain_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info); - /* sets up wrapper that calls function in pm_offset, chaining to old - handler when it returns */ - -/* These can be used to generate assember IRET-style wrappers for functions */ -int _go32_dpmi_allocate_iret_wrapper(_go32_dpmi_seginfo *info); - /* Put function ptr in pm_offset, call, returns wrapper entry in pm_offset. */ -int _go32_dpmi_free_iret_wrapper(_go32_dpmi_seginfo *info); - /* assumes pm_offset points to wrapper, frees it */ - -/* simulate real mode calls. CS:IP from regs for non-interrupt */ -int _go32_dpmi_simulate_int(int vector, _go32_dpmi_registers *regs); -int _go32_dpmi_simulate_fcall(_go32_dpmi_registers *regs); -int _go32_dpmi_simulate_fcall_iret(_go32_dpmi_registers *regs); - -/* These automatically handle the tasks of restructuring the - real-mode stack for the proper return type. The callback - (info->pm_offset) is called as (*pmcb)(_go32_dpmi_registers *regs); */ -int _go32_dpmi_allocate_real_mode_callback_retf(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs); - /* points callback at pm_offset, returns seg:ofs of callback addr - in rm_segment:rm_offset. Do not change any fields until freed. - Interface is added to simulate far return */ -int _go32_dpmi_allocate_real_mode_callback_iret(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs); - /* same, but simulates iret */ -int _go32_dpmi_free_real_mode_callback(_go32_dpmi_seginfo *info); - /* frees callback */ - -/* Only available_memory is guaranteed to be valid. Try - available_physical_pages for phys mem left */ -int _go32_dpmi_get_free_memory_information(_go32_dpmi_meminfo *info); - -/* Convenience functions. These use the above memory info call. - The return value is *bytes* */ -u_long _go32_dpmi_remaining_physical_memory(void); -u_long _go32_dpmi_remaining_virtual_memory(void); - - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/newlib/libc/sys/go32/sys/errno.h b/newlib/libc/sys/go32/sys/errno.h deleted file mode 100644 index 793e51fc0..000000000 --- a/newlib/libc/sys/go32/sys/errno.h +++ /dev/null @@ -1,73 +0,0 @@ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -/* ??? This file has been modified to work with newlib's way of storing - `errno'. Arguably there's no need and arguably we shouldn't diverge - from go32 sources. If you feel strongly about it, please change it. - The interface between newlib and system's version of errno is via - __errno, so there's no problem in storing errno in a different place - (any changes can be dealt with inside __errno). */ - -#ifndef _SYS_ERRNO_H_ -#define _SYS_ERRNO_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -#include - -#ifndef _REENT_ONLY -#define errno (*__errno()) -extern int *__errno _PARAMS ((void)); -#endif - -#define __errno_r(ptr) ((ptr)->_errno) - -#define ENOENT 2 /* No such file or directory */ -#define ENOTDIR 3 /* No path */ -#define EMFILE 4 /* Too many open files */ -#define EACCES 5 /* Permission denied */ -#define EBADF 6 /* Bad file number */ -#define EARENA 7 /* Arena trashed */ -#define ENOMEM 8 /* Not enough core */ -#define ESEGV 9 /* invalid memory address */ -#define EBADENV 10 /* invalid environment */ -#define ENODEV 15 /* No such device */ -#define ENMFILE 18 /* No more files */ -#define EINVAL 19 /* Invalid argument */ -#define E2BIG EBADENV /* Arg list too long */ -#define ENOEXEC 21 /* Exec format error */ -#define EXDEV 17 /* Cross-device link */ -#define EPIPE 32 /* POHC */ -#define EDOM 33 /* Math argument */ -#define ERANGE 34 /* Result too large */ -#if 0 /* readline.c assumes that if this is defined, so is O_NDELAY. - Newlib doesn't use it, so comment it out. */ -#define EWOULDBLOCK 35 /* POHC */ -#endif -#define EEXIST 36 /* File already exists */ -#define EINTR 100 /* Interrupted system call */ -#define EIO 101 /* I/O or bounds error */ -#define ENOSPC 102 /* No space left on drive */ -#define EAGAIN 103 /* No more processes */ -#define ECHILD 200 /* child exited (porting only) */ -#define EFAULT 201 /* bad address */ -#define ENXIO ENODEV -#define EPERM EACCES - -/* New values required by newlib and the Cygnus toolchain. */ -#define ENOSYS 230 /* Function not implemented */ -#define ESPIPE 231 /* Illegal seek */ - -#endif diff --git a/newlib/libc/sys/go32/sys/fcntl.h b/newlib/libc/sys/go32/sys/fcntl.h deleted file mode 100644 index 792c0673d..000000000 --- a/newlib/libc/sys/go32/sys/fcntl.h +++ /dev/null @@ -1,12 +0,0 @@ -#define O_RDONLY 0x0001 -#define O_WRONLY 0x0002 -#define O_RDWR 0x0004 -#define O_CREAT 0x0100 -#define O_TRUNC 0x0200 -#define O_EXCL 0x0400 -#define O_APPEND 0x0800 -#define O_TEXT 0x4000 -#define O_BINARY 0x8000 - - - diff --git a/newlib/libc/sys/go32/sys/file.h b/newlib/libc/sys/go32/sys/file.h deleted file mode 100644 index 6679fd657..000000000 --- a/newlib/libc/sys/go32/sys/file.h +++ /dev/null @@ -1,31 +0,0 @@ -/* This is file FILE.H */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _FILE_H_ -#define _FILE_H_ - -#include - -#define L_SET 0 -#define L_CURR 1 -#define L_INCR 1 -#define L_XTND 2 - - -#define F_OK 0 /* does file exist */ -#define X_OK 1 /* is it executable by caller */ -#define W_OK 2 /* is it writable by caller */ -#define R_OK 4 /* is it readable by caller */ - -#endif diff --git a/newlib/libc/sys/go32/sys/go32.h b/newlib/libc/sys/go32/sys/go32.h deleted file mode 100644 index 55b1ce437..000000000 --- a/newlib/libc/sys/go32/sys/go32.h +++ /dev/null @@ -1,69 +0,0 @@ -/* This is file go32.h */ -/* -** Copyright (C) 1993 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _GO32_H_ -#define _GO32_H_ - -#include - -#ifdef __cplusplus -extern "C" { -#endif - -/* This must match go32/proginfo.h */ - -typedef struct { - u_long size_of_this_structure_in_bytes; - u_long linear_address_of_primary_screen; - u_long linear_address_of_secondary_screen; - u_long linear_address_of_transfer_buffer; - u_long size_of_transfer_buffer; /* >= 4k */ - u_long pid; - u_char master_interrupt_controller_base; - u_char slave_interrupt_controller_base; - u_short selector_for_linear_memory; - u_long linear_address_of_stub_info_structure; - u_long linear_address_of_original_psp; - u_short run_mode; - u_short run_mode_info; -} Go32_Info_Block; - -extern Go32_Info_Block _go32_info_block; - -#define _GO32_RUN_MODE_UNDEF 0 -#define _GO32_RUN_MODE_RAW 1 -#define _GO32_RUN_MODE_XMS 2 -#define _GO32_RUN_MODE_VCPI 3 -#define _GO32_RUN_MODE_DPMI 4 - -void dosmemget(int offset, int length, void *buffer); -void dosmemput(const void *buffer, int length, int offset); -void movedata(unsigned source_selector, unsigned source_offset, - unsigned dest_selector, unsigned dest_offset, - size_t length); - -/* returns number of times hit since last call. (zero first time) */ -u_long _go32_was_ctrl_break_hit(void); -void _go32_want_ctrl_break(int yes); /* auto-yes if call above function */ - -u_short _go32_my_cs(void); -u_short _go32_my_ds(void); -u_short _go32_my_ss(void); -u_short _go32_conventional_mem_selector(void); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/newlib/libc/sys/go32/sys/param.h b/newlib/libc/sys/go32/sys/param.h deleted file mode 100644 index 0bc4a8df7..000000000 --- a/newlib/libc/sys/go32/sys/param.h +++ /dev/null @@ -1,22 +0,0 @@ -/* This is file PARAM.H */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _PARAM_H_ -#define _PARAM_H_ - -#define MAXPATHLEN 80 -/* 100, according to the real go32 sys/times.h */ -#define HZ (100) - -#endif diff --git a/newlib/libc/sys/go32/sys/pc.h b/newlib/libc/sys/go32/sys/pc.h deleted file mode 100644 index c0460d7f5..000000000 --- a/newlib/libc/sys/go32/sys/pc.h +++ /dev/null @@ -1,56 +0,0 @@ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _PC_H_ -#define _PC_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -unsigned char inportb(unsigned short port); -unsigned short inportw(unsigned short port); -unsigned long inportl(unsigned short port); -unsigned char inportsb(unsigned short port, unsigned char *buf, unsigned len); -unsigned short inportsw(unsigned short port, unsigned short *buf, unsigned len); -unsigned long inportsl(unsigned short port, unsigned long *buf, unsigned len); -void outportb(unsigned short port, unsigned char data); -void outportw(unsigned short port, unsigned short data); -void outportl(unsigned short port, unsigned long data); -void outportsb(unsigned short port, unsigned char *buf, unsigned len); -void outportsw(unsigned short port, unsigned short *buf, unsigned len); -void outportsl(unsigned short port, unsigned long *buf, unsigned len); - -int kbhit(void); -int getkey(void); - -void sound(int frequency); - -extern short ScreenPrimary[]; -extern short ScreenSecondary[]; - -/* For the primary screen: */ -int ScreenRows(); -int ScreenCols(); -void ScreenPutChar(int ch, int attr, int x, int y); -void ScreenSetCursor(int row, int col); -void ScreenGetCursor(int *row, int *col); -void ScreenClear(); - - -#ifdef __cplusplus -} -#endif - -#endif - diff --git a/newlib/libc/sys/go32/sys/register.h b/newlib/libc/sys/go32/sys/register.h deleted file mode 100644 index e6b7814de..000000000 --- a/newlib/libc/sys/go32/sys/register.h +++ /dev/null @@ -1,28 +0,0 @@ -/* This is file REGISTER.H */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - unsigned ax, bx, cx, dx, si, di, bp, f; - } REGISTERS; - -#define FLAGS_C 1 - -#ifdef __cplusplus -} -#endif - diff --git a/newlib/libc/sys/go32/sys/resource.h b/newlib/libc/sys/go32/sys/resource.h deleted file mode 100644 index 418b499a2..000000000 --- a/newlib/libc/sys/go32/sys/resource.h +++ /dev/null @@ -1,50 +0,0 @@ -/* This is file RESOURCE.H */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _SYS_RESOURCE_H_ -#define _SYS_RESOURCE_H_ - -#include - -#define RUSAGE_SELF 0 /* calling process */ -#define RUSAGE_CHILDREN -1 /* terminated child processes */ - -struct rusage { - struct timeval ru_utime; /* user time used */ - struct timeval ru_stime; /* system time used */ - long ru_maxrss; /* integral max resident set size */ - long ru_ixrss; /* integral shared text memory size */ - long ru_idrss; /* integral unshared data size */ - long ru_isrss; /* integral unshared stack size */ - long ru_minflt; /* page reclaims */ - long ru_majflt; /* page faults */ - long ru_nswap; /* swaps */ - long ru_inblock; /* block input operations */ - long ru_oublock; /* block output operations */ - long ru_msgsnd; /* messages sent */ - long ru_msgrcv; /* messages received */ - long ru_nsignals; /* signals received */ - long ru_nvcsw; /* voluntary context switches */ - long ru_nivcsw; /* involuntary context switches */ -}; - - -#ifdef __cplusplus -extern "C" int getrusage(int who, struct rusage *rusage); -#else -extern int getrusage(int who, struct rusage *rusage); -#endif - -#endif - diff --git a/newlib/libc/sys/go32/sys/setjmp.h b/newlib/libc/sys/go32/sys/setjmp.h deleted file mode 100644 index 58dfc326d..000000000 --- a/newlib/libc/sys/go32/sys/setjmp.h +++ /dev/null @@ -1,44 +0,0 @@ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _SETJMP_H_ -#define _SETJMP_H_ - -#ifdef __cplusplus -extern "C" { -#endif - -typedef struct { - unsigned long eax; - unsigned long ebx; - unsigned long ecx; - unsigned long edx; - unsigned long esi; - unsigned long edi; - unsigned long ebp; - unsigned long esp; - unsigned long eip; - unsigned short es; - unsigned short fs; - unsigned short gs; - unsigned short ss; -} jmp_buf[1]; - -extern int setjmp(jmp_buf); -extern void longjmp(jmp_buf, int); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/newlib/libc/sys/go32/sys/stdc.h b/newlib/libc/sys/go32/sys/stdc.h deleted file mode 100644 index a36a4f6c2..000000000 --- a/newlib/libc/sys/go32/sys/stdc.h +++ /dev/null @@ -1,15 +0,0 @@ -/* This is file STDC.H */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#include diff --git a/newlib/libc/sys/go32/sys/uio.h b/newlib/libc/sys/go32/sys/uio.h deleted file mode 100644 index 7e8c6bce6..000000000 --- a/newlib/libc/sys/go32/sys/uio.h +++ /dev/null @@ -1,23 +0,0 @@ -/* This is file UIO.H */ -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -#ifndef _SYS_UIO_H_ -#define _SYS_UIO_H_ - -struct iovec { - void *iov_base; - unsigned long iov_len; -}; - -#endif diff --git a/newlib/libc/sys/go32/syserr.c b/newlib/libc/sys/go32/syserr.c deleted file mode 100644 index 4a102ebc5..000000000 --- a/newlib/libc/sys/go32/syserr.c +++ /dev/null @@ -1,38 +0,0 @@ - -/* -** Copyright (C) 1991 DJ Delorie -** -** This file is distributed under the terms listed in the document -** "copying.dj". -** A copy of "copying.dj" should accompany this file; if not, a copy -** should be available from where this file was obtained. This file -** may not be distributed without a verbatim copy of "copying.dj". -** -** This file is distributed WITHOUT ANY WARRANTY; without even the implied -** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -*/ - -char *sys_errlist[] = { - "no error", - "invalid function", - "file not found", - "path not found", - "too many open files", - "access denied", - "invalid file handle", - "arena trashed", - "not enough memory", - "invalid block", - "no environment", - "no format", - "invalid access code", - "invalid data", - "undefined", - "invalid drive", - "attempt to remove current directory", - "not same device", - "no more files" -}; - -int sys_nerr= sizeof(sys_errlist) / sizeof(char *); - diff --git a/newlib/libc/sys/go32/system.s b/newlib/libc/sys/go32/system.s deleted file mode 100644 index 1707825a0..000000000 --- a/newlib/libc/sys/go32/system.s +++ /dev/null @@ -1,19 +0,0 @@ -# /* This is file SYSTEM.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _system -_system: - movb $7,%al - jmp turbo_assist diff --git a/newlib/libc/sys/go32/tell.s b/newlib/libc/sys/go32/tell.s deleted file mode 100644 index eaf7a3203..000000000 --- a/newlib/libc/sys/go32/tell.s +++ /dev/null @@ -1,33 +0,0 @@ -# /* This is file TELL.S */ -# /* -# ** Copyright (C) 1991 DJ Delorie -# ** -# ** This file is distributed under the terms listed in the document -# ** "copying.dj". -# ** A copy of "copying.dj" should accompany this file; if not, a copy -# ** should be available from where this file was obtained. This file -# ** may not be distributed without a verbatim copy of "copying.dj". -# ** -# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied -# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# */ - - .text - .globl _tell -_tell: - pushl %ebx - pushl %esi - pushl %edi - movl 16(%esp),%ebx - movl $0,%ecx - movl $0,%edx - movw $0x4201,%ax - int $0x21 - popl %edi - popl %esi - popl %ebx - jb syscall_error - shll $16,%edx - andl $0xffff,%eax - orl %edx,%eax - ret diff --git a/newlib/libc/sys/go32/time.c b/newlib/libc/sys/go32/time.c deleted file mode 100644 index f8ab6f47e..000000000 --- a/newlib/libc/sys/go32/time.c +++ /dev/null @@ -1,53 +0,0 @@ -/* -FUNCTION -<