Bug 184779 - [PATCH] emulators/kcemu (fix build issues)
Summary: [PATCH] emulators/kcemu (fix build issues)
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: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-12-15 16:10 UTC by hardy.schumacher
Modified: 2014-02-08 17:41 UTC (History)
0 users

See Also:


Attachments
file.diff (5.21 KB, patch)
2013-12-15 16:10 UTC, hardy.schumacher
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description hardy.schumacher 2013-12-15 16:10:00 UTC
Port emulators/kcemu became broken after update of dependent ports.
This PR is fixing the issues.

Fix: See attachment.

Patch attached with submission follows:
How-To-Repeat: Try to build/rebuild port emulators/kcemu on FreeBSD-9.x with current set of ports tree.
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2013-12-15 16:10:08 UTC
Class Changed
From-To: change-request->maintainer-update

Fix category (submitter is maintainer) (via the GNATS Auto Assign Tool)
Comment 2 dfilter service freebsd_committer freebsd_triage 2014-02-08 15:44:43 UTC
Author: antoine
Date: Sat Feb  8 15:44:34 2014
New Revision: 343354
URL: http://svnweb.freebsd.org/changeset/ports/343354
QAT: https://qat.redports.org/buildarchive/r343354/

Log:
  Unbreak
  While here, add stage support
  
  PR:		ports/184779
  Submitted by:	maintainer

Added:
  head/emulators/kcemu/files/
  head/emulators/kcemu/files/patch-include-ui-gtk-ffmpeg.h   (contents, props changed)
  head/emulators/kcemu/files/patch-src-libdisk-load_22dsk.c   (contents, props changed)
  head/emulators/kcemu/files/patch-src-ui-gtk-ffmpeg.cc   (contents, props changed)
  head/emulators/kcemu/files/patch-src-ui-gtk-plotter.cc   (contents, props changed)
Modified:
  head/emulators/kcemu/Makefile
  head/emulators/kcemu/pkg-plist

Modified: head/emulators/kcemu/Makefile
==============================================================================
--- head/emulators/kcemu/Makefile	Sat Feb  8 15:40:12 2014	(r343353)
+++ head/emulators/kcemu/Makefile	Sat Feb  8 15:44:34 2014	(r343354)
@@ -13,23 +13,20 @@ COMMENT=	KC85 emulator
 
 BUILD_DEPENDS=	pngtopnm:${PORTSDIR}/graphics/netpbm
 LIB_DEPENDS=	libaudiofile.so:${PORTSDIR}/audio/libaudiofile \
-		avformat.1:${PORTSDIR}/multimedia/ffmpeg \
-		dirac_encoder.1:${PORTSDIR}/multimedia/dirac \
-		schroedinger-1.0:${PORTSDIR}/multimedia/schroedinger \
-		sndfile.1:${PORTSDIR}/audio/libsndfile \
-		theora:${PORTSDIR}/multimedia/libtheora \
-		vncserver:${PORTSDIR}/net/libvncserver \
-		xvidcore.4:${PORTSDIR}/multimedia/xvid \
-		z80ex.1:${PORTSDIR}/devel/z80ex
+		libavformat.so:${PORTSDIR}/multimedia/ffmpeg \
+		libdirac_encoder.so:${PORTSDIR}/multimedia/dirac \
+		libschroedinger-1.0.so:${PORTSDIR}/multimedia/schroedinger \
+		libsndfile.so:${PORTSDIR}/audio/libsndfile \
+		libtheora.so:${PORTSDIR}/multimedia/libtheora \
+		libvncserver.so:${PORTSDIR}/net/libvncserver \
+		libxvidcore.so:${PORTSDIR}/multimedia/xvid \
+		libz80ex.so:${PORTSDIR}/devel/z80ex
 
 GNU_CONFIGURE=	yes
 USE_XORG=	xmu
 USE_GNOME=	gtk20
 USES=		gettext pkgconfig
 
-MAN1=		kctape.1 kc2raw.1 kc2img.1 kc2tap.1 tdtodump.1 \
-		kcemu-remote.1 kcemu.1x kc2wav.1
-
 LDFLAGS+=	-L${LOCALBASE}/lib
 WRKSRC=		${WRKDIR}/KCemu-${PORTVERSION}
 
@@ -41,5 +38,4 @@ DESKTOP_ENTRIES="KCemu" "${COMMENT}" \
 		"${LOCALBASE}/share/KCemu/icons/kcemu-icon.png" "kcemu" \
 		"System;Emulator;" "true"
 
-NO_STAGE=	yes
 .include <bsd.port.mk>

Added: head/emulators/kcemu/files/patch-include-ui-gtk-ffmpeg.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/kcemu/files/patch-include-ui-gtk-ffmpeg.h	Sat Feb  8 15:44:34 2014	(r343354)
@@ -0,0 +1,12 @@
+--- include/ui/gtk/ffmpeg.h.orig	2010-03-07 20:50:22.000000000 +0100
++++ include/ui/gtk/ffmpeg.h	2013-12-15 16:45:59.000000000 +0100
+@@ -28,7 +28,9 @@
+ extern "C"
+ {
+ #define __STDC_CONSTANT_MACROS
++#include <libavcodec/avcodec.h>
+ #include <libavformat/avformat.h>
++#include <libavformat/avio.h>
+ }
+ 
+ #include "kc/system.h"

