1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-18 00:10:04 +00:00

emulators/hatari: Update to 2.5.0

- Submitter becomes maintainer
- Update options
- Bypass broken readline detection by cmake
- Add test target

ChangeLog:	https://www.hatari.tuxfamily.org/news.html
PR:		278590
This commit is contained in:
Laurent 2024-05-02 09:36:13 +01:00 committed by Nuno Teixeira
parent 903a740d76
commit 8580a08f3e
7 changed files with 111 additions and 87 deletions

View File

@ -1,44 +1,57 @@
PORTNAME= hatari
PORTVERSION= 2.3.1
PORTREVISION= 3
PORTVERSION= 2.5.0
CATEGORIES= emulators
MASTER_SITES= http://download.tuxfamily.org/hatari/${PORTVERSION}/
MAINTAINER= ports@FreeBSD.org
MAINTAINER= laurent.chardon@gmail.com
COMMENT= Atari ST emulator
WWW= https://hatari.tuxfamily.org/
LICENSE= GPLv2+
LICENSE_FILE= ${WRKSRC}/gpl.txt
BROKEN_armv6= fails to configure: CMake Error: Generator: execution of make failed
BROKEN_armv6= fails to configure: CMake Error: Generator: execution of make failed
LIB_DEPENDS= libportaudio.so:audio/portaudio \
libpng.so:graphics/png
LIB_DEPENDS= libpng.so:graphics/png \
libudev.so:devel/libudev-devd \
libreadline.so:devel/readline \
libcapstone.so:devel/capstone
USES= cmake desktop-file-utils gnome python readline \
sdl shared-mime-info shebangfix tar:bzip2 xorg
USE_GNOME= gtk30
sdl shared-mime-info shebangfix tar:bzip2 xorg iconv
USE_GNOME= gtk30 pygobject3
USE_XORG= sm ice x11 xext
USE_SDL= sdl2
SHEBANG_FILES= python-ui/*.py tools/*.py \
tools/debugger/*.py tools/hconsole/*.py
CMAKE_ARGS= -DETCDIR:PATH="${PREFIX}/etc" \
-DREADLINE_FOUND:BOOL=ON
CMAKE_ARGS= -DETCDIR:PATH="${PREFIX}/etc"
# -DMANDIR:PATH="share/man/man1"
OPTIONS_DEFINE= DEBUG DOCS SDL2 WINUAE
OPTIONS_DEFINE= DEBUG DOCS DSP TRACE SMALL
OPTIONS_DEFAULT= DOCS DSP TRACE
DEBUG_CFLAGS_OFF= -DNDEBUG
SDL2_DESC= Use SDL2 libraries instead of SDL 1.2
SDL2_USES= iconv
SDL2_USE= sdl=sdl2
SDL2_USE_OFF= sdl=sdl
SDL2_CMAKE_BOOL= ENABLE_SDL2
SDL2_CFLAGS= -I${ICONV_INCLUDE_PATH}
WINUAE_DESC= Build with WinUAE CPU core
WINUAE_CMAKE_BOOL= ENABLE_WINUAE_CPU
DEBUG_DESC= Build with debug information
DOCS_DESC= Install extra documentation
DSP_DESC= DSP 56k emulator for Falcon mode
TRACE_DESC= Tracing messages for debugging
SMALL_DESC= Use less memory at the expense of emulation speed
DSP_CMAKE_BOOL= ENABLE_DSP_EMU
TRACE_CMAKE_BOOL= ENABLE_TRACING
SMALL_CMAKE_BOOL= ENABLE_SMALL_MEM
TEST_TARGET= test
.include <bsd.port.options.mk>
# CMAKE_ARGS CMAKE_BUILD_TYPE is getting overriden
.if ${PORT_OPTIONS:MDEBUG}
CMAKE_BUILD_TYPE=Debug
INSTALL_TARGET=install
.else
CMAKE_BUILD_TYPE=Release
.endif
post-patch:
.for i in doc/*.1 python-ui/*.1 tools/*.1 tools/debugger/*.1 tools/hconsole/*.1 tools/hmsa/*.1

View File

@ -1,3 +1,3 @@
TIMESTAMP = 1645876638
SHA256 (hatari-2.3.1.tar.bz2) = 44a2f62ca995e38d9e0874806956f0b9c3cc84ea89e0169a63849b63cd3b64bd
SIZE (hatari-2.3.1.tar.bz2) = 4334129
TIMESTAMP = 1714071173
SHA256 (hatari-2.5.0.tar.bz2) = d76c22fc3de69fb1bb4af3e8ba500b7e40f5a2a45d07783f24cb7101e53c3457
SIZE (hatari-2.5.0.tar.bz2) = 2820580

View File

@ -1,16 +0,0 @@
--- CMakeLists.txt.orig 2018-03-20 22:30:14 UTC
+++ CMakeLists.txt
@@ -187,7 +187,12 @@
check_include_files(termios.h HAVE_TERMIOS_H)
check_include_files(strings.h HAVE_STRINGS_H)
check_include_files(malloc.h HAVE_MALLOC_H)
-check_include_files(${SDL_INCLUDE_DIR}/SDL_config.h HAVE_SDL_CONFIG_H)
+foreach(_sid ${SDL_INCLUDE_DIR})
+ check_include_files(${_sid}/SDL_config.h HAVE_SDL_CONFIG_H)
+ if(HAVE_SDL_CONFIG_H)
+ break()
+ endif()
+endforeach()
check_include_files(sys/time.h HAVE_SYS_TIME_H)
check_include_files(sys/times.h HAVE_SYS_TIMES_H)
check_include_files(utime.h HAVE_UTIME_H)

View File

@ -0,0 +1,17 @@
--- cmake/FindReadline.cmake.orig 2024-04-30 09:37:41 UTC
+++ cmake/FindReadline.cmake
@@ -19,9 +19,11 @@ if(Readline_FOUND)
if(Readline_FOUND)
set(CMAKE_REQUIRED_LIBRARIES ${READLINE_LIBRARY})
set(CMAKE_REQUIRED_INCLUDES ${READLINE_INCLUDE_DIR})
- check_symbol_exists(rl_filename_completion_function
- "stdio.h;readline.h"
- HAVE_RL_COMPLETION_FUNCTION)
+ # check_symbol_exists faile for readline on FreeBSD. Bypassing
+ set(HAVE_RL_COMPLETION_FUNCTION TRUE)
+ #check_symbol_exists(rl_filename_completion_function
+ # "stdio.h;readline.h"
+ # HAVE_RL_COMPLETION_FUNCTION)
# If linking did not work, we might have to link
# explicitly against libtermcap or libncurses
if(NOT HAVE_RL_COMPLETION_FUNCTION)

View File

@ -1,25 +1,23 @@
--- share/CMakeLists.txt.orig 2018-02-07 18:33:55 UTC
--- share/CMakeLists.txt.orig 2024-04-26 10:53:02 UTC
+++ share/CMakeLists.txt
@@ -5,9 +5,8 @@ foreach(size 32x32 48x48 64x64 128x128 2
install(FILES icons/hicolor/${size}/mimetypes/application-x-st-disk-image.png
@@ -6,8 +6,8 @@ foreach(size 32x32 48x48 64x64 128x128 256x256)
DESTINATION ${ICONDIR}/${size}/mimetypes)
foreach(type vnd.msa vnd.fastcopy x-stx)
- install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink
install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink
- application-x-st-disk-image.png
- \$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${ICONDIR}/${size}/mimetypes/application-${type}-disk-image.png)
+ install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink application-x-st-disk-image.png application-${type}-disk-image.png
+ application-x-st-disk-image.png application-${type}-disk-image.png
+ WORKING_DIRECTORY \$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${ICONDIR}/${size}/mimetypes)
")
endforeach()
endforeach()
@@ -17,9 +16,8 @@ install(FILES icons/hicolor/scalable/app
install(FILES icons/hicolor/scalable/mimetypes/application-x-st-disk-image.svg
@@ -18,8 +18,8 @@ foreach(type vnd.msa vnd.fastcopy x-stx)
DESTINATION ${ICONDIR}/scalable/mimetypes)
foreach(type vnd.msa vnd.fastcopy x-stx)
- install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink
install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink
- application-x-st-disk-image.svg
- \$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${ICONDIR}/scalable/mimetypes/application-${type}-disk-image.svg)
+ install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" -E create_symlink application-x-st-disk-image.svg application-${type}-disk-image.svg
+ application-x-st-disk-image.svg application-${type}-disk-image.svg
+ WORKING_DIRECTORY \$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/${ICONDIR}/scalable/mimetypes)
")
endforeach()

View File

@ -1,13 +1,13 @@
--- tools/atari-hd-image.sh.orig 2022-02-26 12:11:11 UTC
--- tools/atari-hd-image.sh.orig 2024-04-26 10:23:56 UTC
+++ tools/atari-hd-image.sh
@@ -33,8 +33,8 @@ PATH=/sbin:$PATH
@@ -33,8 +33,8 @@ export PATH
export PATH
# check tools
-if [ -z "$(which mkdosfs)" ] || [ -z "$(which python)" ]; then
- echo "ERROR: either mkdosfs or python tool missing!"
-if [ -z "$(which mkdosfs)" ] || [ -z "$(which python3)" ]; then
- echo "ERROR: either mkdosfs or python3 missing!"
+if [ -z "$(which mkdosfs)" ] || [ -z "$(which %%PYTHON_VERSION%%)" ]; then
+ echo "ERROR: either mkdosfs or %%PYTHON_VERSION%% tool missing!"
+ echo "ERROR: either mkdosfs or %%PYTHON_VERSION%% missing!"
exit 1
fi
@ -15,10 +15,10 @@
# - http://en.wikipedia.org/wiki/File_Allocation_Table#Boot_Sector
# For DOS MBR, the values are little endian.
# -----------
-python << EOF
-python3 << EOF
-#!/usr/bin/env python3
+%%PYTHON_VERSION%% << EOF
+#!/usr/bin/env %%PYTHON_VERSION%%3
+#!/usr/bin/env %%PYTHON_VERSION%%
mbr = bytearray(512)
def set_long(idx, value):

View File

@ -7,35 +7,6 @@ bin/hatari_profile
bin/hatariui
bin/hmsa
bin/zip2st
%%DATADIR%%/hatari-icon.bmp
%%DATADIR%%/hatariui/README
%%DATADIR%%/hatariui/TODO
%%DATADIR%%/hatariui/config.py
%%DATADIR%%/hatariui/conftypes.py
%%DATADIR%%/hatariui/debugui.py
%%DATADIR%%/hatariui/dialogs.py
%%DATADIR%%/hatariui/hatari-icon.png
%%DATADIR%%/hatariui/hatari-logo.png
%%DATADIR%%/hatariui/hatari.py
%%DATADIR%%/hatariui/hatariui.py
%%DATADIR%%/hatariui/%%CMAKE_BUILD_TYPE%%-notes.txt
%%DATADIR%%/hatariui/uihelpers.py
%%DATADIR%%/hconsole/example-commands
%%DATADIR%%/hconsole/example-debugger
%%DATADIR%%/hconsole/example.py
%%DATADIR%%/hconsole/hconsole.py
%%DATADIR%%/hconsole/%%CMAKE_BUILD_TYPE%%-notes.txt
%%DATADIR%%/tos.img
share/man/man1/atari-convert-dir.1.gz
share/man/man1/atari-hd-image.1.gz
share/man/man1/gst2ascii.1.gz
share/man/man1/hatari-prg-args.1.gz
share/man/man1/hatari.1.gz
share/man/man1/hatari_profile.1.gz
share/man/man1/hatariui.1.gz
share/man/man1/hconsole.1.gz
share/man/man1/hmsa.1.gz
share/man/man1/zip2st.1.gz
share/applications/hatari.desktop
share/applications/hatariui.desktop
%%PORTDOCS%%%%DOCSDIR%%/CMakeLists.txt
@ -46,6 +17,11 @@ share/applications/hatariui.desktop
%%PORTDOCS%%%%DOCSDIR%%/compatibility.html
%%PORTDOCS%%%%DOCSDIR%%/debugger.html
%%PORTDOCS%%%%DOCSDIR%%/emutos.txt
%%PORTDOCS%%%%DOCSDIR%%/hatari-ui.html
%%PORTDOCS%%%%DOCSDIR%%/hatariui/README
%%PORTDOCS%%%%DOCSDIR%%/hatariui/TODO
%%PORTDOCS%%%%DOCSDIR%%/hatariui/release-notes.txt
%%PORTDOCS%%%%DOCSDIR%%/hconsole/release-notes.txt
%%PORTDOCS%%%%DOCSDIR%%/images/callgraph.png
%%PORTDOCS%%%%DOCSDIR%%/images/callgraph.svg
%%PORTDOCS%%%%DOCSDIR%%/images/cpu.png
@ -54,6 +30,17 @@ share/applications/hatariui.desktop
%%PORTDOCS%%%%DOCSDIR%%/images/fileselector.png
%%PORTDOCS%%%%DOCSDIR%%/images/floppydisks.png
%%PORTDOCS%%%%DOCSDIR%%/images/harddisks.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-0.7.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-0.9.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-debug.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-input.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-noembed.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-peripherals.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-quit.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-setup-edit.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-setup.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-speed.png
%%PORTDOCS%%%%DOCSDIR%%/images/hatari-ui-trace.png
%%PORTDOCS%%%%DOCSDIR%%/images/joystick.png
%%PORTDOCS%%%%DOCSDIR%%/images/kcachegrind.png
%%PORTDOCS%%%%DOCSDIR%%/images/keyboard.png
@ -72,13 +59,28 @@ share/applications/hatariui.desktop
%%PORTDOCS%%%%DOCSDIR%%/manual.html
%%PORTDOCS%%%%DOCSDIR%%/memory-usage.txt
%%PORTDOCS%%%%DOCSDIR%%/midi-linux.txt
%%PORTDOCS%%%%DOCSDIR%%/%%CMAKE_BUILD_TYPE%%-checklist.txt
%%PORTDOCS%%%%DOCSDIR%%/%%CMAKE_BUILD_TYPE%%-notes.txt
%%PORTDOCS%%%%DOCSDIR%%/release-checklist.txt
%%PORTDOCS%%%%DOCSDIR%%/release-notes.txt
%%PORTDOCS%%%%DOCSDIR%%/scsi-driver.txt
%%PORTDOCS%%%%DOCSDIR%%/thanks.txt
%%PORTDOCS%%%%DOCSDIR%%/toc.js
%%PORTDOCS%%%%DOCSDIR%%/todo.txt
%%PORTDOCS%%%%DOCSDIR%%/video-recording.txt
%%DATADIR%%/hatari-icon.bmp
%%DATADIR%%/hatariui/config.py
%%DATADIR%%/hatariui/conftypes.py
%%DATADIR%%/hatariui/debugui.py
%%DATADIR%%/hatariui/dialogs.py
%%DATADIR%%/hatariui/hatari-icon.png
%%DATADIR%%/hatariui/hatari-logo.png
%%DATADIR%%/hatariui/hatari.py
%%DATADIR%%/hatariui/hatariui.py
%%DATADIR%%/hatariui/uihelpers.py
%%DATADIR%%/hconsole/example-commands
%%DATADIR%%/hconsole/example-debugger
%%DATADIR%%/hconsole/example.py
%%DATADIR%%/hconsole/hconsole.py
%%DATADIR%%/tos.img
share/icons/hicolor/128x128/apps/hatari.png
share/icons/hicolor/128x128/mimetypes/application-vnd.fastcopy-disk-image.png
share/icons/hicolor/128x128/mimetypes/application-vnd.msa-disk-image.png
@ -109,4 +111,14 @@ share/icons/hicolor/scalable/mimetypes/application-vnd.fastcopy-disk-image.svg
share/icons/hicolor/scalable/mimetypes/application-vnd.msa-disk-image.svg
share/icons/hicolor/scalable/mimetypes/application-x-st-disk-image.svg
share/icons/hicolor/scalable/mimetypes/application-x-stx-disk-image.svg
share/man/man1/atari-convert-dir.1.gz
share/man/man1/atari-hd-image.1.gz
share/man/man1/gst2ascii.1.gz
share/man/man1/hatari-prg-args.1.gz
share/man/man1/hatari.1.gz
share/man/man1/hatari_profile.1.gz
share/man/man1/hatariui.1.gz
share/man/man1/hconsole.1.gz
share/man/man1/hmsa.1.gz
share/man/man1/zip2st.1.gz
share/mime/packages/hatari.xml