Commit graph

52 commits

Author SHA1 Message Date
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
hendricks266
5de3318812 Makefile: Separate combinations of component objects for the six build targets into a variable specifically representing the combination.
The original variable name now contains the sub-group only.

git-svn-id: https://svn.eduke32.com/eduke32@6105 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:47:03 +00:00
hendricks266
f0b73188ed Makefile: Clean up more Lunatic setup.
git-svn-id: https://svn.eduke32.com/eduke32@6104 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:47:00 +00:00
hendricks266
df6871854a Makefile: LUNATIC_SRC
git-svn-id: https://svn.eduke32.com/eduke32@6103 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:46:57 +00:00
hendricks266
c12c5e0363 Makefile: Slightly modify the way ENet objects are ignored for NETCODE=0 builds.
git-svn-id: https://svn.eduke32.com/eduke32@6102 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:46:55 +00:00
hendricks266
aaf44c0ec8 Makefile: Split any source file from an rsrc folder into a separate list of objects, recombined at expansion time.
git-svn-id: https://svn.eduke32.com/eduke32@6101 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:46:52 +00:00
hendricks266
c371bfe763 Makefile: Factor out the expansion of source file names to object paths.
git-svn-id: https://svn.eduke32.com/eduke32@6100 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:46:50 +00:00
hendricks266
15713808e8 Makefile: Add source code file extensions to all objects, and strip them back off with $(basename ).
git-svn-id: https://svn.eduke32.com/eduke32@6099 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:46:47 +00:00
hendricks266
bc5fa3975a Makefile: Clean up Lunatic objects.
git-svn-id: https://svn.eduke32.com/eduke32@6098 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:46:44 +00:00
hendricks266
f0869a6d0e Makefile: Change the phonies list so that it is newline-separated.
git-svn-id: https://svn.eduke32.com/eduke32@6097 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 20:46:41 +00:00
hendricks266
f1d99d70e8 Makefile: Refactor, part 3: objects.
git-svn-id: https://svn.eduke32.com/eduke32@6095 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 03:03:37 +00:00
hendricks266
23155443d9 Makefile: Refactor, part 2: phonies.
This commit uses GNU Make's Secondary Expansion feature.

These rules could be slightly simplified if all the variables defining each component were renamed to use lowercase.

git-svn-id: https://svn.eduke32.com/eduke32@6094 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 03:03:34 +00:00
hendricks266
63eadeb0e1 Makefile: Refactor using advanced GNU Make tricks and $(eval), part 1: targets
git-svn-id: https://svn.eduke32.com/eduke32@6093 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 03:03:32 +00:00
hendricks266
6fbf4e6f1c Makefile: Remove "dxtools" and "sdltools" as separate categories, and instead build them along with the normal tools when conditions of their target environment are met.
git-svn-id: https://svn.eduke32.com/eduke32@6092 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-23 03:03:29 +00:00
hendricks266
d15251b96f Makefile: Factor out common uses of COMMONFLAGS, COMPILERFLAGS, and LINKERFLAGS into COMPILER_* and LINKER.
Collateral changes: Engine objects now use COMPILER_CXX instead of CXX, BUILD_SETTINGS_LINKER now includes GUI_LIBS, and the Build tools now use LINK_STATUS and result instead of ONESTEP.

git-svn-id: https://svn.eduke32.com/eduke32@6083 1a8010ca-5511-0410-912e-c29ae57300e0
2017-03-22 15:45:49 +00:00
hendricks266
12ef7e9f8d Some tweaks to the cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@6058 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-03 21:59:45 +00:00