terminx
28c778c8a3
Automatic source file dependency generation for GNUmakefile
...
This automatically saves the dependencies used for a given object file during the first compilation, then uses the generated data for each subsequent compile to determine if the object needs to be rebuilt. Why? Because if I see one more warning about the C++ One Definition Rule, I'm going to fucking snap.
git-svn-id: https://svn.eduke32.com/eduke32@7839 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:50 +02:00
hendricks266
6a06a74886
Print extern declaration when generating .cpp from .glsl
...
git-svn-id: https://svn.eduke32.com/eduke32@7800 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:14:25 +02:00
hendricks266
5f1ec28913
Tweak build process messages when building objects from .glsl files
...
git-svn-id: https://svn.eduke32.com/eduke32@7797 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:11:05 +02:00
pogokeen
12ce6a78fe
Fix parallel build by switching to generating .obj files from .glsl files and treat the shader source as an externed global resolved at link time.
...
Additionally, remove the no longer necessary shader generated headers folder from .gitignore
git-svn-id: https://svn.eduke32.com/eduke32@7793 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# .gitignore
# source/build/src/polymost.cpp
2019-09-20 15:10:56 +02:00
hendricks266
616b0c2347
Fix sequential GNUmakefile build
...
git-svn-id: https://svn.eduke32.com/eduke32@7786 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:09 +02:00
pogokeen
f6993940e5
Separate out polymost1Frag and polymost1Vert shaders from polymost.cpp and add rules for building in the GNUmakefile.
...
Additionally, git ignore the shader's generated headers folder.
git-svn-id: https://svn.eduke32.com/eduke32@7782 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# .gitignore
# source/build/src/polymost.cpp
2019-09-20 14:57:42 +02:00
terminx
e59f8e3b71
Use FORCE_INLINE and CONSTEXPR where appropriate in the Q16 fixed point math library
...
git-svn-id: https://svn.eduke32.com/eduke32@7588 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# platform/Windows/build.vcxproj.filters
2019-09-19 14:30:22 +02:00
hendricks266
36b75561cc
Update some program names
...
git-svn-id: https://svn.eduke32.com/eduke32@7537 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 14:06:18 +02:00
hendricks266
ac8dabb0fb
Rename net.* to network.*
...
git-svn-id: https://svn.eduke32.com/eduke32@7443 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-19 12:20:45 +02:00
hendricks266
7414f29348
Add buildvfs, abstraction layer for file I/O.
...
Currently it passes calls through to the system libraries as before.
Also adds an incomplete implementation on PhysFS.
git-svn-id: https://svn.eduke32.com/eduke32@7359 1a8010ca-5511-0410-912e-c29ae57300e0
2019-03-01 08:51:50 +00:00
hendricks266
fd175086a3
Move the LZW compression functions out of cache1d.cpp into their own object, klzw.cpp.
...
This eliminates the hackiness of libcache1d.so (now libkzlw.so) and CACHE1D_COMPRESS_ONLY.
git-svn-id: https://svn.eduke32.com/eduke32@7140 1a8010ca-5511-0410-912e-c29ae57300e0
2018-11-05 07:28:07 +00:00
hendricks266
a0c87b5fda
Update glad to 0.1.25
...
Includes https://github.com/Dav1dde/glad/pull/140
git-svn-id: https://svn.eduke32.com/eduke32@6948 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-23 02:55:49 +00:00
pogokeen
1df7127609
Support software renderer upscaling engine-side in sdlayer and sdlayer12 with various scaling factors (beyond just pixel doubling).
...
When glsurface is available, use GL to upscale the render buffer.
Additionally, fix build issues with sdlayer12 introduced by GLAD changes (r6656).
git-svn-id: https://svn.eduke32.com/eduke32@6939 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-14 21:36:44 +00:00
terminx
652c0044a1
Fix building the Build tools
...
git-svn-id: https://svn.eduke32.com/eduke32@6924 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-14 17:49:53 +00:00
pogokeen
9d243606d0
When OpenGL is available, prefer using the new glsurface to blit the classic renderer's 8-bit buffer to the screen.
...
git-svn-id: https://svn.eduke32.com/eduke32@6919 1a8010ca-5511-0410-912e-c29ae57300e0
2018-06-13 19:15:16 +00:00
pogokeen
dcdffb73d0
Dynamic tilepacking for indexed colour textures
...
git-svn-id: https://svn.eduke32.com/eduke32@6883 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 17:32:16 +00:00
terminx
4cd19d5435
Update Miniz
...
git-svn-id: https://svn.eduke32.com/eduke32@6849 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:34 +00:00
hendricks266
bb84fa725e
Makefile: Allow component cflags to override global CWARNS for clang-tools rule.
...
git-svn-id: https://svn.eduke32.com/eduke32@6781 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 04:48:50 +00:00
terminx
4d8bb170a3
Use Q16.16 fixed point for player horiz
...
git-svn-id: https://svn.eduke32.com/eduke32@6724 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:05 +00:00
hendricks266
af69391c24
Silence -Wcast-qual in glad.c.
...
git-svn-id: https://svn.eduke32.com/eduke32@6667 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 08:33:39 +00:00
pogokeen
3ca5f33c73
Moved to GLAD for dynamic GL/WGL and extension loading.
...
Refactored extension usage that became core in GL2, and adjusted some types for GL2 compatibility.
git-svn-id: https://svn.eduke32.com/eduke32@6656 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:21 +00:00
terminx
b65458ebfe
Rename CLANG_DEBUG_FLAGS -> ASAN_FLAGS in makefile and enable them for GCC, because GCC supports ASan these days
...
git-svn-id: https://svn.eduke32.com/eduke32@6549 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-10 03:24:39 +00:00
hendricks266
64d76db260
Add support for MTM modules.
...
git-svn-id: https://svn.eduke32.com/eduke32@6475 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-15 23:09:59 +00:00
hendricks266
f5d0acfee8
Makefile: Fix building the tools on Mac.
...
git-svn-id: https://svn.eduke32.com/eduke32@6425 1a8010ca-5511-0410-912e-c29ae57300e0
2017-08-06 13:44:57 +00:00
hendricks266
eb332f21a4
Makefile: More no-shell stuff that I didn't want to rebase past the lowercase stuff.
...
git-svn-id: https://svn.eduke32.com/eduke32@6424 1a8010ca-5511-0410-912e-c29ae57300e0
2017-08-06 13:44:54 +00:00
hendricks266
ccf09530e6
Makefile: Make the dynamic rule creation a little bit simpler, thanks to the previous commit.
...
git-svn-id: https://svn.eduke32.com/eduke32@6423 1a8010ca-5511-0410-912e-c29ae57300e0
2017-08-06 13:44:52 +00:00
hendricks266
0ebfd394d2
Makefile: Make most variables in the component construction lowercase.
...
git-svn-id: https://svn.eduke32.com/eduke32@6422 1a8010ca-5511-0410-912e-c29ae57300e0
2017-08-06 13:44:49 +00:00
hendricks266
04bc041c2e
Makefile: Eliminate all mandatory use of *nix userland tools.
...
Windows should no longer need an msys install to build with MinGW-w64.
Working Title: MSYS Gets Shell-Shocked
git-svn-id: https://svn.eduke32.com/eduke32@6419 1a8010ca-5511-0410-912e-c29ae57300e0
2017-08-06 13:44:41 +00:00
hendricks266
b56255e774
Makefile: Assignment operator cleanup.
...
git-svn-id: https://svn.eduke32.com/eduke32@6418 1a8010ca-5511-0410-912e-c29ae57300e0
2017-08-06 13:44:39 +00:00
terminx
fd19569099
Drop libpng and zlib in favor of a custom < 100 line .png writer and a drop-in zlib replacement called miniz.
...
git-svn-id: https://svn.eduke32.com/eduke32@6365 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-18 20:53:00 +00:00
hendricks266
d57234e668
Replace sound_func function pointer parameter and associate functions for hardcoded ANMs with equivalent animsounds arrays.
...
git-svn-id: https://svn.eduke32.com/eduke32@6285 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-25 11:24:34 +00:00
hendricks266
22a7b3c6f3
Makefile: Move rules around to unbreak Linux builds. This may be a GNU Make bug. DONT_BUILD.
...
git-svn-id: https://svn.eduke32.com/eduke32@6173 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-10 06:21:29 +00:00
hendricks266
05cd4aa231
Makefile: Distinguish between .c files in rsrc and ones generated at build time in obj.
...
git-svn-id: https://svn.eduke32.com/eduke32@6172 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-10 06:21:24 +00:00
hendricks266
483488643f
Amend r6150.
...
git-svn-id: https://svn.eduke32.com/eduke32@6171 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 07:00:07 +00:00
hendricks266
44536c51d0
Makefile: Add libxmp-lite, replacing static linking to a library that was uncommon in Linux and Mac package managers.
...
git-svn-id: https://svn.eduke32.com/eduke32@6159 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:39:42 +00:00
hendricks266
000050c7b9
Makefile: Add LPeg sources, replacing the haphazard static linking that required a custom-built library in a hardcoded location.
...
git-svn-id: https://svn.eduke32.com/eduke32@6157 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:39:21 +00:00
hendricks266
e00c3a92bd
Makefile: Move the ENet group up into a new section for libraries that are not ours but included in our repository.
...
git-svn-id: https://svn.eduke32.com/eduke32@6154 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:39:04 +00:00
hendricks266
f0be1fb1e2
Makefile: Remove manual assembly of object file lists and replace it with a system for tracking dependencies between groups.
...
git-svn-id: https://svn.eduke32.com/eduke32@6153 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:39:01 +00:00
hendricks266
6d990b592e
Makefile: Rename some groups so that the part before the first _ corresponds to the parent group that has _SRC and _OBJ defines.
...
git-svn-id: https://svn.eduke32.com/eduke32@6152 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:38:58 +00:00
hendricks266
f81f6b76e6
Makefile: Remove $(LUNATIC_LUA_PREFIX).
...
git-svn-id: https://svn.eduke32.com/eduke32@6151 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:38:55 +00:00
hendricks266
3306b8d5a3
Makefile: Move duke3d and engine directory definitions to their proper spots, as they no longer need early definition after the great repository rearrangement.
...
git-svn-id: https://svn.eduke32.com/eduke32@6150 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:38:52 +00:00
hendricks266
3627c7710e
Makefile: Update heading comments.
...
git-svn-id: https://svn.eduke32.com/eduke32@6149 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:38:49 +00:00
hendricks266
91c8ca11bd
Makefile: Remove printing of compiler/assembler/linker options at build start. Use PRETTY_OUTPUT=0 if you need that information.
...
git-svn-id: https://svn.eduke32.com/eduke32@6148 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:38:46 +00:00
hendricks266
b3d597200b
Common.mak: Massive reorganization/cleanup.
...
Any functional changes are incidental and minor, other than the outright removals.
git-svn-id: https://svn.eduke32.com/eduke32@6147 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:38:42 +00:00
hendricks266
0a74a878e1
Rename savegame.lua to lunasave.lua to avoid a collision with savegame.cpp. DONT_BUILD.
...
git-svn-id: https://svn.eduke32.com/eduke32@6145 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-07 05:56:35 +00:00
hendricks266
934849a965
Amend r6126, which doesn't leave "eduke32" defined anywhere for binary names when APPBASENAME is not specified.
...
git-svn-id: https://svn.eduke32.com/eduke32@6129 1a8010ca-5511-0410-912e-c29ae57300e0
2017-04-24 05:11:11 +00:00
terminx
645f88dba9
Base output binary name on APPBASENAME. DONT_BUILD.
...
git-svn-id: https://svn.eduke32.com/eduke32@6126 1a8010ca-5511-0410-912e-c29ae57300e0
2017-04-24 04:35:27 +00:00
hendricks266
cf3a4550b0
Makefile: Add phony target "clang-tools" for use with clang-tools.
...
ex: clang-query `make clang-tools`
DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@6108 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:47:11 +00:00
hendricks266
886924126a
Makefile: Add *_ORDERONLYDEPS, which saves us an error message when building Lunatic on Mac.
...
git-svn-id: https://svn.eduke32.com/eduke32@6107 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:47:08 +00:00
hendricks266
7aeaace450
Makefile: Add *_SRCS variables, which reassemble the full paths of all source files.
...
git-svn-id: https://svn.eduke32.com/eduke32@6106 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:47:05 +00:00