Scons command line flags
This page will explain all the SCons command line flags. Note that --release --sse --sse2 --no-warnings are all enabled by default. Use --no-sse, --wall, or --debugging to disable these.
Some of these options are also auto-detected. Your platform is detected so --win / --lin / --mac aren't needed unless you are cross compiling. Some cross compilers are also auto-detected on Linux so --tool may not be needed. --64bit and --32bit shouldn't be necessary either.
Name | Description | Example usage |
---|---|---|
parallel compilation | Compiles in multiple threads, significally decreases compilation time if the number of threads equals the number of cores on your system. | -j4 |
Build | Sets the build directory. | --build-dir build/powder64 |
Windows | Targets the Windows platform | --win |
Linux | Targets the Linux platform | --lin |
Mac OS X | Targets the Mac OS X platform. | --mac |
MSVC | Compiles using the Microsoft Visual Studio Compiler | --msvc |
Tool | Prefix for toolchain executables used for cross compiling. | --tool i586-ming32msvc- |
Beta | Makes a beta build. | --beta |
Save Version | Defines save version. | --save-version 89 |
Minor Version | Defines the minor version. | --minor-version 1 |
Build Number | Defines the build number. | --build-number 281 |
Snapshot | Makes a snapshot build. | --snapshot |
Snapshot ID | Defines the snapshot ID. | --snapshot-id 12345 |
64-bit | Compiles a 64-bit (AMD64) version | --64bit |
32-bit | Compiles a 32-bit (i386) version | --32bit |
Universal | Compiles a universal (32 and 64 bit) binary, OS X only | --universal |
No SSE | Compiles a legacy version, for older computers | --no-sse |
SSE | Compiles an SSE-enabled, and thus, non-legacy binary. | --sse |
SSE2 | Enables SSE2 optimisations. | --sse2 |
SSE3 | Enables SSE3 optimisations. | --sse3 |
Native | Compiles with --march=native | --native |
Release | Enables compiler optimization and makes a release build (slows down compiling) | --release |
Debugging | Enables Debug Options | --debugging |
Static Linking | Reduces external library dependencies | --static |
OpenGL | Use OpenGL to render the interface | --opengl |
OpenGL Particles | Use OpenGL to render particles (turns on --opengl) | --opengl-renderer |
Renderer | Compiles the save renderer | --renderer |
Error on warnings | Any compiler errors turn into warnings | --wall |
No warnings | Ignore all compiler warnings | --no-warnings |
No FFT | Do not use fftw3f for gravity. | --nofft |
No Lua | Disables all Lua scripting features. | --nolua |
Executable name | Create an executable with a different name | --output MyMod.exe |