Merge pull request #1461 from GeorgePieVG/wadinfo-simplecpp

lumps: process wadinfo through simplecpp
This commit is contained in:
Xindage 2025-01-30 06:36:47 -03:00 committed by GitHub
commit b536a814cc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 76 additions and 190 deletions

3
.gitignore vendored
View file

@ -14,7 +14,7 @@
.DS_Store
.\#*
\#*\#
wad*.txt
wadinfo_*.txt
doom.gpl
# Per directory patterns to ignore. These do not apply recursively to
@ -62,6 +62,7 @@ doom.gpl
/lumps/freedoom.lmp
/lumps/genmidi.lmp
/lumps/playpal.lmp
/lumps/*wdinf.lmp
/lumps/colormap/*.lmp

View file

@ -34,6 +34,7 @@ subdirs:
$(MAKE) -C lumps/genmidi
$(MAKE) -C lumps/dmxgus
$(MAKE) -C lumps/textures
$(MAKE) -C lumps/wadinfo
$(MAKE) -C bootstrap
@ -159,6 +160,7 @@ clean:
$(MAKE) -C lumps/genmidi clean
$(MAKE) -C lumps/dmxgus clean
$(MAKE) -C lumps/textures clean
$(MAKE) -C lumps/wadinfo clean
$(MAKE) -C manual clean
# Test targets some of which are a dependency of "test".

View file

@ -1,94 +0,0 @@
===========================================================================
Advanced engine needed : Vanilla-compatible
Primary purpose : Deathmatch
===========================================================================
Title : FreeDM
Filename : freedm.wad
Release date : 2024-01-29
Author : The Freedoom Project
Version : 0.13.0
Other Files By Author : Freedoom: Phase 1, Freedoom: Phase 2
Misc. Author Info : Contributors to the Freedoom Project
Description : A 32-level game designed for competitive deathmatch
play.
The Freedoom project aims to provide all the
content needed to form a complete, entirely
free/libre game for the Doom engine. It is designed
to be compatible with most custom levels, music,
graphics and other modifications (mods) made for
the original Doom games by Doom fans and artists
over the decades.
Additional Credits to : See the CREDITS file
===========================================================================
* What is included *
New levels : 32
Sounds : Yes
Music : Yes
Graphics : Yes
Dehacked/BEX Patch : Yes
Demos : Yes
Other : No
Other files required : None
* Play Information *
Game : Doom 2
Single Player : Player starts only
Cooperative 2-4 Player : Player starts only
Deathmatch 2-4 Player : Designed for
Other game styles : None
Difficulty Settings : Not implemented
* Construction *
Base : New from scratch
Build Time : Since 2001
Editor(s) used : DeuTex
Known Bugs : Please report bugs to
https://github.com/freedoom/freedoom/issues
May Not Run With : None
Tested With : Chocolate Doom, Crispy Doom, Odamex, GZDoom
* Copyright / Permissions *
Copyright © 2001-2024
Contributors to the Freedoom project. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the Freedoom project nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS
IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
For a list of contributors to the Freedoom project, see the file
CREDITS.
* Where to get the file that this text file describes *
The Usual: ftp://archives.gamers.org/pub/idgames/ and mirrors
Web sites: https://freedoom.github.io/

View file

@ -1,95 +0,0 @@
===========================================================================
Advanced engine needed : Vanilla-compatible
Primary purpose : Single + coop play
===========================================================================
Title : Freedoom: Phase 2
Filename : freedoom2.wad
Release date : 2024-01-29
Author : The Freedoom Project
Version : 0.13.0
Other Files By Author : Freedoom: Phase 1, FreeDM
Misc. Author Info : Contributors to the Freedoom Project
Description : 32 levels in one long episode, featuring extra
monsters and a double-barrelled shotgun. This
project aims for compatibility with Doom II mods.
The Freedoom project aims to provide all the
content needed to form a complete, entirely
free/libre game for the Doom engine. It is designed
to be compatible with most custom levels, music,
graphics and other modifications (mods) made for
the original Doom games by Doom fans and artists
over the decades.
Additional Credits to : See the CREDITS file
===========================================================================
* What is included *
New levels : 32
Sounds : Yes
Music : Yes
Graphics : Yes
Dehacked/BEX Patch : Yes
Demos : Yes
Other : No
Other files required : None
* Play Information *
Game : Doom 2
Single Player : Designed for
Cooperative 2-4 Player : Designed for
Deathmatch 2-4 Player : Designed for
Other game styles : None
Difficulty Settings : Not implemented
* Construction *
Base : New from scratch
Build Time : Since 2001
Editor(s) used : DeuTex
Known Bugs : Please report bugs to
https://github.com/freedoom/freedoom/issues
May Not Run With : None
Tested With : Chocolate Doom, Crispy Doom, Odamex, GZDoom
* Copyright / Permissions *
Copyright © 2001-2024
Contributors to the Freedoom project. All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of the Freedoom project nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS
IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
For a list of contributors to the Freedoom project, see the file
CREDITS.
* Where to get the file that this text file describes *
The Usual: ftp://archives.gamers.org/pub/idgames/ and mirrors
Web sites: https://freedoom.github.io/

15
lumps/wadinfo/Makefile Normal file
View file

@ -0,0 +1,15 @@
CPP=../../scripts/simplecpp
all: ../fdmwdinf.lmp ../p1_wdinf.lmp ../p2_wdinf.lmp
../fdmwdinf.lmp: wadinfo.txt
$(CPP) -DFREEDM < $< > $@
../p1_wdinf.lmp: wadinfo.txt
$(CPP) -DPHASE1 < $< > $@
../p2_wdinf.lmp: wadinfo.txt
$(CPP) -DPHASE2 < $< > $@
clean:
$(RM) ../fdmwdinf.lmp ../p1_wdinf.lmp ../p2_wdinf.lmp

11
lumps/wadinfo/README Normal file
View file

@ -0,0 +1,11 @@
This directory contains the source wadinfo text file used for Freedoom.
WadInfo (not to be confused with DeuTex wadinfo) is a traditional
text file format distributed with Doom wads. It contains information
about the authors, the contents of the WAD, the requirements for
running it, and permissions for use.
Freedoom embeds one in each of its IWADs to ensure that the information
reaches all players.
The Makefile in this directory splits the wadinfo into three parts
for each IWAD to match their description and technical details.

View file

@ -1,19 +1,52 @@
===========================================================================
Advanced engine needed : Vanilla-compatible
#ifndef FREEDM
Primary purpose : Single + coop play
#else
Primary purpose : Deathmatch
#endif
===========================================================================
#ifndef FREEDM
#ifdef PHASE1
Title : Freedoom: Phase 1
Filename : freedoom1.wad
#else
Title : Freedoom: Phase 2
Filename : freedoom2.wad
#endif
#else
Title : FreeDM
Filename : freedm.wad
#endif
Release date : 2024-01-29
Author : The Freedoom Project
Version : 0.13.0
#ifndef FREEDM
#ifdef PHASE1
Other Files By Author : Freedoom: Phase 2, FreeDM
#else
Other Files By Author : Freedoom: Phase 1, FreeDM
#endif
#else
Other Files By Author : Freedoom: Phase 1, Freedoom: Phase 2
#endif
Misc. Author Info : Contributors to the Freedoom Project
#ifndef FREEDM
#ifdef PHASE1
Description : Four episodes, nine levels each, totalling 36
levels. This game aims for compatibility with The
Ultimate Doom mods, also known as plain Doom or
Doom 1.
#else
Description : 32 levels in one long episode, featuring extra
monsters and a double-barrelled shotgun. This
project aims for compatibility with Doom II mods.
#endif
#else
Description : A 32-level game designed for competitive deathmatch
play.
#endif
The Freedoom project aims to provide all the
content needed to form a complete, entirely
free/libre game for the Doom engine. It is designed
@ -26,7 +59,11 @@ Additional Credits to : See the CREDITS file
===========================================================================
* What is included *
#ifdef PHASE1
New levels : 36
#else
New levels : 32
#endif
Sounds : Yes
Music : Yes
Graphics : Yes
@ -38,9 +75,18 @@ Other files required : None
* Play Information *
#ifdef PHASE1
Game : Doom
#else
Game : Doom 2
#endif
#ifndef FREEDM
Single Player : Designed for
Cooperative 2-4 Player : Designed for
#else
Single Player : Player starts only
Cooperative 2-4 Player : Player starts only
#endif
Deathmatch 2-4 Player : Designed for
Other game styles : None
Difficulty Settings : Not implemented