The Synchronet builds system supports a vast array of build options most of which are only slightly supported. This page attempts to document them for advanced users.
DEBUGRELEASE is not defined, does a debug build.FORTIFYDEBUG, will build with _FORTIFY_SOURCE option (and enable basic optimization).SANITIZEDEBUG, will build with AddressSanitizer (ASan) and Undefined Behavior (UB) Sanitizer (not currently recommended/supported).RELEASEJS_CFLAGSJS_LDFLAGSJSINCLUDEJSLIBDIRJSLIBEXTRA_JS_CONFIGURE_ARGSconfigure command when building the included SpiderMonkey.–disable-tracejit is commonly needed to build JS on less common OSs/Architectures. Please file a bug if it's required.JS_CONFIGURE_ARGSconfigure command when building the included SpiderMonkey.CRYPTLIBINCLUDECRYPTLIBDIRCRYPT_LIBSUSE_SDL_AUDIOWITHOUT_SDLSDL_CONFIGNSPRDIRNSPRINCLUDENSPR_CFLAGSNSPR_LDFLAGSSRC_ROOT3RDP_ROOTPROFILEUPROFILEUSE_UPROFILEUPROFIE build (RELEASE builds only)GCOVDONT_CLOBBER_CC (Removed Fri Feb 6 23:58:56 2015 UTC - gcc no longer forced)gcc. To use a different compiler, you will need to set both CC *and* this option.OBJPATH_SUFFIXSTATICBUILDPATHNO_XWITHOUT_PORTAUDIODONT_BLAME_SYNCHRONET