mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
Version 0.1.2 from FTP
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@156 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
89
codecs/lpc10/README
Executable file
89
codecs/lpc10/README
Executable file
@@ -0,0 +1,89 @@
|
||||
Tue Aug 20 16:19:51 CDT 1996
|
||||
Andy Fingerhut (jaf@arl.wustl.edu)
|
||||
|
||||
In release 1.4, there are quite a few hand modifications to the C code
|
||||
that was automatically created from the Fortran code with f2c. They
|
||||
are all summarized in change log comments at the beginning of the
|
||||
changed files. All of the original files from f2c were checked in to
|
||||
RCS before modification, so it is possible to see exactly what changes
|
||||
were made, for the extremely curious. That precaution was also for my
|
||||
benefit, in case I ever recompile the Fortran sources, and want to
|
||||
make similar changes to that new C source code.
|
||||
|
||||
Below is the README file for this directory included with the 1.3
|
||||
release of the LPC-10 package. A few parts of it are a little out of
|
||||
date, but it is correct for the most part.
|
||||
|
||||
|
||||
Sun Jul 7 15:30:31 CDT 1996
|
||||
Andy Fingerhut (jaf@arl.wustl.edu)
|
||||
|
||||
To create the LPC-10 library, copy the appropriate makefile to the
|
||||
proper name for easy use, e.g., for Unix, copy makefile.unx to the
|
||||
file "Makefile". The file makefile.dos has been used with some
|
||||
version of the 'nmake' utility that comes with the Microsoft C
|
||||
compiler (the same one used for Nautilus v1.5a, which I believe
|
||||
specifies Microsoft C version 7.0 or later).
|
||||
|
||||
Then edit the file lpc10.h in the directory above. It should already
|
||||
be set up to work properly on any Unix compiler for which "int" is 32
|
||||
bits and "short" is 16 bits, and under the Microsoft C compiler
|
||||
configured so that "long" is 32 bits and "int" is 16 bits. There must
|
||||
be a typedef for the two types INT32 and INT16 in that file. You
|
||||
should choose types that compile to those sizes using your compiler,
|
||||
because there are places in the LPC-10 code that expect INT16's to
|
||||
have exactly 16 bits (at least, I *think* they must be no larger), and
|
||||
INT32's to have exactly 32 bits.
|
||||
|
||||
|
||||
A few notes on how these files were created
|
||||
-------------------------------------------
|
||||
|
||||
(This section is mostly for my benefit, so I can remember what I did.
|
||||
You don't need to read it if you just want to use this package. It
|
||||
might be useful to read it if you change the Fortran sources and want
|
||||
to recreate a usable library of C sources. -- Andy)
|
||||
|
||||
These C sources were created automatically from the Fortran sources
|
||||
using f2c, for the most part. Listed below are the extra
|
||||
modifications that were made after this automatic conversion. Many of
|
||||
them were made so that it was not necessary to install f2c in order to
|
||||
use this LPC-10 coder.
|
||||
|
||||
1.
|
||||
|
||||
Put all of those files that were necessary for only the coder, rather
|
||||
than an application that uses the coder, into this subdirectory called
|
||||
lpc10.
|
||||
|
||||
2.
|
||||
|
||||
Copied f2c.h from the f2c distribution into this subdirectory. Some
|
||||
modifications were made to the "typedef" statements in this file, to
|
||||
explicitly indicate the sizes (in bits) that different integer types
|
||||
should be. The types INT32 and INT16 must be defined in a file called
|
||||
lpc10.h in the directory above. Created the file f2clib.c, containing
|
||||
only the functions pow_ii(), r_sign(), and i_nint() from the f2c
|
||||
library.
|
||||
|
||||
3.
|
||||
|
||||
The f2c output originally had a file called contrl_com.c, that defined
|
||||
a small structure containing a few variables that were used in many
|
||||
different functions of the LPC10 code. Every file containing
|
||||
functions that used it defined it as "extern", while contrl_com.c
|
||||
actually allocated storage for the structure. Bill Dorsey, one of the
|
||||
lead developers of Nautilus, said that the Microsoft C compiler had
|
||||
problems either compiling this file, or linking it with all of the
|
||||
other compiled files, so he just eliminated that file and removed the
|
||||
"extern" keyword from the one of the files that declared it that way.
|
||||
The file chosen (arbitrarily) was analys.c.
|
||||
|
||||
4.
|
||||
|
||||
Copied the makefiles for Unix and Microsoft C from the Nautilus v1.5a
|
||||
distribution into the lpc10 directory. Modified them to take out
|
||||
references to Nautilus. These makefiles don't create an executable,
|
||||
but a library of compiled functions called liblpc10.a (Unix) or
|
||||
LPC10.LIB (DOS). This library can be used when linking an executable
|
||||
that calls the functions lpcini_(), lpcenc_(), and lpcdec_().
|
Reference in New Issue
Block a user