====== KempoMake : Quick Start Guide ======
===== Check Configuration =====
Here is a simple test to see if KempoMake is properly configured:
- Create a projects directory. (ie /proj/)
- Unarchive the KempoMake archive into this directory.
- Open /proj/KempoMake/default.mk with a text editor and edit the PROJROOT variable for your setup. Modify other defaults as you wish.
- Open a shell up.
- Change to the KempoMake directory: cd /proj/KempoMake/Project/
- Create a sample library: make -r -R CreateLibrary NAME=SampleLib PLATFORM=Win32
- Open a second shell up.
- Change to the KempoMake directory: cd /proj/KempoMake/Project/
- Create a sample application: make -r -R CreateApplication NAME=SampleApp PLATFORM=Win32
===== Sample Library/Application =====
Now in your first shell:
cd /proj/SampleLib/Project
make -r -R PLATFORM=Win32
Once the first shell is done building, in your second shell:
cd /proj/SampleApp/Project
make -r -R PLATFORM=Win32
===== The "BUILD" variable =====
A note, there is a "BUILD" variable, which can be either "DEBUG", "PARTIAL", or "FINAL".
==== Build Levels Explained ====
There are three "build levels", as follows:
* DEBUG - Generates debug symbols, has all assertion/exception handling code, no optimizations whatsoever
* PARTIAL - Generates no debug symbols, has all assertion/exception handling code, all optimizations on
* FINAL - Generates no debug symbols, has no assertion/exception handling code, all optimizations on
The idea with the build levels is simply this:
* DEBUG - Internal builds, run by the programmers to find errors
* PARTIAL - Internal/External builds, run by beta testers to find bugs
* FINAL - External builds, this is release code, and should therefore have zero chance to assert
The default build level is "DEBUG".
Open a third shell, and type:
z:\proj\SampleApp\Project\Win32\DEBUG\SampleApp.exe
You should then see this:
printFoward: First Statement
printBackwards: tnemetatS dnoceS
printLeet: ThIrD StAtEmEnT
...Which means that the Sample Library and Sample Application are both working. Congratulations.
===== Platform support =====
Currently only the **Win32 platform** is supported at this time.
You may add support for additional platforms similarly.
To add platform support for a library, for instance Linux:
cd /proj/KempoMake/
make -r -R AddLibraryPlatform NAME=SampleLib PLATFORM=Linux
To add platform support for an application, for instance on Linux:
cd /proj/KempoMake/
make -r -R AddApplicationPlatform NAME=SampleApp PLATFORM=Linux
To start your own project, change the NAME variable in the make command line.