URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
Compare Revisions
- This comparison shows the changes necessary to convert path
/or1k/trunk/newlib-1.10.0/newlib/libc/sys/sysvi386
- from Rev 1010 to Rev 1765
- ↔ Reverse comparison
Rev 1010 → Rev 1765
/telldir.c
0,0 → 1,129
/* |
* Copyright (c) 1983 Regents of the University of California. |
* All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* are met: |
* 1. Redistributions of source code must retain the above copyright |
* notice, this list of conditions and the following disclaimer. |
* 2. Redistributions in binary form must reproduce the above copyright |
* notice, this list of conditions and the following disclaimer in the |
* documentation and/or other materials provided with the distribution. |
* 3. All advertising materials mentioning features or use of this software |
* must display the following acknowledgement: |
* This product includes software developed by the University of |
* California, Berkeley and its contributors. |
* 4. Neither the name of the University nor the names of its contributors |
* may be used to endorse or promote products derived from this software |
* without specific prior written permission. |
* |
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND |
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
* SUCH DAMAGE. |
*/ |
|
#if defined(LIBC_SCCS) && !defined(lint) |
static char sccsid[] = "@(#)telldir.c 5.9 (Berkeley) 2/23/91"; |
#endif /* LIBC_SCCS and not lint */ |
|
#include <sys/param.h> |
#include <dirent.h> |
#include <stdlib.h> |
#include <unistd.h> |
|
/* |
* The option SINGLEUSE may be defined to say that a telldir |
* cookie may be used only once before it is freed. This option |
* is used to avoid having memory usage grow without bound. |
*/ |
#define SINGLEUSE |
|
/* |
* One of these structures is malloced to describe the current directory |
* position each time telldir is called. It records the current magic |
* cookie returned by getdirentries and the offset within the buffer |
* associated with that return value. |
*/ |
struct ddloc { |
struct ddloc *loc_next;/* next structure in list */ |
long loc_index; /* key associated with structure */ |
long loc_seek; /* magic cookie returned by getdirentries */ |
long loc_loc; /* offset of entry in buffer */ |
}; |
|
#define NDIRHASH 32 /* Num of hash lists, must be a power of 2 */ |
#define LOCHASH(i) ((i)&(NDIRHASH-1)) |
|
static long dd_loccnt; /* Index of entry for sequential readdir's */ |
static struct ddloc *dd_hash[NDIRHASH]; /* Hash list heads for ddlocs */ |
|
/* |
* return a pointer into a directory |
*/ |
long |
telldir(dirp) |
const DIR *dirp; |
{ |
register int index; |
register struct ddloc *lp; |
|
if ((lp = (struct ddloc *)malloc(sizeof(struct ddloc))) == NULL) |
return (-1); |
index = dd_loccnt++; |
lp->loc_index = index; |
lp->loc_seek = dirp->dd_seek; |
lp->loc_loc = dirp->dd_loc; |
lp->loc_next = dd_hash[LOCHASH(index)]; |
dd_hash[LOCHASH(index)] = lp; |
return (index); |
} |
|
/* |
* seek to an entry in a directory. |
* Only values returned by "telldir" should be passed to seekdir. |
*/ |
void |
_seekdir(dirp, loc) |
register DIR *dirp; |
long loc; |
{ |
register struct ddloc *lp; |
register struct ddloc **prevlp; |
struct dirent *dp; |
extern long lseek(); |
|
prevlp = &dd_hash[LOCHASH(loc)]; |
lp = *prevlp; |
while (lp != NULL) { |
if (lp->loc_index == loc) |
break; |
prevlp = &lp->loc_next; |
lp = lp->loc_next; |
} |
if (lp == NULL) |
return; |
if (lp->loc_loc == dirp->dd_loc && lp->loc_seek == dirp->dd_seek) |
goto found; |
(void) lseek(dirp->dd_fd, lp->loc_seek, 0); |
dirp->dd_seek = lp->loc_seek; |
dirp->dd_loc = 0; |
while (dirp->dd_loc < lp->loc_loc) { |
dp = readdir(dirp); |
if (dp == NULL) |
break; |
} |
found: |
#ifdef SINGLEUSE |
*prevlp = lp->loc_next; |
free((caddr_t)lp); |
#endif |
} |
/speed.c
0,0 → 1,24
#define _NO_MACROS |
#include <sys/termios.h> |
|
speed_t |
cfgetospeed(const struct termios *tp) { |
return tp->c_ospeed; |
} |
|
int |
cfsetospeed(struct termios *tp, speed_t speed) { |
tp->c_ospeed = speed; |
return 0; |
} |
|
speed_t |
cfgetispeed(const struct termios *tp) { |
return tp->c_ispeed; |
} |
|
int |
cfsetispeed(struct termios *tp, speed_t speed) { |
tp->c_ispeed = speed; |
return 0; |
} |
/tcgetattr.c
0,0 → 1,6
#include <sys/termios.h> |
|
int |
tcgetattr (int fd, struct termios *tp) { |
return _ioctl (fd, _XCGETA, tp); |
} |
/Makefile.in
0,0 → 1,341
# 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 = : |
host_alias = @host_alias@ |
host_triplet = @host@ |
AR = @AR@ |
AS = @AS@ |
CC = @CC@ |
CPP = @CPP@ |
EXEEXT = @EXEEXT@ |
LDFLAGS = @LDFLAGS@ |
MAINT = @MAINT@ |
MAKEINFO = @MAKEINFO@ |
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@ |
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 = \ |
ioctl.s isatty.c read.s lseek.s close.s sbrk.c fstat.s cerror.s \ |
_exit.s write.s open.s signal.s kill.s getpid.s brk.s fork.s wait.s \ |
execve.s exec.c utime.s fcntl.s chmod.s getuid.s getgid.s time.s \ |
stat.s link.s unlink.s rename.s mkdir.s rmdir.s sigaction.s \ |
sigprocmask.s waitpid.s sysconf.s pathconf.s fpathconf.s \ |
getdents.s opendir.c readdir.c rewinddir.c closedir.c pipe.s \ |
getgroups.s setuid.s getuid.s setgid.s geteuid.s getegid.s \ |
chdir.s dup2.c dup.c tcgetattr.c tcsetattr.c speed.c tcline.c \ |
times.s pause.s sleep.c alarm.s access.s _longjmp.s _setjmp.s |
|
|
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 = ioctl.o isatty.o read.o lseek.o close.o sbrk.o fstat.o \ |
cerror.o _exit.o write.o open.o signal.o kill.o getpid.o brk.o fork.o \ |
wait.o execve.o exec.o utime.o fcntl.o chmod.o getuid.o getgid.o time.o \ |
stat.o link.o unlink.o rename.o mkdir.o rmdir.o sigaction.o \ |
sigprocmask.o waitpid.o sysconf.o pathconf.o fpathconf.o getdents.o \ |
opendir.o readdir.o rewinddir.o closedir.o pipe.o getgroups.o setuid.o \ |
getuid.o setgid.o geteuid.o getegid.o chdir.o dup2.o dup.o tcgetattr.o \ |
tcsetattr.o speed.o tcline.o times.o pause.o sleep.o alarm.o access.o \ |
_longjmp.o _setjmp.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 |
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: |
/sigprocmask.s
0,0 → 1,12
/ |
/ The SCO signal stuff seems to be weird. The POSIX stuff appears to |
/ "extended" system calls, and use values in eax and edx. |
/ |
.globl sigprocmask |
sigprocmask: |
movl $0x2828, %eax |
lcall $7,$0 |
jb _cerror |
ret |
addl $4, %esp |
lcall $0xf,$0 |
/sleep.c
0,0 → 1,12
#include <sys/types.h> |
#include <sys/signal.h> |
|
unsigned |
sleep(unsigned secs) { |
extern time_t time (time_t *); |
time_t t = time(0); |
|
_alarm(secs); |
_pause(); |
return (time(0) - t); |
} |
/chdir.s
0,0 → 1,9
.globl _chdir |
.globl chdir |
_chdir: |
chdir: |
movl $0xc, %eax |
lcall $7,$0 |
jb _cerror |
xor %eax, %eax |
ret |
/tcsetattr.c
0,0 → 1,7
#include <sys/termios.h> |
|
int |
tcsetattr (int fd, int opts, const struct termios *tp) { |
return _ioctl (fd, opts, tp); |
} |
|
/link.s
0,0 → 1,9
.globl _link |
.globl link |
_link: |
link: |
movl $0x9, %eax |
lcall $7,$0 |
jb _cerror |
xor %eax, %eax |
ret |
/tcline.c
0,0 → 1,84
#define _NO_MACROS |
#include <sys/unistd.h> |
#include <sys/termios.h> |
#include <errno.h> |
|
int |
tcsendbreak (int fd, int dur) { |
do { |
if (_ioctl (fd, _TCSBRK, 0) == -1) |
return -1; |
} while (dur--); |
return 0; |
} |
|
int |
tcdrain (int fd) { |
return _ioctl (fd, _TCSBRK, 1); |
} |
|
int |
tcflush(int fd, int what) { |
return _ioctl (fd, _TCFLSH, what); |
} |
|
/* |
* I'm not positive about this function. I *think* it's right, |
* but I could be missing something. |
*/ |
|
int |
tcflow (int fd, int action) { |
struct termios t; |
|
switch (action) { |
case TCOOFF: |
case TCOON: |
return _ioctl (fd, _TCXONC, action); |
/* |
* Here is where I'm not terribly certain. 1003.1 says: |
* if action is TCIOFF, the system shall transmit a STOP |
* character, which is intended to cause the terminal device |
* to stop transmitting data to the system. (Similarly for |
* TCION.) |
* I *assume* that means I find out what VSTOP for the |
* terminal device is, and then write it. 1003.1 also does |
* not say what happens if c_cc[VSTOP] is _POSIX_VDISABLE; |
* I assume it should reaturn EINVAL, so that's what I do. |
* Anyway, here's the code. It might or might not be right. |
*/ |
case TCIOFF: |
if (tcgetattr (fd, &t) == -1) |
return -1; |
if (tcgetattr (fd, &t) == -1) |
return -1; |
#ifdef _POSIX_VDISABLE |
if (t.c_cc[VSTOP] == _POSIX_VDISABLE) { |
errno = EINVAL; |
return -1; |
} |
#endif |
if (write (fd, &t.c_cc[VSTOP], 1) == 1) |
return 0; |
else |
return -1; |
case TCION: |
if (tcgetattr (fd, &t) == -1) |
return -1; |
if (tcgetattr (fd, &t) == -1) |
return -1; |
#ifdef _POSIX_VDISABLE |
if (t.c_cc[VSTART] == _POSIX_VDISABLE) { |
errno = EINVAL; |
return -1; |
} |
#endif |
if (write (fd, &t.c_cc[VSTART], 1) == 1) |
return 0; |
else |
return -1; |
default: |
errno = EINVAL; |
return -1; |
} |
} |
/_setjmp.s
0,0 → 1,24
/ |
/ our buffer looks like: |
/ eax,ebx,ecx,edx,esi,edi,esp,ebp,pc |
|
.globl _setjmp |
.globl setjmp |
_setjmp: |
setjmp: |
pushl %ebx |
movl 8(%esp), %ebx |
movl %eax, (%ebx) |
popl %eax |
movl %eax, 4(%ebx) |
movl %ecx, 8(%ebx) |
movl %edx, 12(%ebx) |
movl %esi, 16(%ebx) |
movl %edi, 20(%ebx) |
movl %esp, 24(%ebx) |
movl %ebp, 28(%ebx) |
movl (%esp), %eax |
movl %eax, 32(%ebx) |
xorl %eax, %eax |
ret |
|
/getgid.s
0,0 → 1,8
.globl _getgid |
.globl getgid |
_getgid: |
getgid: |
movl $0x2f, %eax |
lcall $7,$0 |
jb _cerror |
ret |
/close.s
0,0 → 1,9
.globl _close |
.globl close |
_close: |
close: |
movl $6, %eax |
lcall $7,$0 |
jb _cerror |
xor %eax, %eax |
ret |
/seekdir.c
0,0 → 1,52
/* |
* Copyright (c) 1983 Regents of the University of California. |
* All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* are met: |
* 1. Redistributions of source code must retain the above copyright |
* notice, this list of conditions and the following disclaimer. |
* 2. Redistributions in binary form must reproduce the above copyright |
* notice, this list of conditions and the following disclaimer in the |
* documentation and/or other materials provided with the distribution. |
* 3. All advertising materials mentioning features or use of this software |
* must display the following acknowledgement: |
* This product includes software developed by the University of |
* California, Berkeley and its contributors. |
* 4. Neither the name of the University nor the names of its contributors |
* may be used to endorse or promote products derived from this software |
* without specific prior written permission. |
* |
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND |
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
* SUCH DAMAGE. |
*/ |
|
#if defined(LIBC_SCCS) && !defined(lint) |
static char sccsid[] = "@(#)seekdir.c 5.7 (Berkeley) 6/1/90"; |
#endif /* LIBC_SCCS and not lint */ |
|
#include <sys/param.h> |
#include <dirent.h> |
|
/* |
* Seek to an entry in a directory. |
* _seekdir is in telldir.c so that it can share opaque data structures. |
*/ |
void |
seekdir(dirp, loc) |
DIR *dirp; |
long loc; |
{ |
|
_seekdir(dirp, loc); |
} |
/getegid.s
0,0 → 1,9
.globl _getegid |
.globl getegid |
_getegid: |
getegid: |
movl $0x2f, %eax |
lcall $7,$0 |
movl %edx,%eax |
jb _cerror |
ret |
/ioctl.s
0,0 → 1,9
|
.globl _ioctl |
.globl ioctl |
_ioctl: |
ioctl: |
movl $0x36, %eax |
lcall $7,$0 |
jb _cerror |
ret |
/read.s
0,0 → 1,8
.globl _read |
.globl read |
_read: |
read: |
movl $3, %eax |
lcall $7,$0 |
jb _cerror |
ret |
/getpid.s
0,0 → 1,9
|
.globl _getpid |
.globl getpid |
_getpid: |
getpid: |
movl $0x14, %eax |
lcall $7,$0 |
jb _cerror |
ret |
/fpx.c
0,0 → 1,73
#include <ieeefp.h> |
#include <machine/registers.h> |
|
|
fp_except _DEFUN(fpsetmask,(newmask), |
fp_except newmask) |
|
{ |
fp_except oldmask; |
v60_tkcw_type tkcw; |
|
sysv60(0, 8, &tkcw); |
oldmask = tkcw.fp_trap; |
tkcw.fp_trap = newmask; |
sysv60(0, 8, &tkcw); |
return oldmask; |
|
} |
|
fp_except _DEFUN_VOID(fpgetmask) |
{ |
v60_tkcw_type tkcw; |
sysv60(0, 8, &tkcw); |
return tkcw.fp_trap; |
} |
|
|
fp_rnd _DEFUN_VOID(fpgetround) |
{ |
v60_tkcw_type tkcw; |
sysv60(0, 8, &tkcw); |
return tkcw.fp_rounding; |
} |
|
fp_rnd _DEFUN(fpsetround,(rnd), |
fp_rnd rnd) |
{ |
fp_rnd oldrnd; |
v60_tkcw_type tkcw; |
|
sysv60(0, 8, &tkcw); |
oldrnd = tkcw.fp_rounding; |
tkcw.fp_rounding = rnd; |
sysv60(0, 8, &tkcw); |
return oldrnd; |
} |
|
|
|
|
|
fp_rdi _DEFUN_VOID(fpgetroundtoi) |
{ |
v60_tkcw_type tkcw; |
sysv60(0, 8, &tkcw); |
return tkcw.integer_rounding; |
} |
|
fp_rdi _DEFUN(fpsetroundtoi,(rnd), |
fp_rdi rnd) |
{ |
fp_rdi oldrnd; |
v60_tkcw_type tkcw; |
|
sysv60(0, 8, &tkcw); |
oldrnd = tkcw.integer_rounding; |
tkcw.integer_rounding = rnd; |
sysv60(0, 8, &tkcw); |
return oldrnd; |
} |
|
|
|
/brk.s
0,0 → 1,8
|
.globl _brk |
_brk: |
movl $0x11, %eax |
lcall $7,$0 |
jb _cerror |
xor %eax,%eax |
ret |
/setgid.s
0,0 → 1,9
.globl _setgid |
.globl setgid |
_setgid: |
setgid: |
movl $0x2e, %eax |
lcall $7,$0 |
jb _cerror |
xor %eax,%eax |
ret |
/opendir.c
0,0 → 1,80
/* |
* Copyright (c) 1983 Regents of the University of California. |
* All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* are met: |
* 1. Redistributions of source code must retain the above copyright |
* notice, this list of conditions and the following disclaimer. |
* 2. Redistributions in binary form must reproduce the above copyright |
* notice, this list of conditions and the following disclaimer in the |
* documentation and/or other materials provided with the distribution. |
* 3. All advertising materials mentioning features or use of this software |
* must display the following acknowledgement: |
* This product includes software developed by the University of |
* California, Berkeley and its contributors. |
* 4. Neither the name of the University nor the names of its contributors |
* may be used to endorse or promote products derived from this software |
* without specific prior written permission. |
* |
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND |
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
* SUCH DAMAGE. |
*/ |
|
#if defined(LIBC_SCCS) && !defined(lint) |
static char sccsid[] = "@(#)opendir.c 5.11 (Berkeley) 2/23/91"; |
#endif /* LIBC_SCCS and not lint */ |
|
#include <dirent.h> |
#include <fcntl.h> |
#include <stdlib.h> |
#include <unistd.h> |
|
/* |
* open a directory. |
*/ |
DIR * |
opendir(name) |
const char *name; |
{ |
register DIR *dirp; |
register int fd; |
|
if ((fd = open(name, 0)) == -1) |
return NULL; |
if (fcntl(fd, F_SETFD, 1) == -1 || |
(dirp = (DIR *)malloc(sizeof(DIR))) == NULL) { |
close (fd); |
return NULL; |
} |
/* |
* If CLSIZE is an exact multiple of DIRBLKSIZ, use a CLSIZE |
* buffer that it cluster boundary aligned. |
* Hopefully this can be a big win someday by allowing page trades |
* to user space to be done by getdirentries() |
*/ |
dirp->dd_buf = malloc (512); |
dirp->dd_len = 512; |
|
if (dirp->dd_buf == NULL) { |
close (fd); |
return NULL; |
} |
dirp->dd_fd = fd; |
dirp->dd_loc = 0; |
dirp->dd_seek = 0; |
/* |
* Set up seek point for rewinddir. |
*/ |
return dirp; |
} |
/getuid.s
0,0 → 1,8
.globl _getuid |
.globl getuid |
_getuid: |
getuid: |
movl $0x18, %eax |
lcall $7,$0 |
jb _cerror |
ret |
/sysconf.s
0,0 → 1,6
.globl sysconf |
sysconf: |
movl $0x2d28, %eax |
lcall $7,$0 |
jb _cerror |
ret |
/configure.in
0,0 → 1,12
dnl This is the newlib/libc/sys/sysvi386 configure.in file. |
dnl Process this file with autoconf to produce a configure script. |
|
AC_PREREQ(2.5) |
AC_INIT(fps.s) |
|
dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake. |
AC_CONFIG_AUX_DIR(../../../..) |
|
NEWLIB_CONFIGURE(../../..) |
|
AC_OUTPUT(Makefile) |
/geteuid.s
0,0 → 1,9
.globl _geteuid |
.globl geteuid |
_geteuid: |
geteuid: |
movl $0x18, %eax |
lcall $7,$0 |
movl %edx,%eax |
jb _cerror |
ret |
/crt0.c
0,0 → 1,127
/*- |
* Copyright (c) 1990 The Regents of the University of California. |
* All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* are met: |
* 1. Redistributions of source code must retain the above copyright |
* notice, this list of conditions and the following disclaimer. |
* 2. Redistributions in binary form must reproduce the above copyright |
* notice, this list of conditions and the following disclaimer in the |
* documentation and/or other materials provided with the distribution. |
* 3. All advertising materials mentioning features or use of this software |
* must display the following acknowledgement: |
* This product includes software developed by the University of |
* California, Berkeley and its contributors. |
* 4. Neither the name of the University nor the names of its contributors |
* may be used to endorse or promote products derived from this software |
* without specific prior written permission. |
* |
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND |
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
* SUCH DAMAGE. |
*/ |
|
#if defined(LIBC_SCCS) && !defined(lint) |
static char sccsid[] = "@(#)crt0.c 5.7 (Berkeley) 7/3/91"; |
#endif /* LIBC_SCCS and not lint */ |
|
/* |
* C start up routine. |
* Robert Henry, UCB, 20 Oct 81 |
* |
* We make the following (true) assumption: |
* 1) The only register variable that we can trust is ebp, |
* which points to the base of the kernel calling frame. |
*/ |
|
char **environ = (char **)0; |
static int fd; |
|
/* |
asm(".text"); |
asm(".long 0xc000c000"); |
*/ |
extern unsigned char etext; |
extern unsigned char eprol asm ("eprol"); |
/* extern start() asm("start"); */ |
|
_start(int arg) |
{ |
struct kframe { |
int kargc; |
char *kargv[1]; /* size depends on kargc */ |
char kargstr[1]; /* size varies */ |
char kenvstr[1]; /* size varies */ |
}; |
/* |
* ALL REGISTER VARIABLES!!! |
*/ |
register struct kframe *kfp; /* r10 */ |
register char **targv; |
register char **argv; |
extern int errno; |
extern void _mcleanup(); |
|
#ifdef lint |
kfp = 0; |
initcode = initcode = 0; |
#else not lint |
# if 0 |
asm("lea 4(%ebp),%ebx"); /* catch it quick */ |
# else |
kfp = (struct kframe *)&(((int *)(&arg))[-1]); |
# endif |
#endif not lint |
for (argv = targv = &kfp->kargv[0]; *targv++; /* void */) |
/* void */ ; |
if (targv >= (char **)(*argv)) |
--targv; |
environ = targv; |
asm("eprol:"); |
|
#ifdef paranoid |
/* |
* The standard I/O library assumes that file descriptors 0, 1, and 2 |
* are open. If one of these descriptors is closed prior to the start |
* of the process, I/O gets very confused. To avoid this problem, we |
* insure that the first three file descriptors are open before calling |
* main(). Normally this is undefined, as it adds two unnecessary |
* system calls. |
*/ |
do { |
fd = open("/dev/null", 2); |
} while (fd >= 0 && fd < 3); |
close(fd); |
#endif paranoid |
|
#ifdef MCRT0 |
atexit(_mcleanup); |
monstartup(&eprol, &etext); |
#endif MCRT0 |
errno = 0; |
exit(main(kfp->kargc, argv, environ)); |
} |
|
#ifdef CRT0 |
/* |
* null mcount and moncontrol, |
* just in case some routine is compiled for profiling |
*/ |
moncontrol(val) |
int val; |
{ |
|
} |
asm(".globl mcount"); |
asm("mcount: ret"); |
#endif CRT0 |
/readdir.c
0,0 → 1,72
/* |
* Copyright (c) 1983 Regents of the University of California. |
* All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* are met: |
* 1. Redistributions of source code must retain the above copyright |
* notice, this list of conditions and the following disclaimer. |
* 2. Redistributions in binary form must reproduce the above copyright |
* notice, this list of conditions and the following disclaimer in the |
* documentation and/or other materials provided with the distribution. |
* 3. All advertising materials mentioning features or use of this software |
* must display the following acknowledgement: |
* This product includes software developed by the University of |
* California, Berkeley and its contributors. |
* 4. Neither the name of the University nor the names of its contributors |
* may be used to endorse or promote products derived from this software |
* without specific prior written permission. |
* |
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND |
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
* SUCH DAMAGE. |
*/ |
|
#if defined(LIBC_SCCS) && !defined(lint) |
static char sccsid[] = "@(#)readdir.c 5.7 (Berkeley) 6/1/90"; |
#endif /* LIBC_SCCS and not lint */ |
|
#include <dirent.h> |
|
/* |
* get next entry in a directory. |
*/ |
struct dirent * |
readdir(dirp) |
register DIR *dirp; { |
register struct dirent *dp; |
|
for (;;) { |
if (dirp->dd_loc == 0) { |
dirp->dd_size = _getdents (dirp->dd_fd, |
dirp->dd_buf, |
dirp->dd_len); |
|
if (dirp->dd_size <= 0) |
return NULL; |
} |
if (dirp->dd_loc >= dirp->dd_size) { |
dirp->dd_loc = 0; |
continue; |
} |
dp = (struct dirent *)(dirp->dd_buf + dirp->dd_loc); |
if ((int)dp & 03) /* bogus pointer check */ |
return NULL; |
if (dp->d_reclen <= 0 || |
dp->d_reclen > dirp->dd_len + 1 - dirp->dd_loc) |
return NULL; |
dirp->dd_loc += dp->d_reclen; |
if (dp->d_ino == 0) |
continue; |
return (dp); |
} |
} |
/cerror.s
0,0 → 1,9
.globl _cerror |
_cerror: |
movl %eax, errno |
movl $-1, %eax |
ret |
.data |
.globl errno |
errno: .long 0 |
|
/alarm.s
0,0 → 1,5
.globl _alarm |
_alarm: |
movl $0x1b, %eax |
lcall $7,$0 |
ret |
/setuid.s
0,0 → 1,9
.globl _setuid |
.globl setuid |
_setuid: |
setuid: |
movl $0x17, %eax |
lcall $7,$0 |
jb _cerror |
xor %eax,%eax |
ret |
/time.s
0,0 → 1,8
.globl _time |
.globl time |
_time: |
time: |
movl $0xd, %eax |
lcall $7,$0 |
jb _cerror |
ret |
/access.s
0,0 → 1,8
.globl _access |
.globl access |
access: |
_access: |
movl $0x21, %eax |
lcall $7, $0 |
jb _cerror |
ret |
/scandir.c
0,0 → 1,134
/* |
* Copyright (c) 1983 Regents of the University of California. |
* All rights reserved. |
* |
* Redistribution and use in source and binary forms, with or without |
* modification, are permitted provided that the following conditions |
* are met: |
* 1. Redistributions of source code must retain the above copyright |
* notice, this list of conditions and the following disclaimer. |
* 2. Redistributions in binary form must reproduce the above copyright |
* notice, this list of conditions and the following disclaimer in the |
* documentation and/or other materials provided with the distribution. |
* 3. All advertising materials mentioning features or use of this software |
* must display the following acknowledgement: |
* This product includes software developed by the University of |
* California, Berkeley and its contributors. |
* 4. Neither the name of the University nor the names of its contributors |
* may be used to endorse or promote products derived from this software |
* without specific prior written permission. |
* |
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND |
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE |
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
* SUCH DAMAGE. |
*/ |
|
#if defined(LIBC_SCCS) && !defined(lint) |
static char sccsid[] = "@(#)scandir.c 5.10 (Berkeley) 2/23/91"; |
#endif /* LIBC_SCCS and not lint */ |
|
/* |
* Scan the directory dirname calling select to make a list of selected |
* directory entries then sort using qsort and compare routine dcomp. |
* Returns the number of entries and a pointer to a list of pointers to |
* struct dirent (through namelist). Returns -1 if there were any errors. |
*/ |
|
#include <sys/types.h> |
#include <sys/stat.h> |
#include <dirent.h> |
#include <stdlib.h> |
#include <string.h> |
|
/* |
* The DIRSIZ macro gives the minimum record length which will hold |
* the directory entry. This requires the amount of space in struct dirent |
* without the d_name field, plus enough space for the name with a terminating |
* null byte (dp->d_namlen+1), rounded up to a 4 byte boundary. |
*/ |
#undef DIRSIZ |
#define DIRSIZ(dp) \ |
((sizeof (struct dirent) - (MAXNAMLEN+1)) + (((dp)->d_namlen+1 + 3) &~ 3)) |
|
int |
scandir(dirname, namelist, select, dcomp) |
const char *dirname; |
struct dirent ***namelist; |
int (*select) __P((struct dirent *)); |
int (*dcomp) __P((const void *, const void *)); |
{ |
register struct dirent *d, *p, **names; |
register size_t nitems; |
struct stat stb; |
long arraysz; |
DIR *dirp; |
|
if ((dirp = opendir(dirname)) == NULL) |
return(-1); |
if (fstat(dirp->dd_fd, &stb) < 0) |
return(-1); |
|
/* |
* estimate the array size by taking the size of the directory file |
* and dividing it by a multiple of the minimum size entry. |
*/ |
arraysz = (stb.st_size / 24); |
names = (struct dirent **)malloc(arraysz * sizeof(struct dirent *)); |
if (names == NULL) |
return(-1); |
|
nitems = 0; |
while ((d = readdir(dirp)) != NULL) { |
if (select != NULL && !(*select)(d)) |
continue; /* just selected names */ |
/* |
* Make a minimum size copy of the data |
*/ |
p = (struct dirent *)malloc(DIRSIZ(d)); |
if (p == NULL) |
return(-1); |
p->d_ino = d->d_ino; |
p->d_reclen = d->d_reclen; |
p->d_namlen = d->d_namlen; |
bcopy(d->d_name, p->d_name, p->d_namlen + 1); |
/* |
* Check to make sure the array has space left and |
* realloc the maximum size. |
*/ |
if (++nitems >= arraysz) { |
if (fstat(dirp->dd_fd, &stb) < 0) |
return(-1); /* just might have grown */ |
arraysz = stb.st_size / 12; |
names = (struct dirent **)realloc((char *)names, |
arraysz * sizeof(struct dirent *)); |
if (names == NULL) |
return(-1); |
} |
names[nitems-1] = p; |
} |
closedir(dirp); |
if (nitems && dcomp != NULL) |
qsort(names, nitems, sizeof(struct dirent *), dcomp); |
*namelist = names; |
return(nitems); |
} |
|
/* |
* Alphabetic order comparison routine for those who want it. |
*/ |
int |
alphasort(d1, d2) |
const void *d1; |
const void *d2; |
{ |
return(strcmp((*(struct dirent **)d1)->d_name, |
(*(struct dirent **)d2)->d_name)); |
} |
/exec.c
0,0 → 1,54
#include <sys/unistd.h> |
#include <errno.h> |
|
extern char **environ; |
|
int |
execv (const char *path, char * const *args) { |
extern int execve (const char *, char * const *, char * const*); |
return execve (path, args, environ); |
} |
|
int |
execl(const char *path, const char *arg1, ...) { |
return execv (path, &arg1); |
} |
|
/* |
* Copy string, until c or <nul> is encountered. |
* NUL-terminate the destination string (s1). |
*/ |
|
static char * |
strccpy (char *s1, char *s2, char c) { |
char *dest = s1; |
while (*s2 && *s2 != c) { |
*s1++ = *s2++; |
} |
*s1 = 0; |
return dest; |
} |
|
int |
execvp(const char *file, char * const *args) { |
extern char *getenv (const char *); |
char *path = getenv ("PATH"); |
char buf[MAXNAMLEN]; |
|
if (file[0] == '/') { /* absolute pathname -- easy out */ |
return execv (file, args); |
} |
|
buf[0] = 0; /* lots of initialization here 8-) */ |
while (*path) { |
strccpy (buf, path, ':'); |
strcat (buf, "/"); |
strcat (buf, file); |
execv (buf, args); |
if (errno != ENOENT) |
return -1; |
while (*path && *path != ':') |
path++; |
} |
return -1; |
} |
/rename.s
0,0 → 1,9
.globl _rename |
.globl rename |
_rename: |
rename: |
movl $0x3028, %eax |
lcall $7,$0 |
jb _cerror |
xor %eax, %eax |
ret |
/fpathconf.s
0,0 → 1,6
.globl fpathconf |
fpathconf: |
movl $0x2f28, %eax |
lcall $7,$0 |
jb _cerror |
ret |
/_exit.s
0,0 → 1,6
|
.globl _exit |
_exit: |
movl $1, %eax |
lcall $7,$0 |
|
/sys/termio.h
0,0 → 1,82
#ifndef _SYS_TERMIO_H |
# define _SYS_TERMIO_H |
|
# define TCGETA (('T'<<8)|1) |
# define TCSBRK (('T'<<8)|5) |
# define NCC 8 |
|
# define IGNBRK 000001 |
# define BRKINT 000002 |
# define IGNPAR 000004 |
# define INPCK 000020 |
# define ISTRIP 000040 |
# define INLCR 000100 |
# define IGNCR 000200 |
# define ICRNL 000400 |
# define IXON 002000 |
# define IXOFF 010000 |
|
# define OPOST 000001 |
# define OCRNL 000004 |
# define ONLCR 000010 |
# define ONOCR 000020 |
# define TAB3 014000 |
|
# define CLOCAL 004000 |
# define CREAD 000200 |
# define CSIZE 000060 |
# define CS5 0 |
# define CS6 020 |
# define CS7 040 |
# define CS8 060 |
# define CSTOPB 000100 |
# define HUPCL 002000 |
# define PARENB 000400 |
# define PAODD 001000 |
|
# define ECHO 0000010 |
# define ECHOE 0000020 |
# define ECHOK 0000040 |
# define ECHONL 0000100 |
# define ICANON 0000002 |
# define IEXTEN 0000400 /* anybody know *what* this does?! */ |
# define ISIG 0000001 |
# define NOFLSH 0000200 |
|
# define VEOF 4 /* also VMIN -- thanks, AT&T */ |
# define VEOL 5 /* also VTIME -- thanks again */ |
# define VERASE 2 |
# define VINTR 0 |
# define VKILL 3 |
# define VMIN 4 /* also VEOF */ |
# define VQUIT 1 |
# define VTIME 5 /* also VEOL */ |
|
# define B0 000000 |
# define B50 000001 |
# define B75 000002 |
# define B110 000003 |
# define B134 000004 |
# define B150 000005 |
# define B200 000006 |
# define B300 000007 |
# define B600 000010 |
# define B1200 000011 |
# define B1800 000012 |
# define B2400 000013 |
# define B4800 000014 |
# define B9600 000015 |
# define B19200 000016 |
# define B38400 000017 |
|
struct termio { |
unsigned short c_iflag; |
unsigned short c_oflag; |
unsigned short c_cflag; |
unsigned short c_lflag; |
char c_line; |
unsigned char c_cc[NCC]; |
}; |
|
#endif /* _SYS_TERMIO_H */ |
|
/sys/param.h
0,0 → 1,8
#ifndef _SYS_PARAM_H |
# define _SYS_PARAM_H |
|
# define HZ 60 |
# define NOFILE 60 |
# define PATHSIZE 1024 |
|
#endif |
/sys/setjmp.h
0,0 → 1,6
#ifndef _JBLEN |
# define _JBLEN 36 |
|
typedef char jmp_buf[_JBLEN]; |
|
#endif /* _JBLEN */ |
/sys/termios.h
0,0 → 1,121
#ifndef _SYS_TERMIOS_H |
# define _SYS_TERMIOS_H |
|
# define _XCGETA (('x'<<8)|1) |
# define _XCSETA (('x'<<8)|2) |
# define _XCSETAW (('x'<<8)|3) |
# define _XCSETAF (('x'<<8)|4) |
# define _TCSBRK (('T'<<8)|5) |
# define _TCFLSH (('T'<<8)|7) |
# define _TCXONC (('T'<<8)|6) |
|
# define TCOOFF 0 |
# define TCOON 1 |
# define TCIOFF 2 |
# define TCION 3 |
|
# define TCIFLUSH 0 |
# define TCOFLUSH 1 |
# define TCIOFLUSH 2 |
|
# define NCCS 13 |
|
# define TCSAFLUSH _XCSETAF |
# define TCSANOW _XCSETA |
# define TCSADRAIN _XCSETAW |
# define TCSADFLUSH _XCSETAF |
|
# define IGNBRK 000001 |
# define BRKINT 000002 |
# define IGNPAR 000004 |
# define INPCK 000020 |
# define ISTRIP 000040 |
# define INLCR 000100 |
# define IGNCR 000200 |
# define ICRNL 000400 |
# define IXON 002000 |
# define IXOFF 010000 |
|
# define OPOST 000001 |
# define OCRNL 000004 |
# define ONLCR 000010 |
# define ONOCR 000020 |
# define TAB3 014000 |
|
# define CLOCAL 004000 |
# define CREAD 000200 |
# define CSIZE 000060 |
# define CS5 0 |
# define CS6 020 |
# define CS7 040 |
# define CS8 060 |
# define CSTOPB 000100 |
# define HUPCL 002000 |
# define PARENB 000400 |
# define PAODD 001000 |
|
# define ECHO 0000010 |
# define ECHOE 0000020 |
# define ECHOK 0000040 |
# define ECHONL 0000100 |
# define ICANON 0000002 |
# define IEXTEN 0000400 /* anybody know *what* this does?! */ |
# define ISIG 0000001 |
# define NOFLSH 0000200 |
# define TOSTOP 0001000 |
|
# define VEOF 4 /* also VMIN -- thanks, AT&T */ |
# define VEOL 5 /* also VTIME -- thanks again */ |
# define VERASE 2 |
# define VINTR 0 |
# define VKILL 3 |
# define VMIN 4 /* also VEOF */ |
# define VQUIT 1 |
# define VSUSP 10 |
# define VTIME 5 /* also VEOL */ |
# define VSTART 11 |
# define VSTOP 12 |
|
# define B0 000000 |
# define B50 000001 |
# define B75 000002 |
# define B110 000003 |
# define B134 000004 |
# define B150 000005 |
# define B200 000006 |
# define B300 000007 |
# define B600 000010 |
# define B1200 000011 |
# define B1800 000012 |
# define B2400 000013 |
# define B4800 000014 |
# define B9600 000015 |
# define B19200 000016 |
# define B38400 000017 |
|
typedef unsigned char cc_t; |
typedef unsigned short tcflag_t; |
typedef char speed_t; |
|
struct termios { |
tcflag_t c_iflag; |
tcflag_t c_oflag; |
tcflag_t c_cflag; |
tcflag_t c_lflag; |
char c_line; |
cc_t c_cc[NCCS]; |
speed_t c_ispeed; |
speed_t c_ospeed; |
}; |
|
# ifndef _NO_MACROS |
|
# define cfgetospeed(tp) ((tp)->c_ospeed) |
# define cfgetispeed(tp) ((tp)->c_ispeed) |
# define cfsetospeed(tp,s) (((tp)->c_ospeed = (s)), 0) |
# define cfsetispeed(tp,s) (((tp)->c_ispeed = (s)), 0) |
# define tcdrain(fd) _ioctl (fd, _TCSBRK, 1) |
# endif /* _NO_MACROS */ |
|
#endif /* _SYS_TERMIOS_H */ |
|
/sys/utime.h
0,0 → 1,12
#ifndef _SYS_UTIME_H |
# define _SYS_UTIME_H |
|
#include <time.h> |
|
struct utimbuf { |
time_t actime; |
time_t modtime; |
}; |
|
#endif /* _SYS_UTIME_H */ |
|
/sys/wait.h
0,0 → 1,42
#ifndef _WAIT_H |
# define _WAIT_H |
|
# define WNOHANG 1 |
# define WUNTRACED 2 |
|
/* |
* Unlike the atrocity that BSD ended up using, we do not have a "union |
* wait," although I could probably implement one. Given the code I |
* sometimes end up porting, it might be a good thing. Anyway, the |
* format of a stat thingy, filled in by the wait*() routines, is: |
* struct { |
* int filler:16; |
* union { |
* struct stopped { |
* int signo:8; |
* int o177:8; // will be 0177 |
* }; |
* struct exited { |
* int retval:8; |
* int zero:8; // 0, obviously 8-) |
* }; |
* struct termed { |
* int zero:8; // zeroes |
* int corep:1; // was there a core file? |
* int signo:7; // what?! Only 127 signals?! |
* }; |
* int value:16; |
* }; |
* }; |
* |
* Braver souls than I can turn that into a union wait, if desired. Ick. |
*/ |
|
# define WIFEXITED(val) ((val)&0xff) |
# define WEXITSTATUS(val) (((val)>>8)&0xff) |
# define WIFSIGNALED(val) ((val) && !((val)&0xff)) |
# define WTERMSIG(val) (((val)>>8)&0x7f) |
# define WIFSTOPPED(val) (((val)&0xff)==0177) |
# define WSTOPSIG(val) (((val)>>8)&0xff) |
#endif /* _SYS_WAIT_H */ |
|
/sys/dirent.h
0,0 → 1,36
#ifndef _SYS_DIRENT_H |
# define _SYS_DIRENT_H |
|
/* |
* This file was written to be compatible with the BSD directory |
* routines, so it looks like it. But it was written from scratch. |
* Sean Eric Fagan, sef@Kithrup.COM |
*/ |
|
typedef struct _dirdesc { |
int dd_fd; |
long dd_loc; |
long dd_size; |
char *dd_buf; |
int dd_len; |
long dd_seek; |
} DIR; |
|
# define __dirfd(dp) ((dp)->dd_fd) |
|
DIR *opendir (const char *); |
struct dirent *readdir (DIR *); |
void rewinddir (DIR *); |
int closedir (DIR *); |
|
#include <sys/types.h> |
|
struct dirent { |
long d_ino; |
off_t d_off; |
unsigned short d_reclen; |
/* we need better syntax for variable-sized arrays */ |
char d_name[1]; |
}; |
|
#endif |
/sys/utmp.h
0,0 → 1,43
#ifndef _UTMP_H |
# define _UTMP_H |
|
#include <sys/types.h> |
|
# define UTMP_FILE "/etc/utmp" |
# define WTMP_FILE "/etc/wtmp" |
|
struct utmp { |
char ut_user[8]; /* how limited */ |
char ut_id[4]; /* ditto */ |
char ut_line[12]; /* I'm repeating myself */ |
short ut_pid; |
short ut_type; |
struct exit_status { |
short e_termination; |
short e_exit; |
} ut_exit; /* for DEAD_PROCESS processes */ |
time_t ut_time; |
}; |
|
/* Definitions for ut_type fields */ |
|
# define EMPTY 0 |
# define RUN_LVL 1 |
# define BOOT_TIME 2 |
# define OLD_TIME 3 |
# define NEW_TIME 4 |
# define INIT_PROCESS 5 |
# define LOGIN_PROCESS 6 |
# define USER_PROCESS 7 |
# define DEAD_PROCESS 8 |
# define ACCOUNTING 9 |
# define UTMAXTYPE ACCOUNTING |
|
# define RUNLVL_MSG "run-level %c" |
# define BOOT_MSG "system boot" |
# define OTIME_MSG "old time" |
# define NTIME_MSG "new time" |
|
#endif /* _UTMP_H */ |
|
|
/sigaction.s
0,0 → 1,20
/ |
/ The SCO signal stuff seems to be weird. The POSIX stuff appears to |
/ "extended" system calls, and use values in eax and edx. |
/ Like most of the other signal routines, it takes a function pointer |
/ in %edx. Since this function is terribly small, I am including it |
/ in all of the ones that need it, for now at least. Seems silly to include |
/ a whole file for two instructions. |
|
sigret: |
addl $4, %esp |
lcall $0xf, $0 |
.globl sigaction |
sigaction: |
movl $0x2728, %eax |
movl sigret, %edx |
lcall $7,$0 |
jb _cerror |
ret |
addl $4, %esp |
lcall $0xf,$0 |
/configure
0,0 → 1,1722
#! /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-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=fps.s |
|
# 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:580: 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:633: 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:690: 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:723: 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 <<EOF |
#line 728 "configure" |
#include "confdefs.h" |
|
int main() { |
|
#ifndef __CYGWIN__ |
#define __CYGWIN__ __CYGWIN32__ |
#endif |
return __CYGWIN__; |
; return 0; } |
EOF |
if { (eval echo configure:739: \"$ac_compile\") 1>&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:756: 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 <<EOF |
#line 761 "configure" |
#include "confdefs.h" |
|
int main() { |
return __MINGW32__; |
; return 0; } |
EOF |
if { (eval echo configure:768: \"$ac_compile\") 1>&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=no |
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 |
|
|
|
# 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:854: 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 |
|
|
|
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 <<EOF |
#define PACKAGE "$PACKAGE" |
EOF |
|
cat >> confdefs.h <<EOF |
#define VERSION "$VERSION" |
EOF |
|
|
|
missing_dir=`cd $ac_aux_dir && pwd` |
echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 |
echo "configure:895: 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:908: 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:921: 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:934: 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:947: 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:972: 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:1002: 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:1051: 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 <<EOF |
#ifdef __GNUC__ |
yes; |
#endif |
EOF |
if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1060: \"$ac_try\") 1>&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:1075: 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 |
|
|
# AC_CHECK_TOOL does AC_REQUIRE (AC_CANONICAL_BUILD). If we don't |
# run it explicitly here, it will be run implicitly before |
# NEWLIB_CONFIGURE, which doesn't work because that means that it will |
# be run before AC_CANONICAL_HOST. |
echo $ac_n "checking build system type""... $ac_c" 1>&6 |
echo "configure:1108: 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 |
|
|
# 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:1129: 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:1161: 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:1193: 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:1225: 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:1270: 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:1324: 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:1358: 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:1368: \"$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 |
|
case ${newlib_basedir} in |
/* | A-Za-z:/\\*) newlib_flagbasedir=${newlib_basedir} ;; |
*) newlib_flagbasedir='$(top_builddir)/'${newlib_basedir} ;; |
esac |
|
newlib_cflags="${newlib_cflags} -I"'$(top_builddir)'"/../../../targ-include -I${newlib_flagbasedir}/libc/include" |
case "${host}" in |
*-*-cygwin*) |
newlib_cflags="${newlib_cflags} -I${newlib_flagbasedir}/../winsup/cygwin/include -I${newlib_flagbasedir}/../winsup/w32api/include" |
;; |
esac |
|
newlib_cflags="${newlib_cflags} -fno-builtin" |
|
NEWLIB_CFLAGS=${newlib_cflags} |
|
|
LDFLAGS=${ldflags} |
|
|
|
|
if test x${use_libtool} = xyes; then |
USE_LIBTOOL_TRUE= |
USE_LIBTOOL_FALSE='#' |
else |
USE_LIBTOOL_TRUE='#' |
USE_LIBTOOL_FALSE= |
fi |
|
|
|
|
|
|
|
|
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 <<EOF |
#! /bin/sh |
# Generated automatically by configure. |
# Run this file to recreate the current configuration. |
# This directory was configured as follows, |
# on host `(hostname || uname -n) 2>/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 <<EOF |
|
# Protect against being on the right side of a sed subst in config.status. |
sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g; |
s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > 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%@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%@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%@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%@USE_LIBTOOL_TRUE@%$USE_LIBTOOL_TRUE%g |
s%@USE_LIBTOOL_FALSE@%$USE_LIBTOOL_FALSE%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 <<EOF |
|
CONFIG_FILES=\${CONFIG_FILES-"Makefile"} |
EOF |
cat >> $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 <<EOF |
|
EOF |
cat >> $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 |
|
configure
Property changes :
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: fstat.s
===================================================================
--- fstat.s (nonexistent)
+++ fstat.s (revision 1765)
@@ -0,0 +1,9 @@
+ .globl _fstat
+ .globl fstat
+_fstat:
+fstat:
+ movl $0x1c, %eax
+ lcall $7,$0
+ jb _cerror
+ xor %eax,%eax
+ ret
Index: times.s
===================================================================
--- times.s (nonexistent)
+++ times.s (revision 1765)
@@ -0,0 +1,8 @@
+ .globl _times
+ .globl times
+_times:
+times:
+ movl $0x2b, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: chmod.s
===================================================================
--- chmod.s (nonexistent)
+++ chmod.s (revision 1765)
@@ -0,0 +1,9 @@
+ .globl _chmod
+ .globl chmod
+_chmod:
+chmod:
+ movl $0xf, %eax
+ lcall $7,$0
+ jb _cerror
+ xor %eax, %eax
+ ret
Index: write.s
===================================================================
--- write.s (nonexistent)
+++ write.s (revision 1765)
@@ -0,0 +1,8 @@
+ .globl _write
+ .globl write
+_write:
+write:
+ movl $4, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: dup2.c
===================================================================
--- dup2.c (nonexistent)
+++ dup2.c (revision 1765)
@@ -0,0 +1,7 @@
+#include
+
+int
+dup2 (int fd1, int fd2) {
+ close (fd2); /* ignore errors, if any */
+ return (fcntl (fd1, F_DUPFD, fd2));
+}
Index: pipe.s
===================================================================
--- pipe.s (nonexistent)
+++ pipe.s (revision 1765)
@@ -0,0 +1,12 @@
+ .globl _pipe
+ .globl pipe
+_pipe:
+pipe:
+ movl $0x2a, %eax
+ lcall $7,$0
+ jb _cerror
+ movl 4(%esp), %ecx
+ movl (%ecx), %eax
+ movl 4(%ecx), %edx
+ xor %eax, %eax
+ ret
Index: unlink.s
===================================================================
--- unlink.s (nonexistent)
+++ unlink.s (revision 1765)
@@ -0,0 +1,9 @@
+ .globl _unlink
+ .globl unlink
+_unlink:
+unlink:
+ movl $0xa, %eax
+ lcall $7,$0
+ jb _cerror
+ xor %eax, %eax
+ ret
Index: open.s
===================================================================
--- open.s (nonexistent)
+++ open.s (revision 1765)
@@ -0,0 +1,9 @@
+
+ .globl _open
+ .globl open
+_open:
+open:
+ movl $5, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: fork.s
===================================================================
--- fork.s (nonexistent)
+++ fork.s (revision 1765)
@@ -0,0 +1,12 @@
+ .globl _fork
+ .globl fork
+_fork:
+fork:
+ movl $2, %eax
+ lcall $7,$0
+ jb _cerror
+ testl %edx, %edx
+ je bye
+ xorl %eax,%eax
+bye:
+ ret
Index: waitpid.s
===================================================================
--- waitpid.s (nonexistent)
+++ waitpid.s (revision 1765)
@@ -0,0 +1,18 @@
+ .globl _waitpid
+ .globl waitpid
+_waitpid:
+waitpid:
+ pushfl
+ popl %eax
+ orl $0x8c4,%eax
+ pushl %eax
+ popfl
+ movl $0x7, %eax
+ lcall $7,$0
+ jb _cerror
+ movl 8(%esp), %ecx
+ testl %ecx, %ecx
+ je bye
+ movl %edx, (%ecx)
+bye:
+ ret
Index: pathconf.s
===================================================================
--- pathconf.s (nonexistent)
+++ pathconf.s (revision 1765)
@@ -0,0 +1,6 @@
+ .globl pathconf
+pathconf:
+ movl $0x2e28, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: wait.s
===================================================================
--- wait.s (nonexistent)
+++ wait.s (revision 1765)
@@ -0,0 +1,13 @@
+ .globl _wait
+ .globl wait
+_wait:
+wait:
+ movl $0x7, %eax
+ lcall $7,$0
+ jb _cerror
+ movl 4(%esp), %ecx
+ testl %ecx, %ecx
+ je bye
+ movl %edx, (%ecx)
+bye:
+ ret
Index: fcntl.s
===================================================================
--- fcntl.s (nonexistent)
+++ fcntl.s (revision 1765)
@@ -0,0 +1,9 @@
+
+ .globl _fcntl
+ .globl fcntl
+_fcntl:
+fcntl:
+ movl $0x3e, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: stat.s
===================================================================
--- stat.s (nonexistent)
+++ stat.s (revision 1765)
@@ -0,0 +1,9 @@
+ .globl _stat
+ .globl stat
+_stat:
+stat:
+ movl $0x12, %eax
+ lcall $7,$0
+ jb _cerror
+ xor %eax,%eax
+ ret
Index: execve.s
===================================================================
--- execve.s (nonexistent)
+++ execve.s (revision 1765)
@@ -0,0 +1,7 @@
+ .globl _execve
+ .globl execve
+_execve:
+execve:
+ movl $0x3b, %eax
+ lcall $7,$0
+ jb _cerror
Index: getgroups.s
===================================================================
--- getgroups.s (nonexistent)
+++ getgroups.s (revision 1765)
@@ -0,0 +1,8 @@
+ .globl _getgroups
+ .globl getgroups
+_getgroups:
+getgroups:
+ movl $0x2b28, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: sbrk.c
===================================================================
--- sbrk.c (nonexistent)
+++ sbrk.c (revision 1765)
@@ -0,0 +1,21 @@
+extern end;
+
+static void *curbrk = (char*)&end;
+
+void *
+sbrk(incr)
+int incr; {
+ extern int errno;
+ extern int _brk(void *);
+ void *ptr = curbrk;
+ int t;
+
+ if (incr == 0)
+ return curbrk;
+ t = _brk (curbrk + incr);
+ if (t == -1 && errno)
+ return (void *)-1;
+ curbrk = ((char *)curbrk) + incr;
+ return ptr;
+}
+
Index: utime.s
===================================================================
--- utime.s (nonexistent)
+++ utime.s (revision 1765)
@@ -0,0 +1,8 @@
+ .globl _utime
+ .globl utime
+_utime:
+utime:
+ movl $0x1e, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: closedir.c
===================================================================
--- closedir.c (nonexistent)
+++ closedir.c (revision 1765)
@@ -0,0 +1,58 @@
+/*
+ * Copyright (c) 1983 Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#if defined(LIBC_SCCS) && !defined(lint)
+static char sccsid[] = "@(#)closedir.c 5.9 (Berkeley) 2/23/91";
+#endif /* LIBC_SCCS and not lint */
+
+#include
+#include
+#include
+#include
+
+/*
+ * close a directory.
+ */
+int
+closedir(dirp)
+ register DIR *dirp;
+{
+ int fd;
+
+ fd = dirp->dd_fd;
+ dirp->dd_fd = -1;
+ dirp->dd_loc = 0;
+ (void)free((void *)dirp->dd_buf);
+ (void)free((void *)dirp);
+ return(close(fd));
+}
Index: fps.s
===================================================================
--- fps.s (nonexistent)
+++ fps.s (revision 1765)
@@ -0,0 +1,18 @@
+ .globl _fpgetsticky
+_fpgetsticky:
+ getpsw r0
+ and.w #0x1f00,r0
+ shl.w #0xf8,r0
+ ret #0x0
+
+
+ .globl _fpsetsticky
+_fpsetsticky:
+ getpsw r0
+ mov.w [ap],r1
+ shl.w #0x8,r1
+ updpsw.h r1,#0x1f00
+ trapfl
+ and.w #0x1f00,r0
+ shl.w #0xf8,r0
+ ret #0x0
Index: kill.s
===================================================================
--- kill.s (nonexistent)
+++ kill.s (revision 1765)
@@ -0,0 +1,9 @@
+ .globl _kill
+ .globl kill
+_kill:
+kill:
+ movl $0x25, %eax
+ lcall $7,$0
+ jb _cerror
+ xor %eax, %eax
+ ret
Index: isatty.c
===================================================================
--- isatty.c (nonexistent)
+++ isatty.c (revision 1765)
@@ -0,0 +1,11 @@
+#include
+
+int
+isatty(fd)
+int fd; {
+ struct termio buf;
+
+ if (ioctl (fd, TCGETA, &buf) == -1)
+ return 0;
+ return 1;
+}
Index: lseek.s
===================================================================
--- lseek.s (nonexistent)
+++ lseek.s (revision 1765)
@@ -0,0 +1,8 @@
+ .globl _lseek
+ .globl lseek
+_lseek:
+lseek:
+ movl $0x13, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: _longjmp.s
===================================================================
--- _longjmp.s (nonexistent)
+++ _longjmp.s (revision 1765)
@@ -0,0 +1,31 @@
+/
+/ our buffer looks like:
+/ eax,ebx,ecx,edx,esi,edi,esp,ebp,pc
+/
+/ _longjmp is called with two parameters: jmp_buf*,int
+/ jmp_buf* is at 4(%esp), int is at 8(%esp)
+/ retaddr is, of course, at (%esp)
+
+ .globl _longjmp
+ .globl longjmp
+_longjmp:
+longjmp:
+ movl 4(%esp), %ebx / address of buf
+ movl 8(%esp), %eax / store return value
+
+ movl 24(%ebx), %esp / restore stack
+ movl 32(%ebx), %edi
+/ Next line sets up return address.
+ movl %edi, 0(%esp)
+ movl 8(%ebx), %ecx
+ movl 12(%ebx), %edx
+ movl 16(%ebx), %esi
+ movl 20(%ebx), %edi
+ movl 28(%ebx), %ebp
+ movl 4(%ebx), %ebx
+ testl %eax,%eax
+ jne bye
+ incl %eax / eax hold 0 if we are here
+bye:
+ ret
+
Index: mkdir.s
===================================================================
--- mkdir.s (nonexistent)
+++ mkdir.s (revision 1765)
@@ -0,0 +1,9 @@
+ .globl _mkdir
+ .globl mkdir
+_mkdir:
+mkdir:
+ movl $0x50, %eax
+ lcall $7,$0
+ jb _cerror
+ xor %eax, %eax
+ ret
Index: rewinddir.c
===================================================================
--- rewinddir.c (nonexistent)
+++ rewinddir.c (revision 1765)
@@ -0,0 +1,49 @@
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#if defined(LIBC_SCCS) && !defined(lint)
+static char sccsid[] = "@(#)rewinddir.c 5.1 (Berkeley) 5/25/90";
+#endif /* LIBC_SCCS and not lint */
+
+#include
+#include
+
+void
+rewinddir(dirp)
+ DIR *dirp;
+{
+ extern long _rewinddir;
+
+ _seekdir((dirp), _rewinddir);
+ _rewinddir = telldir(dirp);
+}
Index: dup.c
===================================================================
--- dup.c (nonexistent)
+++ dup.c (revision 1765)
@@ -0,0 +1,6 @@
+#include
+
+int
+dup (int fd1) {
+ return (fcntl (fd1, F_DUPFD, 0));
+}
Index: Makefile.am
===================================================================
--- Makefile.am (nonexistent)
+++ Makefile.am (revision 1765)
@@ -0,0 +1,23 @@
+## 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 = \
+ ioctl.s isatty.c read.s lseek.s close.s sbrk.c fstat.s cerror.s \
+ _exit.s write.s open.s signal.s kill.s getpid.s brk.s fork.s wait.s \
+ execve.s exec.c utime.s fcntl.s chmod.s getuid.s getgid.s time.s \
+ stat.s link.s unlink.s rename.s mkdir.s rmdir.s sigaction.s \
+ sigprocmask.s waitpid.s sysconf.s pathconf.s fpathconf.s \
+ getdents.s opendir.c readdir.c rewinddir.c closedir.c pipe.s \
+ getgroups.s setuid.s getuid.s setgid.s geteuid.s getegid.s \
+ chdir.s dup2.c dup.c tcgetattr.c tcsetattr.c speed.c tcline.c \
+ times.s pause.s sleep.c alarm.s access.s _longjmp.s _setjmp.s
+
+all: crt0.o
+
+ACLOCAL_AMFLAGS = -I ../../..
+CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
Index: aclocal.m4
===================================================================
--- aclocal.m4 (nonexistent)
+++ aclocal.m4 (revision 1765)
@@ -0,0 +1,299 @@
+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=no])dnl
+
+dnl We may get other options which we don't document:
+dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
+
+test -z "[$]{with_target_subdir}" && with_target_subdir=.
+
+if test "[$]{srcdir}" = "."; then
+ if test "[$]{with_target_subdir}" != "."; then
+ newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
+ else
+ newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
+ fi
+else
+ newlib_basedir="[$]{srcdir}/$1"
+fi
+AC_SUBST(newlib_basedir)
+
+AC_CANONICAL_HOST
+
+AM_INIT_AUTOMAKE(newlib, 1.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 does AC_REQUIRE (AC_CANONICAL_BUILD). If we don't
+# run it explicitly here, it will be run implicitly before
+# NEWLIB_CONFIGURE, which doesn't work because that means that it will
+# be run before AC_CANONICAL_HOST.
+AC_CANONICAL_BUILD
+
+AC_CHECK_TOOL(AS, as)
+AC_CHECK_TOOL(AR, ar)
+AC_CHECK_TOOL(RANLIB, ranlib, :)
+
+AC_PROG_INSTALL
+
+AM_MAINTAINER_MODE
+
+# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
+# at least currently, we never actually build a program, so we never
+# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
+# fails, because we are probably configuring with a cross compiler
+# which can't create executables. So we include AC_EXEEXT to keep
+# automake happy, but we don't execute it, since we don't care about
+# the result.
+if false; then
+ AC_EXEEXT
+fi
+
+. [$]{newlib_basedir}/configure.host
+
+case [$]{newlib_basedir} in
+/* | [A-Za-z]:[/\\]*) newlib_flagbasedir=[$]{newlib_basedir} ;;
+*) newlib_flagbasedir='[$](top_builddir)/'[$]{newlib_basedir} ;;
+esac
+
+newlib_cflags="[$]{newlib_cflags} -I"'[$](top_builddir)'"/$1/targ-include -I[$]{newlib_flagbasedir}/libc/include"
+case "${host}" in
+ *-*-cygwin*)
+ newlib_cflags="[$]{newlib_cflags} -I[$]{newlib_flagbasedir}/../winsup/cygwin/include -I[$]{newlib_flagbasedir}/../winsup/w32api/include"
+ ;;
+esac
+
+newlib_cflags="[$]{newlib_cflags} -fno-builtin"
+
+NEWLIB_CFLAGS=${newlib_cflags}
+AC_SUBST(NEWLIB_CFLAGS)
+
+LDFLAGS=${ldflags}
+AC_SUBST(LDFLAGS)
+
+AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes)
+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])
+
Index: signal.s
===================================================================
--- signal.s (nonexistent)
+++ signal.s (revision 1765)
@@ -0,0 +1,16 @@
+/ According to the iBCS2 book, signal() has 0x30 in %eax, and the address
+/ of a function in %edx. This function is where a signal handler will
+/ return to; it should just adjust the stack pointer, and call $f,$0.
+/ Strange but true.
+ .globl signal
+
+sigret:
+ addl $4, %esp
+ lcall $0xf, $0
+signal:
+ movl $0x30, %eax
+ movl sigret, %edx
+ lcall $7,$0
+ jb _cerror
+/ The iBCS2 book also clears out %eax here, which seems to be broken.
+ ret
Index: rmdir.s
===================================================================
--- rmdir.s (nonexistent)
+++ rmdir.s (revision 1765)
@@ -0,0 +1,9 @@
+ .globl _rmdir
+ .globl rmdir
+_rmdir:
+rmdir:
+ movl $0x4f, %eax
+ lcall $7,$0
+ jb _cerror
+ xor %eax, %eax
+ ret
Index: pause.s
===================================================================
--- pause.s (nonexistent)
+++ pause.s (revision 1765)
@@ -0,0 +1,6 @@
+ .globl _pause
+_pause:
+ movl $0x1d, %eax
+ lcall $7,$0
+ jb _cerror
+ ret
Index: getdents.s
===================================================================
--- getdents.s (nonexistent)
+++ getdents.s (revision 1765)
@@ -0,0 +1,6 @@
+ .globl _getdents
+_getdents:
+ movl $0x51, %eax
+ lcall $7,$0
+ jb _cerror
+ ret