Commit graph

10592 commits

Author SHA1 Message Date
James R
6c03f9b5b3 fuck 2021-06-29 14:42:40 -07:00
James R
c1ecfa306f Makefile: 'dep' not 'deps' 2021-06-29 13:58:38 -07:00
James R
ed85e994a4 Remove misplaced parentheses 2021-06-22 15:49:59 -07:00
James R
c3ad5de912 Makefile: let variables be defined on Make line
If a variable is defined as in 'make CC=gcc-10', then that
definition overrides anything other definition in the
Makefile.
2021-06-22 15:47:48 -07:00
James R
5f4d7e3c5b Makefile: fail if old build directories exist
After a checkout from before revision, old directories
such as bin/Linux64 only remain if untracked files exist
within. This may be confusing to the user. They may even
use an outdated executable if it is one of those untracked
files.
2021-06-22 15:14:42 -07:00
James R
d5146945a6 Makefile: don't automatically set WINDOWSHELL unless PATH matches Windows norms
This is for MSYS2, which requires unix shell commands.
2021-06-21 16:10:13 -07:00
James R
2d7a8c3c57 Makefile: use shell commands to read in Sourcefile
File function is not supported < Make 4.2.
2021-06-21 14:51:42 -07:00
James R
b04c79d8a7 Say 'at' 2021-06-16 16:58:47 -07:00
James R
c142b3241d Makefile: alert full path of final executable
With added textual contrast.
2021-06-16 16:26:17 -07:00
James R
3a044e71cc Disable EXE disassembly and compression by default
NOOBJDUMP=1 and NOUPX=1 have been removed. Make 'dump'
target to disassemble. UPX=upx to compress executable.

Setting UPX used to cause it to fail. That has been fixed.
2021-06-16 15:39:23 -07:00
James R
c325306ddf Merge remote-tracking branch 'origin/master' into makefile-revision-final 2021-06-07 18:36:01 -07:00
sphere
c266a27073 Merge branch 'master' into 'master'
Fix console text bleeding

See merge request STJr/SRB2!1434
2021-06-06 07:01:30 -04:00
Steel Titanium
7862a557c8 Merge branch 'bugfix-1' of https://github.com/rjpfonseca/SRB2 into rjpfonseca-bugfix-1 2021-05-19 22:57:38 -04:00
SteelT
695722269b Merge branch 'warnings' into 'master'
Fix some compiler warnings

See merge request STJr/SRB2!1504
2021-05-19 22:54:48 -04:00
RJPFonseca
69647eb78d Used spaces instead of tabs in Makefile.cfg 2021-05-09 19:10:53 +01:00
James R
35244fa736 Clang: fix -Wimplicit-const-int-float-conversion
Some of these integers exceed the precision of float. In
that case the number is rounded. The rounding shouldn't
matter too much anyway, so just shut the compiler up.
2021-05-08 16:49:23 -07:00
James R
210c9419e4 Ignore -Wtrigraphs 2021-05-08 16:49:18 -07:00
James R
87afa7655a CMake: fix ASM compile
- target_sources from correct directory
- enable_language must be used in add_executable directory
2021-05-07 18:59:51 -07:00
James R
9e7d80c2c4 Makefile: suppress DEL error 2021-05-07 16:08:24 -07:00
James R
c06817d008 Makefile: fix mingw/64 swapped with 32-bit 2021-05-07 15:30:46 -07:00
James R
ee72312dea Merge remote-tracking branch 'origin/master' into makefile-revision-final 2021-05-07 13:32:19 -07:00
LJ Sonic
07e69c5eb3 Add copyright date ranges for files created in 2020 2021-05-07 18:04:30 +02:00
LJ Sonic
d325c7e6d3 The year is 2021 2021-05-07 17:45:56 +02:00
lachablock
8b021ec16b but if you close your eyes EH OH, EH OH 2021-05-07 12:38:24 +10:00
Tatsuru
3159d5a6e4 2.2.9 prep 2021-05-06 21:58:21 -03:00
sphere
6053740ef7 Merge branch 'light-userdata-is-wrong' into 'next'
Stop using metatables with light userdata

See merge request STJr/SRB2!1495
2021-05-06 12:14:36 -04:00
sphere
413c8563c9 Merge branch 'things-to-tide-you-over' into 'next'
Update URL on the addon screen

See merge request STJr/SRB2!1489
2021-05-06 08:18:12 -04:00
James R
ec8b63d675 Makefile: remove last of unused flags 2021-05-05 21:21:55 -07:00
James R
f9813844e7 Update CMakeLists.txt to use Sourcefiles
This establishes (near) parity of source code file lists
between the Makefile and CMakeLists.txt

To make that change I messed around CMakeLists.txt a bit.
It now uses target_sources and target_compile_definitions.
I also removed some MSVC stuff since we don't actually
care about MSVC--it made things easier.