Added: head/emulators/kcemu/files/patch-src-libdisk-load_22dsk.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/kcemu/files/patch-src-libdisk-load_22dsk.c	Sat Feb  8 15:44:34 2014	(r343354)
@@ -0,0 +1,11 @@
+--- src/libdisk/load_22dsk.c.orig	2010-03-07 20:50:22.000000000 +0100
++++ src/libdisk/load_22dsk.c	2013-12-15 14:43:31.000000000 +0100
+@@ -81,7 +81,7 @@
+ 
+ typedef struct {
+   FILE *f;
+-  gzFile *gzf;
++  gzFile gzf;
+   int read_only;
+   int len;
+   struct {

Added: head/emulators/kcemu/files/patch-src-ui-gtk-ffmpeg.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/kcemu/files/patch-src-ui-gtk-ffmpeg.cc	Sat Feb  8 15:44:34 2014	(r343354)
@@ -0,0 +1,78 @@
+--- src/ui/gtk/ffmpeg.cc.orig	2010-03-07 20:50:23.000000000 +0100
++++ src/ui/gtk/ffmpeg.cc	2013-12-15 16:54:09.000000000 +0100
+@@ -48,7 +48,7 @@
+ 
+   av_register_all();
+ 
+-  AVOutputFormat *fmt = guess_format("avi", NULL, "video/x-msvideo");
++  AVOutputFormat *fmt = av_guess_format("avi", NULL, "video/x-msvideo");
+   if (fmt == NULL)
+     return false;
+ 
+@@ -66,7 +66,7 @@
+       return false;
+     }
+   _stream->codec->codec_id = fmt->video_codec;
+-  _stream->codec->codec_type = CODEC_TYPE_VIDEO;
++  _stream->codec->codec_type = AVMEDIA_TYPE_VIDEO;
+   _stream->codec->codec_tag = MKTAG('D', 'X', '5', '0');
+ 
+   _stream->codec->bit_rate = 79000 + 1000 * pow(1.4, quality * 20.0);
+@@ -81,14 +81,8 @@
+   if (_context->oformat->flags & AVFMT_GLOBALHEADER)
+     _stream->codec->flags |= CODEC_FLAG_GLOBAL_HEADER;
+ 
+-  if (av_set_parameters(_context, NULL) < 0)
+-    {
+-      close();
+-      return false;
+-    }
+-
+   AVCodec *codec = avcodec_find_encoder(_stream->codec->codec_id);
+-  if (avcodec_open(_stream->codec, codec) < 0)
++  if (avcodec_open2(_stream->codec, codec, NULL) < 0)
+     {
+       close();
+       return false;
+@@ -119,14 +113,14 @@
+ 
+   avpicture_fill((AVPicture *) _frame, buf, _stream->codec->pix_fmt, width, height);
+ 
+-  if (url_fopen(&_context->pb, filename, URL_WRONLY) < 0)
++  if (avio_open(&_context->pb, filename, AVIO_FLAG_WRITE) < 0)
+     {
+       close();
+       return false;
+     }
+ 
+   //dump_format(_context, 0, filename, 1);
+-  av_write_header(_context);
++  avformat_write_header(_context, NULL);
+   return true;
+ }
+ 
+@@ -171,7 +165,7 @@
+   if (_stream->codec->coded_frame->pts != AV_NOPTS_VALUE)
+     pkt.pts = av_rescale_q(_stream->codec->coded_frame->pts, _stream->codec->time_base, _stream->time_base);
+   if (_stream->codec->coded_frame->key_frame)
+-    pkt.flags |= PKT_FLAG_KEY;
++    pkt.flags |= AV_PKT_FLAG_KEY;
+   pkt.stream_index = _stream->index;
+   pkt.data = _buf;
+   pkt.size = out_size;
+@@ -197,7 +191,7 @@
+       av_freep(&_context->streams[i]->codec);
+       av_freep(&_context->streams[i]);
+     }
+-  url_fclose(_context->pb);
++  avio_close(_context->pb);
+   
+   av_free(_context);
+   
+@@ -207,4 +201,4 @@
+   _buf = NULL;
+ }
+ 
+-#endif /* HAVE_LIBAVFORMAT */
+\ No newline at end of file
++#endif /* HAVE_LIBAVFORMAT */

Added: head/emulators/kcemu/files/patch-src-ui-gtk-plotter.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/kcemu/files/patch-src-ui-gtk-plotter.cc	Sat Feb  8 15:44:34 2014	(r343354)
@@ -0,0 +1,12 @@
+--- src/ui/gtk/plotter.cc.orig	2010-03-07 20:50:22.000000000 +0100
++++ src/ui/gtk/plotter.cc	2013-12-15 14:50:48.000000000 +0100
+@@ -18,8 +18,7 @@
+  */
+ 
+ #include <cairo/cairo.h>
+-#include <glib-2.0/glib/gmain.h>
+-#include <gtk-2.0/gtk/gtkspinbutton.h>
++#include <glib.h>
+ 
+ #include "kc/kc.h"
+ #include "kc/system.h"

Modified: head/emulators/kcemu/pkg-plist
==============================================================================
--- head/emulators/kcemu/pkg-plist	Sat Feb  8 15:40:12 2014	(r343353)
+++ head/emulators/kcemu/pkg-plist	Sat Feb  8 15:44:34 2014	(r343354)
@@ -5,6 +5,14 @@ bin/kc2wav
 bin/kcemu
 bin/kctape
 bin/tdtodump
+man/man1/kc2img.1.gz
+man/man1/kc2raw.1.gz
+man/man1/kc2tap.1.gz
+man/man1/kc2wav.1.gz
+man/man1/kcemu-remote.1.gz
+man/man1/kcemu.1x.gz
+man/man1/kctape.1.gz
+man/man1/tdtodump.1.gz
 share/KCemu/kcemurc
 share/KCemu/asm/autostart/kc853.asm
 share/KCemu/config/a5105.conf
_______________________________________________
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 Antoine Brodin freebsd_committer freebsd_triage 2014-02-08 17:40:39 UTC
State Changed
From-To: open->closed

Patch committed, thanks!