ldecNumber

Top-level Files of 9853890ce46904a9
Login

Files in the top-level directory of check-in 9853890ce46904a9


ldecNumber -- a Lua 5.1 wrapper for the decNumber Decimal Arithmetic package.

September 22, 2006

The Lua wrapper is
Copyright (c) 2006 Doug Currie, Londonderry, NH
All rights reserved.

The decNumber C library is
Copyright (c) 1995-2005 International Business Machines Corporation and others
All rights reserved.

The software and documentation is made available under the terms of the 
ICU License (ICU 1.8.1 and later) included in the package as 
decNumber/ICU-license.html.

See: version.h for version info.

User documentation is provided in the doc directory.
See:
doc/ldecNumber.pdf
doc/decnumber.pdf

Building the Lua module...

The wrapper and decNumber library are built as a monolithic Lua module.

The Makefile provided is written and tested with MinGW/MSYS on WindowsXP,
and with a Subversion repository.

It can probably be adapted quite easily for other platforms.
Basically, you must compile and link (with Lua) three files: 
  decNumber/decContext.c and .o
  decNumber/decNumber.c and .o
  ldecNumber.c and .o
There are no extenal dependencies other than Lua 5.1(.1)

If you are not working with the Subversion repository (which is presently
unlikely since it is on my local network), comment out the line

version.h: vcheck

in the Makefile.

The Makefile produces a shared library (DLL) that should be installed 
in Lua's loadable C module search path (package.cpath).

Makefile targets...

make

build the loadable C module ldecNumber.DLL

make vcheck

update version.h from a Subversion repository -- you will probably want 
to eliminate this target from Makefile dependencies; a version.h is 
included in the distribution to facilitate this

make install

copy the loadable C module to $(LUABIN)

make test

runs the tests; be sure to "make install" first!

make testall

does a "make test" followed by the Windows-only performance test

make clean

the usual

make dist

probably only useful as documentation for how I build the distribution

-=-