Browse Source

Ports: Add chocolate-doom 3.0.1

Mike Swanson 2 years ago
parent
commit
041e29e585

+ 1 - 0
Ports/AvailablePorts.md

@@ -33,6 +33,7 @@ This list is also available at [ports.serenityos.net](https://ports.serenityos.n
 | [`ccache`](ccache/)                                 | ccache                                                          | 4.6.3                    | https://ccache.dev/                                                            |
 | [`cfunge`](cfunge/)                                 | cfunge                                                          | 2bc4fb2                  | https://github.com/VorpalBlade/cfunge/                                         |
 | [`chester`](chester/)                               | Chester Gameboy Emulator                                        |                          | https://github.com/veikkos/chester                                             |
+| [`chocolate-doom`](chocolate-doom/)                 | Chocolate Doom                                                  | 3.0.1                    | https://www.chocolate-doom.org/                                                |
 | [`citron`](citron/)                                 | Citron Programming Language                                     | 0.0.9.3                  | https://github.com/alimpfard/citron                                            |
 | [`ClassiCube`](ClassiCube/)                         | ClassiCube                                                      | 1.3.3                    | https://github.com/UnknownShadow200/ClassiCube                                 |
 | [`cmake`](cmake/)                                   | CMake                                                           | 3.26.1                   | https://cmake.org/                                                             |

+ 20 - 0
Ports/chocolate-doom/package.sh

@@ -0,0 +1,20 @@
+#!/usr/bin/env -S bash ../.port_include.sh
+port='chocolate-doom'
+version='3.0.1'
+useconfigure='true'
+use_fresh_config_sub='true'
+config_sub_paths=('autotools/config.sub')
+files="https://www.chocolate-doom.org/downloads/${version}/chocolate-doom-${version}.tar.gz chocolate-doom-${version}.tar.gz d435d6177423491d60be706da9f07d3ab4fabf3e077ec2a3fc216e394fcfc8c7"
+auth_type='sha256'
+depends=(
+    'libpng'
+    'libsamplerate'
+    'SDL2'
+    'SDL2_mixer'
+    'SDL2_net'
+)
+
+launcher_name='Chocolate Doom'
+launcher_category='Games'
+launcher_command='/usr/local/bin/chocolate-doom'
+icon_file='data/doom.png'

+ 25 - 0
Ports/chocolate-doom/patches/0001-Remove-redundant-demoextend-definition.patch

@@ -0,0 +1,25 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jordan Christiansen <xordspar0@gmail.com>
+Date: Sun, 15 Mar 2020 16:55:33 -0500
+Subject: [PATCH] Remove redundant demoextend definition
+
+GCC 10 enables -fno-common by default, which causes the linker to fail when
+there are multple definitions of a global variable.
+
+See https://gcc.gnu.org/gcc-10/porting_to.html
+---
+ src/hexen/mn_menu.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/hexen/mn_menu.c b/src/hexen/mn_menu.c
+index a3ff999801b657a6dca4d1e62489d65bafe4e091..b9ad45eea7c915a4066edabff1c12cead2a6ae76 100644
+--- a/src/hexen/mn_menu.c
++++ b/src/hexen/mn_menu.c
+@@ -131,7 +131,6 @@ boolean MenuActive;
+ int InfoType;
+ int messageson = true;
+ boolean mn_SuicideConsole;
+-boolean demoextend; // from h2def.h
+ 
+ // PRIVATE DATA DEFINITIONS ------------------------------------------------
+ 

+ 11 - 0
Ports/chocolate-doom/patches/ReadMe.md

@@ -0,0 +1,11 @@
+# Patches for chocolate-doom on SerenityOS
+
+## `0001-Remove-redundant-demoextend-definition.patch`
+
+Remove redundant demoextend definition
+
+GCC 10 enables -fno-common by default, which causes the linker to fail when
+there are multple definitions of a global variable.
+
+See https://gcc.gnu.org/gcc-10/porting_to.html
+