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/newlib/libc/sys/go32
- from Rev 57 to Rev 1765
- ↔ Reverse comparison
Rev 57 → Rev 1765
/Makefile.in
0,0 → 1,402
# Makefile.in generated automatically by automake 1.3 from Makefile.am |
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc. |
# This Makefile.in is free software; the Free Software Foundation |
# gives unlimited permission to copy and/or distribute it, |
# with or without modifications, as long as this notice is preserved. |
|
# This program is distributed in the hope that it will be useful, |
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without |
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A |
# PARTICULAR PURPOSE. |
|
|
SHELL = @SHELL@ |
|
srcdir = @srcdir@ |
top_srcdir = @top_srcdir@ |
VPATH = @srcdir@ |
prefix = @prefix@ |
exec_prefix = @exec_prefix@ |
|
bindir = @bindir@ |
sbindir = @sbindir@ |
libexecdir = @libexecdir@ |
datadir = @datadir@ |
sysconfdir = @sysconfdir@ |
sharedstatedir = @sharedstatedir@ |
localstatedir = @localstatedir@ |
libdir = @libdir@ |
infodir = @infodir@ |
mandir = @mandir@ |
includedir = @includedir@ |
oldincludedir = /usr/include |
|
DISTDIR = |
|
pkgdatadir = $(datadir)/@PACKAGE@ |
pkglibdir = $(libdir)/@PACKAGE@ |
pkgincludedir = $(includedir)/@PACKAGE@ |
|
top_builddir = . |
|
ACLOCAL = @ACLOCAL@ |
AUTOCONF = @AUTOCONF@ |
AUTOMAKE = @AUTOMAKE@ |
AUTOHEADER = @AUTOHEADER@ |
|
INSTALL = @INSTALL@ |
INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
INSTALL_DATA = @INSTALL_DATA@ |
INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
transform = @program_transform_name@ |
|
NORMAL_INSTALL = : |
PRE_INSTALL = : |
POST_INSTALL = : |
NORMAL_UNINSTALL = : |
PRE_UNINSTALL = : |
POST_UNINSTALL = : |
host_alias = @host_alias@ |
host_triplet = @host@ |
AR = @AR@ |
AS = @AS@ |
CC = @CC@ |
CPP = @CPP@ |
EXEEXT = @EXEEXT@ |
MAINT = @MAINT@ |
MAKEINFO = @MAKEINFO@ |
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@ |
PACKAGE = @PACKAGE@ |
RANLIB = @RANLIB@ |
VERSION = @VERSION@ |
machine_dir = @machine_dir@ |
newlib_basedir = @newlib_basedir@ |
sys_dir = @sys_dir@ |
|
AUTOMAKE_OPTIONS = cygnus |
|
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS) |
|
noinst_LIBRARIES = lib.a |
|
lib_a_SOURCES = \ |
_exit.s \ |
_main.c \ |
abort.c \ |
access.c \ |
bdos.c \ |
bdosptr.c \ |
brk.s \ |
chdir.s \ |
chmod.c \ |
chown.c \ |
clock.S \ |
close.s \ |
creat.s \ |
crlf2nl.c \ |
dir.c \ |
dosmem.S \ |
dpmi.c \ |
dup.s \ |
dup2.s \ |
exec.c \ |
fchmod.c \ |
findfirs.s \ |
findnext.s \ |
fixpath.c \ |
fstat.s \ |
fsync.s \ |
ftruncat.c \ |
gerrno.s \ |
getcwd.c \ |
getdate.c \ |
getdtabl.c \ |
getgid.c \ |
getkey.s \ |
getpages.c \ |
getpid.c \ |
getrusag.c \ |
gettime.c \ |
gettimeo.c \ |
getuid.c \ |
getwd.s \ |
go32func.c \ |
infoblk.c \ |
inportb.s \ |
inportl.s \ |
inportsb.s \ |
inportsl.s \ |
inportsw.s \ |
inportw.s \ |
int86x.s \ |
intdos.c \ |
intdosx.c \ |
isatty.s \ |
kbhit.s \ |
kill.c \ |
link.s \ |
longjmp.S \ |
lseek.s \ |
lstat.s \ |
mkdir.s \ |
open.s \ |
outportb.s \ |
outportl.s \ |
outportw.s \ |
outprtsb.s \ |
outprtsl.s \ |
outprtsw.s \ |
read.s \ |
readv.c \ |
rename.s \ |
rmdir.s \ |
sbrk.s \ |
screen.S \ |
setjmp.S \ |
setmode.s \ |
setstack.S \ |
settimeo.s \ |
sleep.c \ |
stat.c \ |
stat_ast.s \ |
syserr.c \ |
system.s \ |
tell.s \ |
time.c \ |
truncate.c \ |
turbo.s \ |
umask.c \ |
unlink.s \ |
utime.c \ |
utimes.c \ |
write.s \ |
writev.c |
|
ACLOCAL_AMFLAGS = -I ../../.. |
CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host |
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs |
CONFIG_CLEAN_FILES = |
LIBRARIES = $(noinst_LIBRARIES) |
|
|
DEFS = @DEFS@ -I. -I$(srcdir) |
CPPFLAGS = @CPPFLAGS@ |
LDFLAGS = @LDFLAGS@ |
LIBS = @LIBS@ |
lib_a_LIBADD = |
lib_a_OBJECTS = _exit.o _main.o abort.o access.o bdos.o bdosptr.o brk.o \ |
chdir.o chmod.o chown.o clock.o close.o creat.o crlf2nl.o dir.o \ |
dosmem.o dpmi.o dup.o dup2.o exec.o fchmod.o findfirs.o findnext.o \ |
fixpath.o fstat.o fsync.o ftruncat.o gerrno.o getcwd.o getdate.o \ |
getdtabl.o getgid.o getkey.o getpages.o getpid.o getrusag.o gettime.o \ |
gettimeo.o getuid.o getwd.o go32func.o infoblk.o inportb.o inportl.o \ |
inportsb.o inportsl.o inportsw.o inportw.o int86x.o intdos.o intdosx.o \ |
isatty.o kbhit.o kill.o link.o longjmp.o lseek.o lstat.o mkdir.o open.o \ |
outportb.o outportl.o outportw.o outprtsb.o outprtsl.o outprtsw.o \ |
read.o readv.o rename.o rmdir.o sbrk.o screen.o setjmp.o setmode.o \ |
setstack.o settimeo.o sleep.o stat.o stat_ast.o syserr.o system.o \ |
tell.o time.o truncate.o turbo.o umask.o unlink.o utime.o utimes.o \ |
write.o writev.o |
CFLAGS = @CFLAGS@ |
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) |
LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@ |
DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in |
|
|
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) |
|
TAR = tar |
GZIP = --best |
SOURCES = $(lib_a_SOURCES) |
OBJECTS = $(lib_a_OBJECTS) |
|
all: Makefile $(LIBRARIES) |
|
.SUFFIXES: |
.SUFFIXES: .S .c .o .s |
$(srcdir)/Makefile.in: @MAINT@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) |
cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile |
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status |
cd $(top_builddir) \ |
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status |
|
$(ACLOCAL_M4): @MAINT@ configure.in ../../../acinclude.m4 \ |
../../../aclocal.m4 |
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) |
|
config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) |
$(SHELL) ./config.status --recheck |
$(srcdir)/configure: @MAINT@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) |
cd $(srcdir) && $(AUTOCONF) |
|
mostlyclean-noinstLIBRARIES: |
|
clean-noinstLIBRARIES: |
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) |
|
distclean-noinstLIBRARIES: |
|
maintainer-clean-noinstLIBRARIES: |
|
.c.o: |
$(COMPILE) -c $< |
|
.s.o: |
$(COMPILE) -c $< |
|
.S.o: |
$(COMPILE) -c $< |
|
mostlyclean-compile: |
-rm -f *.o core *.core |
|
clean-compile: |
|
distclean-compile: |
-rm -f *.tab.c |
|
maintainer-clean-compile: |
|
lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES) |
-rm -f lib.a |
$(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD) |
$(RANLIB) lib.a |
|
tags: TAGS |
|
ID: $(HEADERS) $(SOURCES) $(LISP) |
here=`pwd` && cd $(srcdir) \ |
&& mkid -f$$here/ID $(SOURCES) $(HEADERS) $(LISP) |
|
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP) |
tags=; \ |
here=`pwd`; \ |
list='$(SOURCES) $(HEADERS)'; \ |
unique=`for i in $$list; do echo $$i; done | \ |
awk ' { files[$$0] = 1; } \ |
END { for (i in files) print i; }'`; \ |
test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \ |
|| (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS) |
|
mostlyclean-tags: |
|
clean-tags: |
|
distclean-tags: |
-rm -f TAGS ID |
|
maintainer-clean-tags: |
|
distdir = $(PACKAGE)-$(VERSION) |
top_distdir = $(distdir) |
|
# This target untars the dist file and tries a VPATH configuration. Then |
# it guarantees that the distribution is self-contained by making another |
# tarfile. |
distcheck: dist |
-rm -rf $(distdir) |
GZIP=$(GZIP) $(TAR) zxf $(distdir).tar.gz |
mkdir $(distdir)/=build |
mkdir $(distdir)/=inst |
dc_install_base=`cd $(distdir)/=inst && pwd`; \ |
cd $(distdir)/=build \ |
&& ../configure --srcdir=.. --prefix=$$dc_install_base \ |
&& $(MAKE) $(AM_MAKEFLAGS) \ |
&& $(MAKE) $(AM_MAKEFLAGS) dvi \ |
&& $(MAKE) $(AM_MAKEFLAGS) check \ |
&& $(MAKE) $(AM_MAKEFLAGS) install \ |
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \ |
&& $(MAKE) $(AM_MAKEFLAGS) dist |
-rm -rf $(distdir) |
@echo "========================"; \ |
echo "$(distdir).tar.gz is ready for distribution"; \ |
echo "========================" |
dist: distdir |
-chmod -R a+r $(distdir) |
GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) |
-rm -rf $(distdir) |
dist-all: distdir |
-chmod -R a+r $(distdir) |
GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) |
-rm -rf $(distdir) |
distdir: $(DISTFILES) |
-rm -rf $(distdir) |
mkdir $(distdir) |
-chmod 777 $(distdir) |
@for file in $(DISTFILES); do \ |
if test -f $$file; then d=.; else d=$(srcdir); fi; \ |
test -f $(distdir)/$$file \ |
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ |
|| cp -p $$d/$$file $(distdir)/$$file; \ |
done |
info: |
dvi: |
check: |
$(MAKE) $(AM_MAKEFLAGS) |
installcheck: |
install-info: |
install-exec: |
@$(NORMAL_INSTALL) |
|
install-data: |
@$(NORMAL_INSTALL) |
|
install: install-exec install-data all |
@: |
|
uninstall: |
|
install-strip: |
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install |
installdirs: |
|
|
mostlyclean-generic: |
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) |
|
clean-generic: |
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) |
|
distclean-generic: |
-rm -f Makefile $(DISTCLEANFILES) |
-rm -f config.cache config.log stamp-h stamp-h[0-9]* |
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) |
|
maintainer-clean-generic: |
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) |
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) |
mostlyclean: mostlyclean-noinstLIBRARIES mostlyclean-compile \ |
mostlyclean-tags mostlyclean-generic |
|
clean: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \ |
mostlyclean |
|
distclean: distclean-noinstLIBRARIES distclean-compile distclean-tags \ |
distclean-generic clean |
-rm -f config.status |
|
maintainer-clean: maintainer-clean-noinstLIBRARIES \ |
maintainer-clean-compile maintainer-clean-tags \ |
maintainer-clean-generic distclean |
@echo "This command is intended for maintainers to use;" |
@echo "it deletes files that may require special tools to rebuild." |
-rm -f config.status |
|
.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \ |
clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \ |
mostlyclean-compile distclean-compile clean-compile \ |
maintainer-clean-compile tags mostlyclean-tags distclean-tags \ |
clean-tags maintainer-clean-tags distdir info dvi installcheck \ |
install-info install-exec install-data install uninstall all \ |
installdirs mostlyclean-generic distclean-generic clean-generic \ |
maintainer-clean-generic clean mostlyclean distclean maintainer-clean |
|
|
all: crt0.o |
|
# Tell versions [3.59,3.63) of GNU make to not export all variables. |
# Otherwise a system limit (for SysV at least) may be exceeded. |
.NOEXPORT: |
/configure.in
0,0 → 1,12
dnl This is the newlib/libc/sys/go32 configure.in file. |
dnl Process this file with autoconf to produce a configure script. |
|
AC_PREREQ(2.5) |
AC_INIT(djtime.h) |
|
dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake. |
AC_CONFIG_AUX_DIR(../../../..) |
|
NEWLIB_CONFIGURE(../../..) |
|
AC_OUTPUT(Makefile) |
/configure
0,0 → 1,1598
#! /bin/sh |
|
# Guess values for system-dependent variables and create Makefiles. |
# Generated automatically using autoconf version 2.12.2 |
# 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-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= |
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 |
--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" ;; |
|
-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.12.2" |
exit 0 ;; |
|
-with-* | --with-*) |
ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` |
# Reject names that are not valid shell variable names. |
if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then |
{ echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } |
fi |
ac_package=`echo $ac_package| sed 's/-/_/g'` |
case "$ac_option" in |
*=*) ;; |
*) ac_optarg=yes ;; |
esac |
eval "with_${ac_package}='$ac_optarg'" ;; |
|
-without-* | --without-*) |
ac_package=`echo $ac_option|sed -e 's/-*without-//'` |
# Reject names that are not valid shell variable names. |
if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then |
{ echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } |
fi |
ac_package=`echo $ac_package| sed 's/-/_/g'` |
eval "with_${ac_package}=no" ;; |
|
--x) |
# Obsolete; use --with-x. |
with_x=yes ;; |
|
-x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ |
| --x-incl | --x-inc | --x-in | --x-i) |
ac_prev=x_includes ;; |
-x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ |
| --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) |
x_includes="$ac_optarg" ;; |
|
-x-libraries | --x-libraries | --x-librarie | --x-librari \ |
| --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) |
ac_prev=x_libraries ;; |
-x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ |
| --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) |
x_libraries="$ac_optarg" ;; |
|
-*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } |
;; |
|
*) |
if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then |
echo "configure: warning: $ac_option: invalid host type" 1>&2 |
fi |
if test "x$nonopt" != xNONE; then |
{ echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } |
fi |
nonopt="$ac_option" |
;; |
|
esac |
done |
|
if test -n "$ac_prev"; then |
{ echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } |
fi |
|
trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 |
|
# File descriptor usage: |
# 0 standard input |
# 1 file creation |
# 2 errors and warnings |
# 3 some systems may open it to /dev/tty |
# 4 used on the Kubota Titan |
# 6 checking for... messages and results |
# 5 compiler messages saved in config.log |
if test "$silent" = yes; then |
exec 6>/dev/null |
else |
exec 6>&1 |
fi |
exec 5>./config.log |
|
echo "\ |
This file contains any messages produced by compilers while |
running configure, to aid debugging if configure makes a mistake. |
" 1>&5 |
|
# Strip out --no-create and --no-recursion so they do not pile up. |
# Also quote any args containing shell metacharacters. |
ac_configure_args= |
for ac_arg |
do |
case "$ac_arg" in |
-no-create | --no-create | --no-creat | --no-crea | --no-cre \ |
| --no-cr | --no-c) ;; |
-no-recursion | --no-recursion | --no-recursio | --no-recursi \ |
| --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; |
*" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) |
ac_configure_args="$ac_configure_args '$ac_arg'" ;; |
*) ac_configure_args="$ac_configure_args $ac_arg" ;; |
esac |
done |
|
# NLS nuisances. |
# Only set these to C if already set. These must not be set unconditionally |
# because not all systems understand e.g. LANG=C (notably SCO). |
# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! |
# Non-C LC_CTYPE values break the ctype check. |
if test "${LANG+set}" = set; then LANG=C; export LANG; fi |
if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi |
if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi |
if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi |
|
# confdefs.h avoids OS command line length limits that DEFS can exceed. |
rm -rf conftest* confdefs.h |
# AIX cpp loses on an empty file, so make sure it contains at least a newline. |
echo > confdefs.h |
|
# A filename unique to this package, relative to the directory that |
# configure is in, which we can look for to find out if srcdir is correct. |
ac_unique_file=djtime.h |
|
# Find the source files, if location was not specified. |
if test -z "$srcdir"; then |
ac_srcdir_defaulted=yes |
# Try the directory containing this script, then its parent. |
ac_prog=$0 |
ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` |
test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. |
srcdir=$ac_confdir |
if test ! -r $srcdir/$ac_unique_file; then |
srcdir=.. |
fi |
else |
ac_srcdir_defaulted=no |
fi |
if test ! -r $srcdir/$ac_unique_file; then |
if test "$ac_srcdir_defaulted" = yes; then |
{ echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } |
else |
{ echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } |
fi |
fi |
srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` |
|
# Prefer explicitly selected file to automatically selected ones. |
if test -z "$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 |
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:567: 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_DATA" && INSTALL_DATA='${INSTALL} -m 644' |
|
|
test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' |
|
echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 |
echo "configure:621: 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:678: 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 Cygwin32 environment""... $ac_c" 1>&6 |
echo "configure:711: checking for Cygwin32 environment" >&5 |
if eval "test \"`echo '$''{'am_cv_cygwin32'+set}'`\" = set"; then |
echo $ac_n "(cached) $ac_c" 1>&6 |
else |
cat > conftest.$ac_ext <<EOF |
#line 716 "configure" |
#include "confdefs.h" |
|
int main() { |
return __CYGWIN32__; |
; return 0; } |
EOF |
if { (eval echo configure:723: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then |
rm -rf conftest* |
am_cv_cygwin32=yes |
else |
echo "configure: failed program was:" >&5 |
cat conftest.$ac_ext >&5 |
rm -rf conftest* |
am_cv_cygwin32=no |
fi |
rm -f conftest* |
rm -f conftest* |
fi |
|
echo "$ac_t""$am_cv_cygwin32" 1>&6 |
CYGWIN32= |
test "$am_cv_cygwin32" = yes && CYGWIN32=yes |
echo $ac_n "checking for Mingw32 environment""... $ac_c" 1>&6 |
echo "configure:740: checking for Mingw32 environment" >&5 |
if eval "test \"`echo '$''{'am_cv_mingw32'+set}'`\" = set"; then |
echo $ac_n "(cached) $ac_c" 1>&6 |
else |
cat > conftest.$ac_ext <<EOF |
#line 745 "configure" |
#include "confdefs.h" |
|
int main() { |
return __MINGW32__; |
; return 0; } |
EOF |
if { (eval echo configure:752: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then |
rm -rf conftest* |
am_cv_mingw32=yes |
else |
echo "configure: failed program was:" >&5 |
cat conftest.$ac_ext >&5 |
rm -rf conftest* |
am_cv_mingw32=no |
fi |
rm -f conftest* |
rm -f conftest* |
fi |
|
echo "$ac_t""$am_cv_mingw32" 1>&6 |
MINGW32= |
test "$am_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-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:826: 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.8.1 |
|
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:867: 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:880: 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:893: 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:906: 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:919: 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:944: 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=":" |
for ac_dir in $PATH; 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:973: 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 |
for ac_dir in $PATH; 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:1021: 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:1030: \"$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:1045: 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:1078: 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:1099: 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=":" |
for ac_dir in $PATH; 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:1130: 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=":" |
for ac_dir in $PATH; 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:1161: 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=":" |
for ac_dir in $PATH; 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:1192: 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=":" |
for ac_dir in $PATH; 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 |
|
|
|
test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' |
|
|
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 |
echo "configure:1229: 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 |
MAINT= |
else |
MAINT='#M#' |
fi |
|
|
|
# We need AM_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 AM_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:1258: checking for executable suffix" >&5 |
if eval "test \"`echo '$''{'am_cv_exeext'+set}'`\" = set"; then |
echo $ac_n "(cached) $ac_c" 1>&6 |
else |
if test "$CYGWIN32" = yes || test "$MINGW32" = yes; then |
am_cv_exeext=.exe |
else |
cat > am_c_test.c << 'EOF' |
int main() { |
/* Nothing needed here */ |
} |
EOF |
${CC-cc} -o am_c_test $CFLAGS $CPPFLAGS $LDFLAGS am_c_test.c $LIBS 1>&5 |
am_cv_exeext= |
for file in am_c_test.*; do |
case $file in |
*.c) ;; |
*.o) ;; |
*) am_cv_exeext=`echo $file | sed -e s/am_c_test//` ;; |
esac |
done |
rm -f am_c_test* |
fi |
|
test x"${am_cv_exeext}" = x && am_cv_exeext=no |
fi |
EXEEXT="" |
test x"${am_cv_exeext}" != xno && EXEEXT=${am_cv_exeext} |
echo "$ac_t""${am_cv_exeext}" 1>&6 |
|
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 |
*-*-cygwin32*) |
newlib_cflags="${newlib_cflags} -I${newlib_flagbasedir}/../winsup/include" |
;; |
esac |
|
newlib_cflags="${newlib_cflags} -fno-builtin" |
|
NEWLIB_CFLAGS=${newlib_cflags} |
|
|
|
|
|
|
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) 2>&1 | grep ac_space` 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.12.2" |
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%@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_DATA@%$INSTALL_DATA%g |
s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%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%@MAINT@%$MAINT%g |
s%@EXEEXT@%$EXEEXT%g |
s%@NEWLIB_CFLAGS@%$NEWLIB_CFLAGS%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=90 # 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: Makefile.am
===================================================================
--- Makefile.am (nonexistent)
+++ Makefile.am (revision 1765)
@@ -0,0 +1,105 @@
+## Process this file with automake to generate Makefile.in
+
+AUTOMAKE_OPTIONS = cygnus
+
+INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
+
+noinst_LIBRARIES = lib.a
+
+lib_a_SOURCES = \
+ _exit.s \
+ _main.c \
+ abort.c \
+ access.c \
+ bdos.c \
+ bdosptr.c \
+ brk.s \
+ chdir.s \
+ chmod.c \
+ chown.c \
+ clock.S \
+ close.s \
+ creat.s \
+ crlf2nl.c \
+ dir.c \
+ dosmem.S \
+ dpmi.c \
+ dup.s \
+ dup2.s \
+ exec.c \
+ fchmod.c \
+ findfirs.s \
+ findnext.s \
+ fixpath.c \
+ fstat.s \
+ fsync.s \
+ ftruncat.c \
+ gerrno.s \
+ getcwd.c \
+ getdate.c \
+ getdtabl.c \
+ getgid.c \
+ getkey.s \
+ getpages.c \
+ getpid.c \
+ getrusag.c \
+ gettime.c \
+ gettimeo.c \
+ getuid.c \
+ getwd.s \
+ go32func.c \
+ infoblk.c \
+ inportb.s \
+ inportl.s \
+ inportsb.s \
+ inportsl.s \
+ inportsw.s \
+ inportw.s \
+ int86x.s \
+ intdos.c \
+ intdosx.c \
+ isatty.s \
+ kbhit.s \
+ kill.c \
+ link.s \
+ longjmp.S \
+ lseek.s \
+ lstat.s \
+ mkdir.s \
+ open.s \
+ outportb.s \
+ outportl.s \
+ outportw.s \
+ outprtsb.s \
+ outprtsl.s \
+ outprtsw.s \
+ read.s \
+ readv.c \
+ rename.s \
+ rmdir.s \
+ sbrk.s \
+ screen.S \
+ setjmp.S \
+ setmode.s \
+ setstack.S \
+ settimeo.s \
+ sleep.c \
+ stat.c \
+ stat_ast.s \
+ syserr.c \
+ system.s \
+ tell.s \
+ time.c \
+ truncate.c \
+ turbo.s \
+ umask.c \
+ unlink.s \
+ utime.c \
+ utimes.c \
+ write.s \
+ writev.c
+
+all: crt0.o
+
+ACLOCAL_AMFLAGS = -I ../../..
+CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
Index: aclocal.m4
===================================================================
--- aclocal.m4 (nonexistent)
+++ aclocal.m4 (revision 1765)
@@ -0,0 +1,345 @@
+dnl aclocal.m4 generated automatically by aclocal 1.3b
+
+dnl Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+dnl PARTICULAR PURPOSE.
+
+dnl This provides configure definitions used by all the newlib
+dnl configure.in files.
+
+dnl Basic newlib configury. This calls basic introductory stuff,
+dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST. It also runs
+dnl configure.host. The only argument is the relative path to the top
+dnl newlib directory.
+
+AC_DEFUN(NEWLIB_CONFIGURE,
+[
+dnl Default to --enable-multilib
+AC_ARG_ENABLE(multilib,
+[ --enable-multilib build many library versions (default)],
+[case "${enableval}" in
+ yes) multilib=yes ;;
+ no) multilib=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
+ esac], [multilib=yes])dnl
+
+dnl Support --enable-target-optspace
+AC_ARG_ENABLE(target-optspace,
+[ --enable-target-optspace optimize for space],
+[case "${enableval}" in
+ yes) target_optspace=yes ;;
+ no) target_optspace=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;;
+ esac], [target_optspace=])dnl
+
+dnl Support --enable-newlib-mb
+AC_ARG_ENABLE(newlib-mb,
+[ --enable-newlib-mb enable multibyte support],
+[case "${enableval}" in
+ yes) newlib_mb=yes ;;
+ no) newlib_mb=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for newlib-mb option) ;;
+ esac], [newlib_mb=no])dnl
+
+dnl We may get other options which we don't document:
+dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
+
+test -z "[$]{with_target_subdir}" && with_target_subdir=.
+
+if test "[$]{srcdir}" = "."; then
+ if test "[$]{with_target_subdir}" != "."; then
+ newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
+ else
+ newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
+ fi
+else
+ newlib_basedir="[$]{srcdir}/$1"
+fi
+AC_SUBST(newlib_basedir)
+
+AC_CANONICAL_HOST
+
+AM_INIT_AUTOMAKE(newlib, 1.8.1)
+
+# 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, :)
+
+AM_PROG_INSTALL
+
+AM_MAINTAINER_MODE
+
+# We need AM_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 AM_EXEEXT to keep
+# automake happy, but we don't execute it, since we don't care about
+# the result.
+if false; then
+ AM_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
+ *-*-cygwin32*)
+ newlib_cflags="[$]{newlib_cflags} -I[$]{newlib_flagbasedir}/../winsup/include"
+ ;;
+esac
+
+newlib_cflags="[$]{newlib_cflags} -fno-builtin"
+
+NEWLIB_CFLAGS=${newlib_cflags}
+AC_SUBST(NEWLIB_CFLAGS)
+
+AC_SUBST(machine_dir)
+AC_SUBST(sys_dir)
+])
+
+# Do all the work for Automake. This macro actually does too much --
+# some checks are only needed if your package does certain things.
+# But this isn't really a big deal.
+
+# serial 1
+
+dnl Usage:
+dnl AM_INIT_AUTOMAKE(package,version, [no-define])
+
+AC_DEFUN(AM_INIT_AUTOMAKE,
+[AC_REQUIRE([AM_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")
+AC_DEFINE_UNQUOTED(VERSION, "$VERSION"))
+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])])
+
+
+# serial 1
+
+AC_DEFUN(AM_PROG_INSTALL,
+[AC_REQUIRE([AC_PROG_INSTALL])
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
+AC_SUBST(INSTALL_SCRIPT)dnl
+])
+
+#
+# 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)
+ if test $USE_MAINTAINER_MODE = yes; then
+ MAINT=
+ else
+ MAINT='#M#'
+ fi
+ AC_SUBST(MAINT)dnl
+]
+)
+
+# Check to see if we're running under Win32, without using
+# AC_CANONICAL_*. If so, set output variable EXEEXT to ".exe".
+# Otherwise set it to "".
+
+dnl AM_EXEEXT()
+dnl This knows we add .exe if we're building in the Cygwin32
+dnl environment. But if we're not, then it compiles a test program
+dnl to see if there is a suffix for executables.
+AC_DEFUN(AM_EXEEXT,
+[AC_REQUIRE([AM_CYGWIN32])
+AC_REQUIRE([AM_MINGW32])
+AC_MSG_CHECKING([for executable suffix])
+AC_CACHE_VAL(am_cv_exeext,
+[if test "$CYGWIN32" = yes || test "$MINGW32" = yes; then
+am_cv_exeext=.exe
+else
+cat > am_c_test.c << 'EOF'
+int main() {
+/* Nothing needed here */
+}
+EOF
+${CC-cc} -o am_c_test $CFLAGS $CPPFLAGS $LDFLAGS am_c_test.c $LIBS 1>&5
+am_cv_exeext=
+for file in am_c_test.*; do
+ case $file in
+ *.c) ;;
+ *.o) ;;
+ *) am_cv_exeext=`echo $file | sed -e s/am_c_test//` ;;
+ esac
+done
+rm -f am_c_test*])
+test x"${am_cv_exeext}" = x && am_cv_exeext=no
+fi
+EXEEXT=""
+test x"${am_cv_exeext}" != xno && EXEEXT=${am_cv_exeext}
+AC_MSG_RESULT(${am_cv_exeext})
+AC_SUBST(EXEEXT)])
+
+# Check to see if we're running under Cygwin32, without using
+# AC_CANONICAL_*. If so, set output variable CYGWIN32 to "yes".
+# Otherwise set it to "no".
+
+dnl AM_CYGWIN32()
+AC_DEFUN(AM_CYGWIN32,
+[AC_CACHE_CHECK(for Cygwin32 environment, am_cv_cygwin32,
+[AC_TRY_COMPILE(,[return __CYGWIN32__;],
+am_cv_cygwin32=yes, am_cv_cygwin32=no)
+rm -f conftest*])
+CYGWIN32=
+test "$am_cv_cygwin32" = yes && CYGWIN32=yes])
+
+# Check to see if we're running under Mingw, without using
+# AC_CANONICAL_*. If so, set output variable MINGW32 to "yes".
+# Otherwise set it to "no".
+
+dnl AM_MINGW32()
+AC_DEFUN(AM_MINGW32,
+[AC_CACHE_CHECK(for Mingw32 environment, am_cv_mingw32,
+[AC_TRY_COMPILE(,[return __MINGW32__;],
+am_cv_mingw32=yes, am_cv_mingw32=no)
+rm -f conftest*])
+MINGW32=
+test "$am_cv_mingw32" = yes && MINGW32=yes])
+
Index: findnext.s
===================================================================
--- findnext.s (nonexistent)
+++ findnext.s (revision 1765)
@@ -0,0 +1,16 @@
+ .globl _findnext
+_findnext:
+ pushl %ebx
+ pushl %esi
+ pushl %edi
+ movl 16(%esp),%edx
+ movb $0x1a,%ah
+ int $0x21
+
+ movb $0x4f,%ah
+ int $0x21
+
+ popl %edi
+ popl %esi
+ popl %ebx
+ jmp syscall_check
Index: readv.c
===================================================================
--- readv.c (nonexistent)
+++ readv.c (revision 1765)
@@ -0,0 +1,31 @@
+/* This is file READV.C */
+/*
+** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+#include
+#include
+
+readv(int handle, struct iovec *iov, int count)
+{
+ unsigned long r, t=0;
+ while (count)
+ {
+ r = read(handle, iov->iov_base, iov->iov_len);
+ if (r < 0)
+ return r;
+ t += r;
+ iov++;
+ count--;
+ }
+ return t;
+}
Index: stat_ast.s
===================================================================
--- stat_ast.s (nonexistent)
+++ stat_ast.s (revision 1765)
@@ -0,0 +1,21 @@
+/* This is file STAT_AST.S */
+/*
+** Copyright (C) 1993 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+**
+** Modified very slightly by Eric Backus.
+*/
+
+ .text
+ .globl __stat_assist
+__stat_assist:
+ movb $6,%al
+ jmp turbo_assist
Index: getgid.c
===================================================================
--- getgid.c (nonexistent)
+++ getgid.c (revision 1765)
@@ -0,0 +1,9 @@
+
+#include
+
+getgid()
+{
+
+ return 20;
+
+}
Index: dosmem.S
===================================================================
--- dosmem.S (nonexistent)
+++ dosmem.S (revision 1765)
@@ -0,0 +1,120 @@
+/* DOSMEM.S */
+/*
+** Copyright (C) 1993 C.W. Sandmann
+**
+** This file may be freely distributed as long as the author's name remains.
+** Extender environment independent way to set up Real area 1Mb access.
+** Procedure takes a single argument %eax which contains the real area offset.
+** After call, access may be made with "%gs:(%eax)"
+*/
+ .text
+ .align 2
+ .globl dosmemsetup
+dosmemsetup: /* no params, expected ASM call only */
+ pushl %eax
+ movzwl __core_select,%eax
+ testl %eax,%eax
+ je old_go32 /* Image run with pre-DPMI extender */
+ movw %ax,%gs /* Use real area selector */
+ popl %eax /* Plus real offset */
+ andl $0x0fffffff,%eax /* Clear any linear access bits */
+ ret
+ .align 2,0x90
+old_go32:
+ push %ds
+ pop %gs /* Use arena selector */
+ popl %eax
+ orl $0xe0000000,%eax /* Plus linear access area */
+ ret
+
+ .align 2
+ .globl _dosmemget
+_dosmemget: /* long offset, long len, long *buf */
+ push %gs
+ movl 8(%esp),%eax /* offset */
+ call dosmemsetup
+ movl 12(%esp),%ecx /* length */
+ movl 16(%esp),%edx /* arena offset */
+ pushl %esi
+ pushl %edi
+ movl %eax,%esi
+ movl %edx,%edi
+ push %ds
+ push %es
+ push %ds
+ pop %es
+ push %gs
+ pop %ds
+ cld
+ rep
+ movsb /* move ECX bytes from Real area */
+ pop %es
+ pop %ds
+ popl %edi
+ popl %esi
+ pop %gs
+ ret
+
+ .align 2
+ .globl _dosmemput
+_dosmemput: /* long *buf, long len, long offset */
+ push %gs
+ movl 16(%esp),%eax /* offset */
+ call dosmemsetup
+ movl 12(%esp),%ecx /* length */
+ movl 8(%esp),%edx /* arena offset */
+ pushl %esi
+ pushl %edi
+ movl %eax,%edi
+ movl %edx,%esi
+ push %es
+ push %gs
+ pop %es
+ cld
+ rep
+ movsb /* move ECX bytes to Real area */
+ pop %es
+ popl %edi
+ popl %esi
+ pop %gs
+ ret
+
+ .align 2 /* 8(bp) 12(bp) 16(bp) 20(bp) 24(bp) */
+ .globl _movedata /* src_sel, src_ofs, dest_sel, dest_ofs, len */
+_movedata:
+ pushl %ebp
+ movl %esp,%ebp
+ pushw %ds
+ pushw %es
+ pushl %esi
+ pushl %edi
+
+ movl 8(%ebp),%eax
+ movw %ax,%ds
+ movl 12(%ebp),%esi
+
+ movl 16(%ebp),%eax
+ movw %ax,%es
+ movl 20(%ebp),%edi
+
+ movl 24(%ebp),%ecx
+ pushl %ecx
+ shrl $2,%ecx
+ jcxz no_big_move
+ rep
+ movsl
+no_big_move:
+ popl %ecx
+ andl $3,%ecx
+ jcxz no_little_move
+ rep
+ movsb
+no_little_move:
+
+ popl %edi
+ popl %esi
+ popw %es
+ popw %ds
+ leave
+ ret
+
Index: utimes.c
===================================================================
--- utimes.c (nonexistent)
+++ utimes.c (revision 1765)
@@ -0,0 +1,15 @@
+/* This is file UTIMES.C */
+/*
+** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+utimes(){}
Index: inportl.s
===================================================================
--- inportl.s (nonexistent)
+++ inportl.s (revision 1765)
@@ -0,0 +1,19 @@
+#/* This is file INPORTL.S */
+#/*
+#** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+#**
+#** This file is distributed under the terms listed in the document
+#** "copying.dj", available from DJ Delorie at the address above.
+#** A copy of "copying.dj" should accompany this file; if not, a copy
+#** should be available from where this file was obtained. This file
+#** may not be distributed without a verbatim copy of "copying.dj".
+#**
+#** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#*/
+
+ .globl _inportl
+_inportl:
+ movl 4(%esp),%edx
+ inl %dx,%eax
+ ret
Index: dup.s
===================================================================
--- dup.s (nonexistent)
+++ dup.s (revision 1765)
@@ -0,0 +1,28 @@
+# /* This is file DUP.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+ .text
+ .globl _dup
+_dup:
+ pushl %ebx
+ pushl %esi
+ pushl %edi
+ movl 16(%esp),%ebx
+ movb $0x45,%ah
+ int $0x21
+ popl %edi
+ popl %esi
+ popl %ebx
+ jb syscall_error
+ ret
Index: sleep.c
===================================================================
--- sleep.c (nonexistent)
+++ sleep.c (revision 1765)
@@ -0,0 +1,27 @@
+/* This is file sleep.c */
+/*
+** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+
+sleep(unsigned int seconds)
+{
+ long tnow, tthen;
+ time(&tnow);
+ tthen = tnow + seconds;
+ while (1)
+ {
+ time(&tnow);
+ if (tnow >= tthen)
+ return;
+ }
+}
Index: chdir.s
===================================================================
--- chdir.s (nonexistent)
+++ chdir.s (revision 1765)
@@ -0,0 +1,27 @@
+# /* This is file CHDIR.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+ .text
+ .globl _chdir
+_chdir:
+ pushl %ebx
+ pushl %esi
+ pushl %edi
+ movl 16(%esp),%edx
+ movb $0x3b,%ah
+ int $0x21
+ popl %edi
+ popl %esi
+ popl %ebx
+ jmp syscall_check
Index: getpid.c
===================================================================
--- getpid.c (nonexistent)
+++ getpid.c (revision 1765)
@@ -0,0 +1,18 @@
+/* This is file GETPID.C */
+/*
+** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+getpid()
+{
+ return 42; /* Why not? */
+}
Index: gerrno.s
===================================================================
--- gerrno.s (nonexistent)
+++ gerrno.s (revision 1765)
@@ -0,0 +1,33 @@
+# /* This is file GERRNO.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+# Modified to use newlib's reent mechanism, 960414, dje.
+# Reentrancy isn't really supported of course, the purpose is to
+# record `errno' in the normal place.
+
+ .text
+ .globl syscall_error
+syscall_error:
+ pushl %eax
+ call ___errno
+ popl %edx
+ mov %edx,(%eax)
+ mov $-1,%eax
+ ret
+
+ .globl syscall_check
+syscall_check:
+ jb syscall_error
+ mov $0,%eax
+ ret
Index: link.s
===================================================================
--- link.s (nonexistent)
+++ link.s (revision 1765)
@@ -0,0 +1,28 @@
+# /* This is file LINK.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+ .text
+ .globl _link
+_link:
+ pushl %ebx
+ pushl %esi
+ pushl %edi
+ movl 16(%esp),%edx
+ movl 20(%esp),%edi
+ movb $0x56,%ah
+ int $0x21
+ pop %edi
+ pop %esi
+ pop %ebx
+ jmp syscall_check
Index: go32.h
===================================================================
--- go32.h (nonexistent)
+++ go32.h (revision 1765)
@@ -0,0 +1,70 @@
+/* This is file go32.h */
+/*
+** Copyright (C) 1993 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+#ifndef _GO32_H_
+#define _GO32_H_
+
+#include
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* This must match go32/proginfo.h */
+
+typedef struct {
+ u_long size_of_this_structure_in_bytes;
+ u_long linear_address_of_primary_screen;
+ u_long linear_address_of_secondary_screen;
+ u_long linear_address_of_transfer_buffer;
+ u_long size_of_transfer_buffer; /* >= 4k */
+ u_long pid;
+ u_char master_interrupt_controller_base;
+ u_char slave_interrupt_controller_base;
+ u_short selector_for_linear_memory;
+ u_long linear_address_of_stub_info_structure;
+ u_long linear_address_of_original_psp;
+ u_short run_mode;
+ u_short run_mode_info;
+} Go32_Info_Block;
+
+extern Go32_Info_Block _go32_info_block;
+
+#define _GO32_RUN_MODE_UNDEF 0
+#define _GO32_RUN_MODE_RAW 1
+#define _GO32_RUN_MODE_XMS 2
+#define _GO32_RUN_MODE_VCPI 3
+#define _GO32_RUN_MODE_DPMI 4
+
+void dosmemget(int offset, int length, void *buffer);
+void dosmemput(const void *buffer, int length, int offset);
+void movedata(unsigned source_selector, unsigned source_offset,
+ unsigned dest_selector, unsigned dest_offset,
+ size_t length);
+
+/* returns number of times hit since last call. (zero first time) */
+u_long _go32_was_ctrl_break_hit();
+void _go32_want_ctrl_break(int yes); /* auto-yes if call above function */
+
+u_short _go32_my_cs();
+u_short _go32_my_ds();
+u_short _go32_my_ss();
+u_short _go32_conventional_mem_selector();
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
Index: inportsb.s
===================================================================
--- inportsb.s (nonexistent)
+++ inportsb.s (revision 1765)
@@ -0,0 +1,25 @@
+#/* This is file INPORTSB.S */
+#/*
+#** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+#**
+#** This file is distributed under the terms listed in the document
+#** "copying.dj", available from DJ Delorie at the address above.
+#** A copy of "copying.dj" should accompany this file; if not, a copy
+#** should be available from where this file was obtained. This file
+#** may not be distributed without a verbatim copy of "copying.dj".
+#**
+#** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#*/
+
+ .globl _inportsb
+_inportsb:
+ pushl %edi
+ movl 8(%esp),%edx
+ movl 12(%esp),%edi
+ movl 16(%esp),%ecx
+ rep
+ insb
+ popl %edi
+ ret
+
Index: setmode.s
===================================================================
--- setmode.s (nonexistent)
+++ setmode.s (revision 1765)
@@ -0,0 +1,19 @@
+# /* This is file SETMODE.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+ .text
+ .globl _setmode
+_setmode:
+ movb $8,%al
+ jmp turbo_assist
Index: tell.s
===================================================================
--- tell.s (nonexistent)
+++ tell.s (revision 1765)
@@ -0,0 +1,33 @@
+# /* This is file TELL.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+ .text
+ .globl _tell
+_tell:
+ pushl %ebx
+ pushl %esi
+ pushl %edi
+ movl 16(%esp),%ebx
+ movl $0,%ecx
+ movl $0,%edx
+ movw $0x4201,%ax
+ int $0x21
+ popl %edi
+ popl %esi
+ popl %ebx
+ jb syscall_error
+ shll $16,%edx
+ andl $0xffff,%eax
+ orl %edx,%eax
+ ret
Index: writev.c
===================================================================
--- writev.c (nonexistent)
+++ writev.c (revision 1765)
@@ -0,0 +1,31 @@
+/* This is file WRITEV.C */
+/*
+** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+#include
+#include
+
+writev(int handle, struct iovec *iov, int count)
+{
+ unsigned long r, t=0;
+ while (count)
+ {
+ r = write(handle, iov->iov_base, iov->iov_len);
+ if (r < 0)
+ return r;
+ t += r;
+ iov++;
+ count--;
+ }
+ return t;
+}
Index: getuid.c
===================================================================
--- getuid.c (nonexistent)
+++ getuid.c (revision 1765)
@@ -0,0 +1,9 @@
+
+#include
+
+getuid()
+{
+
+ return 10;
+
+}
Index: setjmp.S
===================================================================
--- setjmp.S (nonexistent)
+++ setjmp.S (revision 1765)
@@ -0,0 +1,61 @@
+/* This is file SETJMP.S */
+/*
+** Copyright (C) 1993 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+/*
+** jmp_buf:
+** eax ebx ecx edx esi edi ebp esp eip es fs gs ss
+** 0 4 8 12 16 20 24 28 32 36 38 40 42
+*/
+
+ .globl _setjmp /* jmp_buf */
+_setjmp:
+ pushl %ebp
+ movl %esp,%ebp
+
+ pushl %edi
+ movl 8(%ebp),%edi
+
+ movl %eax,0(%edi)
+ movl %ebx,4(%edi)
+ movl %ecx,8(%edi)
+ movl %edx,12(%edi)
+ movl %esi,16(%edi)
+
+ movl -4(%ebp),%eax
+ movl %eax,20(%edi)
+
+ movl 0(%ebp),%eax
+ movl %eax,24(%edi)
+
+ movl %esp,%eax
+ addl $12,%eax
+ movl %eax,28(%edi)
+
+ movl 4(%ebp),%eax
+ movl %eax,32(%edi)
+
+ movw %es, %ax
+ movw %ax, 36(%edi)
+ movw %fs, %ax
+ movw %ax, 38(%edi)
+ movw %gs, %ax
+ movw %ax, 40(%edi)
+ movw %ss, %ax
+ movw %ax, 42(%edi)
+
+ popl %edi
+ movl $0,%eax
+ leave
+ ret
+
Index: _main.c
===================================================================
--- _main.c (nonexistent)
+++ _main.c (revision 1765)
@@ -0,0 +1,3 @@
+__main()
+{
+}
Index: infoblk.c
===================================================================
--- infoblk.c (nonexistent)
+++ infoblk.c (revision 1765)
@@ -0,0 +1,4 @@
+#include "go32.h"
+
+Go32_Info_Block _go32_info_block = { sizeof(Go32_Info_Block) };
+
Index: close.s
===================================================================
--- close.s (nonexistent)
+++ close.s (revision 1765)
@@ -0,0 +1,27 @@
+# /* This is file CLOSE.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+ .text
+ .globl _close
+_close:
+ pushl %ebx
+ pushl %esi
+ pushl %edi
+ movl 16(%esp),%ebx
+ movb $0x3e,%ah
+ int $0x21
+ popl %edi
+ popl %esi
+ popl %ebx
+ jmp syscall_check
Index: longjmp.S
===================================================================
--- longjmp.S (nonexistent)
+++ longjmp.S (revision 1765)
@@ -0,0 +1,65 @@
+/* This is file LONGJMP.S */
+/*
+** Copyright (C) 1993 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+/*
+** jmp_buf:
+** eax ebx ecx edx esi edi ebp esp eip es fs gs ss
+** 0 4 8 12 16 20 24 28 32 36 38 40 42
+*/
+
+ .globl _longjmp /* jmp_buf, int */
+_longjmp:
+ pushl %ebp
+ movl %esp,%ebp
+
+ movl 8(%ebp),%edi /* get jmp_buf */
+ movl 12(%ebp),%eax /* store retval in j->eax */
+ testl %eax,%eax
+ jne 0f
+ incl %eax
+0:
+ movl %eax,0(%edi)
+
+ movl 24(%edi),%ebp
+
+ pushfl /* get flags so will only re-enable */
+ popl %ebx /* interrupts if they were previously */
+ /* enabled */
+
+ cli
+ movw 42(%edi),%ax
+ movw %ax,%ss
+ movl 28(%edi),%esp
+
+ pushl 32(%edi) /* for a ret! */
+
+ pushl %ebx /* save flags that contain previous */
+ /* interrupt state */
+
+ movw 36(%edi),%ax
+ movw %ax,%es
+ movw 38(%edi),%ax
+ movw %ax,%fs
+ movw 40(%edi),%ax
+ movw %ax,%gs
+ movl 0(%edi),%eax
+ movl 4(%edi),%ebx
+ movl 8(%edi),%ecx
+ movl 12(%edi),%edx
+ movl 16(%edi),%esi
+ movl 20(%edi),%edi
+
+ popfl /* restore previous interrupt state */
+
+ ret /* actually jump to new eip */
Index: ftruncat.c
===================================================================
--- ftruncat.c (nonexistent)
+++ ftruncat.c (revision 1765)
@@ -0,0 +1,25 @@
+/* This is file FTRUNCAT.C */
+/*
+** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+#include
+
+/*
+** Note: this only works right if you close the file right after truncating!
+*/
+
+ftruncate(int fd, unsigned long where)
+{
+ lseek(fd, where, 0);
+ write(fd, 0, 0);
+}
Index: bdos.c
===================================================================
--- bdos.c (nonexistent)
+++ bdos.c (revision 1765)
@@ -0,0 +1,12 @@
+#include
+#include "dos.h"
+
+bdos(int func, unsigned dx, unsigned al)
+{
+ union REGS r;
+ r.x.dx = dx;
+ r.h.ah = func;
+ r.h.al = al;
+ int86(0x21, &r, &r);
+ return r.x.ax;
+}
Index: crt0.S
===================================================================
--- crt0.S (nonexistent)
+++ crt0.S (revision 1765)
@@ -0,0 +1,233 @@
+
+/*
+** Called as start(argc, argv, envp)
+*/
+
+/* gs:edx points to prog_info structure. All other registers are OBSOLETE
+** but included for backwards compatibility
+*/
+
+/* These symbols are for global constructors and destructors */
+#if 0
+ .section .ctor
+ .globl ___go32_first_ctor
+___go32_first_ctor:
+ .section .dtor
+ .globl ___go32_last_ctor
+___go32_last_ctor:
+ .globl ___go32_first_dtor
+___go32_first_dtor:
+ .data
+ .globl ___go32_last_dtor
+___go32_last_dtor:
+#endif
+ .text
+ .globl _start
+_start:
+ .globl start
+start:
+#ifdef EMU387
+ pusha
+ push %gs
+#endif
+ movl %eax,__hard_master
+ movl %esi,___pid
+ movl %edi,___transfer_buffer
+ movl %ebx,_ScreenPrimary
+ movl %ebp,_ScreenSecondary
+
+ cmpl $0, %edx
+ je Lcopy_none
+ movw %gs,%cx
+ movw %ds,%ax
+ cmpw %cx,%ax
+ je Lcopy_none
+
+ movl %gs:(%edx), %ecx
+ cmpl __go32_info_block, %ecx
+ jbe Lcopy_less
+ movl __go32_info_block, %ecx
+Lcopy_less:
+ movl $__go32_info_block, %edi
+ addl $3, %ecx
+ andl $0xfffffffc, %ecx
+ movl %ecx, (%edi)
+ addl $4, %edi
+ addl $4, %edx
+ subl $4, %ecx
+Lcopy_more:
+ movl %gs:(%edx), %eax
+ movl %eax, (%edi)
+ addl $4, %edx
+ addl $4, %edi
+ subl $4, %ecx
+ jnz Lcopy_more
+
+ movl __go32_info_block+4, %eax
+ movl %eax, _ScreenPrimary
+ movl __go32_info_block+8, %eax
+ movl %eax, _ScreenSecondary
+/* Backward compatibility - do not copy this one!
+** movl __go32_info_block+12, %eax
+** movl %eax, ___transfer_buffer
+*/
+ movl __go32_info_block+20, %eax
+ movl %eax, ___pid
+ movl __go32_info_block+24, %eax
+ movl %eax, __hard_master
+
+ jmp Lcopy_done
+
+Lcopy_none:
+ movl %ebx,__go32_info_block+4
+ movl %ebp,__go32_info_block+8
+ movl %edi,__go32_info_block+12
+ movl $4096,__go32_info_block+16
+ movl %esi,__go32_info_block+20
+ movl %eax,__go32_info_block+24
+ movl $28, __go32_info_block
+Lcopy_done:
+
+#ifndef EMU387
+ call __setstack
+#endif
+ xorl %esi,%esi
+ xorl %edi,%edi
+ xorl %ebp,%ebp
+ xorl %ebx,%ebx
+
+ movl %esp,%ebx
+#ifdef MAKE_GCRT0
+ call mcount_init /* initialize the profiler */
+#endif
+ movl 8(%ebx),%eax
+ pushl %eax
+ movl %eax,_environ
+ pushl 4(%ebx)
+ pushl (%ebx)
+ call ___main
+ call _main
+ addl $12,%esp
+#ifdef EMU387
+ pop %gs
+ popa
+#else
+ pushl %eax
+ call _exit
+
+exit_again:
+ movl $0x4c00,%eax
+ int $0x21
+ jmp exit_again
+#endif
+
+ ret
+
+
+#ifdef MAKE_GCRT0
+ .globl __exit
+__exit:
+ call mcount_write /* make sure we dump the output */
+exit_again2:
+ movb 4(%esp),%al
+ movb $0x4c,%ah
+ int $0x21
+ jmp exit_again2
+
+/* Here is where we initialize the timer interrupt - specific to go32 */
+/* In this case, the timer calls mcount_isr */
+ .globl mcount_isr_init
+mcount_isr_init:
+ movw __go32_info_block+36, %ax /* run mode */
+ cmp $1,%ax
+ jb skip_mcount
+ cmp $3,%ax
+ ja skip_mcount
+
+ movw $16,%ax
+ movw %ax,%gs
+
+ movzbl __hard_master,%eax /* timer is on irq 0 */
+ shll $3,%eax /* times 8 bpv */
+/* movl $960,%eax vector 0x78 * 8 bpv */
+ movw %gs:(%eax),%cx
+ movw %cx,mc_chain
+ movw %gs:6(%eax),%cx
+ movw %cx,mc_chain_hi
+ movw %gs:2(%eax),%cx
+ movw %cx,mc_chain_sel
+
+ movl $mcount_isr,%ecx
+ movw %cx,%gs:(%eax)
+ movw $0xd8,%gs:2(%eax) /* selector 27 == 32-bit code */
+ movw $0x8f00,%gs:4(%eax)
+ rorl $16,%ecx
+ movw %cx,%gs:6(%eax)
+ movw %ds,%ax
+ movw %ax,%gs
+skip_mcount:
+ movl mcount_histogram,%eax
+ movl $1,(%eax)
+ ret
+
+/* Obtain the PC where we interrupted, and bump the histogram. We should */
+/* do error checking here, but we don't. This routine is specific to go32 */
+/* in some spots */
+mcount_isr:
+ pushl %eax
+ cmpl $1,mcount_skip
+ je L0
+ movl 4(%esp),%eax /* get the PC */
+ subl $0x1020,%eax /* to fit in low..high */
+ andl $0xfffffffc,%eax
+ shrl $1,%eax /* now points to one 4-byte entry */
+ addl mcount_histogram,%eax
+ incw (%eax)
+L0:
+ popl %eax
+ ljmp mc_chain /* chain to the next timer vector */
+ iret
+#endif
+
+ .data
+
+ .globl _environ
+_environ:
+ .long 0
+
+ .globl ___pid
+___pid:
+ .long 42
+
+ .globl ___transfer_buffer
+___transfer_buffer:
+ .long 0
+
+ .globl _ScreenPrimary
+_ScreenPrimary:
+ .long 0
+
+ .globl _ScreenSecondary
+_ScreenSecondary:
+ .long 0
+
+ .globl __hard_master
+ .globl __hard_slave
+ .globl __core_select
+__hard_master:
+ .byte 0
+__hard_slave:
+ .byte 0
+__core_select:
+ .short 0
+
+#ifdef MAKE_GCRT0
+mc_chain:
+ .short 0
+mc_chain_hi:
+ .short 0
+mc_chain_sel:
+ .short 0
+#endif
+
+
Index: dpmi.c
===================================================================
--- dpmi.c (nonexistent)
+++ dpmi.c (revision 1765)
@@ -0,0 +1,413 @@
+#include
+#include "dos.h"
+#include "go32.h"
+#include
+#include "dpmi.h"
+
+static union REGS r;
+static struct SREGS s;
+
+int _go32_dpmi_allocate_dos_memory(_go32_dpmi_seginfo *info)
+{
+ r.x.ax = 0x0100;
+ r.x.bx = info->size;
+ int86(0x31, &r, &r);
+ if (r.x.flags & 1)
+ {
+ info->size = r.x.bx;
+ return r.x.ax;
+ }
+ else
+ {
+ info->rm_segment = r.x.ax;
+ info->pm_selector = r.x.dx;
+ return 0;
+ }
+}
+
+int _go32_dpmi_free_dos_memory(_go32_dpmi_seginfo *info)
+{
+ r.x.ax = 0x0101;
+ r.x.dx = info->pm_selector;
+ int86(0x31, &r, &r);
+ if (r.x.flags & 1)
+ {
+ return r.x.ax;
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+int _go32_dpmi_resize_dos_memory(_go32_dpmi_seginfo *info)
+{
+ r.x.ax = 0x0102;
+ r.x.bx = info->size;
+ r.x.dx = info->pm_selector;
+ int86(0x31, &r, &r);
+ if (r.x.flags & 1)
+ {
+ info->size = r.x.bx;
+ return r.x.ax;
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+int _go32_dpmi_get_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info)
+{
+ r.x.ax = 0x0200;
+ r.h.bl = vector;
+ int86(0x31, &r, &r);
+ info->rm_segment = r.x.cx;
+ info->rm_offset = r.x.dx;
+ return 0;
+}
+
+int _go32_dpmi_set_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info)
+{
+ r.x.ax = 0x0201;
+ r.h.bl = vector;
+ r.x.cx = info->rm_segment;
+ r.x.dx = info->rm_offset;
+ int86(0x31, &r, &r);
+ return 0;
+}
+
+int _go32_dpmi_get_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info)
+{
+ r.x.ax = 0x0204;
+ r.h.bl = vector;
+ int86(0x31, &r, &r);
+ info->pm_selector = r.x.cx;
+ info->pm_offset = r.x.dx;
+ return 0;
+}
+
+int _go32_dpmi_set_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info)
+{
+ r.x.ax = 0x0205;
+ r.h.bl = vector;
+ r.x.cx = info->pm_selector;
+ r.x.dx = info->pm_offset;
+ int86(0x31, &r, &r);
+ if (r.x.flags & 1)
+ {
+ return r.x.ax;
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+/* In real DPMI, we enter with only CS known, and SS on a locked 4K stack which
+ is *NOT* our SS. We must set up everthing, including a stack swap, then
+ restore it the way we found it. C. Sandmann 4-93 */
+
+static unsigned char wrapper_intcommon[] = {
+0x1e, /* push ds */
+0x06, /* push es */
+0x0f, 0xa0, /* push fs */
+0x0f, 0xa8, /* push gs */
+0x60, /* pusha */
+0x66, 0xb8, 0x34, 0x12, /* mov ax,0x1234 */
+0x8e, 0xd8, /* mov ds,ax */
+0x8e, 0xc0, /* mov es,ax */
+0x8e, 0xe0, /* mov fs,ax */
+0x8e, 0xe8, /* mov gs,ax */
+0xbb, 0x00, 0x00, 0x00, 0x00, /* mov ebx,_local_stack */
+0xfc, /* cld */
+0x89, 0xe1, /* mov ecx,esp */
+0x8c, 0xd2, /* mov dx,ss */
+0x8e, 0xd0, /* mov ss,ax */
+0x89, 0xdc, /* mov esp,ebx */
+0x52, /* push edx */
+0x51, /* push ecx */
+0xe8, 0x00, 0x00, 0x00, 0x00, /* call _rmih */
+0x58, /* pop eax */
+0x5b, /* pop ebx */
+0x8e, 0xd3, /* mov ss,bx */
+0x89, 0xc4, /* mov esp,eax */
+0x61, /* popa */
+0x0f, 0xa9, /* pop gs */
+0x0f, 0xa1, /* pop fs */
+0x07, /* pop es */
+0x1f /* pop ds */
+};
+
+static unsigned char wrapper_intiret[] = {
+0xcf /* iret */
+};
+
+static unsigned char wrapper_intchain[] = {
+0x2e, 0xff, 0x2d, 0x00, 0x00, 0x00, 0x00, /* jmp cs:[_old_int+39] */
+0xcf, /* iret */
+0x78, 0x56, 0x34, 0x12,
+0xcd, 0xab
+};
+
+/* _interrupt_stack_size can be changed globally before calling this routine if
+ needed. Don't change it between calls or you will mess up the malloc chain ! */
+
+unsigned _interrupt_stack_size = 32256;
+
+int _go32_dpmi_chain_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info)
+{
+ char *mystack;
+ unsigned char *wrapper = (unsigned char *)malloc(sizeof(wrapper_intcommon) + sizeof(wrapper_intchain));
+ if (wrapper == 0)
+ return 0x8015;
+ mystack = (char *)malloc(_interrupt_stack_size);
+ if (mystack == 0)
+ return 0x8015;
+
+ r.x.ax = 0x0204;
+ r.h.bl = vector;
+ int86(0x31, &r, &r);
+
+ memcpy(wrapper, wrapper_intcommon, sizeof(wrapper_intcommon));
+ memcpy(wrapper+sizeof(wrapper_intcommon), wrapper_intchain, sizeof(wrapper_intchain));
+ *(short *)(wrapper+9) = _go32_my_ds();
+ *(long *)(wrapper+20) = (int)mystack + _interrupt_stack_size;
+ *(long *)(wrapper+36) = info->pm_offset - (int)wrapper - 40;
+ *(long *)(wrapper+sizeof(wrapper_intcommon)+3) = (long)wrapper+sizeof(wrapper_intcommon)+8;
+ *(long *)(wrapper+sizeof(wrapper_intcommon)+8) = r.x.dx;
+ *(short *)(wrapper+sizeof(wrapper_intcommon)+12) = r.x.cx;
+
+ r.x.ax = 0x0205;
+ r.h.bl = vector;
+ r.x.cx = _go32_my_cs();
+ r.x.dx = (int)wrapper;
+ int86(0x31, &r, &r);
+ return 0;
+}
+
+int _go32_dpmi_allocate_iret_wrapper(_go32_dpmi_seginfo *info)
+{
+ char *mystack;
+ unsigned char *wrapper = (unsigned char *)malloc(sizeof(wrapper_intcommon) + sizeof(wrapper_intiret));
+ if (wrapper == 0)
+ return 0x8015;
+ mystack = (char *)malloc(_interrupt_stack_size);
+ if (mystack == 0)
+ return 0x8015;
+
+ memcpy(wrapper, wrapper_intcommon, sizeof(wrapper_intcommon));
+ memcpy(wrapper+sizeof(wrapper_intcommon), wrapper_intiret, sizeof(wrapper_intiret));
+ *(short *)(wrapper+9) = _go32_my_ds();
+ *(long *)(wrapper+20) = (int)mystack + _interrupt_stack_size;
+ *(long *)(wrapper+36) = info->pm_offset - (int)wrapper - 40;
+
+ info->pm_offset = (int)wrapper;
+ return 0;
+}
+
+int _go32_dpmi_free_iret_wrapper(_go32_dpmi_seginfo *info)
+{
+ char *mystack;
+ char *wrapper = (char *)info->pm_offset;
+ mystack = (char *)(*(long *)(wrapper+20) - _interrupt_stack_size);
+ free(mystack);
+ free(wrapper);
+ return 0;
+}
+
+int _go32_dpmi_simulate_int(int vector, _go32_dpmi_registers *regs)
+{
+ r.h.bl = vector;
+ r.h.bh = 0;
+ r.x.cx = 0;
+ r.x.di = (int)regs;
+ if (vector == 0x21 && regs->x.ax == 0x4b00)
+ {
+ r.x.ax = 0xff0a;
+ int86(0x21, &r, &r);
+ }
+ else
+ {
+ r.x.ax = 0x0300;
+ int86(0x31, &r, &r);
+ }
+ if (r.x.flags & 1)
+ {
+ return r.x.ax;
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+int _go32_dpmi_simulate_fcall(_go32_dpmi_registers *regs)
+{
+ r.x.ax = 0x0301;
+ r.h.bh = 0;
+ r.x.cx = 0;
+ r.x.di = (int)regs;
+ int86(0x31, &r, &r);
+ if (r.x.flags & 1)
+ {
+ return r.x.ax;
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+int _go32_dpmi_simulate_fcall_iret(_go32_dpmi_registers *regs)
+{
+ r.x.ax = 0x0302;
+ r.h.bh = 0;
+ r.x.cx = 0;
+ r.x.di = (int)regs;
+ int86(0x31, &r, &r);
+ if (r.x.flags & 1)
+ {
+ return r.x.ax;
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+/* Bug here; this needs to be fixed like above with SS & CLD */
+
+static unsigned char wrapper_common[] = {
+0x66, 0x06, /* push es */
+0x66, 0x1e, /* push ds */
+0x66, 0x06, /* push es */
+0x66, 0x1f, /* pop ds */
+0x56, /* push esi */
+0x57, /* push edi */
+0xe8, 0x00, 0x00, 0x00, 0x00, /* call _rmcb */
+0x5f, /* pop edi */
+0x5e, /* pop esi */
+0x66, 0x1f, /* pop ds */
+0x66, 0x07, /* pop es */
+0xfc, /* cld */
+0x66, 0x8b, 0x06, /* mov ax,[esi] */
+0x66, 0x26, 0x89, 0x47, 0x2a, /* mov es:[edi+42],ax */
+0x66, 0x8b, 0x46, 0x02, /* mov ax,[esi+2] */
+0x66, 0x26, 0x89, 0x47, 0x2c, /* mov es:[edi+44],ax */
+};
+
+static unsigned char wrapper_retf[] = {
+0x66, 0x26, 0x83, 0x47, 0x2e, 0x04, /* add es:[edi+46],0x4 */
+0xcf /* iret */
+};
+
+static unsigned char wrapper_iret[] = {
+0x66, 0x8b, 0x46, 0x04, /* mov ax,[esi+4] */
+0x66, 0x26, 0x89, 0x47, 0x20, /* mov es:[edi+32],ax */
+0x66, 0x26, 0x83, 0x47, 0x2e, 0x06, /* add es:[edi+46],0x6 */
+0xcf /* iret */
+};
+
+int _go32_dpmi_allocate_real_mode_callback_retf(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs)
+{
+ unsigned char *wrapper = (unsigned char *)malloc(sizeof(wrapper_common) + sizeof(wrapper_retf));
+ if (wrapper == 0)
+ return 0x8015;
+
+ memcpy(wrapper, wrapper_common, sizeof(wrapper_common));
+ memcpy(wrapper+sizeof(wrapper_common), wrapper_retf, sizeof(wrapper_retf));
+ *(long *)(wrapper+11) = info->pm_offset - (int)wrapper - 15;
+ info->size = (int)wrapper;
+
+ r.x.ax = 0x0303;
+ r.x.si = (int)wrapper;
+ r.x.di = (int)regs;
+ s.ds = _go32_my_cs();
+ s.es = _go32_my_ds();
+ s.fs = 0;
+ s.gs = 0;
+ int86x(0x31, &r, &r, &s);
+ if (r.x.flags & 1)
+ {
+ return r.x.ax;
+ }
+ else
+ {
+ info->rm_segment = r.x.cx;
+ info->rm_offset = r.x.dx;
+ return 0;
+ }
+}
+
+int _go32_dpmi_allocate_real_mode_callback_iret(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs)
+{
+ unsigned char *wrapper = (unsigned char *)malloc(sizeof(wrapper_common) + sizeof(wrapper_iret));
+ if (wrapper == 0)
+ return 0x8015;
+
+ memcpy(wrapper, wrapper_common, sizeof(wrapper_common));
+ memcpy(wrapper+sizeof(wrapper_common), wrapper_iret, sizeof(wrapper_iret));
+ *(long *)(wrapper+11) = info->pm_offset - (int)wrapper - 15;
+ info->size = (int)wrapper;
+
+ r.x.ax = 0x0303;
+ r.x.si = (int)wrapper;
+ r.x.di = (int)regs;
+ s.ds = _go32_my_cs();
+ s.es = _go32_my_ds();
+ s.fs = 0;
+ s.gs = 0;
+ int86x(0x31, &r, &r, &s);
+ if (r.x.flags & 1)
+ {
+ return r.x.ax;
+ }
+ else
+ {
+ info->rm_segment = r.x.cx;
+ info->rm_offset = r.x.dx;
+ return 0;
+ }
+}
+
+int _go32_dpmi_free_real_mode_callback(_go32_dpmi_seginfo *info)
+{
+ free((char *)info->size);
+ r.x.ax = 0x0304;
+ r.x.cx = info->rm_segment;
+ r.x.dx = info->rm_offset;
+ int86(0x31, &r, &r);
+ if (r.x.flags & 1)
+ {
+ return r.x.ax;
+ }
+ else
+ {
+ return 0;
+ }
+}
+
+int _go32_dpmi_get_free_memory_information(_go32_dpmi_meminfo *info)
+{
+ r.x.ax = 0x0500;
+ r.x.di = (int)info;
+ int86(0x31, &r, &r);
+ return 0;
+}
+
+u_long _go32_dpmi_remaining_physical_memory()
+{
+ _go32_dpmi_meminfo info;
+ _go32_dpmi_get_free_memory_information(&info);
+ if (info.available_physical_pages)
+ return info.available_physical_pages * 4096;
+ return info.available_memory;
+}
+
+u_long _go32_dpmi_remaining_virtual_memory()
+{
+ _go32_dpmi_meminfo info;
+ _go32_dpmi_get_free_memory_information(&info);
+ return info.available_memory;
+}
Index: inportsl.s
===================================================================
--- inportsl.s (nonexistent)
+++ inportsl.s (revision 1765)
@@ -0,0 +1,24 @@
+#/* This is file INPORTSL.S */
+#/*
+#** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+#**
+#** This file is distributed under the terms listed in the document
+#** "copying.dj", available from DJ Delorie at the address above.
+#** A copy of "copying.dj" should accompany this file; if not, a copy
+#** should be available from where this file was obtained. This file
+#** may not be distributed without a verbatim copy of "copying.dj".
+#**
+#** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#*/
+
+ .globl _inportsl
+_inportsl:
+ pushl %edi
+ movl 8(%esp),%edx
+ movl 12(%esp),%edi
+ movl 16(%esp),%ecx
+ rep
+ insl
+ popl %edi
+ ret
Index: read.s
===================================================================
--- read.s (nonexistent)
+++ read.s (revision 1765)
@@ -0,0 +1,30 @@
+# /* This is file READ.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+ .text
+ .globl _read
+_read:
+ pushl %ebx
+ pushl %esi
+ pushl %edi
+ movl 16(%esp),%ebx
+ movl 20(%esp),%edx
+ movl 24(%esp),%ecx
+ movb $0x3f,%ah
+ int $0x21
+ popl %edi
+ popl %esi
+ popl %ebx
+ jb syscall_error
+ ret
Index: brk.s
===================================================================
--- brk.s (nonexistent)
+++ brk.s (revision 1765)
@@ -0,0 +1,27 @@
+# /* This is file BRK.S */
+# /*
+# ** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+# **
+# ** This file is distributed under the terms listed in the document
+# ** "copying.dj", available from DJ Delorie at the address above.
+# ** A copy of "copying.dj" should accompany this file; if not, a copy
+# ** should be available from where this file was obtained. This file
+# ** may not be distributed without a verbatim copy of "copying.dj".
+# **
+# ** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+# ** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# */
+
+ .text
+ .globl _brk
+_brk:
+ pushl %ebx
+ pushl %esi
+ pushl %edi
+ movw $0x4a00,%ax
+ movl 16(%esp),%ebx
+ int $0x21
+ popl %edi
+ popl %esi
+ popl %ebx
+ ret
Index: dpmi.h
===================================================================
--- dpmi.h (nonexistent)
+++ dpmi.h (revision 1765)
@@ -0,0 +1,151 @@
+/* This is file dpmi.h */
+/*
+** Copyright (C) 1993 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+**
+** This file is distributed under the terms listed in the document
+** "copying.dj", available from DJ Delorie at the address above.
+** A copy of "copying.dj" should accompany this file; if not, a copy
+** should be available from where this file was obtained. This file
+** may not be distributed without a verbatim copy of "copying.dj".
+**
+** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+*/
+
+#ifndef _DPMI_H_
+#define _DPMI_H_
+
+
+#include
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef union {
+ struct {
+ u_long edi;
+ u_long esi;
+ u_long ebp;
+ u_long res;
+ u_long ebx;
+ u_long edx;
+ u_long ecx;
+ u_long eax;
+ } d;
+ struct {
+ u_short di, di_hi;
+ u_short si, si_hi;
+ u_short bp, bp_hi;
+ u_short res, res_hi;
+ u_short bx, bx_hi;
+ u_short dx, dx_hi;
+ u_short cx, cx_hi;
+ u_short ax, ax_hi;
+ u_short flags;
+ u_short es;
+ u_short ds;
+ u_short fs;
+ u_short gs;
+ u_short ip;
+ u_short cs;
+ u_short sp;
+ u_short ss;
+ } x;
+ struct {
+ u_char edi[4];
+ u_char esi[4];
+ u_char ebp[4];
+ u_char res[4];
+ u_char bl, bh, ebx_b2, ebx_b3;
+ u_char dl, dh, edx_b2, edx_b3;
+ u_char cl, ch, ecx_b2, ecx_b3;
+ u_char al, ah, eax_b2, eax_b3;
+ } h;
+} _go32_dpmi_registers;
+
+typedef struct {
+ u_long size;
+ u_long pm_offset;
+ u_short pm_selector;
+ u_short rm_offset;
+ u_short rm_segment;
+} _go32_dpmi_seginfo;
+
+typedef struct {
+ u_long available_memory;
+ u_long available_pages;
+ u_long available_lockable_pages;
+ u_long linear_space;
+ u_long unlocked_pages;
+ u_long available_physical_pages;
+ u_long total_physical_pages;
+ u_long free_linear_space;
+ u_long max_pages_in_paging_file;
+ u_long reserved[3];
+} _go32_dpmi_meminfo;
+
+/* returns zero if success, else dpmi error and info->size is max size */
+int _go32_dpmi_allocate_dos_memory(_go32_dpmi_seginfo *info);
+ /* set size to bytes/16, call, use rm_segment. Do not
+ change anthing but size until the memory is freed.
+ If error, max size is returned in size as bytes/16. */
+int _go32_dpmi_free_dos_memory(_go32_dpmi_seginfo *info);
+ /* set new size to bytes/16, call. If error, max size
+ is returned in size as bytes/16 */
+int _go32_dpmi_resize_dos_memory(_go32_dpmi_seginfo *info);
+ /* uses pm_selector to free memory */
+
+/* These both use the rm_segment:rm_offset fields only */
+int _go32_dpmi_get_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info);
+int _go32_dpmi_set_real_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info);
+
+/* These do NOT wrap the function in pm_offset in an iret handler.
+ You must provide an assembler interface yourself, or alloc one below.
+ You may NOT longjmp out of an interrupt handler. */
+int _go32_dpmi_get_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info);
+ /* puts vector in pm_selector:pm_offset. */
+int _go32_dpmi_set_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info);
+ /* sets vector from pm_offset and pm_selector */
+int _go32_dpmi_chain_protected_mode_interrupt_vector(int vector, _go32_dpmi_seginfo *info);
+ /* sets up wrapper that calls function in pm_offset, chaining to old
+ handler when it returns */
+
+/* These can be used to generate assember IRET-style wrappers for functions */
+int _go32_dpmi_allocate_iret_wrapper(_go32_dpmi_seginfo *info);
+ /* Put function ptr in pm_offset, call, returns wrapper entry in pm_offset. */
+int _go32_dpmi_free_iret_wrapper(_go32_dpmi_seginfo *info);
+ /* assumes pm_offset points to wrapper, frees it */
+
+/* simulate real mode calls. CS:IP from regs for non-interrupt */
+int _go32_dpmi_simulate_int(int vector, _go32_dpmi_registers *regs);
+int _go32_dpmi_simulate_fcall(_go32_dpmi_registers *regs);
+int _go32_dpmi_simulate_fcall_iret(_go32_dpmi_registers *regs);
+
+/* These automatically handle the tasks of restructuring the
+ real-mode stack for the proper return type. The callback
+ (info->pm_offset) is called as (*pmcb)(_go32_dpmi_registers *regs); */
+int _go32_dpmi_allocate_real_mode_callback_retf(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs);
+ /* points callback at pm_offset, returns seg:ofs of callback addr
+ in rm_segment:rm_offset. Do not change any fields until freed.
+ Interface is added to simulate far return */
+int _go32_dpmi_allocate_real_mode_callback_iret(_go32_dpmi_seginfo *info, _go32_dpmi_registers *regs);
+ /* same, but simulates iret */
+int _go32_dpmi_free_real_mode_callback(_go32_dpmi_seginfo *info);
+ /* frees callback */
+
+/* Only available_memory is guaranteed to be valid. Try
+ available_physical_pages for phys mem left */
+int _go32_dpmi_get_free_memory_information(_go32_dpmi_meminfo *info);
+
+/* Convenience functions. These use the above memory info call.
+ The return value is *bytes* */
+u_long _go32_dpmi_remaining_physical_memory(void);
+u_long _go32_dpmi_remaining_virtual_memory(void);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
Index: outportb.s
===================================================================
--- outportb.s (nonexistent)
+++ outportb.s (revision 1765)
@@ -0,0 +1,21 @@
+#/* This is file OUTPORTB.S */
+#/*
+#** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
+#**
+#** This file is distributed under the terms listed in the document
+#** "copying.dj", available from DJ Delorie at the address above.
+#** A copy of "copying.dj" should accompany this file; if not, a copy
+#** should be available from where this file was obtained. This file
+#** may not be distributed without a verbatim copy of "copying.dj".
+#**
+#** This file is distributed WITHOUT ANY WARRANTY; without even the implied
+#** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#*/
+
+ .globl _outportb
+_outportb:
+ movl 4(%esp),%edx
+ movl 8(%esp),%eax
+# outb %al,%dx
+ .byte 0xee
+ ret
Index: time.c
===================================================================
--- time.c (nonexistent)
+++ time.c (revision 1765)
@@ -0,0 +1,53 @@
+/*
+FUNCTION
+<