[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / emulators / dosbox-x

File: [cvs.NetBSD.org] / pkgsrc / emulators / dosbox-x / Makefile (download)

Revision 1.36, Sun Apr 17 08:39:33 2022 UTC (2 years ago) by nia
Branch: MAIN
Changes since 1.35: +2 -3 lines

dosbox-x: update to 0.83.24
    New in This Version

    1. Notable New Features
      * Support for resizable OpenGL 3Dfx Voodoo window
        The 3Dfx Voodoo window is now resizable when running in OpenGL mode.
        Drag the Voodoo window borders or click the maximize window button
        to adjust the window size. With this you can now play 3Dfx Voodoo
        games in OpenGL mode with a much larger window than before,
        including maximized window, although you cannot switch to
        full-screen in this mode.
      * Support for CuteMouse wheel mouse extension API
        The CuteMouse wheel mouse extension DOS API is now supported so that
        DOS programs that natively support this function (such as DOS
        Navigator 2) can make use of it. The function is enabled when the
        mouse wheel movement conversion is currently disabled (i.e. with
        "mouse_wheel_key = 0" in config file or "Do not convert to arrow
        keys" in "Main" menu => "Mouse wheel movements").
      * VMware mouse support for seamless mouse integration in Windows 3.1
        DOSBox-X now implements basic support for the VMware mouse protocol
        so that when used together with e.g. VMware mouse driver for Windows
        3.1, the mouse will be seamlessly integrated with the host system
        and can enter/exit the DOSBox-X window without having to be captured
        or released. No VMware emulation software needed. Config option
        "vmware" is added (in [dos] section) which allows to disable VMware
        mouse guest integration in DOSBox-X.
      * Improved support for S3 video handling including new chips
        Support for the S3 video handling has been improved in various ways
        in this version, including added S3 Vision964 and Vision968 based on
        existing support for the Vision864/868 chips, revised S3 Trio64 XGA
        line drawing code so that the Windows drivers can better draw
        polygon line segments, and new S3 ViRGE accelerated XGA line drawing
        function so that Windows 3.1/9x can now draw lines with hardware
        acceleration.
      * Improved support for APM power management
        Support for APM BIOS has been notably improved in this version. An
        APM power button has been added, available from both "Main" menu and
        in the mapper. A suspended or standby mode will be emulated when the
        guest calls the APM BIOS to go into either mode, and Windows 98 no
        longer complains about the inability to suspend or go to standby.
      * Improved support for keyboard layouts
        The built-in EGA?.CPX and KEYBOARD.SYS/KEYBRD?.SYS files have been
        upgraded to the latest version from FreeDOS, which has improved the
        keyboard layouts in several ways. The EGA?.CPX files now appear in
        CPI directory of Z drive, which can be also replaced by files
        provided by users. The supported country list has also been
        expanded.
    2. Notable Usability Improvements
      * Improved handling of TTF color schemes
        Handling of TTF color schemes has been improved in several ways. The
        "colors" config setting now accepts a leading "+" character to stay
        the specified color scheme when switching from another output, and
        SETCOLOR command allows a syntax like "SETCOLOR 1 +" to return the
        specified color number to the value as specified by "colors"
        setting. DOSBox-X will also dim the topmost line when the window is
        inactive in full-screen or menuless mode.
      * Allow to mount multiple images files with wildcards
        IMGMOUNT command now accepts wildcards (* or ?) when mounting disk
        or CD images, allowing you to mount all images files matching the
        given pattern, such as IMGMOUNT A disk*.img.
      * Allow to automatically map keyboard layouts to country code
        DOSBox-X will now try to map the keyboard layout to country number
        for different date/time/decimal formats when the country number is
        not specified and cannot be obtained from the host system.
      * Allow to search for FONT.ROM in resources directory for PC-98 system
        For the PC-98 system, DOSBox-X will now search for FONT.ROM in
        resources directory in addition to the working directory, for more
        flexible support of font file locations.
      * Allow to toggle more TTF/CJK options via keyboard shortcuts
        Menu options "CJK: Switch between DBCS/SBCS modes", CJK: Auto-detect
        box-drawing characters", and "Reset color scheme" (in "Video" ->
        "TTF options") are now assignable in Mapper Editor, allowing you to
        toggle such options dynamically via keyboard shortcuts, including
        when the TTF output is not currently active.
      * Allow to toggle logging output dynamically
        Menu option "Disable logging output" has been added to "Debug" menu,
        allowing you to disable or enable logging output at run-time.
        Command-line option "-nolog" is also added which allows to disable
        logging output at start.
    3. Bugfixes and Other Improvements
    There are also many bugfixes and other improvements, including fixes and
    improvements to some existing features (e.g. fixing lockup when printing
    in dBase IV, fixing crash/restart when running Wing Commander with EMS
    memory enabled, FPU enhancements, etc) and ported recent DOSBox SVN
    commits. Please see the full changelogs for more information.

# $NetBSD: Makefile,v 1.36 2022/04/17 08:39:33 nia Exp $

DISTNAME=	dosbox-x-0.83.24
CATEGORIES=	emulators
MASTER_SITES=	${MASTER_SITE_GITHUB:=joncampbell123/}
GITHUB_TAG=	dosbox-x-v${PKGVERSION_NOREV}

MAINTAINER=	nia@NetBSD.org
HOMEPAGE=	https://dosbox-x.com/
COMMENT=	DOSBox fork with enhancements
LICENSE=	gnu-gpl-v2

WRKSRC=		${WRKDIR}/dosbox-x-${GITHUB_TAG}
GNU_CONFIGURE=	yes
USE_TOOLS+=	autoconf autoreconf automake pkg-config
USE_LANGUAGES=	c c++

TOOL_DEPENDS+=	dos2unix-[0-9]*:../../converters/dos2unix

# C++11
GCC_REQD+=	4.7

LIBS.NetBSD+=	-lcompat

CONFIGURE_ARGS+=	--disable-alsatest
CONFIGURE_ARGS+=	--disable-sdl2test
CONFIGURE_ARGS+=	--disable-sdltest
CONFIGURE_ARGS+=	--disable-sdl
CONFIGURE_ARGS+=	--enable-sdl2

.include "../../mk/bsd.prefs.mk"

.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
TOOL_DEPENDS+=		nasm>=2.14:../../devel/nasm
.endif

.if ${MACHINE_ARCH} != "i386" && \
    ${MACHINE_ARCH} != "x86_64" && \
    ${MACHINE_ARCH} != "aarch64" && \
    ${MACHINE_ARCH} != "earmv6hf" && \
    ${MACHINE_ARCH} != "earmv7hf"
CONFIGURE_ARGS+=	--disable-dynamic-core
.else
# LOG: Setting execute permission on the code cache has failed
NOT_PAX_MPROTECT_SAFE+=	bin/dosbox-x
.endif

INSTALLATION_DIRS+=	bin share/dosbox-x
INSTALLATION_DIRS+=	share/applications
INSTALLATION_DIRS+=	share/pixmaps

CHECK_PORTABILITY_SKIP+=	vs/sdl2/build-scripts/*.sh
CHECK_PORTABILITY_SKIP+=	make-flatpak-sdl2.sh
CHECK_PORTABILITY_SKIP+=	make-flatpak.sh
# [[ is used in an developer target that isn't useful for us
CHECK_PORTABILITY_SKIP+=	Makefile.in Makefile.am

BUILDLINK_TRANSFORM+=	rm:-Wno-int-to-void-pointer-cast
BUILDLINK_TRANSFORM+=	rm:-Wno-address-of-packed-member

post-extract:
	dos2unix ${WRKSRC}/include/iconvpp.hpp

pre-configure:
	cd ${WRKSRC} && autoreconf -fi

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/src/dosbox-x ${DESTDIR}${PREFIX}/bin
	${INSTALL_DATA} ${WRKSRC}/contrib/fonts/FREECG98.BMP \
	    ${DESTDIR}${PREFIX}/share/dosbox-x
	${INSTALL_DATA} ${WRKSRC}/contrib/icons/dosbox-x.png \
	    ${DESTDIR}${PREFIX}/share/pixmaps/dosbox-x.png
	${INSTALL_DATA} ${WRKSRC}/contrib/linux/com.dosbox_x.DOSBox-X.desktop \
	    ${DESTDIR}${PREFIX}/share/applications
	${INSTALL_DATA} ${WRKSRC}/CHANGELOG \
	    ${DESTDIR}${PREFIX}/share/dosbox-x
	${INSTALL_DATA} ${WRKSRC}/dosbox-x.reference.conf \
	    ${DESTDIR}${PREFIX}/share/dosbox-x

.include "options.mk"
.include "../../audio/fluidsynth/buildlink3.mk"
.include "../../devel/SDL2/buildlink3.mk"
.include "../../devel/physfs/buildlink3.mk"
.include "../../graphics/png/buildlink3.mk"
.include "../../net/SDL2_net/buildlink3.mk"
.include "../../net/libpcap/buildlink3.mk"
.include "../../net/libslirp/buildlink3.mk"
.include "../../sysutils/desktop-file-utils/desktopdb.mk"
.include "../../mk/curses.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"