Commit graph

215 commits

Author SHA1 Message Date
Clownacy
3de557807c This option shouldn't be on by default 2020-03-14 19:10:31 +00:00
Clownacy
140c67a5cb Make CMake file match the portable branch one 2020-03-14 19:09:32 +00:00
Clownacy
406ff18909 Add CMakeLists.txt and Visual Studio 6 support
The CMake file allows you to compile the accurate branch with
whatever version of Visual Studio you have lying around, without
having to clumbsily convert the VS2003 project.

I've tested this with VS2019, VS2003, and VS6. VS6 is goofy - it's
missing a few types and constants, and it's not smart enough to
realise that ints and longs are the same in ILP32 data models. I've
added a few small hacks to address this. Might undo them. Who knows.

For now, I want to support VS6 because Mint compiled CSE2 with it
before, and because VS6 uses `msvcrt.dll` as its C runtime, which
apparently comes pre-installed in Windows, as opposed to all those
other annoying runtime versions that require they be installed
separately (which is why MinGW targets it specifically).

Also, VS6 *should* give us Win95-compatible builds. The internet says
MSVC2003 is Win95-compatible too, but Mint claims the vanilla EXE
doesn't run on there. I imagine it has something to do with its
static runtime library (VS2003 links the static one by default for
some reason).
2020-03-13 21:35:51 +00:00
Clownacy
39c1d92947 CMakeLists.txt - Wrap paths in "" 2020-03-05 15:16:17 +00:00
Clownacy
9af25f7c67 Hopefully fixed miniaudio backend on Windows
Stupid BOOL type
2020-03-04 21:02:17 +00:00
Clownacy
156c01e672 Rename RENDERER and AUDIO_BACKEND
Now they're BACKEND_RENDERER and BACKEND_AUDIO
2020-02-29 18:33:32 +00:00
Clownacy
72672e142d Makefile/CMakeLists.txt fixes 2020-02-29 18:19:06 +00:00
Clownacy
a943e80b1a Add miniaudio audio backend to Makefile
Also made the CMake file link the libs miniaudio needs
2020-02-29 18:19:06 +00:00
Clownacy
14735caac3 Mark CMake target thingies as private 2020-02-29 18:19:06 +00:00
Clownacy
8ec8a8d990 Added unfinished miniaudio audio backend
Currently only works with CMake
2020-02-29 18:18:59 +00:00
Gabriel Ravier
88a554784b Fix the build on portable
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-01-31 06:50:20 +01:00
Gabriel Ravier
ebb238ebdc Added ICC checks for native optimizations
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-01-29 23:01:31 +01:00
Gabriel Ravier
d88db09752 Added CMake option for native optimizations (-march=native)
Signed-off-by: Gabriel Ravier <gabrielravier@gabrielAncientIBMv2>
2020-01-29 23:01:31 +01:00
Clownacy
cf8977207e Stop using SDL for .bmp decoding
Now it uses stb_image instead
2020-01-26 19:47:50 +00:00
Clownacy
26475dacdf Merge branch 'accurate' into portable 2020-01-24 13:56:12 +00:00
Clownacy
c45e888b74 Improve CMake style consistency 2020-01-23 00:59:27 +00:00
Clownacy
db9350bdb9 Add LTO option to CMakeLists.txt 2020-01-22 23:39:05 +00:00
Clownacy
976e2425fc Use native window/taskbar icons on Windows
This used to be a feature before the accurate-portable split, I'm
just restoring it.

Previously, while the EXE itself had a unique icon, the window and
taskbar both used the generic 'small' icon, which the original EXE
only used for the window.

