Skip to content

Commit

Permalink
emulators/dosbox-x: update to 2023.10.06
Browse files Browse the repository at this point in the history
Release Notes: https://dosbox-x.com/release-2023.10.06.html
Also move manpage in share/ and add several build options.

Approved by:		arrowd (mentor)
Differential Revision:	https://reviews.freebsd.org/D43959
  • Loading branch information
VVD committed Feb 18, 2024
1 parent 35bca82 commit be396f0
Show file tree
Hide file tree
Showing 6 changed files with 63 additions and 23 deletions.
44 changes: 37 additions & 7 deletions emulators/dosbox-x/Makefile
@@ -1,31 +1,61 @@
PORTNAME= dosbox-x
DISTVERSIONPREFIX= ${PORTNAME}-v
DISTVERSION= 2022.12.26
DISTVERSION= 2023.10.06
CATEGORIES= emulators

PATCH_SITES= https://github.com/${GH_ACCOUNT}/${PORTNAME}/commit/
PATCHFILES+= 48c13acd1f3048891252cb92087cb6b20c29dc16.patch:-p1
# https://github.com/joncampbell123/dosbox-x/pull/4575
# dos_programs.cpp:5929:17: error: cannot initialize return object of type 'bool' with an rvalue of type 'std::nullptr_t'

MAINTAINER= ports@FreeBSD.org
COMMENT= DOSBox fork
WWW= https://dosbox-x.com/

LICENSE= GPLv2

LIB_DEPENDS= libpng.so:graphics/png

USES= autoreconf iconv sdl
LIB_DEPENDS= libpng.so:graphics/png \
libslirp.so:net/libslirp
BUILD_DEPENDS= ${BUILD_DEPENDS_${ARCH}}
BUILD_DEPENDS_amd64= nasm:devel/nasm
BUILD_DEPENDS_i386= nasm:devel/nasm

USES= autoreconf gettext-runtime gl gnome iconv localbase pkgconfig sdl xorg
USE_GL= gl
USE_GNOME= glib20
USE_SDL= net2 sdl2
USE_XORG= x11 xkbfile xrandr
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --enable-core-inline
USE_SDL= net sdl sound
GNU_CONFIGURE_MANPREFIX= ${PREFIX}/share
CONFIGURE_ARGS= --disable-emscripten --enable-hx-dos --enable-libslirp --enable-mt32 \
--enable-opengl --enable-printer --disable-sdl --enable-sdl2 --enable-x11
INSTALL_TARGET= install_strip

USE_GITHUB= yes
GH_ACCOUNT= joncampbell123

OPTIONS_DEFINE= DOCS
OPTIONS_DEFINE= ALSA DOCS FFMPEG FLUIDSYNTH FREETYPE
OPTIONS_DEFAULT= FFMPEG FLUIDSYNTH
OPTIONS_RADIO= DEBUGGER
OPTIONS_RADIO_DEBUGGER= DEBUGGER_ENABLE DEBUGGER_HEAVY

ALSA_DESC= ALSA midi support
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
ALSA_CONFIGURE_ENABLE= alsa alsa-midi alsatest

DEBUGGER_ENABLE_DESC= Enable internal debugger
DEBUGGER_HEAVY_DESC= Enable internal debugger with extra features

DEBUGGER_ENABLE_CONFIGURE_ON= --enable-debug=yes
DEBUGGER_HEAVY_CONFIGURE_ON= --enable-debug=heavy

FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg
FFMPEG_CONFIGURE_ENABLE= avcodec

FLUIDSYNTH_LIB_DEPENDS= libfluidsynth.so:audio/fluidsynth
FLUIDSYNTH_CONFIGURE_ENABLE= libfluidsynth

FREETYPE_LIB_DEPENDS= libfreetype.so:print/freetype2
FREETYPE_CONFIGURE_ENABLE= freetype

