Commit iq2000 port
This commit is contained in:
parent
dcbf037e2b
commit
bfdfd7e60d
|
@ -1,3 +1,14 @@
|
||||||
|
2003-06-10 Stan Cox <scox@redhat.com>
|
||||||
|
Anthony Green <green@redhat.com>
|
||||||
|
|
||||||
|
* configure.host: Add iq2000 support.
|
||||||
|
* newlib/libc/include/machine/ieeefp.h: Ditto.
|
||||||
|
* newlib/libc/include/machine/setjmp.h: Ditto.
|
||||||
|
* libc/machine/iq2000, libc/machine/iq2000/setjmp.S,
|
||||||
|
libc/machine/iq2000/aclocal.m4, libc/machine/iq2000/configure,
|
||||||
|
libc/machine/iq2000/configure.in, libc/machine/iq2000/Makefile.am,
|
||||||
|
libc/machine/iq2000/Makefile.in: New files.
|
||||||
|
|
||||||
2003-06-10 Richard Sandiford <rsandifo@redhat.com>
|
2003-06-10 Richard Sandiford <rsandifo@redhat.com>
|
||||||
|
|
||||||
* libc/sys/h8300hms/setarch.h: New file.
|
* libc/sys/h8300hms/setarch.h: New file.
|
||||||
|
|
|
@ -131,6 +131,9 @@ case "${host_cpu}" in
|
||||||
;;
|
;;
|
||||||
ia64*)
|
ia64*)
|
||||||
;;
|
;;
|
||||||
|
iq2000)
|
||||||
|
machine_dir=iq2000
|
||||||
|
;;
|
||||||
m32r*)
|
m32r*)
|
||||||
machine_dir=m32r
|
machine_dir=m32r
|
||||||
;;
|
;;
|
||||||
|
@ -515,6 +518,10 @@ case "${host}" in
|
||||||
i[34567]86-*-netware*)
|
i[34567]86-*-netware*)
|
||||||
newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES -DNO_EXEC -DABORT_PROVIDED -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DHAVE_FCNTL"
|
newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES -DNO_EXEC -DABORT_PROVIDED -DCLOCK_PROVIDED -DMALLOC_PROVIDED -DHAVE_FCNTL"
|
||||||
;;
|
;;
|
||||||
|
iq2000*)
|
||||||
|
syscall_dir=syscalls
|
||||||
|
newlib_cflags="${newlib_cflags} -DWANT_PRINTF_LONG_LONG"
|
||||||
|
;;
|
||||||
m32r-*-*)
|
m32r-*-*)
|
||||||
# Pass -msdata=sdata so _impure_ptr goes in .sdata.
|
# Pass -msdata=sdata so _impure_ptr goes in .sdata.
|
||||||
# We don't generate sda relocs however for upward compatibility.
|
# We don't generate sda relocs however for upward compatibility.
|
||||||
|
|
|
@ -234,6 +234,10 @@
|
||||||
#define _DOUBLE_IS_32BITS
|
#define _DOUBLE_IS_32BITS
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef __iq2000__
|
||||||
|
#define __IEEE_BIG_ENDIAN
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef __MAVERICK__
|
#ifdef __MAVERICK__
|
||||||
#ifdef __ARMEL__
|
#ifdef __ARMEL__
|
||||||
# define __IEEE_LITTLE_ENDIAN
|
# define __IEEE_LITTLE_ENDIAN
|
||||||
|
|
|
@ -167,6 +167,10 @@ typedef int jmp_buf[_JBLEN];
|
||||||
#define _JBLEN 10
|
#define _JBLEN 10
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef __iq2000__
|
||||||
|
#define _JBLEN 32
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef __mcore__
|
#ifdef __mcore__
|
||||||
#define _JBLEN 16
|
#define _JBLEN 16
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
## 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 = setjmp.S
|
||||||
|
|
||||||
|
ACLOCAL_AMFLAGS = -I ../../..
|
||||||
|
CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
|
|
@ -0,0 +1,327 @@
|
||||||
|
# Makefile.in generated automatically by automake 1.4 from Makefile.am
|
||||||
|
|
||||||
|
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
|
||||||
|
# This Makefile.in is free software; the Free Software Foundation
|
||||||
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
|
# with or without modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||||
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
# PARTICULAR PURPOSE.
|
||||||
|
|
||||||
|
|
||||||
|
SHELL = @SHELL@
|
||||||
|
|
||||||
|
srcdir = @srcdir@
|
||||||
|
top_srcdir = @top_srcdir@
|
||||||
|
VPATH = @srcdir@
|
||||||
|
prefix = @prefix@
|
||||||
|
exec_prefix = @exec_prefix@
|
||||||
|
|
||||||
|
bindir = @bindir@
|
||||||
|
sbindir = @sbindir@
|
||||||
|
libexecdir = @libexecdir@
|
||||||
|
datadir = @datadir@
|
||||||
|
sysconfdir = @sysconfdir@
|
||||||
|
sharedstatedir = @sharedstatedir@
|
||||||
|
localstatedir = @localstatedir@
|
||||||
|
libdir = @libdir@
|
||||||
|
infodir = @infodir@
|
||||||
|
mandir = @mandir@
|
||||||
|
includedir = @includedir@
|
||||||
|
oldincludedir = /usr/include
|
||||||
|
|
||||||
|
DESTDIR =
|
||||||
|
|
||||||
|
pkgdatadir = $(datadir)/@PACKAGE@
|
||||||
|
pkglibdir = $(libdir)/@PACKAGE@
|
||||||
|
pkgincludedir = $(includedir)/@PACKAGE@
|
||||||
|
|
||||||
|
top_builddir = .
|
||||||
|
|
||||||
|
ACLOCAL = @ACLOCAL@
|
||||||
|
AUTOCONF = @AUTOCONF@
|
||||||
|
AUTOMAKE = @AUTOMAKE@
|
||||||
|
AUTOHEADER = @AUTOHEADER@
|
||||||
|
|
||||||
|
INSTALL = @INSTALL@
|
||||||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
|
||||||
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||||
|
transform = @program_transform_name@
|
||||||
|
|
||||||
|
NORMAL_INSTALL = :
|
||||||
|
PRE_INSTALL = :
|
||||||
|
POST_INSTALL = :
|
||||||
|
NORMAL_UNINSTALL = :
|
||||||
|
PRE_UNINSTALL = :
|
||||||
|
POST_UNINSTALL = :
|
||||||
|
build_alias = @build_alias@
|
||||||
|
build_triplet = @build@
|
||||||
|
host_alias = @host_alias@
|
||||||
|
host_triplet = @host@
|
||||||
|
target_alias = @target_alias@
|
||||||
|
target_triplet = @target@
|
||||||
|
AR = @AR@
|
||||||
|
AS = @AS@
|
||||||
|
CC = @CC@
|
||||||
|
CPP = @CPP@
|
||||||
|
EXEEXT = @EXEEXT@
|
||||||
|
LDFLAGS = @LDFLAGS@
|
||||||
|
MAINT = @MAINT@
|
||||||
|
MAKEINFO = @MAKEINFO@
|
||||||
|
NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
|
||||||
|
OBJEXT = @OBJEXT@
|
||||||
|
PACKAGE = @PACKAGE@
|
||||||
|
RANLIB = @RANLIB@
|
||||||
|
VERSION = @VERSION@
|
||||||
|
aext = @aext@
|
||||||
|
libm_machine_dir = @libm_machine_dir@
|
||||||
|
machine_dir = @machine_dir@
|
||||||
|
newlib_basedir = @newlib_basedir@
|
||||||
|
oext = @oext@
|
||||||
|
sys_dir = @sys_dir@
|
||||||
|
|
||||||
|
AUTOMAKE_OPTIONS = cygnus
|
||||||
|
|
||||||
|
INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
|
||||||
|
|
||||||
|
noinst_LIBRARIES = lib.a
|
||||||
|
|
||||||
|
lib_a_SOURCES = setjmp.S
|
||||||
|
|
||||||
|
ACLOCAL_AMFLAGS = -I ../../..
|
||||||
|
CONFIG_STATUS_DEPENDENCIES = $(newlib_basedir)/configure.host
|
||||||
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||||
|
mkinstalldirs = $(SHELL) $(top_srcdir)/../../../../mkinstalldirs
|
||||||
|
CONFIG_CLEAN_FILES =
|
||||||
|
LIBRARIES = $(noinst_LIBRARIES)
|
||||||
|
|
||||||
|
|
||||||
|
DEFS = @DEFS@ -I. -I$(srcdir)
|
||||||
|
CPPFLAGS = @CPPFLAGS@
|
||||||
|
LIBS = @LIBS@
|
||||||
|
lib_a_LIBADD =
|
||||||
|
lib_a_OBJECTS = setjmp.o
|
||||||
|
CFLAGS = @CFLAGS@
|
||||||
|
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
||||||
|
CCLD = $(CC)
|
||||||
|
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
|
||||||
|
DIST_COMMON = Makefile.am Makefile.in aclocal.m4 configure configure.in
|
||||||
|
|
||||||
|
|
||||||
|
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
|
||||||
|
|
||||||
|
TAR = gtar
|
||||||
|
GZIP_ENV = --best
|
||||||
|
SOURCES = $(lib_a_SOURCES)
|
||||||
|
OBJECTS = $(lib_a_OBJECTS)
|
||||||
|
|
||||||
|
all: all-redirect
|
||||||
|
.SUFFIXES:
|
||||||
|
.SUFFIXES: .S .c .o .s
|
||||||
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
|
||||||
|
cd $(top_srcdir) && $(AUTOMAKE) --cygnus Makefile
|
||||||
|
|
||||||
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||||
|
cd $(top_builddir) \
|
||||||
|
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
|
||||||
|
|
||||||
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.in \
|
||||||
|
../../../acinclude.m4 ../../../aclocal.m4 \
|
||||||
|
../../../libtool.m4
|
||||||
|
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
|
||||||
|
|
||||||
|
config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||||
|
$(SHELL) ./config.status --recheck
|
||||||
|
$(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
|
||||||
|
cd $(srcdir) && $(AUTOCONF)
|
||||||
|
|
||||||
|
mostlyclean-noinstLIBRARIES:
|
||||||
|
|
||||||
|
clean-noinstLIBRARIES:
|
||||||
|
-test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
|
||||||
|
|
||||||
|
distclean-noinstLIBRARIES:
|
||||||
|
|
||||||
|
maintainer-clean-noinstLIBRARIES:
|
||||||
|
|
||||||
|
.c.o:
|
||||||
|
$(COMPILE) -c $<
|
||||||
|
|
||||||
|
.s.o:
|
||||||
|
$(COMPILE) -c $<
|
||||||
|
|
||||||
|
.S.o:
|
||||||
|
$(COMPILE) -c $<
|
||||||
|
|
||||||
|
mostlyclean-compile:
|
||||||
|
-rm -f *.o core *.core
|
||||||
|
|
||||||
|
clean-compile:
|
||||||
|
|
||||||
|
distclean-compile:
|
||||||
|
-rm -f *.tab.c
|
||||||
|
|
||||||
|
maintainer-clean-compile:
|
||||||
|
|
||||||
|
lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES)
|
||||||
|
-rm -f lib.a
|
||||||
|
$(AR) cru lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD)
|
||||||
|
$(RANLIB) lib.a
|
||||||
|
|
||||||
|
tags: TAGS
|
||||||
|
|
||||||
|
ID: $(HEADERS) $(SOURCES) $(LISP)
|
||||||
|
list='$(SOURCES) $(HEADERS)'; \
|
||||||
|
unique=`for i in $$list; do echo $$i; done | \
|
||||||
|
awk ' { files[$$0] = 1; } \
|
||||||
|
END { for (i in files) print i; }'`; \
|
||||||
|
here=`pwd` && cd $(srcdir) \
|
||||||
|
&& mkid -f$$here/ID $$unique $(LISP)
|
||||||
|
|
||||||
|
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
|
||||||
|
tags=; \
|
||||||
|
here=`pwd`; \
|
||||||
|
list='$(SOURCES) $(HEADERS)'; \
|
||||||
|
unique=`for i in $$list; do echo $$i; done | \
|
||||||
|
awk ' { files[$$0] = 1; } \
|
||||||
|
END { for (i in files) print i; }'`; \
|
||||||
|
test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
|
||||||
|
|| (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
|
||||||
|
|
||||||
|
mostlyclean-tags:
|
||||||
|
|
||||||
|
clean-tags:
|
||||||
|
|
||||||
|
distclean-tags:
|
||||||
|
-rm -f TAGS ID
|
||||||
|
|
||||||
|
maintainer-clean-tags:
|
||||||
|
|
||||||
|
distdir = $(PACKAGE)-$(VERSION)
|
||||||
|
top_distdir = $(distdir)
|
||||||
|
|
||||||
|
# This target untars the dist file and tries a VPATH configuration. Then
|
||||||
|
# it guarantees that the distribution is self-contained by making another
|
||||||
|
# tarfile.
|
||||||
|
distcheck: dist
|
||||||
|
-rm -rf $(distdir)
|
||||||
|
GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
|
||||||
|
mkdir $(distdir)/=build
|
||||||
|
mkdir $(distdir)/=inst
|
||||||
|
dc_install_base=`cd $(distdir)/=inst && pwd`; \
|
||||||
|
cd $(distdir)/=build \
|
||||||
|
&& ../configure --srcdir=.. --prefix=$$dc_install_base \
|
||||||
|
&& $(MAKE) $(AM_MAKEFLAGS) \
|
||||||
|
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
|
||||||
|
&& $(MAKE) $(AM_MAKEFLAGS) check \
|
||||||
|
&& $(MAKE) $(AM_MAKEFLAGS) install \
|
||||||
|
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
|
||||||
|
&& $(MAKE) $(AM_MAKEFLAGS) dist
|
||||||
|
-rm -rf $(distdir)
|
||||||
|
@banner="$(distdir).tar.gz is ready for distribution"; \
|
||||||
|
dashes=`echo "$$banner" | sed s/./=/g`; \
|
||||||
|
echo "$$dashes"; \
|
||||||
|
echo "$$banner"; \
|
||||||
|
echo "$$dashes"
|
||||||
|
dist: distdir
|
||||||
|
-chmod -R a+r $(distdir)
|
||||||
|
GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
|
||||||
|
-rm -rf $(distdir)
|
||||||
|
dist-all: distdir
|
||||||
|
-chmod -R a+r $(distdir)
|
||||||
|
GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
|
||||||
|
-rm -rf $(distdir)
|
||||||
|
distdir: $(DISTFILES)
|
||||||
|
-rm -rf $(distdir)
|
||||||
|
mkdir $(distdir)
|
||||||
|
-chmod 777 $(distdir)
|
||||||
|
@for file in $(DISTFILES); do \
|
||||||
|
if test -f $$file; then d=.; else d=$(srcdir); fi; \
|
||||||
|
if test -d $$d/$$file; then \
|
||||||
|
cp -pr $$d/$$file $(distdir)/$$file; \
|
||||||
|
else \
|
||||||
|
test -f $(distdir)/$$file \
|
||||||
|
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|
||||||
|
|| cp -p $$d/$$file $(distdir)/$$file || :; \
|
||||||
|
fi; \
|
||||||
|
done
|
||||||
|
info-am:
|
||||||
|
info: info-am
|
||||||
|
dvi-am:
|
||||||
|
dvi: dvi-am
|
||||||
|
check-am:
|
||||||
|
check: check-am
|
||||||
|
installcheck-am:
|
||||||
|
installcheck: installcheck-am
|
||||||
|
install-info-am:
|
||||||
|
install-info: install-info-am
|
||||||
|
install-exec-am:
|
||||||
|
install-exec: install-exec-am
|
||||||
|
|
||||||
|
install-data-am:
|
||||||
|
install-data: install-data-am
|
||||||
|
|
||||||
|
install-am: all-am
|
||||||
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||||
|
install: install-am
|
||||||
|
uninstall-am:
|
||||||
|
uninstall: uninstall-am
|
||||||
|
all-am: Makefile $(LIBRARIES)
|
||||||
|
all-redirect: all-am
|
||||||
|
install-strip:
|
||||||
|
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
|
||||||
|
installdirs:
|
||||||
|
|
||||||
|
|
||||||
|
mostlyclean-generic:
|
||||||
|
|
||||||
|
clean-generic:
|
||||||
|
|
||||||
|
distclean-generic:
|
||||||
|
-rm -f Makefile $(CONFIG_CLEAN_FILES)
|
||||||
|
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
|
||||||
|
|
||||||
|
maintainer-clean-generic:
|
||||||
|
mostlyclean-am: mostlyclean-noinstLIBRARIES mostlyclean-compile \
|
||||||
|
mostlyclean-tags mostlyclean-generic
|
||||||
|
|
||||||
|
mostlyclean: mostlyclean-am
|
||||||
|
|
||||||
|
clean-am: clean-noinstLIBRARIES clean-compile clean-tags clean-generic \
|
||||||
|
mostlyclean-am
|
||||||
|
|
||||||
|
clean: clean-am
|
||||||
|
|
||||||
|
distclean-am: distclean-noinstLIBRARIES distclean-compile \
|
||||||
|
distclean-tags distclean-generic clean-am
|
||||||
|
|
||||||
|
distclean: distclean-am
|
||||||
|
-rm -f config.status
|
||||||
|
|
||||||
|
maintainer-clean-am: maintainer-clean-noinstLIBRARIES \
|
||||||
|
maintainer-clean-compile maintainer-clean-tags \
|
||||||
|
maintainer-clean-generic distclean-am
|
||||||
|
@echo "This command is intended for maintainers to use;"
|
||||||
|
@echo "it deletes files that may require special tools to rebuild."
|
||||||
|
|
||||||
|
maintainer-clean: maintainer-clean-am
|
||||||
|
-rm -f config.status
|
||||||
|
|
||||||
|
.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
|
||||||
|
clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
|
||||||
|
mostlyclean-compile distclean-compile clean-compile \
|
||||||
|
maintainer-clean-compile tags mostlyclean-tags distclean-tags \
|
||||||
|
clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
|
||||||
|
check-am installcheck-am installcheck install-info-am install-info \
|
||||||
|
install-exec-am install-exec install-data-am install-data install-am \
|
||||||
|
install uninstall-am uninstall all-redirect all-am all installdirs \
|
||||||
|
mostlyclean-generic distclean-generic clean-generic \
|
||||||
|
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
|
||||||
|
|
||||||
|
|
||||||
|
# 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:
|
|
@ -0,0 +1,334 @@
|
||||||
|
dnl aclocal.m4 generated automatically by aclocal 1.4
|
||||||
|
|
||||||
|
dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
|
||||||
|
dnl This file is free software; the Free Software Foundation
|
||||||
|
dnl gives unlimited permission to copy and/or distribute it,
|
||||||
|
dnl with or without modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
|
dnl This program is distributed in the hope that it will be useful,
|
||||||
|
dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||||
|
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||||
|
dnl PARTICULAR PURPOSE.
|
||||||
|
|
||||||
|
dnl This provides configure definitions used by all the newlib
|
||||||
|
dnl configure.in files.
|
||||||
|
|
||||||
|
dnl Basic newlib configury. This calls basic introductory stuff,
|
||||||
|
dnl including AM_INIT_AUTOMAKE and AC_CANONICAL_HOST. It also runs
|
||||||
|
dnl configure.host. The only argument is the relative path to the top
|
||||||
|
dnl newlib directory.
|
||||||
|
|
||||||
|
AC_DEFUN(NEWLIB_CONFIGURE,
|
||||||
|
[
|
||||||
|
dnl Default to --enable-multilib
|
||||||
|
AC_ARG_ENABLE(multilib,
|
||||||
|
[ --enable-multilib build many library versions (default)],
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) multilib=yes ;;
|
||||||
|
no) multilib=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;;
|
||||||
|
esac], [multilib=yes])dnl
|
||||||
|
|
||||||
|
dnl Support --enable-target-optspace
|
||||||
|
AC_ARG_ENABLE(target-optspace,
|
||||||
|
[ --enable-target-optspace optimize for space],
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) target_optspace=yes ;;
|
||||||
|
no) target_optspace=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for target-optspace option) ;;
|
||||||
|
esac], [target_optspace=])dnl
|
||||||
|
|
||||||
|
dnl Support --enable-malloc-debugging - currently only supported for Cygwin
|
||||||
|
AC_ARG_ENABLE(malloc-debugging,
|
||||||
|
[ --enable-malloc-debugging indicate malloc debugging requested],
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) malloc_debugging=yes ;;
|
||||||
|
no) malloc_debugging=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for malloc-debugging option) ;;
|
||||||
|
esac], [malloc_debugging=])dnl
|
||||||
|
|
||||||
|
dnl Support --enable-newlib-mb
|
||||||
|
AC_ARG_ENABLE(newlib-mb,
|
||||||
|
[ --enable-newlib-mb enable multibyte support],
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) newlib_mb=yes ;;
|
||||||
|
no) newlib_mb=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for newlib-mb option) ;;
|
||||||
|
esac], [newlib_mb=])dnl
|
||||||
|
|
||||||
|
dnl Support --enable-newlib-multithread
|
||||||
|
AC_ARG_ENABLE(newlib-multithread,
|
||||||
|
[ --enable-newlib-multithread enable support for multiple threads],
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) newlib_multithread=yes ;;
|
||||||
|
no) newlib_multithread=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for newlib-multithread option) ;;
|
||||||
|
esac], [newlib_multithread=yes])dnl
|
||||||
|
|
||||||
|
dnl Support --enable-newlib-elix-level
|
||||||
|
AC_ARG_ENABLE(newlib-elix-level,
|
||||||
|
[ --enable-newlib-elix-level supply desired elix library level (1-4)],
|
||||||
|
[case "${enableval}" in
|
||||||
|
0) newlib_elix_level=0 ;;
|
||||||
|
1) newlib_elix_level=1 ;;
|
||||||
|
2) newlib_elix_level=2 ;;
|
||||||
|
3) newlib_elix_level=3 ;;
|
||||||
|
4) newlib_elix_level=4 ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for newlib-elix-level option) ;;
|
||||||
|
esac], [newlib_elix_level=0])dnl
|
||||||
|
|
||||||
|
dnl Support --disable-newlib-io-float
|
||||||
|
AC_ARG_ENABLE(newlib-io-float,
|
||||||
|
[ --disable-newlib-io-float disable printf/scanf family float support],
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) newlib_io_float=yes ;;
|
||||||
|
no) newlib_io_float=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for newlib-io-float option) ;;
|
||||||
|
esac], [newlib_io_float=yes])dnl
|
||||||
|
|
||||||
|
dnl Support --disable-newlib-supplied-syscalls
|
||||||
|
AC_ARG_ENABLE(newlib-supplied-syscalls,
|
||||||
|
[ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls],
|
||||||
|
[case "${enableval}" in
|
||||||
|
yes) newlib_may_supply_syscalls=yes ;;
|
||||||
|
no) newlib_may_supply_syscalls=no ;;
|
||||||
|
*) AC_MSG_ERROR(bad value ${enableval} for newlib-supplied-syscalls option) ;;
|
||||||
|
esac], [newlib_may_supply_syscalls=yes])dnl
|
||||||
|
|
||||||
|
AM_CONDITIONAL(MAY_SUPPLY_SYSCALLS, test x[$]{newlib_may_supply_syscalls} = xyes)
|
||||||
|
|
||||||
|
dnl We may get other options which we don't document:
|
||||||
|
dnl --with-target-subdir, --with-multisrctop, --with-multisubdir
|
||||||
|
|
||||||
|
test -z "[$]{with_target_subdir}" && with_target_subdir=.
|
||||||
|
|
||||||
|
if test "[$]{srcdir}" = "."; then
|
||||||
|
if test "[$]{with_target_subdir}" != "."; then
|
||||||
|
newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}../$1"
|
||||||
|
else
|
||||||
|
newlib_basedir="[$]{srcdir}/[$]{with_multisrctop}$1"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
newlib_basedir="[$]{srcdir}/$1"
|
||||||
|
fi
|
||||||
|
AC_SUBST(newlib_basedir)
|
||||||
|
|
||||||
|
AC_CANONICAL_SYSTEM
|
||||||
|
|
||||||
|
AM_INIT_AUTOMAKE(newlib, 1.11.0)
|
||||||
|
|
||||||
|
# FIXME: We temporarily define our own version of AC_PROG_CC. This is
|
||||||
|
# copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
|
||||||
|
# are probably using a cross compiler, which will not be able to fully
|
||||||
|
# link an executable. This should really be fixed in autoconf
|
||||||
|
# itself.
|
||||||
|
|
||||||
|
AC_DEFUN(LIB_AC_PROG_CC,
|
||||||
|
[AC_BEFORE([$0], [AC_PROG_CPP])dnl
|
||||||
|
AC_CHECK_PROG(CC, gcc, gcc)
|
||||||
|
if test -z "$CC"; then
|
||||||
|
AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
|
||||||
|
test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_PROG_CC_GNU
|
||||||
|
|
||||||
|
if test $ac_cv_prog_gcc = yes; then
|
||||||
|
GCC=yes
|
||||||
|
dnl Check whether -g works, even if CFLAGS is set, in case the package
|
||||||
|
dnl plays around with CFLAGS (such as to build both debugging and
|
||||||
|
dnl normal versions of a library), tasteless as that idea is.
|
||||||
|
ac_test_CFLAGS="${CFLAGS+set}"
|
||||||
|
ac_save_CFLAGS="$CFLAGS"
|
||||||
|
CFLAGS=
|
||||||
|
AC_PROG_CC_G
|
||||||
|
if test "$ac_test_CFLAGS" = set; then
|
||||||
|
CFLAGS="$ac_save_CFLAGS"
|
||||||
|
elif test $ac_cv_prog_cc_g = yes; then
|
||||||
|
CFLAGS="-g -O2"
|
||||||
|
else
|
||||||
|
CFLAGS="-O2"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
GCC=
|
||||||
|
test "${CFLAGS+set}" = set || CFLAGS="-g"
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
LIB_AC_PROG_CC
|
||||||
|
|
||||||
|
AC_CHECK_TOOL(AS, as)
|
||||||
|
AC_CHECK_TOOL(AR, ar)
|
||||||
|
AC_CHECK_TOOL(RANLIB, ranlib, :)
|
||||||
|
|
||||||
|
AC_PROG_INSTALL
|
||||||
|
|
||||||
|
AM_MAINTAINER_MODE
|
||||||
|
|
||||||
|
# We need AC_EXEEXT to keep automake happy in cygnus mode. However,
|
||||||
|
# at least currently, we never actually build a program, so we never
|
||||||
|
# need to use $(EXEEXT). Moreover, the test for EXEEXT normally
|
||||||
|
# fails, because we are probably configuring with a cross compiler
|
||||||
|
# which can't create executables. So we include AC_EXEEXT to keep
|
||||||
|
# automake happy, but we don't execute it, since we don't care about
|
||||||
|
# the result.
|
||||||
|
if false; then
|
||||||
|
AC_EXEEXT
|
||||||
|
fi
|
||||||
|
|
||||||
|
. [$]{newlib_basedir}/configure.host
|
||||||
|
|
||||||
|
newlib_cflags="[$]{newlib_cflags} -fno-builtin"
|
||||||
|
|
||||||
|
NEWLIB_CFLAGS=${newlib_cflags}
|
||||||
|
AC_SUBST(NEWLIB_CFLAGS)
|
||||||
|
|
||||||
|
LDFLAGS=${ldflags}
|
||||||
|
AC_SUBST(LDFLAGS)
|
||||||
|
|
||||||
|
AM_CONDITIONAL(ELIX_LEVEL_0, test x[$]{newlib_elix_level} = x0)
|
||||||
|
AM_CONDITIONAL(ELIX_LEVEL_1, test x[$]{newlib_elix_level} = x1)
|
||||||
|
AM_CONDITIONAL(ELIX_LEVEL_2, test x[$]{newlib_elix_level} = x2)
|
||||||
|
AM_CONDITIONAL(ELIX_LEVEL_3, test x[$]{newlib_elix_level} = x3)
|
||||||
|
AM_CONDITIONAL(ELIX_LEVEL_4, test x[$]{newlib_elix_level} = x4)
|
||||||
|
|
||||||
|
AM_CONDITIONAL(USE_LIBTOOL, test x[$]{use_libtool} = xyes)
|
||||||
|
|
||||||
|
# Hard-code OBJEXT. Normally it is set by AC_OBJEXT, but we
|
||||||
|
# use oext, which is set in configure.host based on the target platform.
|
||||||
|
OBJEXT=${oext}
|
||||||
|
|
||||||
|
AC_SUBST(OBJEXT)
|
||||||
|
AC_SUBST(oext)
|
||||||
|
AC_SUBST(aext)
|
||||||
|
|
||||||
|
AC_SUBST(libm_machine_dir)
|
||||||
|
AC_SUBST(machine_dir)
|
||||||
|
AC_SUBST(sys_dir)
|
||||||
|
])
|
||||||
|
|
||||||
|
# Do all the work for Automake. This macro actually does too much --
|
||||||
|
# some checks are only needed if your package does certain things.
|
||||||
|
# But this isn't really a big deal.
|
||||||
|
|
||||||
|
# serial 1
|
||||||
|
|
||||||
|
dnl Usage:
|
||||||
|
dnl AM_INIT_AUTOMAKE(package,version, [no-define])
|
||||||
|
|
||||||
|
AC_DEFUN(AM_INIT_AUTOMAKE,
|
||||||
|
[AC_REQUIRE([AC_PROG_INSTALL])
|
||||||
|
PACKAGE=[$1]
|
||||||
|
AC_SUBST(PACKAGE)
|
||||||
|
VERSION=[$2]
|
||||||
|
AC_SUBST(VERSION)
|
||||||
|
dnl test to see if srcdir already configured
|
||||||
|
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
|
||||||
|
AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
|
||||||
|
fi
|
||||||
|
ifelse([$3],,
|
||||||
|
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
|
||||||
|
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
|
||||||
|
AC_REQUIRE([AM_SANITY_CHECK])
|
||||||
|
AC_REQUIRE([AC_ARG_PROGRAM])
|
||||||
|
dnl FIXME This is truly gross.
|
||||||
|
missing_dir=`cd $ac_aux_dir && pwd`
|
||||||
|
AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
|
||||||
|
AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
|
||||||
|
AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
|
||||||
|
AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
|
||||||
|
AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
|
||||||
|
AC_REQUIRE([AC_PROG_MAKE_SET])])
|
||||||
|
|
||||||
|
#
|
||||||
|
# Check to make sure that the build environment is sane.
|
||||||
|
#
|
||||||
|
|
||||||
|
AC_DEFUN(AM_SANITY_CHECK,
|
||||||
|
[AC_MSG_CHECKING([whether build environment is sane])
|
||||||
|
# Just in case
|
||||||
|
sleep 1
|
||||||
|
echo timestamp > conftestfile
|
||||||
|
# Do `set' in a subshell so we don't clobber the current shell's
|
||||||
|
# arguments. Must try -L first in case configure is actually a
|
||||||
|
# symlink; some systems play weird games with the mod time of symlinks
|
||||||
|
# (eg FreeBSD returns the mod time of the symlink's containing
|
||||||
|
# directory).
|
||||||
|
if (
|
||||||
|
set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
|
||||||
|
if test "[$]*" = "X"; then
|
||||||
|
# -L didn't work.
|
||||||
|
set X `ls -t $srcdir/configure conftestfile`
|
||||||
|
fi
|
||||||
|
if test "[$]*" != "X $srcdir/configure conftestfile" \
|
||||||
|
&& test "[$]*" != "X conftestfile $srcdir/configure"; then
|
||||||
|
|
||||||
|
# If neither matched, then we have a broken ls. This can happen
|
||||||
|
# if, for instance, CONFIG_SHELL is bash and it inherits a
|
||||||
|
# broken ls alias from the environment. This has actually
|
||||||
|
# happened. Such a system could not be considered "sane".
|
||||||
|
AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
|
||||||
|
alias in your environment])
|
||||||
|
fi
|
||||||
|
|
||||||
|
test "[$]2" = conftestfile
|
||||||
|
)
|
||||||
|
then
|
||||||
|
# Ok.
|
||||||
|
:
|
||||||
|
else
|
||||||
|
AC_MSG_ERROR([newly created file is older than distributed files!
|
||||||
|
Check your system clock])
|
||||||
|
fi
|
||||||
|
rm -f conftest*
|
||||||
|
AC_MSG_RESULT(yes)])
|
||||||
|
|
||||||
|
dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
|
||||||
|
dnl The program must properly implement --version.
|
||||||
|
AC_DEFUN(AM_MISSING_PROG,
|
||||||
|
[AC_MSG_CHECKING(for working $2)
|
||||||
|
# Run test in a subshell; some versions of sh will print an error if
|
||||||
|
# an executable is not found, even if stderr is redirected.
|
||||||
|
# Redirect stdin to placate older versions of autoconf. Sigh.
|
||||||
|
if ($2 --version) < /dev/null > /dev/null 2>&1; then
|
||||||
|
$1=$2
|
||||||
|
AC_MSG_RESULT(found)
|
||||||
|
else
|
||||||
|
$1="$3/missing $2"
|
||||||
|
AC_MSG_RESULT(missing)
|
||||||
|
fi
|
||||||
|
AC_SUBST($1)])
|
||||||
|
|
||||||
|
# Define a conditional.
|
||||||
|
|
||||||
|
AC_DEFUN(AM_CONDITIONAL,
|
||||||
|
[AC_SUBST($1_TRUE)
|
||||||
|
AC_SUBST($1_FALSE)
|
||||||
|
if $2; then
|
||||||
|
$1_TRUE=
|
||||||
|
$1_FALSE='#'
|
||||||
|
else
|
||||||
|
$1_TRUE='#'
|
||||||
|
$1_FALSE=
|
||||||
|
fi])
|
||||||
|
|
||||||
|
# Add --enable-maintainer-mode option to configure.
|
||||||
|
# From Jim Meyering
|
||||||
|
|
||||||
|
# serial 1
|
||||||
|
|
||||||
|
AC_DEFUN(AM_MAINTAINER_MODE,
|
||||||
|
[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
|
||||||
|
dnl maintainer-mode is disabled by default
|
||||||
|
AC_ARG_ENABLE(maintainer-mode,
|
||||||
|
[ --enable-maintainer-mode enable make rules and dependencies not useful
|
||||||
|
(and sometimes confusing) to the casual installer],
|
||||||
|
USE_MAINTAINER_MODE=$enableval,
|
||||||
|
USE_MAINTAINER_MODE=no)
|
||||||
|
AC_MSG_RESULT($USE_MAINTAINER_MODE)
|
||||||
|
AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
|
||||||
|
MAINT=$MAINTAINER_MODE_TRUE
|
||||||
|
AC_SUBST(MAINT)dnl
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,12 @@
|
||||||
|
dnl This is the newlib/libc/machine/iq2000 configure.in file.
|
||||||
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
|
|
||||||
|
AC_PREREQ(2.5)
|
||||||
|
AC_INIT(Makefile.am)
|
||||||
|
|
||||||
|
dnl Can't be done in NEWLIB_CONFIGURE because that confuses automake.
|
||||||
|
AC_CONFIG_AUX_DIR(../../../..)
|
||||||
|
|
||||||
|
NEWLIB_CONFIGURE(../../..)
|
||||||
|
|
||||||
|
AC_OUTPUT(Makefile)
|
|
@ -0,0 +1,51 @@
|
||||||
|
/* This is a simple version of setjmp and longjmp for iq2000. */
|
||||||
|
|
||||||
|
|
||||||
|
/* int setjmp (jmp_buf); */
|
||||||
|
.globl setjmp
|
||||||
|
.ent setjmp
|
||||||
|
setjmp:
|
||||||
|
sw r16,0(r4) /* rs0 */
|
||||||
|
sw r17,4(r4) /* rs1 */
|
||||||
|
sw r18,8(r4) /* rs2 */
|
||||||
|
sw r19,12(r4) /* rs3 */
|
||||||
|
sw r20,16(r4) /* rs4 */
|
||||||
|
sw r21,20(r4) /* rs5 */
|
||||||
|
sw r22,24(r4) /* rs6 */
|
||||||
|
sw r23,28(r4) /* rs7 */
|
||||||
|
sw r30,32(r4) /* rs8 */
|
||||||
|
|
||||||
|
sw r29,36(r4)
|
||||||
|
sw r31,40(r4)
|
||||||
|
|
||||||
|
move r2,r0
|
||||||
|
|
||||||
|
j r31
|
||||||
|
|
||||||
|
.end setjmp
|
||||||
|
|
||||||
|
/* volatile void longjmp (jmp_buf, int); */
|
||||||
|
.globl longjmp
|
||||||
|
.ent longjmp
|
||||||
|
longjmp:
|
||||||
|
lw r16,0(r4) /* rs0 */
|
||||||
|
lw r17,4(r4) /* rs1 */
|
||||||
|
lw r18,8(r4) /* rs2 */
|
||||||
|
lw r19,12(r4) /* rs3 */
|
||||||
|
lw r20,16(r4) /* rs4 */
|
||||||
|
lw r21,20(r4) /* rs5 */
|
||||||
|
lw r22,24(r4) /* rs6 */
|
||||||
|
lw r23,28(r4) /* rs7 */
|
||||||
|
lw r30,32(r4) /* rs8 */
|
||||||
|
|
||||||
|
lw r29,36(r4)
|
||||||
|
lw r31,40(r4)
|
||||||
|
|
||||||
|
bne r5,r0,1f
|
||||||
|
li r5,1
|
||||||
|
1:
|
||||||
|
move r2,r5
|
||||||
|
|
||||||
|
j r31
|
||||||
|
|
||||||
|
.end longjmp
|
Loading…
Reference in New Issue