Commit 334f0b060942aff8d26badaf7dde7830450dc5da

green 1998-11-29T16:56:12

initial snapshot of documentation

diff --git a/htdocs/ChangeLog b/htdocs/ChangeLog
new file mode 100644
index 0000000..4215d53
--- /dev/null
+++ b/htdocs/ChangeLog
@@ -0,0 +1,4 @@
+1998-11-29  Anthony Green  <green@cygnus.com>
+
+	* index.html: Created (bootstrapped from old web pages).
+
diff --git a/htdocs/index.html b/htdocs/index.html
index 2a8bedd..407f115 100644
--- a/htdocs/index.html
+++ b/htdocs/index.html
@@ -1,4 +1,186 @@
 <html>
-<title>Hello World</title>
-Hello World
-</html>
\ No newline at end of file
+</body>
+<head>
+<title>
+libffi
+</title>
+</head>
+
+<h1>The libffi Home Page</h1>
+
+<b>libffi-1.20</b> was released on October 5, 1998. You can ftp it from <a href="ftp://ftp.cygnus.com:/pub/green/libffi-1.20.tar.gz">ftp.cygnus.com:/pub/green/libffi-1.20.tar.gz</a>. 
+
+<p>
+If you wish to be notified of libffi releases by email, fill out <a href="libffi-form.html">this form</a>.
+
+<h2>What is libffi?</h2>
+
+Compilers for high level languages generate code that follow certain
+conventions. These conventions are necessary, in part, for separate
+compilation to work. One such convention is the "calling
+convention". The "calling convention" is essentially a set of
+assumptions made by the compiler about where function arguments will
+be found on entry to a function. A "calling convention" also specifies
+where the return value for a function is found.
+
+<p>
+
+Some programs may not know at the time of compilation what arguments
+are to be passed to a function. For instance, an interpreter may be
+told at run-time about the number and types of arguments used to call
+a given function. Libffi can be used in such programs to provide a
+bridge from the interpreter program to compiled code.
+
+<p>
+
+The libffi library provides a portable, high level programming
+interface to various calling conventions. This allows a programmer to
+call any function specified by a call interface description at run-time.  
+
+<p>
+
+Ffi stands for Foreign Function Interface. A foreign function
+interface is the popular name for the interface that allows code
+written in one language to call code written in another language. The
+libffi library really only provides the lowest, machine dependent
+layer of a fully featured foreign function interface. A layer must
+exist above libffi that handles type conversions for values passed
+between the two languages.
+
+<h2>Supported Platforms and Prerequisites</h2>
+
+Libffi has been ported to:
+
+<ul>
+<li> SunOS 4.1.3 & Solaris 2.x (Sparc v8)
+<li> Irix 5.3 & 6.2 (System V/o32 & n32)
+<li> Intel x86 - Linux (System V ABI)
+<li> Alpha Linux and OSF/1
+<li> m68k - Linux (System V ABI)
+<li> PowerPC - Linux (System V ABI)
+<li> ARM - Linux (System V ABI)
+</ul>
+
+Libffi has been tested with the <a href="http://www.cygnus.com/egcs/">egcs</a> 1.0.2 gcc compiler. Chances are
+that other versions will work.  Libffi has also been built and tested
+with the SGI compiler tools.
+	
+If you port libffi to another platform, please let me know! I assume
+that some will be easy (x86 NetBSD), and others will be more difficult
+(HP, AIX).
+
+<h2>History</h2>
+
+<pre>
+1.20 Oct-5-98
+	Raffaele Sena produces ARM port.
+
+1.19 Oct-5-98
+	Fixed x86 long double and long long return support.
+	m68k bug fixes from Andreas Schwab.
+	Patch for DU assembler compatibility for the Alpha from Richard
+	Henderson.
+
+1.18 Apr-17-98
+	Bug fixes and MIPS configuration changes.
+
+1.17 Feb-24-98
+	Bug fixes and m68k port from Andreas Schwab. PowerPC port from
+	Geoffrey Keating. Various bug x86, Sparc and MIPS bug fixes.
+
+1.16 Feb-11-98
+	Richard Henderson produces Alpha port.
+
+1.15 Dec-4-97
+	Fixed an n32 ABI bug. New libtool, auto* support.
+
+1.14 May-13-96
+	libtool is now used to generate shared and static libraries.
+	Fixed a minor portability problem reported by Russ McManus
+	&lt;mcmanr@eq.gs.com&gt;.
+
+1.13 Dec-2-96
+	Added --enable-purify-safety to keep Purify from complaining
+	about certain low level code.
+	Sparc fix for calling functions with < 6 args.
+	Linux x86 a.out fix.
+
+1.12 Nov-22-96
+	Added missing ffi_type_void, needed for supporting void return 
+	types. Fixed test case for non MIPS machines. Cygnus Support 
+	is now Cygnus Solutions. 
+
+1.11 Oct-30-96
+	Added notes about GNU make.
+
+1.10 Oct-29-96
+	Added configuration fix for non GNU compilers.
+
+1.09 Oct-29-96
+	Added --enable-debug configure switch. Clean-ups based on LCLint 
+	feedback. ffi_mips.h is always installed. Many configuration 
+	fixes. Fixed ffitest.c for sparc builds.
+
+1.08 Oct-15-96
+	Fixed n32 problem. Many clean-ups.
+
+1.07 Oct-14-96
+	Gordon Irlam rewrites v8.S again. Bug fixes.
+
+1.06 Oct-14-96
+	Gordon Irlam improved the sparc port. 
+
+1.05 Oct-14-96
+	Interface changes based on feedback.
+
+1.04 Oct-11-96
+	Sparc port complete (modulo struct passing bug).
+
+1.03 Oct-10-96
+	Passing struct args, and returning struct values works for
+	all architectures/calling conventions. Expanded tests.
+
+1.02 Oct-9-96
+	Added SGI n32 support. Fixed bugs in both o32 and Linux support.
+	Added "make test".
+
+1.01 Oct-8-96
+	Fixed float passing bug in mips version. Restructured some
+	of the code. Builds cleanly with SGI tools.
+
+1.00 Oct-7-96
+	First release. No public announcement.
+</pre>
+
+<h2>Authors & Credits</h2>
+
+Libffi was written by <b>Anthony Green</b>.
+<p>
+Portions of libffi were derived from <b>Gianni Mariani</b>'s free gencall
+library for Silicon Graphics machines.
+<p>
+The sparc port was derived from code contributed by the fine folks at
+<b><a href="http://www.vdi.com">Visible Decisions Inc</a></b>. Further enhancements were made by <b>Gordon Irlam</b> at <a href="http://www.cygnus.com">Cygnus Solutions</a>.
+<p>
+The Alpha port was written by <b>Richard Henderson</b> at Cygnus Solutions.
+<p>
+<b>Andreas Schwab</b> ported libffi to m68k Linux and provided a number of
+bug fixes.
+<p>
+<b>Geoffrey Keating</b> ported libffi to the PowerPC.
+<p>
+<b>Raffaele Sena</b> ported libffi to the ARM.
+<p>
+<b>Jesper Skov</b> and <b>Andrew Haley</b> both did more than their fair share of
+stepping through the code and tracking down bugs.
+<p>
+Thanks to <b>Tom Tromey</b> for bug fixes and configuration help.
+<p>
+Thanks also to <b>Jim Blandy</b>, who provided some useful feedback on the libffi
+interface.
+<p>
+If you have a problem, or have found a bug, please send a note to
+<a href="mailto:green@cygnus.com">green@cygnus.com</a>.
+
+</body>
+</html>