Bug 177042 - [new port] emulators/ucon64
Summary: [new port] emulators/ucon64
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Steven Kreuzer
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-17 04:10 UTC by Nicole Reid
Modified: 2013-07-10 15:50 UTC (History)
0 users

See Also:


Attachments
file.shar (6.98 KB, text/plain)
2013-03-17 04:10 UTC, Nicole Reid
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nicole Reid 2013-03-17 04:10:00 UTC
uCON64 is the video game backup tool and emulator Swiss Army knife program.
It supports almost every system (Consoles, Handheld, and Arcade) with very 
verbose ROM information, ROM and SRAM convertion to various backup tool 
formats, IPS/APS/BSL/PPF patching, bad dump detection via RomCenter DAT files,
and more.

WWW: http://ucon64.sourceforge.net/

Fix: Patch attached with submission follows:
Comment 1 Steven Kreuzer freebsd_committer freebsd_triage 2013-07-09 14:36:46 UTC
Responsible Changed
From-To: freebsd-ports-bugs->skreuzer

I'll take it.
Comment 2 dfilter service freebsd_committer freebsd_triage 2013-07-10 15:42:37 UTC
Author: skreuzer
Date: Wed Jul 10 14:42:21 2013
New Revision: 322700
URL: http://svnweb.freebsd.org/changeset/ports/322700

Log:
  uCON64 is the video game backup tool and emulator Swiss Army knife program.
  It supports almost every system (Consoles, Handheld, and Arcade) with very
  verbose ROM information, ROM and SRAM convertion to various backup tool
  formats, IPS/APS/BSL/PPF patching, bad dump detection via RomCenter DAT
  files, and more.
  
  WWW:    http://ucon64.sourceforge.net/
  
  PR:		ports/177042
  Submitted by:	Nicole Reid <nicole@cooltrainer.org>

Added:
  head/emulators/ucon64/
  head/emulators/ucon64/Makefile   (contents, props changed)
  head/emulators/ucon64/distinfo   (contents, props changed)
  head/emulators/ucon64/files/
  head/emulators/ucon64/files/patch-Makefile.in   (contents, props changed)
  head/emulators/ucon64/files/patch-backup-lynxit.c   (contents, props changed)
  head/emulators/ucon64/files/patch-libdiscimage-misc_z.c   (contents, props changed)
  head/emulators/ucon64/files/patch-libdiscimage-unzip.h   (contents, props changed)
  head/emulators/ucon64/files/patch-misc-archive.c   (contents, props changed)
  head/emulators/ucon64/files/patch-misc-unzip.h   (contents, props changed)
  head/emulators/ucon64/files/patch-ucon64.c   (contents, props changed)
  head/emulators/ucon64/files/patch-ucon64_misc.c   (contents, props changed)
  head/emulators/ucon64/pkg-descr   (contents, props changed)
Modified:
  head/emulators/Makefile

Modified: head/emulators/Makefile
==============================================================================
--- head/emulators/Makefile	Wed Jul 10 14:35:58 2013	(r322699)
+++ head/emulators/Makefile	Wed Jul 10 14:42:21 2013	(r322700)
@@ -156,6 +156,7 @@
     SUBDIR += tpm-emulator
     SUBDIR += tuxnes
     SUBDIR += uae
+    SUBDIR += ucon64
     SUBDIR += vMac
     SUBDIR += vba
     SUBDIR += vboxtool

