diff --git a/README b/README index a9262ce..bfe41fe 100644 --- a/README +++ b/README @@ -1,29 +1,66 @@ ACHTUNG! -This is my personal set of ports for KISS, a POSIX(ish) meta distribution of *NIX. These packages currently assume a Linux-based system, but support for *BSD will likely arrive in the future. Please report any bugs to me via email; thanks. +This is my personal set of ports for KISS, a POSIX(ish) meta distribution of +*NIX. These packages currently assume a Linux-based system, but support for +*BSD will likely arrive in the future. Please report any bugs to me via +email; thanks. -The mbase directory contains symlinks to packages that I install as my core userspace. +The mbase directory contains symlinks to packages that I install as my core +userspace. -The banished directory contains software that has been isolated for whatever reason. May or may not include a "JUSTIFICATION" file to remind myself in the future. +The banished directory contains software that has been isolated for whatever +reason. May or may not include a "JUSTIFICATION" file to remind myself in the +future. -Note that not all of the packages in this repo are written by me; some are forked from Core and Community. This is purely a matter of convenience. +Note that not all of the packages in this repo are written by me; some are +forked from Core and Community. This is purely a matter of convenience. -All packages under mbase have been tested and build on the Haswell microarchitecture using the following CFLAGS (assuming GCC): +All packages under mbase have been tested and build on the Haswell +microarchitecture using the following CFLAGS (assuming GCC): - -pipe //Compile in memory - -w //Suppress errors - -D_FORTIFY_SOURCE=1 //Perform lightweight tests to catch overflows and etc - -O2 //Standard level of optimization - -march=native //Compile for the current micro-arch - -fasynchronous-unwind-tables //Use the DWARF format for unwind tables. Reduces ELF size. - -momit-leaf-frame-pointer //Leave out unneeded pointers - -ftree-loop-vectorize //Vectorize trees (unsure of the implications, but doesn't appear to cause breakage; will investigate further) - -fstack-protector-strong //Sacrifice a fair amount of performance in order to protect from stack smashing - --param ssp-buffer-size=4 //Increase the number of functions under the stack protector - -fstack-clash-protection //Protect from stack clashing. Will investigate further - -fPIE //Generate position-independent executables - -fPIC //Generate position-independent code - -Wl,--hash-style=gnu //Linker arguments + -pipe + Compile in memory + + -w + Suppress errors + + -D_FORTIFY_SOURCE=1 + Perform lightweight tests to catch overflows and etc + + -O2 + Standard level of optimization + + -march=native + Compile for the current micro-arch + + -fasynchronous-unwind-tables + Use the DWARF format for unwind tables. Reduces ELF size + + -momit-leaf-frame-pointer + Leave out unneeded pointers + + -ftree-loop-vectorize + Vectorize trees (unsure of the implications, but doesn't appear to cause + breakage; will investigate further) + + -fstack-protector-strong + Sacrifice a fair amount of performance in order to protect from stack + smashing + + --param ssp-buffer-size=4 + Increase the number of functions under the stack protector + + -fstack-clash-protection + Protect from stack clashing. Will investigate further + + -fPIE + Generate position-independent executables + + -fPIC + Generate position-independent code + + -Wl,--hash-style=gnu + Linker arguments A new subdir, bin, containing binaries built with the above CFLAGS (sans native) will be added in the future. I, however, encourage you to build from source if