diff --git a/aur/chocolate-doom/0001-setup-Fix-help-URL-for-level-warp-menu.patch b/aur/chocolate-doom/0001-setup-Fix-help-URL-for-level-warp-menu.patch deleted file mode 100644 index 9d3dfea6c..000000000 --- a/aur/chocolate-doom/0001-setup-Fix-help-URL-for-level-warp-menu.patch +++ /dev/null @@ -1,46 +0,0 @@ -From bed0ff13bf09b3c6190f9ff0cf6f7182a96a0faf Mon Sep 17 00:00:00 2001 -From: Simon Howard -Date: Wed, 10 Jun 2015 22:38:19 -0400 -Subject: [PATCH 01/13] setup: Fix help URL for level warp menu. - -The help URL for the warp menu was linking to the multiplayer start -game menu. ---- - src/setup/multiplayer.c | 13 +++++++++++-- - 1 file changed, 11 insertions(+), 2 deletions(-) - -diff --git a/src/setup/multiplayer.c b/src/setup/multiplayer.c -index a36f4da..3fe6a82 100644 ---- a/src/setup/multiplayer.c -+++ b/src/setup/multiplayer.c -@@ -37,6 +37,7 @@ - #define MULTI_START_HELP_URL "http://www.chocolate-doom.org/setup-multi-start" - #define MULTI_JOIN_HELP_URL "http://www.chocolate-doom.org/setup-multi-join" - #define MULTI_CONFIG_HELP_URL "http://www.chocolate-doom.org/setup-multi-config" -+#define LEVEL_WARP_HELP_URL "http://www.chocolate-doom.org/setup-level-warp" - - #define NUM_WADS 10 - #define NUM_EXTRA_PARAMS 10 -@@ -715,9 +716,17 @@ static void StartGameMenu(char *window_title, int multiplayer) - txt_widget_t *iwad_selector; - - window = TXT_NewWindow(window_title); -- TXT_SetWindowHelpURL(window, MULTI_START_HELP_URL); - -- TXT_AddWidgets(window, -+ if (multiplayer) -+ { -+ TXT_SetWindowHelpURL(window, MULTI_START_HELP_URL); -+ } -+ else -+ { -+ TXT_SetWindowHelpURL(window, LEVEL_WARP_HELP_URL); -+ } -+ -+ TXT_AddWidgets(window, - gameopt_table = TXT_NewTable(2), - TXT_NewSeparator("Monster options"), - TXT_NewInvertedCheckBox("Monsters enabled", &nomonsters), --- -2.5.0 - diff --git a/aur/chocolate-doom/0002-Update-README.Strife.patch b/aur/chocolate-doom/0002-Update-README.Strife.patch deleted file mode 100644 index 963576f84..000000000 --- a/aur/chocolate-doom/0002-Update-README.Strife.patch +++ /dev/null @@ -1,107 +0,0 @@ -From 432d121c862679f5d9af43dcfa3ef7d0f586104c Mon Sep 17 00:00:00 2001 -From: Simon Howard -Date: Wed, 10 Jun 2015 23:04:18 -0400 -Subject: [PATCH 02/13] Update README.Strife. - -The legal status is a lot clearer now that Strife: Veteran Edition has -been released. Remove the "New in v2.0 Release" section as this is -unlikely to be kept up to date, and these updates are covered by the NEWS -file that serves this purpose. ---- - README.Strife | 70 ++++++++--------------------------------------------------- - 1 file changed, 9 insertions(+), 61 deletions(-) - -diff --git a/README.Strife b/README.Strife -index 84be6b4..0bd8e77 100644 ---- a/README.Strife -+++ b/README.Strife -@@ -28,29 +28,21 @@ have to the code is the binary executable file. Tools such as IDA Pro have - been employed to disassemble and decompile the executable, which was cross- - referenced against the Linux DOOM and DOS Heretic sources and painstakingly - combed over multiple times, instruction-by-instruction, to ensure that the --resulting Chocolate-Doom-based executable is as close as possible to the -+resulting Chocolate Doom-based executable is as close as possible to the - original. - - - * Is it Legal? * - --Reverse engineering is a protected activity so long as the original code is --not used directly in the product. Due to the vast amount of information lost --through the process of compilation, and the need to refactor large portions --of code in order to eliminate non-portable idioms or to adapt them properly to --Chocolate Doom's framework, the resulting code behaves the same, but is not --the *same* code. -+Chocolate Strife was originally reverse-engineered from the DOS Strife -+binaries. Although reverse engineering is legally a protected activity, this -+nonetheless left some open questions about its legal status. - --In addition, James Monroe and John Carmack have both stated that they have no --objections to the project. Because they are the original authors of the code, --and neither Rogue nor their publisher, Velocity, Inc., exist any longer as legal --entities, this is as close to legal permission as can be obtained. -- --The transformed results of the disassembly have been combined with the --raven-branch version of the Chocolate Doom source port by Simon 'fraggle' --Howard, with his direct assistance, and have been released for the benefit of --the community under the GNU General Public License v2.0. See the file "COPYING" --for more details -+In 2014, a new commercial release of Strife was published (Strife: Veteran -+Edition) based on the Chocolate Strife code, and developed by the authors of -+Chocolate Strife under commercial license. The release of Strife: Veteran -+Edition, along with its GPL-licensed source code, constitutes tacit approval -+for the legal status of Chocolate Strife by its current copyright holder. - - - * Is it Perfect? * -@@ -127,47 +119,3 @@ program is available from the same location where you downloaded this package. - Aside from Chocolate Doom, portions of the code are derived from the Eternity - Engine, Copyright 2011 Team Eternity, as published under the GNU GPL. - -- --* New in v2.0 Release * -- --+ No infinite loop if menus are up during a screen fade. -- --+ Peasant death sound during intro plays at normal volume level. -- --+ Torches no longer produce pipping sounds (special thanks to fraggle). -- --+ Fade to black occurs at the start of slideshow sequences as in vanilla. -- --+ Network game support, with up to 8 players. -- --+ No more infinite horizon effect if screen is resized while looking up or -- down. -- --+ Corrected default internal Acolyte and Beggar dialogue strings. -- --+ Proper save game directory behavior (same as other Choco ports). -- --+ Vanilla behavior for crush-and-raise floor types (special thanks to Gez). -- --+ Bug fix for all crushing floor types. -- --+ Broken power coupling awards erroneous quest flag #32, as in vanilla. -- --+ Complete support for emulation of Strife v1.31, including abililty to save -- on multiple save slots. -- --+ Telefrags insta-kill as in vanilla (player cannot heal 10000 damage even with -- a full inventory of health items). -- --+ Frags are displayed on the keys popup during deathmatch. -- --+ Multiplayer chat features, including ability to set player names, now match -- vanilla behavior. -- --+ Support for -random parameter. -- --+ Vanilla behavior when pressing pause on menus with scroll bars (special -- thanks to fraggle and Alexandre Xavier). -- --+ Merged into Chocolate Doom trunk for v2.0 release. -- --- -2.5.0 - diff --git a/aur/chocolate-doom/0003-setup.desktop-Add-a-missing-semicolon-to-Categories.patch b/aur/chocolate-doom/0003-setup.desktop-Add-a-missing-semicolon-to-Categories.patch deleted file mode 100644 index 4ff578a6f..000000000 --- a/aur/chocolate-doom/0003-setup.desktop-Add-a-missing-semicolon-to-Categories.patch +++ /dev/null @@ -1,22 +0,0 @@ -From af09900bad738208b3228d9fed8bd3a0619e2638 Mon Sep 17 00:00:00 2001 -From: Mike Swanson -Date: Sat, 13 Jun 2015 13:35:54 -0700 -Subject: [PATCH 03/13] setup.desktop: Add a missing semicolon to Categories - ---- - src/setup/setup.desktop.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/setup/setup.desktop.in b/src/setup/setup.desktop.in -index 91decb4..cf127d8 100644 ---- a/src/setup/setup.desktop.in -+++ b/src/setup/setup.desktop.in -@@ -4,4 +4,4 @@ Exec=@PROGRAM_PREFIX@setup - Icon=@PROGRAM_PREFIX@setup - Type=Application - Comment=Setup tool for @PACKAGE_SHORTNAME@ --Categories=Settings -+Categories=Settings; --- -2.5.0 - diff --git a/aur/chocolate-doom/0004-Add-Keywords-to-the-setup.desktop-file.patch b/aur/chocolate-doom/0004-Add-Keywords-to-the-setup.desktop-file.patch deleted file mode 100644 index 85e58a253..000000000 --- a/aur/chocolate-doom/0004-Add-Keywords-to-the-setup.desktop-file.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 7c192af0d17f3f45d4208bc15cb1225b811aab74 Mon Sep 17 00:00:00 2001 -From: Fabian Greffrath -Date: Mon, 15 Jun 2015 09:16:44 +0200 -Subject: [PATCH 04/13] Add Keywords to the setup.desktop file - ---- - src/setup/setup.desktop.in | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/setup/setup.desktop.in b/src/setup/setup.desktop.in -index cf127d8..2a5e71f 100644 ---- a/src/setup/setup.desktop.in -+++ b/src/setup/setup.desktop.in -@@ -5,3 +5,4 @@ Icon=@PROGRAM_PREFIX@setup - Type=Application - Comment=Setup tool for @PACKAGE_SHORTNAME@ - Categories=Settings; -+Keywords=first;person;shooter;doom;heretic;hexen;strife;vanilla; --- -2.5.0 - diff --git a/aur/chocolate-doom/0005-doom-Avoid-overflow-for-spawn-angle-calculation.patch b/aur/chocolate-doom/0005-doom-Avoid-overflow-for-spawn-angle-calculation.patch deleted file mode 100644 index 94214d8ad..000000000 --- a/aur/chocolate-doom/0005-doom-Avoid-overflow-for-spawn-angle-calculation.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 7d884d24adff82c020c2663c9142b38ee189ddef Mon Sep 17 00:00:00 2001 -From: Simon Howard -Date: Sat, 11 Jul 2015 03:38:49 -0400 -Subject: [PATCH 05/13] doom: Avoid overflow for spawn angle calculation. - -Integer overflow is undefined and this breaks when using Clang with --O2 optimization turned on. This fixes #572 (thanks to David Majnemer -for insight into fixing this bug). ---- - src/doom/g_game.c | 17 ++++++++--------- - 1 file changed, 8 insertions(+), 9 deletions(-) - -diff --git a/src/doom/g_game.c b/src/doom/g_game.c -index bc582a5..3001e03 100644 ---- a/src/doom/g_game.c -+++ b/src/doom/g_game.c -@@ -1168,26 +1168,26 @@ G_CheckSpot - fixed_t xa, ya; - signed int an; - -- an = (ANG45 * ((signed int) mthing->angle / 45)); -- // Right-shifting a negative signed integer is implementation-defined, -- // so divide instead. -- an /= 1 << ANGLETOFINESHIFT; -+ // This calculation overflows in Vanilla Doom, but here we deliberately -+ // avoid integer overflow as it is undefined behavior, so the value of -+ // 'an' will always be positive. -+ an = (ANG45 >> ANGLETOFINESHIFT) * ((signed int) mthing->angle / 45); - - switch (an) - { -- case -4096: -+ case 4096: // -4096: - xa = finetangent[2048]; // finecosine[-4096] - ya = finetangent[0]; // finesine[-4096] - break; -- case -3072: -+ case 5120: // -3072: - xa = finetangent[3072]; // finecosine[-3072] - ya = finetangent[1024]; // finesine[-3072] - break; -- case -2048: -+ case 6144: // -2048: - xa = finesine[0]; // finecosine[-2048] - ya = finetangent[2048]; // finesine[-2048] - break; -- case -1024: -+ case 7168: // -1024: - xa = finesine[1024]; // finecosine[-1024] - ya = finetangent[3072]; // finesine[-1024] - break; -@@ -1195,7 +1195,6 @@ G_CheckSpot - case 1024: - case 2048: - case 3072: -- case 4096: - xa = finecosine[an]; - ya = finesine[an]; - break; --- -2.5.0 - diff --git a/aur/chocolate-doom/0006-osx-Add-CFBundleIdentifier-to-Info.plist.patch b/aur/chocolate-doom/0006-osx-Add-CFBundleIdentifier-to-Info.plist.patch deleted file mode 100644 index 7350dbd8f..000000000 --- a/aur/chocolate-doom/0006-osx-Add-CFBundleIdentifier-to-Info.plist.patch +++ /dev/null @@ -1,46 +0,0 @@ -From c6e66393ba5ed91b02f0bfbf7367771ce7ba819c Mon Sep 17 00:00:00 2001 -From: Simon Howard -Date: Sun, 12 Jul 2015 02:52:57 -0400 -Subject: [PATCH 06/13] osx: Add CFBundleIdentifier to Info.plist. - -The preferences for the OS X launcher are currently stored in a file -ambiguously named "launcher.plist" that could conflict with any other -app on the system that chose to use the same moniker. Use the more -specific identifier of org.chocolate-doom.launcher to avoid conflicts. - -Also set NSHumanReadableCopyright so that we get more detail on the -"About" window in the launcher app. - -This fixes #570. Thanks to Xeriphas1994 for the suggestion to tweak -the identifier. ---- - pkg/osx/Info.plist.in | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/pkg/osx/Info.plist.in b/pkg/osx/Info.plist.in -index 5ea4f32..a648ed8 100644 ---- a/pkg/osx/Info.plist.in -+++ b/pkg/osx/Info.plist.in -@@ -2,6 +2,8 @@ - - - -+ CFBundleIdentifier -+ org.chocolate-doom.launcher - CFBundleDevelopmentRegion - English - CFBundleDisplayName -@@ -26,6 +28,10 @@ - NSApplication - NSMainNibFile - launcher -+ NSHumanReadableCopyright -+ Copyright (C) 1993-2015, id Software and Raven Software, Simon Howard, James Haley, Samuel Villarreal and other contributors. -+ -+Licensed under the GNU GPL v2. - - - --- -2.5.0 - diff --git a/aur/chocolate-doom/0007-Added-deh_bexstr.c-to-MSVC-project.patch b/aur/chocolate-doom/0007-Added-deh_bexstr.c-to-MSVC-project.patch deleted file mode 100644 index 1d9733c08..000000000 --- a/aur/chocolate-doom/0007-Added-deh_bexstr.c-to-MSVC-project.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 750aa95aad7d924b879dce60aa8abdd9c281af6e Mon Sep 17 00:00:00 2001 -From: linguica -Date: Wed, 22 Jul 2015 11:06:50 -0700 -Subject: [PATCH 07/13] Added deh_bexstr.c to MSVC project - ---- - msvc/doom.vcproj | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/msvc/doom.vcproj b/msvc/doom.vcproj -index 7f98d3a..7446ede 100644 ---- a/msvc/doom.vcproj -+++ b/msvc/doom.vcproj -@@ -859,6 +859,10 @@ - > - - -+ -+ - --- -2.5.0 - diff --git a/aur/chocolate-doom/0008-Fixed-Heretic-Hexen-vcproj-files.patch b/aur/chocolate-doom/0008-Fixed-Heretic-Hexen-vcproj-files.patch deleted file mode 100644 index f3224361b..000000000 --- a/aur/chocolate-doom/0008-Fixed-Heretic-Hexen-vcproj-files.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 1325cde4859ca54eed3e1da2c1d226ae96b62c00 Mon Sep 17 00:00:00 2001 -From: linguica -Date: Thu, 23 Jul 2015 12:27:00 -0700 -Subject: [PATCH 08/13] Fixed Heretic / Hexen vcproj files - -Removed nonexistent files ---- - msvc/heretic.vcproj | 4 ---- - msvc/hexen.vcproj | 8 -------- - 2 files changed, 12 deletions(-) - -diff --git a/msvc/heretic.vcproj b/msvc/heretic.vcproj -index 3b80ce3..b3e150c 100644 ---- a/msvc/heretic.vcproj -+++ b/msvc/heretic.vcproj -@@ -469,10 +469,6 @@ - > - - -- -- - -diff --git a/msvc/hexen.vcproj b/msvc/hexen.vcproj -index 1b1e3b4..5c2d201 100644 ---- a/msvc/hexen.vcproj -+++ b/msvc/hexen.vcproj -@@ -426,10 +426,6 @@ - > - - -- -- - -@@ -438,10 +434,6 @@ - > - - -- -- - --- -2.5.0 - diff --git a/aur/chocolate-doom/0009-Remove-duplicate-variable-definitions.patch b/aur/chocolate-doom/0009-Remove-duplicate-variable-definitions.patch deleted file mode 100644 index 4f14d5d7c..000000000 --- a/aur/chocolate-doom/0009-Remove-duplicate-variable-definitions.patch +++ /dev/null @@ -1,81 +0,0 @@ -From 2da2ddd3777ee5ab35b197786677eb3e0df27030 Mon Sep 17 00:00:00 2001 -From: Simon Howard -Date: Sat, 15 Aug 2015 13:59:19 -0400 -Subject: [PATCH 09/13] Remove duplicate variable definitions. - -gametic and singletics are defined in d_loop.c, but there were still -some duplicate definitions of these variables left over from before -the game code was factored out. - -This fixed #561 (thanks edward-san). ---- - src/heretic/d_main.c | 1 - - src/heretic/g_game.c | 1 - - src/hexen/g_game.c | 1 - - src/hexen/h2_main.c | 1 - - src/strife/g_game.c | 1 - - 5 files changed, 5 deletions(-) - -diff --git a/src/heretic/d_main.c b/src/heretic/d_main.c -index beb876c..6521aff 100644 ---- a/src/heretic/d_main.c -+++ b/src/heretic/d_main.c -@@ -62,7 +62,6 @@ boolean respawnparm; // checkparm of -respawn - boolean debugmode; // checkparm of -debug - boolean ravpic; // checkparm of -ravpic - boolean cdrom; // true if cd-rom mode active --boolean singletics; // debug flag to cancel adaptiveness - boolean noartiskip; // whether shift-enter skips an artifact - - skill_t startskill; -diff --git a/src/heretic/g_game.c b/src/heretic/g_game.c -index 1154925..6ad3860 100644 ---- a/src/heretic/g_game.c -+++ b/src/heretic/g_game.c -@@ -102,7 +102,6 @@ player_t players[MAXPLAYERS]; - - int consoleplayer; // player taking events and displaying - int displayplayer; // view being displayed --int gametic; - int levelstarttic; // gametic at level start - int totalkills, totalitems, totalsecret; // for intermission - -diff --git a/src/hexen/g_game.c b/src/hexen/g_game.c -index e0a7afa..fd72d44 100644 ---- a/src/hexen/g_game.c -+++ b/src/hexen/g_game.c -@@ -88,7 +88,6 @@ int RebornPosition; - - int consoleplayer; // player taking events and displaying - int displayplayer; // view being displayed --int gametic; - int levelstarttic; // gametic at level start - - char demoname[32]; -diff --git a/src/hexen/h2_main.c b/src/hexen/h2_main.c -index 1e60c84..47c5e28 100644 ---- a/src/hexen/h2_main.c -+++ b/src/hexen/h2_main.c -@@ -103,7 +103,6 @@ boolean debugmode; // checkparm of -debug - boolean ravpic; // checkparm of -ravpic - boolean cdrom = false; // true if cd-rom mode active - boolean cmdfrag; // true if a CMD_FRAG packet should be sent out --boolean singletics; // debug flag to cancel adaptiveness - boolean artiskip; // whether shift-enter skips an artifact - int maxzone = 0x800000; // Maximum allocated for zone heap (8meg default) - skill_t startskill; -diff --git a/src/strife/g_game.c b/src/strife/g_game.c -index 906d3c9..c12e856 100644 ---- a/src/strife/g_game.c -+++ b/src/strife/g_game.c -@@ -124,7 +124,6 @@ boolean turbodetected[MAXPLAYERS]; - - int consoleplayer; // player taking events and displaying - int displayplayer; // view being displayed --int gametic; - int levelstarttic; // gametic at level start - int totalkills, /*totalitems,*/ totalsecret; // for intermission - --- -2.5.0 - diff --git a/aur/chocolate-doom/0010-setup-manifest-Add-compatibility-GUID-for-Windows-10.patch b/aur/chocolate-doom/0010-setup-manifest-Add-compatibility-GUID-for-Windows-10.patch deleted file mode 100644 index f5c5b2044..000000000 --- a/aur/chocolate-doom/0010-setup-manifest-Add-compatibility-GUID-for-Windows-10.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 525a7b0d071b146221498a13275c5db206a437e3 Mon Sep 17 00:00:00 2001 -From: Mike Swanson -Date: Fri, 14 Aug 2015 00:42:31 -0700 -Subject: [PATCH 10/13] setup-manifest: Add compatibility GUID for Windows 10 - ---- - src/setup/setup-manifest.xml.in | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/setup/setup-manifest.xml.in b/src/setup/setup-manifest.xml.in -index 7db56e8..111ad0f 100644 ---- a/src/setup/setup-manifest.xml.in -+++ b/src/setup/setup-manifest.xml.in -@@ -32,6 +32,7 @@ - - - -+ - - - --- -2.5.0 - diff --git a/aur/chocolate-doom/0011-Apply-gcc_struct-tag-to-packed-structs.patch b/aur/chocolate-doom/0011-Apply-gcc_struct-tag-to-packed-structs.patch deleted file mode 100644 index 41cfb7fe5..000000000 --- a/aur/chocolate-doom/0011-Apply-gcc_struct-tag-to-packed-structs.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 87db726b9a9ae61caf2ff167450625ce8f4076c3 Mon Sep 17 00:00:00 2001 -From: Fabian Greffrath -Date: Mon, 24 Aug 2015 19:14:05 +0200 -Subject: [PATCH 11/13] Apply gcc_struct tag to packed structs - -GCC fails to properly pack structs although they are tagged with -__attribute__((__packed__)) if called with -mms-bitfields which has -become the default on Windows at some point: - -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52991 ---- - src/doomtype.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/doomtype.h b/src/doomtype.h -index 10820c1..5377c8c 100644 ---- a/src/doomtype.h -+++ b/src/doomtype.h -@@ -51,7 +51,7 @@ - // - - #ifdef __GNUC__ --#define PACKEDATTR __attribute__((packed)) -+#define PACKEDATTR __attribute__((packed,gcc_struct)) - #else - #define PACKEDATTR - #endif --- -2.5.0 - diff --git a/aur/chocolate-doom/0012-Make-IWAD-search-paths-compliant-with-XDG-spec.patch b/aur/chocolate-doom/0012-Make-IWAD-search-paths-compliant-with-XDG-spec.patch deleted file mode 100644 index 852f1ea0e..000000000 --- a/aur/chocolate-doom/0012-Make-IWAD-search-paths-compliant-with-XDG-spec.patch +++ /dev/null @@ -1,210 +0,0 @@ -From 69faefcab4f8ac6599f47173b9a0eba80aaa10a6 Mon Sep 17 00:00:00 2001 -From: Simon Howard -Date: Sun, 23 Aug 2015 16:08:58 -0400 -Subject: [PATCH 12/13] Make IWAD search paths compliant with XDG spec. - -The XDG Base Directory Specification defines standard directories -that are searched for data files via the XDG_DATA_HOME and -XDG_DATA_DIRS environment variables: -http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html - -To make Chocolate Doom a good citizen, use these directories to -determine some of the locations in which to look for IWAD files. This -includes /usr/share/games/doom, which is absorbed under the default -value of the XDG_DATA_DIRS variable. We also now support the alternative -~/.local/share/games/doom as a user-writeable path in the user's home -directory that doesn't require root privileges. - -This is part of #597 (thanks to @chungy for the suggestion). ---- - src/d_iwad.c | 128 ++++++++++++++++++++++++++++++++++++++--------------------- - 1 file changed, 82 insertions(+), 46 deletions(-) - -diff --git a/src/d_iwad.c b/src/d_iwad.c -index 2d6460b..3777bab 100644 ---- a/src/d_iwad.c -+++ b/src/d_iwad.c -@@ -509,55 +509,96 @@ static GameMission_t IdentifyIWADByName(char *name, int mask) - return mission; - } - --// --// Add directories from the list in the DOOMWADPATH environment variable. --// -- --static void AddDoomWadPath(void) -+// Add IWAD directories parsed from splitting a path string containing -+// paths separated by PATH_SEPARATOR. 'suffix' is a string to concatenate -+// to the end of the paths before adding them. -+static void AddIWADPath(char *path, char *suffix) - { -- char *doomwadpath; -- char *p; -- -- // Check the DOOMWADPATH environment variable. -- -- doomwadpath = getenv("DOOMWADPATH"); -- -- if (doomwadpath == NULL) -- { -- return; -- } -+ char *left, *p; - -- doomwadpath = M_StringDuplicate(doomwadpath); -- -- // Add the initial directory -- -- AddIWADDir(doomwadpath); -+ path = M_StringDuplicate(path); - - // Split into individual dirs within the list. -- -- p = doomwadpath; -+ left = path; - - for (;;) - { -- p = strchr(p, PATH_SEPARATOR); -- -+ p = strchr(left, PATH_SEPARATOR); - if (p != NULL) - { -- // Break at the separator and store the right hand side -+ // Break at the separator and use the left hand side - // as another iwad dir -- - *p = '\0'; -- p += 1; - -- AddIWADDir(p); -+ AddIWADDir(M_StringJoin(left, suffix, NULL)); -+ left = p + 1; - } - else - { - break; - } - } -+ -+ AddIWADDir(M_StringJoin(left, suffix, NULL)); -+ -+ free(path); - } - -+// Add standard directories where IWADs are located on Unix systems. -+// To respect the freedesktop.org specification we support overriding -+// using standard environment variables. See the XDG Base Directory -+// Specification: -+// -+static void AddXdgDirs(void) -+{ -+ char *env, *tmp_env; -+ -+ // Quote: -+ // > $XDG_DATA_HOME defines the base directory relative to which -+ // > user specific data files should be stored. If $XDG_DATA_HOME -+ // > is either not set or empty, a default equal to -+ // > $HOME/.local/share should be used. -+ env = getenv("XDG_DATA_HOME"); -+ tmp_env = NULL; -+ -+ if (env == NULL) -+ { -+ char *homedir = getenv("HOME"); -+ if (homedir == NULL) -+ { -+ homedir = "/"; -+ } -+ -+ tmp_env = M_StringJoin(homedir, "/.local/share", NULL); -+ env = tmp_env; -+ } -+ -+ // We support $XDG_DATA_HOME/games/doom (which will usually be -+ // ~/.local/share/games/doom) as a user-writeable extension to -+ // the usual /usr/share/games/doom location. -+ AddIWADDir(M_StringJoin(env, "/games/doom", NULL)); -+ free(tmp_env); -+ -+ // Quote: -+ // > $XDG_DATA_DIRS defines the preference-ordered set of base -+ // > directories to search for data files in addition to the -+ // > $XDG_DATA_HOME base directory. The directories in $XDG_DATA_DIRS -+ // > should be seperated with a colon ':'. -+ // > -+ // > If $XDG_DATA_DIRS is either not set or empty, a value equal to -+ // > /usr/local/share/:/usr/share/ should be used. -+ env = getenv("XDG_DATA_DIRS"); -+ if (env == NULL) -+ { -+ // (Trailing / omitted from paths, as it is added below) -+ env = "/usr/local/share:/usr/share"; -+ } -+ -+ // The "standard" location for IWADs on Unix that is supported by most -+ // source ports is /usr/share/games/doom - we support this through the -+ // XDG_DATA_DIRS mechanism, through which it can be overridden. -+ AddIWADPath(env, "/games/doom"); -+} - - // - // Build a list of IWAD files -@@ -565,7 +606,7 @@ static void AddDoomWadPath(void) - - static void BuildIWADDirList(void) - { -- char *doomwaddir; -+ char *env; - - if (iwad_dirs_built) - { -@@ -573,21 +614,21 @@ static void BuildIWADDirList(void) - } - - // Look in the current directory. Doom always does this. -- - AddIWADDir("."); - - // Add DOOMWADDIR if it is in the environment -- -- doomwaddir = getenv("DOOMWADDIR"); -- -- if (doomwaddir != NULL) -+ env = getenv("DOOMWADDIR"); -+ if (env != NULL) - { -- AddIWADDir(doomwaddir); -- } -- -- // Add dirs from DOOMWADPATH -+ AddIWADDir(env); -+ } - -- AddDoomWadPath(); -+ // Add dirs from DOOMWADPATH: -+ env = getenv("DOOMWADPATH"); -+ if (env != NULL) -+ { -+ AddIWADPath(env, ""); -+ } - - #ifdef _WIN32 - -@@ -603,12 +644,7 @@ static void BuildIWADDirList(void) - CheckSteamGUSPatches(); - - #else -- -- // Standard places where IWAD files are installed under Unix. -- -- AddIWADDir("/usr/share/games/doom"); -- AddIWADDir("/usr/local/share/games/doom"); -- -+ AddXdgDirs(); - #endif - - // Don't run this function again. --- -2.5.0 - diff --git a/aur/chocolate-doom/0013-man-Add-documentation-for-IWAD-search-paths.patch b/aur/chocolate-doom/0013-man-Add-documentation-for-IWAD-search-paths.patch deleted file mode 100644 index 3eb38d247..000000000 --- a/aur/chocolate-doom/0013-man-Add-documentation-for-IWAD-search-paths.patch +++ /dev/null @@ -1,156 +0,0 @@ -From 5240ddc977d2f19e969a6683142e325595eec62c Mon Sep 17 00:00:00 2001 -From: Simon Howard -Date: Sun, 23 Aug 2015 16:12:54 -0400 -Subject: [PATCH 13/13] man: Add documentation for IWAD search paths. - -We now search in a bunch of different directories in order to find -IWAD files to use to play with, and the logic is a bit complicated. -Add some hopefully friendly documentation to explain where people -can put their IWAD files to play with. - -Part of #597. ---- - man/Makefile.am | 1 + - man/doom.template | 2 ++ - man/environ.man | 5 +---- - man/heretic.template | 2 ++ - man/hexen.template | 2 ++ - man/iwad_paths.man | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ - man/strife.template | 2 ++ - 7 files changed, 58 insertions(+), 4 deletions(-) - create mode 100644 man/iwad_paths.man - -diff --git a/man/Makefile.am b/man/Makefile.am -index 32f275e..f93e8ed 100644 ---- a/man/Makefile.am -+++ b/man/Makefile.am -@@ -1,4 +1,5 @@ - MANPAGE_GEN_FILES = environ.man \ -+ iwad_paths.man \ - doom.template \ - heretic.template \ - hexen.template \ -diff --git a/man/doom.template b/man/doom.template -index b587d15..d478815 100644 ---- a/man/doom.template -+++ b/man/doom.template -@@ -10,6 +10,8 @@ Chocolate Doom is a port of Id Software's 1993 game "Doom" that is designed - to behave as similar to the original DOS version of Doom as is possible. - .br - @content -+.SH IWAD SEARCH PATHS -+@include iwad_paths.man - .SH ENVIRONMENT - This section describes environment variables that control Chocolate Doom's - behavior. -diff --git a/man/environ.man b/man/environ.man -index 171b25d..ef8de02 100644 ---- a/man/environ.man -+++ b/man/environ.man -@@ -1,9 +1,6 @@ - .TP - \fBDOOMWADDIR\fR, \fBDOOMWADPATH\fR --These environment variables provide paths to search for Doom .WAD files when --looking for a game IWAD file or a PWAD file specified with the `\-file' option. --\fBDOOMWADDIR\fR specifies a single path in which to look for WAD files, --while \fBDOOMWWADPATH\fR specifies a colon-separated list of paths to search. -+See the section, \fBIWAD SEARCH PATHS\fR above. - .TP - \fBPCSOUND_DRIVER\fR - When running in PC speaker sound effect mode, this environment variable -diff --git a/man/heretic.template b/man/heretic.template -index e9afa96..8fe2e73 100644 ---- a/man/heretic.template -+++ b/man/heretic.template -@@ -11,6 +11,8 @@ aims to behave as similar to the original DOS version of Heretic as - possible. - .br - @content -+.SH IWAD SEARCH PATHS -+@include iwad_paths.man - .SH ENVIRONMENT - This section describes environment variables that control Chocolate Heretic's - behavior. -diff --git a/man/hexen.template b/man/hexen.template -index 4c0524a..f5619ad 100644 ---- a/man/hexen.template -+++ b/man/hexen.template -@@ -11,6 +11,8 @@ aims to behave as similar to the original DOS version of Hexen as - possible. - .br - @content -+.SH IWAD SEARCH PATHS -+@include iwad_paths.man - .SH ENVIRONMENT - This section describes environment variables that control Chocolate Hexen's - behavior. -diff --git a/man/iwad_paths.man b/man/iwad_paths.man -new file mode 100644 -index 0000000..9805815 ---- /dev/null -+++ b/man/iwad_paths.man -@@ -0,0 +1,48 @@ -+To play, an IWAD file is needed. This is a large file containing all of the -+levels, graphics, sound effects, music and other material that make up the -+game. IWAD files are named according to the game; the standard names are: -+.TP -+\fBdoom.wad, doom1.wad, doom2.wad, tnt.wad, plutonia.wad\fR -+Doom, Doom II, Final Doom -+.TP -+\fBheretic.wad, heretic1.wad, hexen.wad, strife1.wad\fR -+Heretic, Hexen and Strife (commercial Doom engine games). -+.TP -+\fBhacx.wad, chex.wad\fR -+Hacx and Chex Quest - more obscure games based on the Doom engine. -+.TP -+\fBfreedm.wad, freedoom1.wad, freedoom2.wad\fR -+The Freedoom open content IWAD files. -+.LP -+The following directory paths are searched in order to find an IWAD: -+.TP -+\fBCurrent working directory\fR -+Any IWAD files found in the current working directory will be used in -+preference to IWADs found in any other directories. -+.TP -+\fBDOOMWADDIR\fR -+This environment variable can be set to contain a path to a single directory -+in which to look for IWAD files. This environment variable is supported by -+most Doom source ports. -+.TP -+\fBDOOMWADPATH\fR -+This environment variable, if set, can contain a colon-separated list of -+directories in which to look for IWAD files, or alternatively full paths to -+specific IWAD files. -+.TP -+\fB$HOME/.local/share/games/doom\fR -+Writeable directory in the user's home directory. The path can be overridden -+using the \fBXDG_DATA_HOME\fR environment variable (see the XDG Base Directory -+Specification). -+.TP -+\fB/usr/local/share/games/doom, /usr/share/games/doom\fR -+System-wide locations that can be accessed by all users. The path -+\fB/usr/share/games/doom\fR is a standard path that is supported by most -+Doom source ports. These paths can be overridden using the \fBXDG_DATA_DIRS\fR -+environment variable (see the XDG Base Directory Specification). -+.LP -+The above can be overridden on a one-time basis by using the \fB\-iwad\fR -+command line parameter to provide the path to an IWAD file to use. This -+parameter can also be used to specify the name of a particular IWAD to use -+from one of the above paths. For example, '\fB-iwad doom.wad\fR' will search -+the above paths for the file \fBdoom.wad\fR to use. -diff --git a/man/strife.template b/man/strife.template -index ddcc12f..3d5614c 100644 ---- a/man/strife.template -+++ b/man/strife.template -@@ -13,6 +13,8 @@ of the original programmers of the game (see the section HISTORY below). - - @content - -+.SH IWAD SEARCH PATHS -+@include iwad_paths.man - .SH ENVIRONMENT - This section describes environment variables that control Chocolate Strife's - behavior. --- -2.5.0 - diff --git a/aur/chocolate-doom/PKGBUILD b/aur/chocolate-doom/PKGBUILD index ebe0a0f39..36bc997af 100644 --- a/aur/chocolate-doom/PKGBUILD +++ b/aur/chocolate-doom/PKGBUILD @@ -3,41 +3,15 @@ pkgname=(chocolate-{doom,heretic,hexen,strife,common}) pkgbase=${pkgname[0]} pkgdesc="Historically-accurate Doom, Heretic, Hexen, and Strife ports." -pkgver=2.2.0 -pkgrel=3 +pkgver=2.2.1 +pkgrel=1 arch=('i686' 'x86_64') url="http://www.chocolate-doom.org/" license=('GPL2') depends=('libsamplerate' 'sdl_mixer' 'sdl_net') makedepends=('python') -source=(http://chocolate-doom.org/downloads/${pkgver}/${pkgbase}-${pkgver}.tar.gz - 0001-setup-Fix-help-URL-for-level-warp-menu.patch - 0002-Update-README.Strife.patch - 0003-setup.desktop-Add-a-missing-semicolon-to-Categories.patch - 0004-Add-Keywords-to-the-setup.desktop-file.patch - 0005-doom-Avoid-overflow-for-spawn-angle-calculation.patch - 0006-osx-Add-CFBundleIdentifier-to-Info.plist.patch - 0007-Added-deh_bexstr.c-to-MSVC-project.patch - 0008-Fixed-Heretic-Hexen-vcproj-files.patch - 0009-Remove-duplicate-variable-definitions.patch - 0010-setup-manifest-Add-compatibility-GUID-for-Windows-10.patch - 0011-Apply-gcc_struct-tag-to-packed-structs.patch - 0012-Make-IWAD-search-paths-compliant-with-XDG-spec.patch - 0013-man-Add-documentation-for-IWAD-search-paths.patch) -sha256sums=('9fa9c56e72f8a04adf8f0800141192e9bafd38c9e424f70942ece6e515570173' - '172b7df49de7c233cf2720d74341e606dd896bad396a3490e99b13de48184347' - 'dac8bb2e341e33b83f05c5475144b482f724070df80f6b83dc3feb7d2224b8d0' - '8d2bd8b1db28c7ec2c0ec05e4dfadfbf13f26e02a772d59523e76b2cb957228a' - 'fa3a2b6aa1c9ac0a38a1969ac7ada9e506654929ab0f976ebb87798943561916' - 'dbb1b3bb84befafbc4be305515c3d73943ccd93d13a65f5fa33dfc5811187d2b' - 'c3bee8e2b7c7edeb1b305b4d892aa75ac44e661d21b91644b0c356d388976c8c' - '46a7327c4fd5e60f3969fa2677e815cb306f9d443033d52a6e9d007bcfab1aeb' - 'ccb421f20e33b328b413601e9dd56553481e96810347fb523531dfcd4a5ca01a' - '859b29c78932f97cad9c8c77fbd333664b9f01e1d3c3881ebb1e16769a60d04f' - '7886a2df4967b3db0032bede909cccfe14a302cb51b1a4005b2a877231e4ab46' - '33f2b99d847060e13ca3e8996a178731f8652660e450121aad0f34b6af7225f6' - '99c57dc6264cc0ff6e0964b34f5457b1208d369eef601756313e886fcb92f85c' - '8588637c1e09ae2eedf097bc4350052e80eed50bbfbbb814412005ee2b208287') +source=(http://chocolate-doom.org/downloads/${pkgver}/${pkgbase}-${pkgver}.tar.gz) +sha256sums=('ad11e2871667c6fa0658abf2dcba0cd9b26fbd651ee8df55adfdc18ad8fd674a') prepare() { cd "${pkgbase}-${pkgver}" @@ -77,7 +51,8 @@ package_chocolate-common() { cd "${pkgdir}"/usr/share rm -rf doc man/man5 rm -rf applications/chocolate-{doom,heretic,hexen,strife}.desktop \ - applications/screensavers + applications/screensavers + rm -rf appdata cd man/man6 rm -f chocolate-{doom,heretic,hexen,strife}{,-setup}.6 } @@ -86,8 +61,8 @@ package_chocolate-doom() { pkgdesc="Doom port accurately reproducing the original DOS EXEs." depends=(${depends[@]} 'chocolate-common') optdepends=('freedm: Free deathmatch game' - 'freedoom1: Free Ultimate Doom-compatible game (not vanilla compatible, but useful for mods)' - 'freedoom2: Free Doom II/Final Doom-compatible game (not vanilla compatible, but useful for mods)') + 'freedoom1: Free Ultimate Doom-compatible game (not vanilla compatible, but useful for mods)' + 'freedoom2: Free Doom II/Final Doom-compatible game (not vanilla compatible, but useful for mods)') cd "${pkgbase}-${pkgver}" make DESTDIR="${pkgdir}" install @@ -99,8 +74,9 @@ package_chocolate-doom() { cd "${pkgdir}"/usr/share rm -rf doc/chocolate-{heretic,hexen,strife} rm -rf applications/chocolate-{setup,heretic,hexen,strife}.desktop icons + rm -f appdata/chocolate-{heretic,hexen,strife}.appdata.xml rm -f man/man?/chocolate-{heretic,hexen,strife,setup,server}* \ - man/man5/{heretic,hexen,strife}.cfg* + man/man5/{heretic,hexen,strife}.cfg* } package_chocolate-heretic() { @@ -118,9 +94,10 @@ package_chocolate-heretic() { cd "${pkgdir}"/usr/share rm -rf doc/chocolate-{doom,hexen,strife} rm -rf applications/chocolate-{setup,doom,hexen,strife}.desktop \ - applications/screensavers icons + applications/screensavers icons + rm -f appdata/chocolate-{doom,hexen,strife}.appdata.xml rm -f man/man?/chocolate-{doom,hexen,strife,setup,server}* \ - man/man5/{default,hexen,strife}.cfg* + man/man5/{default,hexen,strife}.cfg* } package_chocolate-hexen() { @@ -137,9 +114,10 @@ package_chocolate-hexen() { cd "${pkgdir}"/usr/share rm -rf doc/chocolate-{doom,heretic,strife} rm -rf applications/chocolate-{setup,doom,heretic,strife}.desktop \ - applications/screensavers icons + applications/screensavers icons + rm -f appdata/chocolate-{doom,heretic,strife}.appdata.xml rm -f man/man?/chocolate-{doom,heretic,strife,setup,server}* \ - man/man5/{default,heretic,strife}.cfg* + man/man5/{default,heretic,strife}.cfg* } package_chocolate-strife() { @@ -156,7 +134,8 @@ package_chocolate-strife() { cd "${pkgdir}"/usr/share rm -rf doc/chocolate-{doom,heretic,hexen} rm -rf applications/chocolate-{setup,doom,heretic,hexen}.desktop \ - applications/screensavers icons + applications/screensavers icons + rm -f appdata/chocolate-{doom,heretic,hexen}.appdata.xml rm -f man/man?/chocolate-{doom,heretic,hexen,setup,server}* \ - man/man5/{default,heretic,hexen}.cfg* + man/man5/{default,heretic,hexen}.cfg* } diff --git a/aur/cower/PKGBUILD b/aur/cower/PKGBUILD index 500fe4f2b..0d25ef640 100644 --- a/aur/cower/PKGBUILD +++ b/aur/cower/PKGBUILD @@ -1,8 +1,8 @@ # Maintainer: Dave Reisner pkgname=cower -pkgver=13 -pkgrel=1 +pkgver=14 +pkgrel=2 pkgdesc="A simple AUR agent with a pretentious name" arch=('i686' 'x86_64') url="http://github.com/falconindy/cower" @@ -11,7 +11,7 @@ depends=('curl' 'openssl' 'pacman' 'yajl') makedepends=('perl') source=("http://code.falconindy.com/archive/$pkgname/$pkgname-$pkgver.tar.gz"{,.sig}) validpgpkeys=('487EACC08557AD082088DABA1EB2638FF56C0C53') # Dave Reisner -md5sums=('741c05e6865dafc5fff72a186ee5daf9' +md5sums=('0e09bb69078ab5134ddaf5e7ccb0c414' 'SKIP') build() { diff --git a/aur/perl-config-general/PKGBUILD b/aur/perl-config-general/PKGBUILD index 1ed38719d..3c480f494 100644 --- a/aur/perl-config-general/PKGBUILD +++ b/aur/perl-config-general/PKGBUILD @@ -1,32 +1,30 @@ -# Maintainer: Jason St. John - +# Maintainer: Brian Bidulock +# Contributor: Jason St. John _perlmod=Config-General _modnamespace=Config pkgname=perl-config-general -pkgver=2.56 -pkgrel=2 +pkgver=2.58 +pkgrel=1 pkgdesc="Config::General - Generic Config Module" arch=('any') url="http://search.cpan.org/dist/${_perlmod}" license=('GPL' 'PerlArtistic') options=('!emptydirs') source=("http://cpan.org/modules/by-module/${_modnamespace}/${_perlmod}-${pkgver}.tar.gz") -sha512sums=('0439d690e58fb30cafd18e3c51fb1c6226cb20017fcd260959ad0210006d0e98a32a939d314b384e5c62871c0a59400a678099e3d703d9e2ed859de20292de9a') +sha512sums=('7a2720ca4ceb7b1cbb4556e08b1cdd16a5a721609afa7ec474803355d29aa292ad09af1ba097a57e6560413486236ac94c615268d22c0fe2923c92e7e0ddf4b7') build() { - cd "${_perlmod}-${pkgver}" - - # Install module in vendor directories. - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make + cd "${_perlmod}-${pkgver}" + PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor + make } check() { - cd "${_perlmod}-${pkgver}" - make test + cd "${_perlmod}-${pkgver}" + make test } package() { - cd "${_perlmod}-${pkgver}" - make install DESTDIR="${pkgdir}" + cd "${_perlmod}-${pkgver}" + make install DESTDIR="${pkgdir}" }