Commit graph

124 commits

Author SHA1 Message Date
Fabian Greffrath
01e7ee2b30 fix desktop icon install location
Fixes #1500
2025-04-29 09:12:07 +02:00
Georgy Samoilov
b44c2497d3 lumps: run wadinfo through simplecpp 2024-11-27 20:25:42 +05:00
uni
7ae3e97f4c
Address #1325 with a CREDITS-LEVELS file. (#1326)
Similar to CREDITS-MUSIC let's have a per level credits file.
2024-02-06 08:43:00 -08:00
Steven Elliott
93e720b18a Bump version to 0.14.0-alpha
Most revisions in master prior to a release are the "alpha" version of
that release.
2024-01-29 18:21:55 -05:00
Steven Elliott
cfb8644b1a Bump version to 0.13.0
This includes all places that the version appears as well as a new
"NEWS" section with the new changes.
2024-01-29 18:21:55 -05:00
Steven Elliott
e9035f4cd8
Merge pull request #1279 from selliott512/credits-music-processing
build: Add processing for "CREDITS-MUSIC"
2024-01-16 14:37:37 -05:00
Steven Elliott
3fc5f6b049 build: Add processing for "CREDITS-MUSIC"
Fix those places where "CREDITS-MUSIC" did not have the same processing
as "CREDITS".
2024-01-16 12:35:48 -05:00
Steven Elliott
8350df1711 manual: Make the manual more available
The following changes should make the manual more available, and easier
to understand:
  1) "make dist" and "make install" will now include all translations of
     the manual.
  1) A "freedoom-" prefix will be used in all cases in place of just
     "manual".
  2) All languages will have a two letter suffix, so English is now
     "-en".
  3) Only the PDF specified will be built when invoked in the top level
     directory. For example:
       make manual/freedoom-manual-en.pdf
