↑ Software ↑

GEONius.com
10-Dec-2023
 E-mail 

CSOFT/LIBGPL Downloads & Instructions

General Purpose Library (LIBGPL) and Programs

MicroEMACS/EDT

JASSPA MicroEMACS

 

General Purpose Library (csoft.tgz, 1374K  -  csoft.zip, 1663K)

Last Update: Sat Jan 6 13:44:34 2024

 See CSOFT README - Overview & Build.txt for more detailed information. 

Licensing

Directory Structure

Here is the main directory structure of the CSOFT software. The top directory, "csoft-yyyy-mm-dd", includes the date I created the TAR and ZIP files, thus preventing a TAR bomb (Wikipedia) when the files are extracted.

    csoft-yyyy-mm-dd/
    |   (csoft.sln solution file for Microsoft Visual Studio)
    |-> bsd-xdr/
    |   |-> lib/
    |   |       (source, Makefiles, libxdr.vcxproj)
    |   `-> rpc/
    |           ("rpc/*.h" header files)
    |-> include/
    |       (libgpl header files)
    |-> libgpl/
    |       (source, Makefiles, libgpl.vcxproj)
    |-> tools/
    |       (multiple programs: source, Makefiles, *.vcxproj files)
    |-> anise/
    |       (source, Makefiles, anise.vcxproj)
    `-> cornet/
            (source, Makefiles, cornet.vcxproj)

Building CSOFT - Windows (Visual Studio)

  1. Open "csoft.sln" in Visual Studio.
  2. Choose your configuration type, "DebugWin32", "ReleaseWin32", "Debugx64", or "Releasex64".
  3. Build the solution.

Note:

Building CSOFT - Linux/Unix/Cygwin

The software can be built in-place in the source directories if desired. I always use the lndir(1) command to create a shadow directory tree with links to the source files back in the source tree. The object files, library archives, and executables are then generated in the shadow tree. For example, I have 4 shadow directories on my Linux PC, all of which link back to the source files in the source tree:

    ~				(Home Directory)
    |-> csoft-yyyy-mm-dd/	(Source Tree)
    `-> obj/			(Object Tree)
        |-> ndk-aarch64/	(Android)
        |-> nds45/		(Nintendo DS)
        |-> palm68k/		(Palm Pilot)
        |-> x86_64cygwin/	(Linux)
        `-> x86_64linux/	(Linux)

To build the software, cd into the root of the build directory (the source directory if building in place or the platform's object directory) and do the following:

  1. cd libgpl; make -f make.<platform> - builds the LIBGPL library.
  2. cd ../tools; make -f make.<platform> - builds the single-file programs.
  3. cd ../anise; make -f make.<platform> - builds the ANISE web server.
  4. cd ../cornet; make -f make.<platform> - builds the CORNET client.

(As I go through a specific platform's directories, building the software, I usually do an "ln -s Makefile.<platform> Makefile", which allows me to just type "make" to build the directory.)

Bulding CSOFT - Android/Nintendo DS/Palm Pilot (Cross-Platform Toolchains)

The build steps using the respective platforms' cross-compilation toolchains is almost identical to that for Linux, the only difference being that the BSD-XDR library is now needed:

  1. cd bsd-xdr/lib; make -f make.<platform> - builds the BSD-XDR library.
  2. cd ../../libgpl; make -f make.<platform> - builds the LIBGPL library.
  3. cd ../tools; make -f make.<platform> - builds the single-file programs.
  4. cd ../anise; make -f make.<platform> - builds the ANISE web server.
  5. cd ../cornet; make -f make.<platform> - builds the CORNET client.

where platform is "ndk" for the Android NDK, "nds" for the Nintendo DS, and "palm68k" for PalmOS (m68k only).

Note - Android

To be written, but in the meantime:

Note - PalmOS

To be written, but in the meantime:

 

MicroEMACS (uemacs-2021.tgz, 738K  -  uemacs-2021.zip, 814K)

Last Update: Thu Nov 23 21:38:04 2023


Alex Measday  /  E-mail