This one specifically fixes bugs that either invoke undefined
behaviour or cause memory leaks. Essentially, they affect stability.
Bugs that just affect gameplay will remain covered by FIX_BUGS.
The new mingw-w64-make package on Arch Linux's AUR enables
cross-compiling by overriding the CC, CXXFLAGS, and LDFLAGS
variables, but previously CSE2's Makefile wasn't designed to allow
this, causing it to break. Now, it should work properly.
32-bit MinGW-w64 has this stupid thing where the Makefile can't
detect that executable depedencies may end with '.exe', causing it to
regenerate them every time it's ran.
I really need to test thing before I commit them.
The library linkage things are because MinGW-w64 on Linux is
case-sensitive.
Unfortunately, Linux windres seems to have a problem with
Windows-style directory separators, so if you try building on Linux,
you'll have to convert CSE2.rc to use forward-slashes. I'd make a
commit that does this, but I'm pretty sure MSVC2003 will just revert
it automatically.
Why can't any buildsystems just be good
Like, seriously? Why does pkg-config not have an OpenGL package,
so I don't have to deal with this stupid -lopengl32/-lGL stuff?
...Why isn't there a shim libGL that just maps straight to
opengl32.lib?
Arg
-Og is because "It is a better choice than -O0 for producing debuggable code because some compiler passes that collect debug information are disabled at -O0." and for making the code at least optimized a little bit
-g3 is for adding maximum debug information (such as macro information)
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
Now the Makefile and CMake build systems are identical:
Release builds are named CSE2, and debug builds are named CSE2d.
Language no longer has an effect on filename for the Makefile.
The Linux port's get_resource function seems to be using the original
filenames, rather than the 8.3 filenames used by the Windows EXE's
resource system. Too bad it doesn't tell us the original file extensions.