2024-01-16 11:59:01 -05:00
mc776
40ff72c088
build: add CREDITS-MUSIC. (#1254) 2024-01-06 08:53:25 -08:00
Steven Elliott
6a54471431
scripts: Add news-to-feed script (#1042)
Rather than maintaining feed.xml on the website manually the
news-to-feed script, added by this commit, will generate it based on
NEWS.adoc in this repository.

Also, make target news-to-feed has been added to run the script.
2023-07-30 15:03:10 -07:00
Steven Elliott
6e0dc42013 build: Add fix-pngs make target and scripts
Add scripts:
  fix-deutex-pngs - Apply the output of deutex to the build
  map-color-index - Map from one color index to another

Script fix-deutex-pngs is to standardize PNGs by applying the result of
the expanding IWADs produced with deutex to the build. It is invoked by
build target fix-deutex-pngs

Script map-color-index can map from one color index to another. Most
likely it will be used to map form legacy transparency 255 to similar
color 133, which can be done by build target
fix-legacy-transparency-pngs.
2023-06-17 15:52:14 -04:00
Steven Elliott
eeb52c5f1c build: Add test-vanilla-compliance
The test-vanilla-compliance build target (also invoked by the "test"
build target) and script can be used to test the level WAD files for
vanilla compliance. Also, a subset of the errors found can be fixed by
the "fix" build target. To summarize:
  make test                     # Run all tests
  make test-vanilla-compliance  # Run test-vanilla-compliance
  make fix                      # Run all fixes
  make fix-vanilla-compliance   # Run test-vanilla-compliance -f
2022-10-01 18:50:34 -04:00
Steven Elliott
20bd1479ff build: Fix the rebuild-nodes target
The rebuild-nodes target needs to be updated from "c" (chapter) to
"e" (episode).
2021-03-20 14:17:01 -04:00
Mike Swanson
6970c7a887 Merge remote-tracking branch 'selliott512/rebuild-nodes' 2019-12-22 16:13:31 -08:00
Steven Elliott
eb8efd3297 Makefile: Warn if deutex does not support PNG
Check if deutex supports PNG based on its help output and fail the
build early if not.
2019-12-22 14:19:46 -06:00
Steven Elliott
9e7b4f20b5 Makefile: Add "rebuild-nodes" make target
Add "rebuild-nodes" make target to rebuild nodes for all levels that
match a specified pattern. Document "rebuild-nodes" in
BUILD-SYSTEM.adoc. Modify map06.wad so it adheres to the "no padding
between the lumps" constraint.
2019-12-15 14:49:15 -06:00
Mike Swanson
08b1deeee3 Makefile: use XDG-compliant icon file names
Completes PR #638
2019-11-05 11:27:12 -08:00
Mike Swanson
77c53e11ad Makefile: remove SHELL variable
This was added in 2019-10-27T03:24:50Z!noreply@github.com to fix a bug
the former wad-image targets created when run on non-bash shell.  Its
author now recommends to remove it with the removal of wad-image.
2019-10-28 18:54:00 -07:00
Mike Swanson
30bad18883 Makefile: remove wad-image-clean as prereq to clean target
Thanks Fabian for pointing this out
2019-10-28 14:53:25 -07:00
Mike Swanson
119f129417 Makefile: remove wad-image targets
These targets were rather complicated to set up and use and were
geared around a couple very specific use-cases rather than fully
allowing a set of features wad2image can really accomplish.

In favor of keeping Freedoom’s Makefile relevant just to building (and
installing) our own game, let’s remove this.  wad2image can be used
independently anyhow. 😃
2019-10-28 10:30:10 -07:00
Mike Swanson
f961c3e72c Makefile: remove bash -x option, avoiding duplicating exec lines 2019-10-28 10:29:22 -07:00
Tyler True
d050fdc854
Explicitly define the shell (bash) and its env.
This makes the "command: command not found" error no longer occur on
systems where the default shell is not `bash`, or does not support the
`bash` builtins. Additionally, a sane environment is set for safer
shell command use and scripting.

The environment settings for `bash` here do the following:
  - Terminate on errors, including signal `ERR` traps. (-e, -E)
  - Ensure that shell variables are set before use. (-u)
  - Print the shell command, and arguments, as they're run. (-x)
  - Fail on errors in any command in a pipeline. (-o pipefail)
2019-10-26 23:24:50 -04:00
Mike Swanson
e532a931d8 bump version to 0.12.1 2019-10-22 11:27:59 -07:00
Mike Swanson
fded57d635 make: reduce install targets to just “freedm” and “freedoom”
Causes the installation to be more similar to how the pre-built Zip
files are handled: separating out the multiplayer and
singleplayer-focused games into two targets.  This is similar also to
how Debian and Fedora generate their packages for the game and it is a
sensible one.

Also creates a lot of duplicated lines in the make rules, even though
the number of targets is actually reduced.
2019-10-14 22:38:54 -07:00
Mike Swanson
c42cbd218d fancify HTML output using the website style 2019-10-11 11:12:33 -07:00
Mike Swanson
ff8d673d7d Freedoom is now at version v0.12.0 2019-10-09 18:22:22 -07:00
Mike Swanson
383854430b automatically generate a GIMP-compatible palette file
Either `make gimp-palette` or `make doom.gpl` will convert the playpal
lump into a file that can be imported into GIMP for paletted image
modes.
2019-09-19 15:17:52 -07:00
Mike Swanson
096f3418a6 scripts makefile: add back leading "v" to hardcoded version string
This reverts the code changes from
2019-09-05T02:46:59Z!mikeonthecomputer@gmail.com.  Keeps the "v" from
appearing in file names, while still being a bit nice to see on the
title screen.
2019-09-17 16:36:00 -07:00
Mike Swanson
33d2d14cd2 Make: build manual PDF for install and dist targets
This is largely being kept optional due to asciidoctor-pdf’s failure
to actually work on Arch Linux, but if it runs fine, we get a nice PDF
manual!
2019-09-12 16:32:33 -07:00
Mike Swanson
6f6ac67dd5 Makefile: remove “deutex.log” from clean rules
DeuTex since 5.0 no longer generates such a file.
2019-09-12 15:54:30 -07:00
Mike Swanson
93dfdb33af Makefile: remove never-used "doc" target 2019-09-12 15:50:08 -07:00
Mike Swanson
d7a0f45a1e make: install doc files to $prefix/share/doc
Makes unique directories for each IWAD target, which makes it easier
for distributions (like Arch and Debian) that package them separately.
2019-09-12 11:22:11 -07:00
Mike Swanson
db2d48a8ce make: allow controlling asciidoc implementation via variables
ASCIIDOC and ASCIIDOC_MAN have been added, which default to the
(Python-based) reference implementation, but may be changed to
asciidoctor simply.

The manpages have been modified to use single-line section headings
for AsciiDoctor compatibility.
2019-09-12 11:22:11 -07:00
Mike Swanson
a036e65567 Add project news file, backdate with releases 0.8 to present 2019-09-07 20:03:29 -07:00
Mike Swanson
8c97b73502 Makefile: use reverse-DNS to install desktop and metainfo files
Current Desktop Entry and AppStream standards recommend using
reverse-DNS for all relevant files under them.

Adds some more scaffolding targets for install/uninstall, but there
aren’t easy text transformations to the new names.
2019-09-07 11:27:21 -07:00
Mike Swanson
180a11807b Retire VERSION file, put value into Makefile 2019-09-04 19:46:59 -07:00
Mike Swanson
eca25952ad make: use $(RM) for removing files
This is one of the built-in variables for Make and can increase
portability on different operating systems (eg, on Windows, the
built-in $(RM) may be defined as "del" instead of "rm -f").
2019-09-04 14:22:49 -07:00
Mike Swanson
96b28272a6 dist/Makefile: rewrite targets so they build only when sources change
Also includes a change to the top-level Makefile to accommodate new
target names.  Moved the installation variable settings close to the
install targets.
2019-09-04 14:06:17 -07:00
Mike Swanson
a31450f5b9 Rename ULTDOOM/DOOM2 cpp defines to PHASE1/PHASE2
More self-consistent with out project, and those names dated before
Freedoom had a stronger identity.
2019-09-01 18:49:03 -07:00
Simon Howard
9f082e5ffa build: Remove wadinfo.txt.
We no longer build the freedoom.wad resource WAD so this is redundant.
(It was removed in bfb95753bd).
2019-09-01 21:10:14 -04:00
Mike Swanson
53b4133b20 move source dehacked to dedicated subdirectory 2019-09-01 17:53:55 -07:00
Mike Swanson
8e9ce31b70 dehacked: run through simplecpp, cheat replacements for Phase 1 only
Deduplicates effort from copying between multiple patch files, and we
now have unique outputs for each of our IWADs.

Having just "No Clipping 1 = idclip" proved to be troublesome with at
least prboom-plus, the engine running its cheat detecting twice and
becoming unable to activate no-clipping mode.  Worked around it by
also defining "No Clipping 2 = idspispopd", restoring that cheat's
functionality in most source ports and keeping both variants unique.
Chocolate Doom will only use the "idclip" version.
2019-09-01 17:39:58 -07:00
Steven Elliott
9f48b64f43 Add fix-map-names script and build targets
Add scripts/fix-map-names to fix and test map names. Map names are
tested with make target "test-map-names" and fixed with "fix-map-names".
2019-01-01 17:30:29 -08:00
Simon Howard
d172ffd8ed build: Remove wadinfo-builder script.
The effect of this script should be a no-op and the script therefore
entirely redundant now that #487 and #489 have been merged. Fixes #485.
2017-09-07 20:17:44 -04:00
Steven Elliott
75099abb61 Improved wad2image top level directory determination. (#488) 2017-09-04 15:44:22 -04:00
Steven Elliott
f0fba6eb53 Better help and error handling for wad2image. 2017-09-03 13:07:57 -07:00
Steven Elliott
2cb5f8fdbb Feedback on wad2image integration from PR #480. 2017-09-03 13:07:57 -07:00
Steven Elliott
42506bb4a0 Added targets, variables and help for wad2image integration. 2017-09-03 13:07:57 -07:00
Nick Zatkovich
09f39d4e64 BUILD: code cleanup, VERSION fix
Performed code cleanup, made changes to version number Make gets from
Git to make it consistent across git versions
2017-07-31 14:34:47 -07:00
Nick Zatkovich
215b7c644e BUILD: remove the last of the imagemagick stuff
The only remaining thing depending on imagemagick are the dist scripts
2017-07-30 23:26:52 -07:00