Video game.
FreeBSD 11.0-RELEASE:
doas pkg install python3 sdl2 sdl2_image sdl2_ttf
Fedora 25:
sudo dnf install python3 gcc SDL2 SDL2-devel \
SDL2_image SDL2_image-devel SDL2_ttf SDL2_ttf-devel
By default, the build script will use cc
for compiling C programs.
To override which C compiler is used, set the CC
environment variable
or set value for CC
in the form of a key=value
pair in the list of
arguments passed to make.py
. All variable assignments need to come
before any targets appear in the list of arguments.
If you would like to put build files and out files under
$HOME/build
and $HOME/out
respectively, you may do the
following:
mkdir -p $HOME/build && touch $HOME/build/.allow_from_any
mkdir -p $HOME/out && touch $HOME/out/.allow_from_any
This is useful for example if you want to synchronize projects across machines without synchronizing the build files and out files.
Another thing it's useful for is that having one common pair of build and out file directories allows you to mount a RAM disk for all of these writes should you desire to do so.
Then to perform a debug or release build, type the command as shown below.
./buildtools/make.py
./buildtools/make.py release
Currently this project is built using the following operating systems and C compilers.
TODO: Continuous Integration proper.
CC=cc ./buildtools/make.py
(Base FreeBSD clang 3.8.0).CC=clang39 ./buildtools/make.py
(Ports LLVM clang 3.9.1).CC=clang34 ./buildtools/make.py
(Ports LLVM clang 3.4.2).CC=gcc49 ./buildtools/make.py
(Ports GCC 4.9.4).CC=pcc ./buildtools/make.py
(Ports Portable C Compiler 1.1.0).
CC=gcc ./buildtools/make.py
(Packages GCC 6.3.1).
NOTE: If you defined CC
during the build stage,
ensure that the same value is provided still.
./buildtools/make.py run
NOTE: If you defined CC
during the build stage,
ensure that the same value is provided still.
./buildtools/make.py clean
NOTE: If you defined CC
during the build stage,
ensure that the same value is provided still.
./buildtools/make.py distclean_triplet
The value of CC
does not make a difference here.
./buildtools/distclean