163
164
165
166
167
168
169
170
171
172
173
174
175
176
|
to build libk, you must invoke `build.sh` with the proper parameters. at minimum you must set the following environment variables:
* `os={atom}` - an atom representing the operating system you are building libk for
* `arch={atom}` - an atom representing the processor architecture you are building libk for
* `bits={atom}` - if your processor has multiple variants with different word lengths (such as x86-32 vs. x86-64), specify the word length in this variable; otherwise, leave it unset.
further optional variables may be set to control the build process and determine what targets it produces.
* `library=static {static|shared|both}` - this variable controls whether the build process will produce `libk.a`, `libk.so`, or both.
* `to=out {path}` - an alternate path to store build artifacts in
* `gen=gen {path}` - an alternate path to store generated source in
* `cc=<autodetect> {executable}` - the compiler to compile C sources with
* `m4=<autodetect> {executable}` - the m4 binary to compile the macro sources with
* `asm=<autodetect> {executable}` - the assembler to assemble the assembly listings with. it must take Intel-syntax input and handle nasm-style macros. only `yasm` and `nasm` are likely to be viable.
* `doc=yes {yes|no}` - whether to typeset the documentation (very slow with all three formats set to "yes")
|
|
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
|
to build libk, you must invoke `build.sh` with the proper parameters. at minimum you must set the following environment variables:
* `os={atom}` - an atom representing the operating system you are building libk for
* `arch={atom}` - an atom representing the processor architecture you are building libk for
* `bits={atom}` - if your processor has multiple variants with different word lengths (such as x86-32 vs. x86-64), specify the word length in this variable; otherwise, leave it unset.
further optional variables may be set to control the build process and determine what targets it produces.
* `library=static {static|shared|both}` - this variable controls whether the build process will produce `libk.a`, `libk.so`, or both.
* `to=out {path}` - an alternate path to store build artifacts in
* `gen=gen {path}` - an alternate path to store generated source in
* `cc=<autodetect> {executable}` - the compiler to compile C sources with
* `m4=<autodetect> {executable}` - the m4 binary to compile the macro sources with
* `asm=<autodetect> {executable}` - the assembler to assemble the assembly listings with. it must take Intel-syntax input and handle nasm-style macros. only `yasm` and `nasm` are likely to be viable.
* `doc=yes {yes|no}` - whether to typeset the documentation (very slow with all three formats set to "yes")
|