Added: head/emulators/ucon64/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/Makefile	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,28 @@
+# $FreeBSD$
+
+PORTNAME=	ucon64
+PORTVERSION=	2.0.0
+CATEGORIES=	emulators
+MASTER_SITES=	SF/${PORTNAME:L}/${PORTNAME:L}/${PORTNAME:L}-${PORTVERSION}
+DISTNAME=	${PORTNAME}-${PORTVERSION}-src
+
+MAINTAINER=	root@cooltrainer.org
+COMMENT=	Multipurpose video game ROM image and backup utility
+
+GNU_CONFIGURE=	yes
+USE_GMAKE=	yes
+USE_LDCONFIG=	yes
+WRKSRC=	${WRKDIR}/${PORTNAME}-${PORTVERSION}-src/src
+
+post-patch:
+	@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/ucon64.c
+	@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/ucon64_misc.c
+
+do-install:
+	${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin/${PORTNAME}
+	${INSTALL_PROGRAM} ${WRKSRC}/libdiscmage/discmage.so ${PREFIX}/lib/libdiscmage.so
+
+PLIST_FILES=	bin/ucon64 \
+	lib/libdiscmage.so
+
+.include <bsd.port.mk>

Added: head/emulators/ucon64/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/distinfo	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,2 @@
+SHA256 (ucon64-2.0.0-src.tar.gz) = 62064324a1912387f84ac9d4c521c5d5e7b80f2567e9f61bf0ab3e1d976c0127
+SIZE (ucon64-2.0.0-src.tar.gz) = 1188488

Added: head/emulators/ucon64/files/patch-Makefile.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/files/patch-Makefile.in	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,11 @@
+--- Makefile.in.orig	2013-02-24 19:04:22.959942880 -0800
++++ Makefile.in	2013-02-24 19:04:55.927943650 -0800
+@@ -68,7 +68,7 @@
+ ifneq ($(OSTYPE),beos)
+ ifeq ($(findstring freebsd,$(OSTYPE)),) # false if OSTYPE contains "freebsd"
+ ifeq ($(findstring openbsd,$(OSTYPE)),) # false if OSTYPE contains "openbsd"
+-LDFLAGS+=-ldl
++#LDFLAGS+=-ldl
+ endif
+ endif
+ endif

Added: head/emulators/ucon64/files/patch-backup-lynxit.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/files/patch-backup-lynxit.c	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,20 @@
+--- backup/lynxit.c.orig 2013-02-24 18:40:11.525942823 -0800
++++ backup/lynxit.c	2013-02-24 18:46:25.101942911 -0800
+@@ -561,7 +561,7 @@
+       return FALSE;
+     }
+ 
+-  if (strcmp (header.magic, "LYNX") != 0)
++  if (memcmp (header.magic, "LYNX", sizeof(header.magic)) != 0)
+     {
+       MESSAGE (("ERROR    : %s is not a lynx image\n", filename));
+       fclose (fp);
+@@ -682,7 +682,7 @@
+ #endif
+ 
+   memset (&header, 0, sizeof (st_lnx_header_t));
+-  strcpy (header.magic, MAGIC_STRING);
++  memcpy (header.magic, MAGIC_STRING, sizeof(header.magic));
+   strcpy (header.cartname, cartname);
+   strcpy (header.manufname, manufname);
+   header.page_size_bank0 = cart_analyse (BANK0);

Added: head/emulators/ucon64/files/patch-libdiscimage-misc_z.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/files/patch-libdiscimage-misc_z.c	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,10 @@
+--- libdiscmage/misc_z.c.orig	2013-02-24 18:50:29.788944291 -0800
++++ libdiscmage/misc_z.c	2013-02-24 18:51:00.403942771 -0800
+@@ -27,6 +27,7 @@
+ #include <string.h>
+ #include <errno.h>
+ #include <sys/stat.h>
++#define Z_SOLO
+ #include <zlib.h>
+ #include "misc_z.h"
+ #include "misc.h"

Added: head/emulators/ucon64/files/patch-libdiscimage-unzip.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/files/patch-libdiscimage-unzip.h	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,13 @@
+--- libdiscmage/unzip.h.orig	2013-02-24 18:48:58.073946338 -0800
++++ libdiscmage/unzip.h	2013-02-24 18:50:15.451943149 -0800
+@@ -49,6 +49,10 @@
+ #include "zlib.h"
+ #endif
+ 
++#ifndef OF
++#define OF(x) x
++#endif
++
+ #if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP)
+ /* like the STRICT of WIN32, we define a pointer that cannot be converted
+     from (void*) without cast */

Added: head/emulators/ucon64/files/patch-misc-archive.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/files/patch-misc-archive.c	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,10 @@
+--- misc/archive.c.orig	2013-02-24 18:51:23.157943222 -0800
++++ misc/archive.c	2013-02-24 18:55:00.666943043 -0800
+@@ -27,6 +27,7 @@
+ #include <string.h>
+ #include <errno.h>
+ #include <sys/stat.h>
++#define Z_SOLO
+ #include <zlib.h>
+ #ifdef  HAVE_BYTESWAP_H
+ #include <byteswap.h>

Added: head/emulators/ucon64/files/patch-misc-unzip.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/files/patch-misc-unzip.h	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,13 @@
+--- misc/unzip.h.orig	2013-02-24 18:47:37.112077049 -0800
++++ misc/unzip.h	2013-02-24 18:48:46.040942781 -0800
+@@ -49,6 +49,10 @@
+ #include "zlib.h"
+ #endif
+ 
++#ifndef OF
++#define OF(x) x
++#endif
++
+ #if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP)
+ /* like the STRICT of WIN32, we define a pointer that cannot be converted
+     from (void*) without cast */

Added: head/emulators/ucon64/files/patch-ucon64.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/files/patch-ucon64.c	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,21 @@
+--- ucon64.c.orig	2005-01-06 15:43:44.000000000 -0800
++++ ucon64.c	2013-02-24 23:25:47.094966291 -0800
+@@ -1394,17 +1394,7 @@
+ #ifdef  DLOPEN
+     ucon64.discmage_path;
+ #else
+-#if     defined __MSDOS__
+-    "discmage.dxe";
+-#elif   defined __CYGWIN__ || defined _WIN32
+-    "discmage.dll";
+-#elif   defined __APPLE__                       // Mac OS X actually
+-    "libdiscmage.dylib";
+-#elif   defined __unix__ || defined __BEOS__
+-    "libdiscmage.so";
+-#else
+-    "unknown";
+-#endif
++    "%%PREFIX%%/lib/libdiscmage.so";
+ #endif
+ 
+   if (!ucon64.discmage_enabled)

Added: head/emulators/ucon64/files/patch-ucon64_misc.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/files/patch-ucon64_misc.c	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,11 @@
+--- ucon64_misc.c.orig	2013-02-24 22:48:15.577943937 -0800
++++ ucon64_misc.c	2013-02-24 22:51:28.521008805 -0800
+@@ -1698,7 +1698,7 @@
+ #elif   defined __APPLE__                       // Mac OS X actually
+         "~/.ucon64/discmage.dylib",
+ #elif   defined __unix__ || defined __BEOS__
+-        "~/.ucon64/discmage.so",
++        "%%PREFIX%%/lib/libdiscmage.so",
+ #else
+         "",
+ #endif

Added: head/emulators/ucon64/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/ucon64/pkg-descr	Wed Jul 10 14:42:21 2013	(r322700)
@@ -0,0 +1,7 @@
+uCON64 is the video game backup tool and emulator Swiss Army knife program.
+It supports almost every system (Consoles, Handheld, and Arcade) with very 
+verbose ROM information, ROM and SRAM convertion to various backup tool 
+formats, IPS/APS/BSL/PPF patching, bad dump detection via RomCenter DAT files,
+and more.
+
+WWW: http://ucon64.sourceforge.net/
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 3 Steven Kreuzer freebsd_committer freebsd_triage 2013-07-10 15:42:56 UTC
State Changed
From-To: open->closed

Committed. Thanks!