update dxx-rebirth to recent nightly and unbreak
remove base-clang from this C++14 port; found by kirby@ ok kirby@
This commit is contained in:
parent
7fcd5ea0fe
commit
8a0ae2e3c7
|
@ -1,28 +1,24 @@
|
|||
# $OpenBSD: Makefile,v 1.6 2019/07/14 00:39:36 naddy Exp $
|
||||
# $OpenBSD: Makefile,v 1.7 2019/08/16 15:21:38 thfr Exp $
|
||||
|
||||
.for i in aarch64 amd64 arm i386
|
||||
BROKEN-$i = needs update following clang update in base
|
||||
.endfor
|
||||
|
||||
V = 0.60
|
||||
V = 0.60pl20190731
|
||||
COMMENT = source port of Descent, a 6-degrees-of-freedom shooter
|
||||
DISTNAME = dxx-rebirth_v${V}-weekly-11-08-17-src
|
||||
DISTNAME = dxx-rebirth_${V:S/0.60pl//g}-src
|
||||
PKGNAME = dxx-rebirth-${V}
|
||||
CATEGORIES = games x11
|
||||
REVISION = 2
|
||||
|
||||
HOMEPAGE = http://www.dxx-rebirth.com/
|
||||
HOMEPAGE = https://www.dxx-rebirth.com/
|
||||
MAINTAINER = Thomas Frohwein <thfr@openbsd.org>
|
||||
|
||||
# GPLv3 with special exception for Parallax license
|
||||
PERMIT_PACKAGE = Yes
|
||||
|
||||
WANTLIB += ${COMPILER_LIBCXX} GL GLU SDL SDL_mixer c m physfs
|
||||
WANTLIB += ${COMPILER_LIBCXX} GL GLU SDL SDL_mixer c m physfs png z
|
||||
|
||||
MASTER_SITES = http://www.dxx-rebirth.com/download/dxx/user/afuturepilot/
|
||||
MASTER_SITES = https://www.dxx-rebirth.com/download/dxx/rebirth/
|
||||
EXTRACT_SUFX = .tar.xz
|
||||
|
||||
# C++14
|
||||
COMPILER = base-clang ports-gcc base-gcc
|
||||
COMPILER = base-clang ports-gcc
|
||||
|
||||
MODULES = devel/scons
|
||||
MODSCONS_ENV = CPPFLAGS="-I${LOCALBASE}/include" \
|
||||
|
@ -32,10 +28,9 @@ MODSCONS_FLAGS = ignore_unknown_variables=1 verbosebuild=1
|
|||
|
||||
LIB_DEPENDS = devel/physfs \
|
||||
devel/sdl \
|
||||
devel/sdl-mixer
|
||||
devel/sdl-mixer \
|
||||
graphics/png
|
||||
|
||||
NO_TEST = Yes
|
||||
|
||||
WRKDIST = ${WRKDIR}/dxx-rebirth_v${V}-weekly-src
|
||||
|
||||
.include <bsd.port.mk>
|
||||
|
|
|
@ -1,2 +1,2 @@
|
|||
SHA256 (dxx-rebirth_v0.60-weekly-11-08-17-src.tar.gz) = Wv40zLDh+jJ1DcYEIEtAjpLov/1Jm5lPZZea672arWM=
|
||||
SIZE (dxx-rebirth_v0.60-weekly-11-08-17-src.tar.gz) = 22959334
|
||||
SHA256 (dxx-rebirth_20190731-src.tar.xz) = JTHtnDShvz+5miqHXa2lGG1/xfsQ/4NK6IPrIdPhAb8=
|
||||
SIZE (dxx-rebirth_20190731-src.tar.xz) = 1308972
|
||||
|
|
|
@ -1,102 +0,0 @@
|
|||
$OpenBSD: patch-SConstruct,v 1.2 2018/12/28 06:15:59 bcallah Exp $
|
||||
|
||||
Don't hardcode optimization flags
|
||||
Never pass -Werror
|
||||
Remove unrecognized warning flags
|
||||
add openbsd6 - will need better solution to not break with openbsd7
|
||||
Don't search for GNU as; it needlessly breaks the build on aarch64
|
||||
|
||||
Index: SConstruct
|
||||
--- SConstruct.orig
|
||||
+++ SConstruct
|
||||
@@ -648,7 +648,6 @@ help:assume C++ compiler works
|
||||
if user_settings.show_tool_version:
|
||||
CXX = cenv['CXX']
|
||||
self._show_tool_version(context, CXX, 'C++ compiler')
|
||||
- self._show_indirect_tool_version(context, CXX, 'as', 'assembler')
|
||||
self._show_indirect_tool_version(context, CXX, 'ld', 'linker')
|
||||
if use_distcc:
|
||||
self._show_tool_version(context, use_distcc, 'distcc', False)
|
||||
@@ -803,7 +802,6 @@ help:assume C++ compiler works
|
||||
forced, expected = self._check_sconf_forced(calling_function)
|
||||
caller_modified_env_flags = self.PreservedEnvironment(context.env, self.__flags_Werror.keys() + testflags.keys())
|
||||
# Always pass -Werror
|
||||
- context.env.Append(**self.__flags_Werror)
|
||||
context.env.Append(**testflags)
|
||||
# If forced is None, run the test. Otherwise, skip the test and
|
||||
# take an action determined by the value of forced.
|
||||
@@ -1736,7 +1734,7 @@ help:assume compiler supports __attribute__((unused))
|
||||
self._check_macro(context,macro_name=macro_name,macro_value=macro_value,test="""
|
||||
__attribute_unused
|
||||
static void a(){}
|
||||
-""", msg='for function __attribute__((unused))', successflags={'CXXFLAGS' : [get_Werror_string(context.env['CXXFLAGS']) + 'unused']})
|
||||
+""", msg='for function __attribute__((unused))', successflags={'CXXFLAGS' : 'CXXFLAGS'})
|
||||
@_custom_test
|
||||
def check_attribute_warn_unused_result(self,context):
|
||||
"""
|
||||
@@ -2285,7 +2283,7 @@ $ x86_64-pc-linux-gnu-g++-5.4.0 -x c++ -S -Wformat -o
|
||||
@_custom_test
|
||||
def check_compiler_useless_cast(self,context):
|
||||
Compile = self.Compile
|
||||
- flags = {'CXXFLAGS' : [get_Werror_string(context.env['CXXFLAGS']) + 'useless-cast']}
|
||||
+ flags = {'CXXFLAGS' : 'CXXFLAGS'}
|
||||
if Compile(context, text='''
|
||||
/*
|
||||
* SDL on Raspbian provokes a warning from -Wuseless-cast
|
||||
@@ -2420,8 +2418,6 @@ where the cast is useless.
|
||||
''', msg='for struct timespec', successflags=_successflags)
|
||||
__preferred_compiler_options = [
|
||||
'-fvisibility=hidden',
|
||||
- '-Wsuggest-attribute=noreturn',
|
||||
- '-Wlogical-op',
|
||||
'-Wold-style-cast',
|
||||
# Starting in gcc-7, Rebirth default options cause gcc to enable
|
||||
# -Wformat-truncation automatically. Unless proven otherwise by
|
||||
@@ -2452,7 +2448,6 @@ where the cast is useless.
|
||||
# snprintf(SecludedSpawnText, sizeof(SecludedSpawnText), "Use %u Furthest Sites", Netgame.SecludedSpawns + 1);
|
||||
# ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
- '-Wno-format-truncation',
|
||||
# gcc-7 with -Wextra enables -Wimplicit-fallthrough, which warns
|
||||
# for various sites in Rebirth. All the sites where fallthrough
|
||||
# is obviously correct are already marked to suppress this
|
||||
@@ -3398,7 +3393,7 @@ class DXXCommon(LazyObjectConstructor):
|
||||
'variable': EnumVariable,
|
||||
'arguments': (
|
||||
('host_endian', None, 'endianness of host platform', {'allowed_values' : ('little', 'big')}),
|
||||
- ('host_platform', 'linux' if sys.platform == 'linux2' else sys.platform, 'cross-compile to specified platform', {'allowed_values' : ('win32', 'darwin', 'linux')}),
|
||||
+ ('host_platform', 'linux' if sys.platform == 'linux2' else sys.platform, 'cross-compile to specified platform', {'allowed_values' : ('win32', 'darwin', 'linux', 'openbsd6')}),
|
||||
),
|
||||
},
|
||||
{
|
||||
@@ -3803,22 +3798,10 @@ class DXXCommon(LazyObjectConstructor):
|
||||
RCCOMSTR = "RC %s %s $SOURCE" % format_tuple,
|
||||
)
|
||||
|
||||
- Werror = get_Werror_string(user_settings.CXXFLAGS)
|
||||
env.Prepend(CXXFLAGS = [
|
||||
'-ftabstop=4',
|
||||
'-Wall',
|
||||
'-Wshadow',
|
||||
- Werror + 'extra',
|
||||
- Werror + 'format=2',
|
||||
- Werror + 'missing-braces',
|
||||
- Werror + 'missing-include-dirs',
|
||||
- Werror + 'uninitialized',
|
||||
- Werror + 'undef',
|
||||
- Werror + 'pointer-arith',
|
||||
- Werror + 'cast-qual',
|
||||
- Werror + 'missing-declarations',
|
||||
- Werror + 'redundant-decls',
|
||||
- Werror + 'vla',
|
||||
])
|
||||
env.Append(
|
||||
CXXFLAGS = ['-funsigned-char'],
|
||||
@@ -3884,7 +3867,6 @@ class DXXCommon(LazyObjectConstructor):
|
||||
env = self.env
|
||||
user_settings = self.user_settings
|
||||
|
||||
- env.Prepend(CXXFLAGS = ['-g', '-O2'])
|
||||
# Raspberry Pi?
|
||||
if user_settings.raspberrypi == 'yes':
|
||||
rpi_vc_path = user_settings.rpi_vc_path
|
|
@ -1,16 +0,0 @@
|
|||
$OpenBSD: patch-similar_editor_med_cpp,v 1.1.1.1 2017/12/24 19:13:43 bcallah Exp $
|
||||
|
||||
account for __OpenBSD__ defined
|
||||
|
||||
Index: similar/editor/med.cpp
|
||||
--- similar/editor/med.cpp.orig
|
||||
+++ similar/editor/med.cpp
|
||||
@@ -891,7 +891,7 @@ static void close_editor()
|
||||
{
|
||||
// _MARK_("end of editor");//Nuked to compile -KRB
|
||||
|
||||
-#ifndef __linux__
|
||||
+#if !defined (__linux__) && !defined(__OpenBSD__)
|
||||
set_warn_func(msgbox_warning);
|
||||
#else
|
||||
clear_warn_func();
|
|
@ -1,25 +0,0 @@
|
|||
$OpenBSD: patch-similar_main_inferno_cpp,v 1.1.1.1 2017/12/24 19:13:43 bcallah Exp $
|
||||
|
||||
account for __OpenBSD__ in ifdefs
|
||||
|
||||
Index: similar/main/inferno.cpp
|
||||
--- similar/main/inferno.cpp.orig
|
||||
+++ similar/main/inferno.cpp
|
||||
@@ -95,7 +95,7 @@ char copyright[] = "DESCENT II COPYRIGHT (C) 1994-199
|
||||
#endif
|
||||
#include "event.h"
|
||||
#include "rbaudio.h"
|
||||
-#ifndef __linux__
|
||||
+#if !defined (__linux__) && !defined (__OpenBSD__)
|
||||
#include "messagebox.h"
|
||||
#else
|
||||
#if DXX_WORDS_NEED_ALIGNMENT
|
||||
@@ -673,7 +673,7 @@ static int main(int argc, char *argv[])
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
mem_init();
|
||||
-#ifdef __linux__
|
||||
+#if defined (__linux__) || defined (__OpenBSD__)
|
||||
#if DXX_WORDS_NEED_ALIGNMENT
|
||||
prctl(PR_SET_UNALIGN, PR_UNALIGN_NOPRINT, 0, 0, 0);
|
||||
#endif
|
|
@ -1,12 +1,12 @@
|
|||
$OpenBSD: patch-similar_main_mglobal_cpp,v 1.1.1.1 2017/12/24 19:13:43 bcallah Exp $
|
||||
$OpenBSD: patch-similar_main_mglobal_cpp,v 1.2 2019/08/16 15:21:38 thfr Exp $
|
||||
|
||||
Always enable full template instantiation.
|
||||
|
||||
Index: similar/main/mglobal.cpp
|
||||
--- similar/main/mglobal.cpp.orig
|
||||
+++ similar/main/mglobal.cpp
|
||||
@@ -117,7 +117,7 @@ valptridx<wall>::array_managed_type Walls;
|
||||
#if (defined(__NO_INLINE__) && __NO_INLINE__ > 0)
|
||||
@@ -160,7 +160,7 @@ void reset_globals_for_new_game()
|
||||
#if (defined(__NO_INLINE__) && __NO_INLINE__ > 0) || defined(__SANITIZE_ADDRESS__)
|
||||
#define DXX_VALPTRIDX_ENABLE_FULL_TEMPLATE_INSTANTIATION 1
|
||||
#else
|
||||
-#define DXX_VALPTRIDX_ENABLE_FULL_TEMPLATE_INSTANTIATION 0
|
||||
|
|
|
@ -1,15 +1,20 @@
|
|||
$OpenBSD: README,v 1.2 2018/09/04 12:46:12 espie Exp $
|
||||
$OpenBSD: README,v 1.3 2019/08/16 15:21:38 thfr Exp $
|
||||
|
||||
+-----------------------------------------------------------------------
|
||||
| Running ${PKGSTEM} on OpenBSD
|
||||
+-----------------------------------------------------------------------
|
||||
|
||||
dxx-rebirth
|
||||
===========
|
||||
Installation of the Game Data
|
||||
=============================
|
||||
|
||||
dxx-rebirth requires the original game files from Descent I and/or
|
||||
Descent II to work properly. These can come from an original CD or from
|
||||
GOG.com.
|
||||
|
||||
The shareware/demo data can be downloaded from here:
|
||||
|
||||
https://www.dxx-rebirth.com/game-content/
|
||||
|
||||
If using the GOG.com version of Descent I, you must extract the files
|
||||
from setup_descent_1.4a_(16596).exe using the innoextract package.
|
||||
|
||||
|
@ -25,3 +30,16 @@ You can then delete everything extracted from the exe.
|
|||
If you own the GOG.com version of Descent II, follow the above steps
|
||||
with the setup_descent_2_1.1_(16596).exe file and using
|
||||
~/.d2x-rebirth/Data as the directory name.
|
||||
|
||||
Music
|
||||
=====
|
||||
|
||||
The MIDI soundtrack requires the package timidity to be installed.
|
||||
|
||||
Add-Ons
|
||||
=======
|
||||
|
||||
Add-ons with high resolution images, new soundtracks, and German
|
||||
briefings are available including installation instructions at:
|
||||
|
||||
https://www.dxx-rebirth.com/addons/
|
||||
|
|
Loading…
Reference in New Issue
Block a user