SDL2 gives us a way to assign separate icons to each, but it's a
little clunky: it's Windows-only, requires the icons be in .ico
format, and needs them to be embedded in the EXE as resource files.
Also, for some reason, SDL2 doesn't let us refer to them by name - we
have to use their numerical ID.
2020-01-21 11:27:32 +00:00
Clownacy
23eed95ff4 Fix CMake build script not finding FindOpenGLES2.cmake 2020-01-20 14:01:22 +00:00
Clownacy
4cbc56e272 Add OpenGL ES 2.0 renderer 2020-01-20 13:49:30 +00:00
Clownacy
f7b8373ad7 Merge branch 'accurate' into portable 2020-01-15 08:18:30 +00:00
Clownacy
5a72140a5d Rename glad.cpp back to glad.c 2020-01-15 07:31:35 +00:00
Clownacy
d76b074aa0 Switched from GLEW to GLAD
One less set of license obligations to satisfy (GLAD-generated files
are public-domain).
2020-01-15 07:11:43 +00:00
Clownacy
404d748da7 Rename ALL_WARNINGS and FATAL_WARNINGS
This way, all three options appear neatly together when 'cmake -LH'
is ran.
2019-10-29 11:53:02 +00:00
Clownacy
e6b8221fdb Fix DoConfig always having the warning options enabled 2019-10-29 11:50:49 +00:00
Clownacy
68fceb63c4
Merge pull request #63 from GabrielRavier/addWarnings2
Add warnings
2019-10-29 11:44:13 +00:00
Gabriel Ravier
f6c19c5501 Move warnings in the README too
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-10-29 10:07:43 +01:00
Gabriel Ravier
d40376ff35 Removed bin2h mentions in CMakeLists, moved warnings options and FORCE_LOCAL_LIBS into a seperate block where the descriptions were improved and added warnings to DoConfig
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-10-29 10:03:13 +01:00
Clownacy
4e99c97fee
Merge pull request #64 from GabrielRavier/fixMSVCUtf8
Make MSVC recognize source files as UTF-8
2019-10-28 19:00:17 +00:00
Gabriel Ravier
94442d9ce3 Made it so MSVC interprets source files as UTF-8 to fix compile
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-10-28 18:22:31 +01:00
Gabriel Ravier
01abc0541a Added code that prints the compiler ID and fixed bin2h's compiler detection code to use the C compiler ID of the C++ compiler ID (which isn't available then as bin2h is in c)
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-10-27 21:22:10 +01:00
Gabriel Ravier
d6ec92cba5 Attempt 2 at making warnings work
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-10-27 21:02:59 +01:00
Gabriel Ravier
44d6dac407 First attempt at making warnings work
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-10-27 20:42:19 +01:00
Clownacy
15ad469f67 Shut up that CMake OpenGL warning
What's so hard about CMake *just working*? Why do I have to jump
through all these stupid hoops?
2019-10-27 18:20:44 +00:00
Clownacy
7f0b8ac40d Missed an 'SDLTexture', there 2019-10-14 22:35:47 +00:00
Clownacy
0b8c49b984 Rename SDL RENDERER options
Been meaning to do this for ages
2019-10-14 22:20:21 +00:00
Clownacy
5838eaba1f Add a FOSS Japanese font
It doesn't seem that great at 320x240, but I don't speak Japanese so
what do I know?
2019-09-27 11:18:26 +00:00
Gabriel Ravier
c9b248ba64
Removed space before ':' and re-added comma before or
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-11 19:01:36 +02:00
Gabriel Ravier
dd190bd276
Remove option change, wrote "cross-gcc" as "cross-GCC" and "mingw" as "MinGW"
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-11 14:32:48 +02:00
Gabriel Ravier
d686152e84
Fixed question not being a question, "Emscriptem" and saying "cross-compiled" twice
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-11 14:11:01 +02:00
Gabriel Ravier
7176bcab9e
Added more detail to the cross-compile comment
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-11 13:37:34 +02:00
Gabriel Ravier
a9f95ed1a2
Changed some comments and messages in CMakeLists.txt
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-09-11 08:24:00 +02:00
Clownacy
c60cdb3610 Make CMake detect static SDL2 installations
Fixes #46
2019-09-10 12:23:09 +00:00
Clownacy
b5f2fa8693 Add a DEBUG_SAVE option to CMakeLists.txt 2019-09-06 21:24:54 +01:00
Clownacy
b53741ca25 Fix CMakeLists.txt some more 2019-09-06 19:59:44 +01:00
Clownacy
9f40c68ab2 Repair CMakeLists.txt 2019-09-06 19:27:32 +00:00
Clownacy
e6350151c9 Revert "Remove the leftover CMakeLists.txt file"
This reverts commit c7c5077103.

It probably doesn't work anymore, but I plan to get it working again
in this branch.
2019-09-05 12:48:46 +00:00
Clownacy
c7c5077103 Remove the leftover CMakeLists.txt file
I might bring this back at some point. Depends.
2019-09-05 12:46:39 +00:00
Clownacy
ea83d4ba8a Merge branch 'master' into accurate 2019-08-25 20:35:01 +01:00
Clownacy
c4599bc146 Allow third-party in-source files to go in the external folder 2019-08-10 22:47:40 +01:00