BOLO runtime stack.
- luajit
- Some windowing lib (SDL, GLFW, SFML, etc.)
- pixman
- cairo
- freetype2
- zlib
- bz2
- png
+ffi="Enable he FFI extension. Disabling it would reduce the size of the LuaJIT executable. But please consider that the FFI library is compiled-in, but NOT loaded by default. It only allocates any memory, if you actually make use of it" | |
-lua52compat="Enable some upwards-compatible features from Lua 5.2 that are unlikely to break existing code (e.g. __pairs). Note that this does not provide" | |
+jit="Enable the JIT compiler, disabling it would turn LuaJIT into a pure interpreter" | |
+sse2="x86 only: use SSE2 instead of x87 instructions in the interpreter" | |
+cmov="Enable the use of CMOV and FCOMI*/FUCOMI* instructions in the interpreter. Disable it only if you intend to use REALLY ANCIENT CPUs (before Pentium Pro, or on the VIA C3). This generally slows down the interpreter. Don't bother if your OS wouldn't run on them, anyway." | |
+nummode1="Some architectures (e.g. PPC) can use either single-number (+nummode1) or dual-number (+nummode2) mode. Please see LJ_ARCH_NUMMODE in lj_arch.h for details." | |
+nummode2=-nummode1 | |
-s |
BOLO runtime stack.
BO should come with certain unix related tools
Candidates: Busybox: - One executable. There is a w32 port, trying it out now on OSX It's also good candidate for library
Alternative: Apache Apr - not the same - it's "portable library", but not executables
Q1: What is BO? | |
A1: BO is a luajit distribution targeting desktop computers and mobile devices. | |
Q2: Why BO? | |
A2: With BO you can edit and run lua code straight on the target. | |
Q3: Batteries included? | |
A3: Yes. BO comes with ffi bindings for several popular libraries and frameworks. | |
Q4: What is ffi? |
Terminology | |
=========== | |
1. Platform - The combination of Operating System, Kernel, Tools and Runtime, and/or specific hardware device. | |
2. Desktop Platform - Typical computer with mouse & keyboard | |
3. Mobile Platform - Cell Phone, Touch Pad or other similar portable device | |
4. Host Platform - The platform on which the product is built. | |
5. Target Platform - The platform on which the product runs. | |
6. Target Runtime Library - The main "C" library for which the product is compiled. |
-- Something like (ZeroMQ in this case) | |
return { | |
typedefs = { | |
functions = { | |
zmq_free_fn = { "void", "data", "hint" }, | |
}, | |
structs = { | |
zmq_pollitem_t = "zmq_pollitem_t" | |
}, |
// Not sure whether it's faster than FindFirstFile, etc. - but it does it in one kernel call | |
#include <windows.h> | |
#include <stdio.h> | |
// to compile: | |
// cl fileinfo.c setargv.obj | |
void fileinfo(const char*name); | |
int main( int argc, const char* argv[] ) |
// maglev -- malkia's GL extension vectors | |
// For more complete options, look at: | |
// GL3W, GLEW and GLEE | |
// | |
// Dimiter "malkia" Stanev | |
// [email protected] | |
// | |
// To use it, just compile it like "cl -c maglev.c", and then link the .obj file with your stuff | |
// | |
#define WIN32_LEAN_AND_MEAN 1 |
8x8 | |
1K | |
1Q | |
2r | |
2k | |
2b | |
8p | |
1+1+2+2+2+8 |
#include <windows.h> | |
#include <stdio.h> | |
// to compile: | |
// cl fileinfo.c setargv.obj | |
void fileinfo(const char*name); | |
int main( int argc, const char* argv[] ) | |
{ | |
int i; |