mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-21 19:20:08 +02:00
yamagi_quake2: add new recipe for version 7.30
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
|
||||
resource app_flags B_MULTIPLE_LAUNCH;
|
||||
|
||||
resource app_version {
|
||||
major = @MAJOR@,
|
||||
middle = @MIDDLE@,
|
||||
minor = @MINOR@,
|
||||
|
||||
variety = B_APPV_FINAL,
|
||||
internal = 0,
|
||||
|
||||
short_info = "Yamagi Quake II",
|
||||
long_info = "@LONG_INFO@"
|
||||
};
|
||||
|
||||
resource app_signature "@APP_SIGNATURE@";
|
||||
|
||||
resource vector_icon {
|
||||
$"6E63696601050002006DC377B377C377B377C38DB376C3BBB375C3A4B376C4C0"
|
||||
$"B408C685B594C5C8B4A6C722B643C801B7E1C7A5B709C836B85AC87BB95AC877"
|
||||
$"B8D3C879B9A1C8B1BA21C89DB9DFC8C8BA60C8C6BAE7C8C1BAA5C8D9BB0FC8E3"
|
||||
$"BB65C8E0BB3AC8D7BB88C8C2BBCEC8CCBBABC8D8BBFFC8E6BC68C8E2BC33C8BC"
|
||||
$"BC9CC870BD0AC896BCD3C885BD1EC8B0BD48C89ABD33C85FBE70C73242C7E5BF"
|
||||
$"91C6DFC10EC60BC1ECC662C16DC5F7C1EEC5BBC1F3C5CFC1F1C5B5C1C7C5A8C1"
|
||||
$"6FC5AFC19BC59EC19FC589C1FDC595C1CEC584C22AC563C280C593C265C4E2C2"
|
||||
$"DFC3C7C378C455C32FC316C3C7C1A5C43BC25EC406C1C7C4DCC1AAC622C19FC5"
|
||||
$"7FC1B1C714C156C8EDC16FC7FEC12AC9ADC106CB36C117CA72C101CB79C0D2CB"
|
||||
$"F7C0EDCBBAC0C8CBE0C0ACCB9CC0B6CBB3C060CA47C017C792C064C8E6C00DC7"
|
||||
$"31BFF5C671BFFEC6D2BFECC629C014C5A4C03DC5EABFEBC53EBFF8C464BFF8C4"
|
||||
$"CFBFC2C463BF57C462BF8CC462BF4BC4DBBF44C5CDBF61C556BF38C5FBBF4BC6"
|
||||
$"57BF43C62ABF48C6BCBF39C787BF4DC723BF1FC806BEF3C905BEF8C883BEECC9"
|
||||
$"85BEC05BBEC6CA01BEBBCB07BE80CC0ABEADCB8DBE54CBC9BE47CB2DBE51CB79"
|
||||
$"BE39CAC1BE11C9ECBE17CA59BE08C930BDD0C7BCBDDDC877BDB3C732BDA3C618"
|
||||
$"BD9DC6A6BDB2C617BDDFC614BDD0C615BDC8C5F4BDA7C5A9BDA7C5D5BD90C529"
|
||||
$"BD96C427BD9BC4A7BD3CC40FBC8AC3D9BCE0C3FDBC7DC3B4BC6FC369BC77C38E"
|
||||
$"BC2CC36CBBA7C37DBBEAC382BB0AC338B9F0C276BA86C2C9B9D5C23DB99AC1CB"
|
||||
$"B9BAC203B9A4C1ADB9B7C171B9AEC18FB99DC190B959C1C0B98BC1C4B8E0C17E"
|
||||
$"B836C0A2B88CC10BB7E4C03AB766BF4DB789BFD1B761BF20B7B2BEF7B79ABF13"
|
||||
$"B766BF01B6F9BE98B717BEE4B681BD88B669BB36B69ABC56B671BB2CB689BB0F"
|
||||
$"B681BB19B66BBA0BB724B828B6E8B91DB72DB81DB749B7FBB740B806B757B7C2"
|
||||
$"B78CB759B767B789B7B8B71CB800B698B7CCB6CFB852B63EB8D8B574B889B5D0"
|
||||
$"B8E6B570B911B565B903B569B915B557B921B52CB91DB53BB975B4E5BA2BB467"
|
||||
$"B9C4B494BAB0B3F2BC0AB38DBB50B381BBFCB3E8BB59B42CBB9EB405BA1CB4CF"
|
||||
$"B889B726B918B5DFB85DB78DB80CB861B82BB7F4B7DCB8CFB7C9B9BEB7E4B94A"
|
||||
$"B7ABBA2B2CBB09B7D7BA9AB7CCBB59B7B4BBF6B7DDBBACB7A2BBF9B76CBC02B7"
|
||||
$"7EBBFFB79DBC12B800BC31B7CFBC21B801BC55B803BC9CB802BC79B86CBD69B9"
|
||||
$"41BF02B8B7BE47B96FBF38B9D0BFA0B9A1BF6ABA04BFE4BA94C040BA56C006BA"
|
||||
$"C9C072BB3BC0CBBB01C0A0BB54C0FBBB90C156BB70C12ABBC7C11FBC48C15EBC"
|
||||
$"0CC14EBC7CC17DBCEDC1ABBCB4C196BCFAC1D5BD16C228BD08C1FFBD46C211BD"
|
||||
$"A5C1E4BD75C1FABDA5C1C8BDA4C190BDA4C1ACBDAFC184BDD2C160BDC7C16CBD"
|
||||
$"C7C154BDA6C131BDB1C13DBDAEC062BD71BEC9BDAABF92BD26BEB0BC8CBE88BC"
|
||||
$"D9BE9CBC8EBE68BC94BE29BC91BE48BD7CBE47BF54BE2EBE6BBE57BFEABE1CC1"
|
||||
$"16BE40C07FBE4AC1AFBE41C2E4BE49C251BE07C2AEBEB5C1D7BEDAC217BE78C1"
|
||||
$"81BF5FC192C099C1C4C008C1A8C103C1A6C1DCC1A8C170C2B8C1B0C486C076C3"
|
||||
$"AAC119C503C00FC5DEBF1EC582BFA5C61BBEE9C670BE62C651BEADC67EBE5EC6"
|
||||
$"AABE53C69BBE57C6CDBDBBC746BC9CC717BD30C76ABBF5C799BAA2C797BB4E54"
|
||||
$"BA8EC7F6BA65C7D7BA79C7E0BA64C79DBA63C7B3BA63C78CBA02C77EB940C783"
|
||||
$"B9A1C776B89EC716B76CC727B80CC6C3B720C661B65AC6A9B6AEC603B5DCC52D"
|
||||
$"B4F5C5ABB556C496B47FC34FB3B5C404B3FBC359B3A5C377B377C36DB386C377"
|
||||
$"B3770207BF91BEDDBFA7BEDDBF7BBF23BF58BFB2BF60BF68BF4AC016BF53C0DF"
|
||||
$"BF5EC07BBF47C13FBF3EC201BF43C1A0BF82C202C008C204BFC5C203C00644C0"
|
||||
$"07BFFFC003C0ABC00CBF9CBFD3BEDCBFEFBF3BBFBDBEDC010A0002000100"
|
||||
};
|
||||
88
games-fps/yamagi-quake2/patches/yamagi_quake2-7.30.patchset
Normal file
88
games-fps/yamagi-quake2/patches/yamagi_quake2-7.30.patchset
Normal file
@@ -0,0 +1,88 @@
|
||||
From 50932c734a5d0489bb3d8bc49095e9f4f34ac51f Mon Sep 17 00:00:00 2001
|
||||
From: Sergei Reznikov <diver@gelios.net>
|
||||
Date: Tue, 9 Oct 2018 16:48:35 +0300
|
||||
Subject: Add Haiku support
|
||||
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index f38d575..7541fe0 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -132,6 +132,8 @@ endif()
|
||||
# General linker flags.
|
||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Windows")
|
||||
list(APPEND yquake2LinkerFlags "-lm -static-libgcc")
|
||||
+elseif(${CMAKE_SYSTEM_NAME} MATCHES "Haiku")
|
||||
+ list(APPEND yquake2LinkerFlags "-lnetwork")
|
||||
else()
|
||||
list(APPEND yquake2LinkerFlags "-lm -rdynamic")
|
||||
endif()
|
||||
diff --git a/src/backends/unix/main.c b/src/backends/unix/main.c
|
||||
index 1201e1f..7ee797a 100644
|
||||
--- a/src/backends/unix/main.c
|
||||
+++ b/src/backends/unix/main.c
|
||||
@@ -85,6 +85,8 @@ main(int argc, char **argv)
|
||||
}
|
||||
}
|
||||
|
||||
+#ifndef __HAIKU__
|
||||
+
|
||||
/* Prevent running Quake II as root. Only very mad
|
||||
minded or stupid people even think about it. :) */
|
||||
if (getuid() == 0)
|
||||
@@ -106,12 +108,13 @@ main(int argc, char **argv)
|
||||
|
||||
return 1;
|
||||
}
|
||||
+#endif
|
||||
|
||||
// enforce C locale
|
||||
setenv("LC_ALL", "C", 1);
|
||||
|
||||
/// Do not delay reads on stdin
|
||||
- fcntl(fileno(stdin), F_SETFL, fcntl(fileno(stdin), F_GETFL, NULL) | FNDELAY);
|
||||
+ fcntl(fileno(stdin), F_SETFL, fcntl(fileno(stdin), F_GETFL, NULL) | O_NDELAY);
|
||||
|
||||
// Initialize the game.
|
||||
// Never returns.
|
||||
diff --git a/src/backends/unix/system.c b/src/backends/unix/system.c
|
||||
index 0554598..7769a42 100644
|
||||
--- a/src/backends/unix/system.c
|
||||
+++ b/src/backends/unix/system.c
|
||||
@@ -62,7 +62,7 @@ Sys_Error(char *error, ...)
|
||||
char string[1024];
|
||||
|
||||
/* change stdin to non blocking */
|
||||
- fcntl(0, F_SETFL, fcntl(0, F_GETFL, 0) & ~FNDELAY);
|
||||
+ fcntl(0, F_SETFL, fcntl(0, F_GETFL, 0) & ~O_NDELAY);
|
||||
|
||||
#ifndef DEDICATED_ONLY
|
||||
CL_Shutdown();
|
||||
@@ -91,7 +91,7 @@ Sys_Quit(void)
|
||||
}
|
||||
|
||||
Qcommon_Shutdown();
|
||||
- fcntl(0, F_SETFL, fcntl(0, F_GETFL, 0) & ~FNDELAY);
|
||||
+ fcntl(0, F_SETFL, fcntl(0, F_GETFL, 0) & ~O_NDELAY);
|
||||
|
||||
printf("------------------------------------\n");
|
||||
|
||||
diff --git a/src/client/input/sdl.c b/src/client/input/sdl.c
|
||||
index a2e6f18..9397d97 100644
|
||||
--- a/src/client/input/sdl.c
|
||||
+++ b/src/client/input/sdl.c
|
||||
@@ -1239,9 +1239,9 @@ IN_Init(void)
|
||||
SDL_StartTextInput();
|
||||
|
||||
/* Joystick init */
|
||||
- if (!SDL_WasInit(SDL_INIT_GAMECONTROLLER | SDL_INIT_HAPTIC))
|
||||
+ if (!SDL_WasInit(SDL_INIT_GAMECONTROLLER))
|
||||
{
|
||||
- if (SDL_Init(SDL_INIT_GAMECONTROLLER | SDL_INIT_HAPTIC) == -1)
|
||||
+ if (SDL_Init(SDL_INIT_GAMECONTROLLER) == -1)
|
||||
{
|
||||
Com_Printf ("Couldn't init SDL joystick: %s.\n", SDL_GetError ());
|
||||
}
|
||||
--
|
||||
2.19.1
|
||||
|
||||
104
games-fps/yamagi-quake2/yamagi_quake2-7.30.recipe
Normal file
104
games-fps/yamagi-quake2/yamagi_quake2-7.30.recipe
Normal file
@@ -0,0 +1,104 @@
|
||||
SUMMARY="An alternative client for id Softwares Quake II"
|
||||
DESCRIPTION="Yamagi Quake II is an alternative client for id Softwares Quake \
|
||||
II. Our goal is to provide the best Quake II experience possible, we strive \
|
||||
to preserve the gameplay as it was back in 1997. Thus we aim mostly for bug \
|
||||
fixes, stability and gentle enhancements were appropriate.
|
||||
|
||||
Features
|
||||
Yamagi Quake II has a lot of unique features. The most notables ones are:
|
||||
|
||||
* A modern OpenGL 3.2 renderer, providing a greatly enhanced look and feel. \
|
||||
The original OpenGL 1.4 and even the Software renderers are still supported. \
|
||||
Both 3D accelerated renderers support anisotropic filtering and multisampling \
|
||||
anti aliasing.
|
||||
* Full support for widescreen displays and arbitrary resolutions. \
|
||||
The HUD can be scaled to be readable on high resolutions.
|
||||
* Support for surround sound, from stereo up to 7.1 channels and even HRTF. \
|
||||
The background music can be played from OGG/Vorbis files, a CD drive is no \
|
||||
longer necessary.
|
||||
* A rewritten savegame system. Yamagi Quake II savegames are completely \
|
||||
reliable and backward compatible between releases.
|
||||
* Highly precise timings. For example, on a flat panel display with a 59.95 \
|
||||
hertz refresh rate and vertical synchronisation (VSync) enabled Yamagi Quake \
|
||||
II is running at exactly 59.95 frames per second.
|
||||
* In comparison with the original client over 1.500 bugs were fixed. The \
|
||||
Yamagi Quake II client is very well tested and stable. The dedicated server \
|
||||
is able to run for weeks without a single restart. Last but not least the \
|
||||
code is fully 64 bit clean and highly portable."
|
||||
HOMEPAGE="https://www.yamagi.org/quake2/"
|
||||
COPYRIGHT="OpenArena Team"
|
||||
LICENSE="GNU GPL v2"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://deponie.yamagi.org/quake2/quake2-$portVersion.tar.xz"
|
||||
CHECKSUM_SHA256="f27b6d110c25feee18bbe9b414a143b52848327141b22349d7c4ef1fa46a7bbf"
|
||||
SOURCE_DIR="quake2-$portVersion"
|
||||
PATCHES="yamagi_quake2-$portVersion.patchset"
|
||||
ADDITIONAL_FILES="yamagi_quake2.rdef.in"
|
||||
|
||||
ARCHITECTURES="!x86_gcc2 x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PROVIDES="
|
||||
yamagi_quake2$secondaryArchSuffix = $portVersion
|
||||
app:Quake2
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libGL$secondaryArchSuffix
|
||||
lib:libglu$secondaryArchSuffix
|
||||
lib:libogg$secondaryArchSuffix
|
||||
lib:libopenal$secondaryArchSuffix
|
||||
lib:libSDL2_2.0$secondaryArchSuffix
|
||||
lib:libvorbis$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
devel:libcurl$secondaryArchSuffix
|
||||
devel:libGL$secondaryArchSuffix
|
||||
devel:libglu$secondaryArchSuffix
|
||||
devel:libogg$secondaryArchSuffix
|
||||
devel:libopenal$secondaryArchSuffix
|
||||
devel:libSDL2_2.0$secondaryArchSuffix
|
||||
devel:libvorbis$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:cmake
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:ld$secondaryArchSuffix
|
||||
cmd:make
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake -DSDL2_INCLUDE_DIR=/system/$relativeIncludeDir ..
|
||||
make $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
cd build/release
|
||||
mkdir -p $appsDir/Quake2
|
||||
cp quake2 $appsDir/Quake2/Quake2
|
||||
cp q2ded $appsDir/Quake2/Quake2_dedicated
|
||||
cp *.so $appsDir/Quake2/
|
||||
|
||||
local APP_SIGNATURE="application/x-vnd.yamagi_quake2"
|
||||
local MAJOR="`echo "$portVersion" | cut -d. -f1`"
|
||||
local MIDDLE="`echo "$portVersion" | cut -d. -f2`"
|
||||
# local MINOR="`echo "$portVersion" | cut -d. -f3`"
|
||||
local MINOR="0"
|
||||
local LONG_INFO="$SUMMARY"
|
||||
sed \
|
||||
-e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \
|
||||
-e "s|@MAJOR@|$MAJOR|" \
|
||||
-e "s|@MIDDLE@|$MIDDLE|" \
|
||||
-e "s|@MINOR@|$MINOR|" \
|
||||
-e "s|@LONG_INFO@|$LONG_INFO|" \
|
||||
$portDir/additional-files/yamagi_quake2.rdef.in > yamagi_quake2.rdef
|
||||
|
||||
addResourcesToBinaries yamagi_quake2.rdef $appsDir/Quake2/Quake2
|
||||
addAppDeskbarSymlink $appsDir/Quake2/Quake2
|
||||
}
|
||||
Reference in New Issue
Block a user