LBPP v0.0.6b
DESCRIPTION
LBPP is a front end to the GNU Common Compiler (GCC) that produces C
source code from Liberty Basic source code. This code then is fed to
GCC to produce an executable. It is similiar to C++ compilers that
produce C code that then is compiled. It can be thought of either as
a GCC extension or a C translator. The architecture of LBPP was
designed to allow statements to be added dynamically without requiring
a recompile of the source. It accomplishes this by defining a
standard interface between C and Liberty Basic that allows C functions
to access all of the internal data of a Liberty Basic program. The
fact that all of the functionality of is based in a C library, porting
LBPP to a new platform requires only porting the library to the native
GUI system along with necessary modifications to allow the code to
compile. The translator should be ANSI C so porting should not be an
issue.
The translator (LBPP) is licensed under the GNU General Public License
(GPL). The supporting library (libLB) is licensed under the GNU Lesser
General Public License (LGPL). This forces all modifications of the
program to remain open source but allows programs compiled by the front
end to choose their own license. Modifications to the supporting
libraries are forced to remain open source.
A special exception is made for a single file (lb_std_head.c) to allow
this file to be in an application without the application be forced to
be licensed under the LGPL or GPL. The file statement.tbl is
considered a header file to an Liberty Basic program and is therefore
covered by the same restrictions (and lack thereof or restriction) as
a C header file.
MAINTAINER
The current maintainer of LBPP is:
Anthony Liguori <a.liguori@wowis.com>
See the AUTHORS file for a list of everyone who has contributed code.
Any patches should be sent to the current maintainer to be considered
for future versions. All patches should be in the standard diff
format.
REQUIREMENTS
- gcc 2.96 or compatible compiler
INSTALLATION/SETUP
See the INSTALL file for installation instructions.
DISCLAIMER
Liberty Basic is a registered trademark of Shoptalk Systems. LBPP
is in no way affilated with Shoptalk Systems. The term 'Liberty Basic'
is used throughout this document and program to describe the
programming language that the Liberty Basic application of Shoptalk
Systems implements but does not reflect a relationship to the
application distributed by Shoptalk Systems.
