diff -urN /usr/ports/emulators/lisaem/Makefile emulators/lisaem/Makefile --- /usr/ports/emulators/lisaem/Makefile 2016-01-13 07:48:45.344415000 +0900 +++ emulators/lisaem/Makefile 2016-01-14 18:00:00.000000000 +0900 @@ -2,37 +2,52 @@ # $FreeBSD: head/emulators/lisaem/Makefile 405891 2016-01-12 16:20:31Z amdmi3 $ PORTNAME= lisaem -DISTVERSION= 1.2.6 -PORTREVISION= 9 +PORTVERSION= 1.2.6.2 CATEGORIES= emulators MASTER_SITES= http://lisaem.sunder.net/downloads/ MAINTAINER= ports@FreeBSD.org COMMENT= Apple Lisa 2 Emulator -BUILD_DEPENDS= pngtopnm:${PORTSDIR}/graphics/netpbm - LICENSE= GPLv2+ +LICENSE_FILE= ${WRKSRC}/COPYING + +BUILD_DEPENDS= pngtopnm:${PORTSDIR}/graphics/netpbm USES= tar:bzip2 USE_WX= 2.8 -WX_UNICODE= yes -DESKTOP_ENTRIES="LisaEm" "" "${DATADIR}/lisa2icon.xpm" "${PORTNAME}" "" "" +DESKTOP_ENTRIES="LisaEm" "" "lisaem" "lisaem" "" "" post-patch: @${REINPLACE_CMD} -e \ - 's|%%PREFIX%%|${PREFIX}|g ; \ - s|%%WX_CONFIG%%|${WX_CONFIG}|g' ${WRKSRC}/build.sh + 's|bash|sh| ; \ + s|==|=| ; \ + s|wx-config|${WX_CONFIG:T}| ; \ + s|/usr/local/|${PREFIX}/| ; \ + s|^function || ; \ + /[Ss]trip/s|^|#|' ${WRKSRC}/build.sh + @${REINPLACE_CMD} -e \ + 's|^inline |static inline |' ${WRKSRC}/lisa/zilog8530.c do-build: ${FIND} ${WRKSRC} -type l -delete - cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ./build.sh build + cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ./build.sh build \ + --without-optimize + +post-build: + ${GREP} -v "^//" ${WRKSRC}/resources/lisa128x85.xpm | \ + ${LOCALBASE}/bin/xpmtoppm | ${LOCALBASE}/bin/pnmtopng \ + > ${WRKDIR}/lisaem.png do-install: - (cd ${WRKSRC}/bin && ${INSTALL_PROGRAM} lisaem ${STAGEDIR}${PREFIX}/bin) + (cd ${WRKSRC}/bin && ${INSTALL_PROGRAM} * \ + ${STAGEDIR}${PREFIX}/bin) + (cd ${WRKDIR} && ${INSTALL_DATA} lisaem.png \ + ${STAGEDIR}${PREFIX}/share/pixmaps) @${MKDIR} ${STAGEDIR}${DATADIR} - (cd ${WRKSRC}/resources && ${INSTALL_DATA} * ${STAGEDIR}${DATADIR}) + (cd ${WRKSRC}/resources && ${INSTALL_DATA} * \ + ${STAGEDIR}${DATADIR}) ${LN} -sf lisaem ${STAGEDIR}${PREFIX}/share/LisaEm .include diff -urN /usr/ports/emulators/lisaem/distinfo emulators/lisaem/distinfo --- /usr/ports/emulators/lisaem/distinfo 2015-08-24 03:50:08.705380000 +0900 +++ emulators/lisaem/distinfo 2016-01-14 18:00:00.000000000 +0900 @@ -1,2 +1,2 @@ -SHA256 (lisaem-1.2.6.tar.bz2) = 162b22c7123303638ad277ef7e0cd649deed46ed6f3c3f8d0400d5eb1d608a4d -SIZE (lisaem-1.2.6.tar.bz2) = 1937896 +SHA256 (lisaem-1.2.6.2.tar.bz2) = e971b529da91a1cd0f61c957f4e66e87746ddb7e336907a004d1ca8d56c64c98 +SIZE (lisaem-1.2.6.2.tar.bz2) = 1916162 diff -urN /usr/ports/emulators/lisaem/files/patch-build.sh emulators/lisaem/files/patch-build.sh --- /usr/ports/emulators/lisaem/files/patch-build.sh 2015-08-24 03:50:08.708183000 +0900 +++ emulators/lisaem/files/patch-build.sh 1970-01-01 09:00:00.000000000 +0900 @@ -1,139 +0,0 @@ ---- ./build.sh.orig 2007-12-11 15:26:12.000000000 +0100 -+++ ./build.sh 2010-07-14 12:13:45.217194209 +0200 -@@ -1,4 +1,4 @@ --#!/bin/bash -+#!/bin/sh - - #### Edit these options for your system - -@@ -44,7 +44,7 @@ - - if [ -z "$CYGWIN" ]; - then -- [ "`uname`" == "CYGWIN_NT-5.0" ] && CYGWIN="`uname`" -+ [ "`uname`" = "CYGWIN_NT-5.0" ] && CYGWIN="`uname`" - fi - - -@@ -154,14 +154,14 @@ - else - - WXVER=0 --case "`wx-config --version`" in -+case "`%%WX_CONFIG%% --version`" in - 2.9*|3*) - echo WARNING: wxWidgets versions higher than 2.8 have not been tested. - echo It might work if they are compiled with backwards compatibility. - ;; - 2.8*) ;; - *) echo Could not find wxWidgets 2.8.0 or higher. -- echo Please install it and ensure that wx-config is in the path -+ echo Please install it and ensure that %%WX_CONFIG%% is in the path - exit 1 - ;; - esac -@@ -169,7 +169,7 @@ - - fi - #$CYGWIN is pre-set. Cache $DARWIN so we don't have to call uname over and over. --[ "`uname`" == "Darwin" ] && DARWIN="Darwin" -+[ "`uname`" = "Darwin" ] && DARWIN="Darwin" - - # not needed on OS X - if [ -z "$DARWIN" ] -@@ -190,8 +190,8 @@ - # purpose of this is to avoid errors on systems that have only unicode. - if [ -z "$CYGWIN" ] - then -- WXREL="`wx-config --release`" -- if [ -n "`wx-config --list | grep $WXREL | grep unicode`" ] -+ WXREL="`%%WX_CONFIG%% --release`" -+ if [ -n "`%%WX_CONFIG%% --list | grep $WXREL | grep unicode`" ] - then - WITHUNICODE="--unicode=yes" - fi -@@ -210,8 +210,8 @@ - PREFIX="/cygdrive/c/Program Files/Sunder.NET/LisaEm" - PREFIXLIB="/cygdrive/c/Program Files/Sunder.NET/LisaEm" - else -- PREFIX="/usr/local/bin" -- PREFIXLIB="/usr/local/share/" -+ PREFIX="%%PREFIX%%/bin" -+ PREFIXLIB="%%PREFIX%%/share/" - fi - fi - fi -@@ -230,11 +230,11 @@ - # if the object is older than the source, it will return true. - ############################################################################## - --function NEEDED() -+NEEDED() - { - if [ -f $2 ] - then -- [ "`ls -tr $2 $1 2>/dev/null| tail -1`" == "$1" ] && return 0 -+ [ "`ls -tr $2 $1 2>/dev/null| tail -1`" = "$1" ] && return 0 - return 1 - fi - return 0 -@@ -379,8 +379,8 @@ - (OS X only, doesn't work properly elsewhere) - --without-rawbitmap Disables Raw bitmap access, uses wxImage::SetRGB instead - (default for non-OS X) ----with-unicode Ask wx-config for a unicode build (might not yet work) ----without-unicode Ask wx-config for a non-unicode build (default) -+--with-unicode Ask %%WX_CONFIG%% for a unicode build (might not yet work) -+--without-unicode Ask %%WX_CONFIG%% for a non-unicode build (default) - - Environment Variables you can pass: - -@@ -462,20 +462,20 @@ - then - # many thanks to David Cecchin for finding the unicode issues fixed below. - -- WXCONFIGFLAGS=`wx-config --cppflags $WITHUNICODE ` -+ WXCONFIGFLAGS=`%%WX_CONFIG%% --cppflags $WITHUNICODE ` - if [ -z "$WXCONFIGFLAGS" ] - then -- echo wx-config has failed, or returned an error. Ensure that it exists in your path. -- which wx-config -+ echo %%WX_CONFIG%% has failed, or returned an error. Ensure that it exists in your path. -+ which %%WX_CONFIG%% - exit 3 - fi -- CFLAGS="-I. -I../include -I../cpu68k -I../wxui $WXCONFIGFLAGS $WITHOPTIMIZE $WITHDEBUG" -- CXXFLAGS="-I. -I../include -I../cpu68k -I../wxui $WXCONFIGFLAGS $WITHOPTIMIZE $WITHDEBUG" -- LINKOPTS="`wx-config $STATIC $WITHUNICODE --libs --linkdeps --cppflags`" -+ CFLAGS="$CFLAGS -I. -I../include -I../cpu68k -I../wxui $WXCONFIGFLAGS" -+ CXXFLAGS="$CXXFLAGS -I. -I../include -I../cpu68k -I../wxui $WXCONFIGFLAGS" -+ LINKOPTS="`%%WX_CONFIG%% $STATIC $WITHUNICODE --libs --linkdeps --cppflags`" - if [ -z "$LINKOPTS" ] - then -- echo wx-config has failed, or returned an error. Ensure that it exists in your path. -- which wx-config -+ echo %%WX_CONFIG%% has failed, or returned an error. Ensure that it exists in your path. -+ which %%WX_CONFIG%% - exit 3 - fi - -@@ -840,7 +840,7 @@ - #echo $CXX $GCCSTATIC $WITHTRACE $WITHDEBUG -o ../bin/lisaem $LIST ../generator/libgenerator.a ../cpu68k/lib68k.a $LINKOPTS $SYSLIBS - if [ -z "$WITHWXUI" ] - then --$CXX $GCCSTATIC $WITHTRACE $WITHDEBUG -o ../bin/lisaem $LIST ../generator/libgenerator.a ../cpu68k/lib68k.a $LINKOPTS $SYSLIBS 2>&1 | head -20 -+$CXX $GCCSTATIC $WITHTRACE $WITHDEBUG -o ../bin/lisaem $LIST ../generator/libgenerator.a ../cpu68k/lib68k.a $LINKOPTS 2>&1 | head -20 - fi - - if [ -f ../bin/lisaem ] -@@ -960,8 +960,8 @@ - then - - echo "Freshly compiled `du -sh lisaem`" -- strip lisaem${EXT} -- echo "Stripped `du -sh lisaem`" -+# strip lisaem${EXT} -+# echo "Stripped `du -sh lisaem`" - - # compress it if upx exists. - if [ -z "$WITHOUTUPX" ]; then diff -urN /usr/ports/emulators/lisaem/files/patch-generator__cpu68k.c emulators/lisaem/files/patch-generator__cpu68k.c --- /usr/ports/emulators/lisaem/files/patch-generator__cpu68k.c 2015-08-24 03:50:08.707252000 +0900 +++ emulators/lisaem/files/patch-generator__cpu68k.c 2016-01-14 18:00:00.000000000 +0900 @@ -1,6 +1,6 @@ ---- generator/cpu68k.c.orig +--- generator/cpu68k.c.orig 2007-12-04 16:57:08 UTC +++ generator/cpu68k.c -@@ -259,7 +259,7 @@ +@@ -259,7 +259,7 @@ int cpu68k_init(void) continue; } } @@ -9,7 +9,7 @@ cpu68k_iibtable[bitmap] = iib; /* set both flag and non-flag versions */ -@@ -285,7 +285,7 @@ +@@ -285,7 +285,7 @@ int cpu68k_init(void) if (j != cpu68k_totalinstr) { @@ -18,7 +18,7 @@ cpu68k_totalinstr, i); } -@@ -904,19 +904,19 @@ +@@ -904,19 +904,19 @@ t_ipc_table *get_ipct(void) else /*---- Nope! We're out of IPCt's, allocate some more. ----*/ { @@ -41,7 +41,7 @@ } // DEBUG_LOG(0,"zzzzzzz ipct land allocated:: %p -to- %p", ipct_mallocs[iipct_mallocs], (void *)(ipct_mallocs[iipct_mallocs]+size_to_get * sizeof(t_ipc_table))); -@@ -1084,8 +1084,8 @@ +@@ -1084,8 +1084,8 @@ t_ipc_table *cpu68k_makeipclist(uint32 p DEBUG_LOG(1000,"Nope - calling get_ipct()"); mmu_trn->table=get_ipct(); // allocate an ipc table for this mmu_t table=mmu_trn->table; @@ -52,7 +52,7 @@ //check_iib(); -@@ -1094,11 +1094,11 @@ +@@ -1094,11 +1094,11 @@ t_ipc_table *cpu68k_makeipclist(uint32 p // ipc points to the MMU translation table entry for this page. ipc = &(table->ipc[((pc>>1) & 0xff)]); DEBUG_LOG(200,"ipc is now %p at pc %06x max %06x",ipc,pc,xpc); @@ -67,7 +67,7 @@ } //check_iib(); -@@ -1106,7 +1106,7 @@ +@@ -1106,7 +1106,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p if ( !ipc) { @@ -76,7 +76,7 @@ } //check_iib(); -@@ -1126,7 +1126,7 @@ +@@ -1126,7 +1126,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p if ( !ipc) { @@ -85,7 +85,7 @@ } //check_iib(); -@@ -1236,8 +1236,8 @@ +@@ -1236,8 +1236,8 @@ t_ipc_table *cpu68k_makeipclist(uint32 p // fflush(buglog); // #endif @@ -96,7 +96,7 @@ //DEBUG_LOG(200,"ipc is %s",(!ipc)?"null":"ok"); -@@ -1283,7 +1283,7 @@ +@@ -1283,7 +1283,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p // grow the list of ipcs if we need to. if (instrs>=ipcs_to_get) { @@ -105,7 +105,7 @@ pc24=pc; } -@@ -1308,7 +1308,7 @@ +@@ -1308,7 +1308,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p table=mmu_trn->table; if (!table) { @@ -114,7 +114,7 @@ //if (pc&1) {DEBUG_LOG(200,"odd pc!"); EXIT(26);} } -@@ -1333,7 +1333,7 @@ +@@ -1333,7 +1333,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p // check_iib(); @@ -123,7 +123,7 @@ //ipc = &(mmu_trn->table->ipc[((pc>>1) & 0xff)]); //myiib=cpu68k_iibtable[opcode]; iib=myiib; // iib = myiib ? myiib : illegaliib; //////cpu68k_ipc(pc, iib, ipc); -@@ -1370,7 +1370,7 @@ +@@ -1370,7 +1370,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p if (instrs == 2) { @@ -132,7 +132,7 @@ DEBUG_LOG(200,"*~*~*~*~*~*~ in 2instrs ipc is now %p at pc %06x max %06x",ipc,pc,xpc); ipc=ipcs[instrs-1-1]; //ipc-- DEBUG_LOG(200,"ipc is now %p at pc %06x max %06x",ipc,pc,xpc); -@@ -1443,7 +1443,7 @@ +@@ -1443,7 +1443,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p DEBUG_LOG(200,"ipc is now %p at pc %06x max %06x ix=%d",ipc,pc,xpc,ix); if ( !ipc) { @@ -141,7 +141,7 @@ } //check_iib(); -@@ -1460,7 +1460,7 @@ +@@ -1460,7 +1460,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p if (!ipc->function) { @@ -150,7 +150,7 @@ // cpu68k_printipc(ipc); } -@@ -1479,7 +1479,7 @@ +@@ -1479,7 +1479,7 @@ t_ipc_table *cpu68k_makeipclist(uint32 p { // check_iib(); ipc=ipcs[ix]; diff -urN /usr/ports/emulators/lisaem/files/patch-generator__reg68k.c emulators/lisaem/files/patch-generator__reg68k.c --- /usr/ports/emulators/lisaem/files/patch-generator__reg68k.c 2015-08-24 03:50:08.720065000 +0900 +++ emulators/lisaem/files/patch-generator__reg68k.c 2016-01-14 18:00:00.000000000 +0900 @@ -1,6 +1,6 @@ ---- generator/reg68k.c.orig +--- generator/reg68k.c.orig 2007-12-04 16:57:08 UTC +++ generator/reg68k.c -@@ -1308,7 +1308,7 @@ +@@ -1308,7 +1308,7 @@ else /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -9,7 +9,7 @@ abort_opcode=0; // clear any addr/bus errors/traps/etc that may have occured. InstructionRegister=ipc->opcode; -@@ -1397,7 +1397,7 @@ +@@ -1397,7 +1397,7 @@ else InstructionRegister=ipc->opcode; abort_opcode=0; if (ipc->function) ipc->function(ipc); @@ -17,3 +17,4 @@ + else { EXITR(277,0,"No ipc function at %d/%08x, even after attempting to get one!\n",context,pc24);} } } // if we have it, execute, else loop is done. :) + diff -urN /usr/ports/emulators/lisaem/pkg-plist emulators/lisaem/pkg-plist --- /usr/ports/emulators/lisaem/pkg-plist 2015-08-24 03:50:08.721025000 +0900 +++ emulators/lisaem/pkg-plist 2016-01-14 18:00:00.000000000 +0900 @@ -1,4 +1,6 @@ +bin/lisadiskinfo bin/lisaem +bin/lisafsh-tool %%DATADIR%%/Info.plist %%DATADIR%%/LisaEm.icns %%DATADIR%%/floppy0.png @@ -27,3 +29,4 @@ %%DATADIR%%/power_on.png %%DATADIR%%/poweroffclk.wav share/LisaEm +share/pixmaps/lisaem.png