.include <bsd.port.mk>
8 changes: 5 additions & 3 deletions emulators/dosbox-x/distinfo
@@ -1,3 +1,5 @@
TIMESTAMP = 1674249678
SHA256 (joncampbell123-dosbox-x-dosbox-x-v2022.12.26_GH0.tar.gz) = 39fb1ed19ea31e11883aa57655493b3100ac6b328ef59c799b840b9bfdfacb7b
SIZE (joncampbell123-dosbox-x-dosbox-x-v2022.12.26_GH0.tar.gz) = 67886370
TIMESTAMP = 1708108946
SHA256 (joncampbell123-dosbox-x-dosbox-x-v2023.10.06_GH0.tar.gz) = 65f756e29f9c9b898fdbd22b0cb9b3b24c6e3becb5dcda588aa20a3fde9539a5
SIZE (joncampbell123-dosbox-x-dosbox-x-v2023.10.06_GH0.tar.gz) = 119420489
SHA256 (48c13acd1f3048891252cb92087cb6b20c29dc16.patch) = 38896e53c3b594dd31ac0aa9d347acb90ebc6fe199bd84ff7a8acb2913e538b1
SIZE (48c13acd1f3048891252cb92087cb6b20c29dc16.patch) = 1574
14 changes: 14 additions & 0 deletions emulators/dosbox-x/files/patch-configure.ac
@@ -0,0 +1,14 @@
--- configure.ac.orig 2023-10-07 05:52:23 UTC
+++ configure.ac
@@ -656,7 +656,10 @@ esac
dnl TODO: Need GCC to know this code is using C++ lamda functions

dnl LIBRARY TEST: ALSA
-AM_PATH_ALSA(0.9.0, AC_DEFINE(HAVE_ALSA,1,[Define to 1 to use ALSA for MIDI]) , : )
+AC_ARG_ENABLE(alsa,AC_HELP_STRING([--disable-alsa],[Disable ALSA]),,enable_alsa=yes)
+if test x$enable_alsa != xno; then
+ AM_PATH_ALSA(0.9.0, AC_DEFINE(HAVE_ALSA,1,[Define to 1 to use ALSA for MIDI]) , : )
+fi

dnl Some stuff for the icon.
case "$host" in
11 changes: 0 additions & 11 deletions emulators/dosbox-x/files/patch-src_gui_sdlmain.cpp

This file was deleted.

5 changes: 4 additions & 1 deletion emulators/dosbox-x/pkg-descr
@@ -1 +1,4 @@
DOSBox-X is a cross-platform DOS emulator based on the DOSBox project.
DOSBox-X is an open-source cross-platform DOS emulator for running DOS
applications and games based on the DOSBox project.
DOS-based Windows such as Windows 3.x and Windows 9x are officially supported.
Compared to DOSBox, DOSBox-X is much more flexible and provides more features.
4 changes: 3 additions & 1 deletion emulators/dosbox-x/pkg-plist
@@ -1,5 +1,4 @@
bin/dosbox-x
man/man1/dosbox-x.1.gz
share/applications/com.dosbox_x.DOSBox-X.desktop
share/bash-completion/completions/dosbox-x
%%DATADIR%%/CHANGELOG
Expand Down Expand Up @@ -49,9 +48,11 @@ share/bash-completion/completions/dosbox-x
%%DATADIR%%/glshaders/yeetron.glsl
%%DATADIR%%/glshaders/zfast_crt.glsl
%%DATADIR%%/languages/de_DE.lng
%%DATADIR%%/languages/de_pc98.lng
%%DATADIR%%/languages/en_US.lng
%%DATADIR%%/languages/es_ES.lng
%%DATADIR%%/languages/fr_FR.lng
%%DATADIR%%/languages/it_IT.lng
%%DATADIR%%/languages/ja_JP.lng
%%DATADIR%%/languages/ko_KR.lng
%%DATADIR%%/languages/nl_NL.lng
Expand All @@ -62,4 +63,5 @@ share/bash-completion/completions/dosbox-x
%%DATADIR%%/wqy_11pt.bdf
%%DATADIR%%/wqy_12pt.bdf
share/icons/hicolor/scalable/apps/dosbox-x.svg
share/man/man1/dosbox-x.1.gz
share/metainfo/com.dosbox_x.DOSBox-X.metainfo.xml

0 comments on commit be396f0

Please sign in to comment.