CMake minimum version 3.0 -> 3.13 for target_sources.
2021-05-05 04:00:44 -07:00
James R
3d7205d494 Fix minor errors with Windows ECHO, DEL, MD
- Quotes were not removed by ECHO.
- DEL would print an error on nonexistent file.
- MD would do this plus return a nonzero exit code.
2021-05-04 22:34:20 -07:00
James R
888073d64d Fix make clean printing header 2021-05-04 16:54:47 -07:00
James R
b31056c7d9 Rewrite Makefile to be modular as well as more automated
Some key points for programmers:
- Source code files are mostly listed in a 'Sourcefile'.
  So you no longer directly edit the object list. There
  can be multiple Sourcefiles and they can even live in
  subdirectories--the directory name will be prepended to
  every filename in the list. Of course, the Makefile
  still needs to be edited to read from each Sourcefile.
- Different rules are no longer required for source code
  files that live in subdirectories (such as sdl/ or
  hardware/). Subdirectories Just Work so go ham!

In addition to those points, another important change is
that the bin directory is no longer divided into platform
subdirectories (Linux64, Mingw, etc). Executables now go
directly into bin. If you use DEBUGMODE or target 64-bit,
then subdirectories for 'debug' and '64' will be made
though.

Oh by the way, I don't think make clean actually removed
files before on Windows. It should now. I also fixed as
many little inconsistencies like that as I noticed.

And now just an overview of the technical aspects that
shouldn't affect anyone who doesn't REALLY care about the
Makefile...

objs and dep directories have been moved to a make
directory. Makefile.cfg and its variants have been moved
out of their various subdirectories to src/Makefile.d
make distclean removes the bin and make directories
entirely, but make clean and cleandep still only affect
the current build target.

When I say automation, I mean that a lot of copy pasting
in the Makefile has been reduced.
2021-05-04 04:22:37 -07:00
James R
44d217807f Collect makefiles 2021-05-03 23:07:44 -07:00
Steel Titanium
80fe39bbd1 Fix MusicChange hook not returning some values correctly 2021-05-03 01:40:02 -04:00
James R
aee963f4e9 Replace LUA_PushLightUserdata with LUA_PushUserdata
See 7df6a309 and 83a87042. I didn't realize that light
userdata's metatable is shared--like numbers or strings.
So it cannot be paired with a metatable.

I also made a few minor tweaks to Lua cvars, other than
accounting for the double pointer in the userdata.
2021-05-02 21:59:23 -07:00
James R
ed5a7f51e8 Revert "Merge branch 'lightmemedata' into 'next'"
This reverts commit d4c08a8410, reversing
changes made to e100f21dda.
2021-05-02 21:32:07 -07:00
Tatsuru
aac3ca320b Update LOCATIONSTRING2 as well 2021-05-01 10:24:28 -03:00
LJ Sonic
f97dc1093a Merge branch 'kitchensync' into 'next'
Attempt to resolve teleportation resync issue

See merge request STJr/SRB2!1490
2021-04-30 20:39:11 -04:00
katsy
815db01438 adjust cooldown to 5 seconds (bandage fix for 2.2.9) 2021-04-30 20:30:35 -04:00
katsy
858cb98e57 attempt to resolve teleportation resync issue 2021-04-30 17:26:09 -05:00
Tatsuru
ea7b332525 Visit srb2.org/addons to get & make addons! 2021-04-30 15:49:09 -03:00
LJ Sonic
3491112818 Update copyright date 2021-04-27 00:33:24 +02:00
LJ Sonic
0d4d3a5207 Revert "Lua: ensure order of MIN, MAX possible values"
This reverts commit c51c478740.
2021-04-26 21:11:24 +02:00
LJ Sonic
cd4cfba500 Delete faulty return 2021-04-26 21:10:32 +02:00
LJ Sonic
664f5fe5b1 Merge branch 'erz3-tol' into 'next'
Give TOL_ERZ3 an appropriate identifier (closes #516)

Closes #516

See merge request STJr/SRB2!1471
2021-04-26 06:08:31 -04:00
LJ Sonic
7d167f531b Merge branch 'lua-minmax-plus' into 'next'
Let Lua cvars use preset values in addition to MIN and MAX

See merge request STJr/SRB2!1480
2021-04-26 06:06:58 -04:00
James R
92aeadc36b It is impossible for a string to be allocated in this case 2021-04-25 22:01:40 -07:00
James R
85914cc7cd Free zstring when switching to preset value
This is only applicable for bounded cvars (MIN, MAX),
since otherwise there's no way to allocate a zstring.
2021-04-25 21:55:04 -07:00
James R
c51c478740 Lua: ensure order of MIN, MAX possible values
Cvars could now have a range (MIN, MAX) plus some preset
values, but Lua could not take advantage of this due to
table order not being guaranteed.
2021-04-25 21:51:24 -07:00
LJ Sonic
d18fc8882f Merge branch 'dont-load-dont-unload' into 'next'
Fix a dedicated crash in Special Stage intermissions (2.2.9 RC1)

See merge request STJr/SRB2!1475
2021-04-25 16:35:46 -04:00