This is the mail archive of the
java-patches@sourceware.cygnus.com
mailing list for the Java project.
libffi import
- To: java-patches@sourceware.cygnus.com
- Subject: libffi import
- From: Anthony Green <green@cygnus.com>
- Date: Sun, 8 Aug 1999 06:43:29 -0700 (PDT)
I've imported a libffi snaphot into the tree. Although it is widely
ported, the following patch only configures it for x86 targets. We
can add more as we test.
1999-08-08 Anthony Green <green@cygnus.com>
* configure.in (target_libs): Added target-libffi.
* Makefile.in (ALL_TARGET_MODULES): Added libffi.
(CONFIGURE_TARGET_MODULES): Likewise.
(CHECK_TARGET_MODULES): Likewise.
(INSTALL_TARGET_MODULES): Likewise.
(CLEAN_TARGET_MODULES): Likewise.
(configure-target-libffi): New target.
(all-target-libffi): Likewise.
(all-target-libjava): Depend on all-target-libffi.
(configure-target-libjava): Depend on configure-target-libffi.
Index: Makefile.in
===================================================================
RCS file: /cvs/java/libgcj/Makefile.in,v
retrieving revision 1.2
diff -u -r1.2 Makefile.in
--- Makefile.in 1999/05/05 10:13:21 1.2
+++ Makefile.in 1999/08/08 13:35:18
@@ -775,6 +775,7 @@
all-target-gperf \
all-target-examples \
all-target-libstub \
+ all-target-libffi \
all-target-libjava \
all-target-zlib \
all-target-boehm-gc \
@@ -797,6 +798,7 @@
configure-target-gperf \
configure-target-examples \
configure-target-libstub \
+ configure-target-libffi \
configure-target-libjava \
configure-target-zlib \
configure-target-boehm-gc \
@@ -813,6 +815,7 @@
check-target-newlib \
check-target-winsup \
check-target-libiberty \
+ check-target-libffi \
check-target-libjava \
check-target-zlib \
check-target-boehm-gc \
@@ -915,6 +918,7 @@
clean-target-gperf \
clean-target-examples \
clean-target-libstub \
+ clean-target-libffi \
clean-target-libjava \
clean-target-zlib \
clean-target-boehm-gc \
@@ -1609,8 +1613,10 @@
check-target-libio: all-target-libstdc++
all-libgui: all-tcl all-tk all-tcl8.1 all-tk8.1 all-itcl
all-libiberty:
-configure-target-libjava: $(ALL_GCC) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-newlib
-all-target-libjava: configure-target-libjava all-gcc all-zip all-target-newlib all-target-zlib all-target-boehm-gc all-target-qthreads
+configure-target-libffi: $(ALL_GCC)
+configure-target-libjava: $(ALL_GCC) configure-target-zlib configure-target-boehm-gc configure-target-qthreads configure-target-newlib configure-target-libffi
+all-target-libffi: $(ALL_GCC)
+all-target-libjava: configure-target-libjava all-gcc all-zip all-target-newlib all-target-zlib all-target-boehm-gc all-target-qthreads all-target-libffi
configure-target-librx: $(ALL_GCC) configure-target-newlib
all-target-librx: configure-target-librx
configure-target-libstdc++: $(ALL_GCC)
Index: configure.in
===================================================================
RCS file: /cvs/java/libgcj/configure.in,v
retrieving revision 1.2
diff -u -r1.2 configure.in
--- configure.in 1999/05/05 10:13:22 1.2
+++ configure.in 1999/08/08 13:35:20
@@ -61,6 +61,7 @@
target-libio \
target-librx \
target-libstdc++ \
+ target-libffi \
target-libjava \
target-zlib \
target-boehm-gc \
@@ -520,7 +521,7 @@
noconfigdirs="tcl expect dejagnu make texinfo bison patch flex byacc send-pr gprof uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv gettext"
;;
i[3456]86-*-go32* | i[3456]86-*-msdosdjgpp*)
- noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv gettext"
+ noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv gettext libffi"
;;
i[3456]86-*-mingw32*)
# noconfigdirs="tcl tk expect dejagnu make texinfo bison patch flex byacc send-pr uudecode dejagnu diff guile perl apache inet itcl tix db snavigator gnuserv"
@@ -540,13 +541,13 @@
case "${target}" in
*-*-netware)
- noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-librx target-newlib target-libiberty target-libgloss"
+ noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-librx target-newlib target-libiberty target-libgloss target-libffi"
;;
*-*-rtems*)
- noconfigdirs="$noconfigdirs target-libgloss"
+ noconfigdirs="$noconfigdirs target-libgloss target-libffi"
;;
*-*-vxworks*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libffi"
;;
alpha*-dec-osf*)
# ld works, but does not support shared libraries. emacs doesn't
@@ -555,7 +556,7 @@
noconfigdirs="$noconfigdirs gas ld emacs fileutils target-newlib target-libgloss"
;;
alpha*-*-*vms*)
- noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss"
+ noconfigdirs="$noconfigdirs gdb ld target-newlib target-libgloss target-libffi"
;;
alpha*-*-linux*)
# newlib is not 64 bit ready
@@ -568,7 +569,7 @@
noconfigdirs="$noconfigdirs target-newlib target-libgloss"
;;
arc-*-*)
- noconfigdirs="$noconfigdirs target-libgloss"
+ noconfigdirs="$noconfigdirs target-libgloss target-libffi"
;;
arm-*-pe*)
noconfigdirs="$noconfigdirs target-libgloss"
@@ -586,62 +587,26 @@
fi
;;
arm-*-oabi*)
- noconfigdirs="$noconfigdirs target-libgloss"
+ noconfigdirs="$noconfigdirs target-libgloss target-libffi"
if [ x${is_cross_compiler} != xno ] ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
;;
c4x-*-*)
- noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-libio target-librx target-libgloss"
+ noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-libio target-librx target-libgloss target-libffi"
;;
thumb-*-coff)
- noconfigdirs="$noconfigdirs target-libgloss"
- ;;
-# CYGNUS LOCAL clm/arm-elf
- thumb-*-elf)
- noconfigdirs="$noconfigdirs target-libgloss"
- ;;
- thumb-*-oabi)
- noconfigdirs="$noconfigdirs target-libgloss"
- ;;
-# END CYGNUS LOCAL
-# CYGNUS LOCAL nickc/strongarm
- strongarm-*-elf)
- noconfigdirs="$noconfigdirs target-libgloss"
- if [ x${is_cross_compiler} != xno ] ; then
- target_configdirs="${target_configdirs} target-bsp target-cygmon"
- fi
- ;;
- strongarm-*-coff)
- noconfigdirs="$noconfigdirs target-libgloss"
- if [ x${is_cross_compiler} != xno ] ; then
- target_configdirs="${target_configdirs} target-bsp target-cygmon"
- fi
- ;;
-# END CYGNUS LOCAL
- thumb-*-pe) # CYGNUS LOCAL nickc/thumb
- noconfigdirs="$noconfigdirs target-libgloss"
+ noconfigdirs="$noconfigdirs target-libgloss target-libffi"
;;
arm-*-riscix*)
- noconfigdirs="$noconfigdirs ld target-libgloss"
+ noconfigdirs="$noconfigdirs ld target-libgloss target-libffi"
;;
d10v-*-*)
- noconfigdirs="$noconfigdirs target-librx target-libg++ target-libstdc++ target-libio"
+ noconfigdirs="$noconfigdirs target-librx target-libg++ target-libstdc++ target-libio target-libffi"
;;
-# CYGNUS LOCAL d30v
- d30v-*-*)
- ;;
-# END CYGNUS LOCAL
-# CYGNUS LOCAL fr30
- fr30-*-elf*)
- if [ x${is_cross_compiler} != xno ] ; then
- target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
- fi
- ;;
-# END CYGNUS LOCAL
h8300*-*-* | \
h8500-*-*)
- noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-libio target-librx target-libgloss"
+ noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-libio target-librx target-libgloss target-libffi"
;;
hppa*-*-*elf* | \
hppa*-*-lites*)
@@ -655,7 +620,7 @@
"" | cc*) noconfigdirs="$noconfigdirs emacs emacs19" ;;
*) ;;
esac
- noconfigdirs="$noconfigdirs ld shellutils"
+ noconfigdirs="$noconfigdirs ld shellutils target-libffi"
;;
i[3456]86-*-coff | i[3456]86-*-elf)
if [ x${is_cross_compiler} != xno ] ; then
@@ -664,7 +629,7 @@
;;
i[3456]86-*-go32* | i[3456]-*-msdosdjgpp*)
# but don't build gdb
- noconfigdirs="$noconfigdirs gdb target-libg++ target-libstdc++ target-libio target-librx"
+ noconfigdirs="$noconfigdirs gdb target-libg++ target-libstdc++ target-libio target-librx target-libffi"
;;
*-*-linux*)
# linux has rx in libc
@@ -672,7 +637,7 @@
;;
i[3456]86-*-mingw32*)
target_configdirs="$target_configdirs target-mingw"
- noconfigdirs="$noconfigdirs expect target-libgloss"
+ noconfigdirs="$noconfigdirs expect target-libgloss target-libffi"
# Can't build gdb for mingw32 if not native.
case "${host}" in
@@ -683,7 +648,7 @@
;;
*-*-cygwin*)
target_configdirs="$target_configdirs target-libtermcap target-winsup"
- noconfigdirs="$noconfigdirs target-libgloss"
+ noconfigdirs="$noconfigdirs target-libgloss target-libffi"
# always build newlib.
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
@@ -695,18 +660,18 @@
esac
;;
i[3456]86-*-pe)
- noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-libio target-librx target-libgloss"
+ noconfigdirs="$noconfigdirs target-libg++ target-libstdc++ target-libio target-librx target-libgloss target-libffi"
;;
i[3456]86-*-sco3.2v5*)
# The linker does not yet know about weak symbols in COFF,
# and is not configured to handle mixed ELF and COFF.
- noconfigdirs="$noconfigdirs ld target-libgloss"
+ noconfigdirs="$noconfigdirs ld target-libgloss target-libffi"
;;
i[3456]86-*-sco*)
- noconfigdirs="$noconfigdirs gprof target-libgloss"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-libffi"
;;
i[3456]86-*-solaris2*)
- noconfigdirs="$noconfigdirs target-libgloss"
+ noconfigdirs="$noconfigdirs target-libgloss target-libffi"
;;
i[3456]86-*-sysv4*)
# The SYSV4 C compiler doesn't handle Emacs correctly
@@ -715,7 +680,7 @@
*) ;;
esac
# but that's okay since emacs doesn't work anyway
- noconfigdirs="$noconfigdirs emacs emacs19 target-libgloss"
+ noconfigdirs="$noconfigdirs emacs emacs19 target-libgloss target-libffi"
;;
m68k-*-elf*)
if [ x${is_cross_compiler} != xno ] ; then
@@ -728,53 +693,53 @@
fi
;;
mn10200-*-*)
- noconfigdirs="$noconfigdirs"
+ noconfigdirs="$noconfigdirs target-libffi"
if [ x${is_cross_compiler} != xno ] ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
fi
;;
mn10300-*-*)
- noconfigdirs="$noconfigdirs"
+ noconfigdirs="$noconfigdirs target-libffi"
if [ x${is_cross_compiler} != xno ] ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
fi
;;
powerpc-*-aix*)
# copied from rs6000-*-* entry
- noconfigdirs="$noconfigdirs gprof cvssrc target-libgloss"
+ noconfigdirs="$noconfigdirs gprof cvssrc target-libgloss target-libffi"
# This is needed until gcc and ld are fixed to work together.
use_gnu_ld=no
;;
powerpc*-*-winnt* | powerpc*-*-pe* | ppc*-*-pe)
target_configdirs="$target_configdirs target-winsup"
- noconfigdirs="$noconfigdirs gdb tcl tk make expect target-libgloss itcl tix db snavigator gnuserv"
+ noconfigdirs="$noconfigdirs gdb tcl tk make expect target-libgloss itcl tix db snavigator gnuserv target-libffi"
# always build newlib.
skipdirs=`echo " ${skipdirs} " | sed -e 's/ target-newlib / /'`
;;
# This is temporary until we can link against shared libraries
powerpcle-*-solaris*)
- noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl tix db snavigator gnuserv"
+ noconfigdirs="$noconfigdirs gdb sim make tcl tk expect itcl tix db snavigator gnuserv target-libffi"
;;
powerpc-*-eabi)
if [ x${is_cross_compiler} != xno ] ; then
- target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
+ target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon target-libffi"
fi
;;
rs6000-*-lynxos*)
# The CVS server code doesn't work on the RS/6000
# Newlib makes problems for libg++ in crosses.
- noconfigdirs="$noconfigdirs target-newlib gprof cvssrc"
+ noconfigdirs="$noconfigdirs target-newlib gprof cvssrc target-libffi"
;;
rs6000-*-aix*)
- noconfigdirs="$noconfigdirs gprof"
+ noconfigdirs="$noconfigdirs gprof target-libffi"
# This is needed until gcc and ld are fixed to work together.
use_gnu_ld=no
;;
rs6000-*-*)
- noconfigdirs="$noconfigdirs gprof"
+ noconfigdirs="$noconfigdirs gprof target-libffi"
;;
m68k-apollo-*)
- noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss"
+ noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss target-libffi"
;;
mips*-*-irix5*)
# The GNU linker does not support shared libraries.
@@ -787,20 +752,20 @@
noconfigdirs="$noconfigdirs ld gas gprof emacs target-libgloss"
;;
mips*-dec-bsd*)
- noconfigdirs="$noconfigdirs gprof target-libgloss"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-libffi"
;;
mips*-*-bsd*)
- noconfigdirs="$noconfigdirs gprof target-libgloss"
+ noconfigdirs="$noconfigdirs gprof target-libgloss target-libffi"
;;
mipstx39-*-*)
- noconfigdirs="$noconfigdirs gprof" # same as generic mips
+ noconfigdirs="$noconfigdirs gprof target-libffi" # same as generic mips
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
;;
mips*-*-*)
- noconfigdirs="$noconfigdirs gprof"
+ noconfigdirs="$noconfigdirs gprof target-libffi"
;;
romp-*-*)
- noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss"
+ noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss target-libffi"
;;
sh-*-*)
case "${host}" in
@@ -809,7 +774,7 @@
i[3456]86-*-msdosdjgpp*) ;; # don't add gprof back in
*) skipdirs=`echo " ${skipdirs} " | sed -e 's/ gprof / /'` ;;
esac
- noconfigdirs="$noconfigdirs target-libgloss"
+ noconfigdirs="$noconfigdirs target-libgloss target-libffi"
;;
sparc-*-elf*)
if [ x${is_cross_compiler} != xno ] ; then
@@ -819,11 +784,13 @@
sparc64-*-elf*)
if [ x${is_cross_compiler} != xno ] ; then
target_configdirs="${target_configdirs} target-libstub target-cygmon"
+ noconfigdirs="target-libffi"
fi
;;
sparclite-*-*)
if [ x${is_cross_compiler} != xno ] ; then
target_configdirs="${target_configdirs} target-bsp target-libstub target-cygmon"
+ noconfigdirs="target-libffi"
fi
;;
sparc-*-sunos4*)
@@ -834,31 +801,26 @@
fi
;;
v810-*-*)
- noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libio target-libg++ target-libstdc++ opcodes target-libgloss"
+ noconfigdirs="$noconfigdirs bfd binutils gas gcc gdb ld target-libio target-libg++ target-libstdc++ opcodes target-libgloss target-libffi"
;;
v850-*-*)
- noconfigdirs="$noconfigdirs target-libgloss"
+ noconfigdirs="$noconfigdirs target-libgloss target-libffi"
;;
- v850e-*-*) # CYGNUS LOCAL v850e
- noconfigdirs="$noconfigdirs target-libgloss"
- ;;
- v850ea-*-*)
- noconfigdirs="$noconfigdirs target-libgloss"
- ;; # END CYGNUS LOCAL
vax-*-vms)
- noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss"
+ noconfigdirs="$noconfigdirs bfd binutils gdb ld target-newlib opcodes target-libgloss target-libffi"
;;
vax-*-*)
- noconfigdirs="$noconfigdirs target-newlib target-libgloss"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libffi"
;;
*-*-lynxos*)
# Newlib makes problems for libg++ in crosses.
- noconfigdirs="$noconfigdirs target-newlib target-libgloss"
+ noconfigdirs="$noconfigdirs target-newlib target-libgloss target-libffi"
;;
*-*-macos* | \
*-*-mpw*)
# Macs want a resource compiler.
configdirs="$configdirs grez"
+ noconfigdirs="target-libffi"
;;
esac
--
Anthony Green Cygnus Solutions
Sunnyvale, California