FB[C|L]FLAGS
to set -g -exx etc. for the compiler build and/or link
CFLAGS
same for the rtlib and gfxlib2 build
prefix
install/uninstall directory, default: /usr/local
TARGET
GNU triplet for cross-compiling
MULTILIB
"32", "64" or empty for cross-compiling using a gcc multilib toolchain
FBC, CC, AR
fbc, gcc, ar programs (TARGET may be prefixed to CC/AR)
V=1
to see full command lines
ENABLE_STANDALONE=1
build source tree into self-contained FB installation
ENABLE_PREFIX=1
use "-d ENABLE_PREFIX=$(prefix)" to hard-code the prefix into fbc
ENABLE_SUFFIX=-0.24
append a string like "-0.24" to fbc/FB dir names, and use "-d ENABLE_SUFFIX=$(ENABLE_SUFFIX)" (non-standalone only)
ENABLE_LIB64=1
use prefix/lib64/ instead of prefix/lib/ for 64bit libs (non-standalone only)
ENABLE_STRIPALL=1
use "-d ENABLE_STRIPALL" with all targets
ENABLE_STRIPALL=0
disable "-d ENABLE_STRIPALL" with all targets
FBSHA1=1
determine the sha-1 of the current commit in repo and store it in the compiler
FBSHA1=some-sha-1
explicitly indicate the sha-1 to store in the compiler
FBPACKAGE
bindist: The package/archive file name without path or extension
FBPACKSUFFIX
bindist: Allows adding a custom suffix to the normal package name (and the toplevel dir in the archive)
FBMANIFEST
bindist: The manifest file name without path or extension
FBVERSION
bindist/gitdist: FB version number
DISABLE_DOCS
bindist: Don't package readme/changelog/manpage/examples
BUILD_PREFIX
automatically set depending on the target but can override for special builds where the build tools have different file naming than the target to build (i.e. cross compiling)
DISABLE_GAS64_DEBUG
use "-d DISABLE_GAS64_DEBUG" (see below)
DISABLE_STDCXX_PATH=1
Tells fbc to not search for some libstdc/libc depending on target platform
DEFAULT_CPUTYPE_X86=<FB_CPUTYPE>
Sets default x86 cpu type to one of FB_CPU_TYPE
For example make compiler DEFAULT_CPUTYPE_X86=FB_CPUTYPE_386
DEFAULT_CPUTYPE_ARM=<FB_CPUTYPE>
Sets default arm cpu type to one of FB_CPUTYPE
make compiler DEFAULT_CPUTYPE_ARM=FB_CPUTYPE_ARM7A_FP
-d ENABLE_STANDALONE
build for a self-contained installation
-d ENABLE_SUFFIX=-0.24
assume FB's lib dir uses the given suffix (non-standalone only)
-d ENABLE_PREFIX=/some/path
hard-code specific $(prefix) into fbc
-d ENABLE_LIB64
use prefix/lib64/ instead of prefix/lib/ for 64bit libs (non-standalone only)
-d ENABLE_STRIPALL
configure fbc to pass down '--strip-all' to linker by default
-d FBSHA1=some-sha-1
store 'some-sha-1' in the compiler for version information
-d DISABLE_GAS64_DEBUG
disable gas64 debugging comments in asm files even if FB_DEBUG is defined (-g)
-d DISABLE_STDCXX_PATH
tells fbc to not search for some libstdc/libc depending on target platform
-d BUILD_FB_DEFAULT_CPUTYPE_X86=<FB_CPUTYPE>
This make the compiler set default x86 cpu type to one of FB_CPUTYPE
-d BUILD_FB_DEFAULT_CPUTYPE_ARM=<FB_CPUTYPE>
This make the compiler set default arm cpu type to one of FB_CPUTYPE
-DDISABLE_X11
build without X11 headers (disables X11 gfx driver)
-DDISABLE_GPM
build without gpm.h (disables
GetMouse in the Linux terminal (TERM=linux), although the TERM=xterm variant keeps working)
-DDISABLE_FFI
-DDISABLE_OPENGL
-DDISABLE_FBDEV
build without Linux framebuffer device headers (disables Linux fbdev gfx driver)
-DDISABLE_D3D10
build without
DirectX 10 driver (disable D2D driver in windows)
-DDISABLE_NCURSES
build without libtinfo or ncurses (disables console commands)
-DDISABLE_LANGINFO
build without locale info (affects Unix only; makes no difference unless you call setlocale() manually). Does not remove setlocale(LC_CTYPE, "") call.
-DDISABLE_WCHAR
build without wchar_t type or functions. wstring becomes ASCII only (fbc needs to match this).