From tkato432@yahoo.com  Sun Jan  5 18:00:39 2014
Return-Path: <tkato432@yahoo.com>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1])
	(using TLSv1 with cipher ADH-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by hub.freebsd.org (Postfix) with ESMTPS id 8E690732
	for <FreeBSD-gnats-submit@FreeBSD.org>; Sun,  5 Jan 2014 18:00:27 +0000 (UTC)
Received: from omta01.auone-net.jp (mail-or0-f67.auone-net.jp [106.187.230.67])
	by mx1.freebsd.org (Postfix) with ESMTP id 38040165C
	for <FreeBSD-gnats-submit@FreeBSD.org>; Sun,  5 Jan 2014 18:00:27 +0000 (UTC)
Received: from coppermine.my.domain (ZT034124.ppp.dion.ne.jp [59.128.34.124])
	by omta01.auone-net.jp (au one net mail) with ESMTP id 28117980018
	for <FreeBSD-gnats-submit@FreeBSD.org>; Mon,  6 Jan 2014 03:00:25 +0900 (JST)
Message-Id: <20140106025428.13d4b825b7011f678774d812@yahoo.com>
Date: Mon, 6 Jan 2014 02:54:28 +0900
From: KATO Tsuguru <tkato432@yahoo.com>
To: FreeBSD-gnats-submit@FreeBSD.org
Subject: emulators/generator: Fix build with clang

>Number:         185508
>Category:       ports
>Synopsis:       emulators/generator: Fix build with clang
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    miwi
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Jan 05 18:10:02 UTC 2014
>Closed-Date:    Fri Feb 07 15:54:50 UTC 2014
>Last-Modified:  Fri Feb 07 15:54:50 UTC 2014
>Originator:     KATO Tsuguru
>Release:        FreeBSD 8.4-RELEASE-p4 i386
>Organization:
>Environment:
>Description:
- Fix build with clang

New file:
files/patch-hdr__registers.h

>How-To-Repeat:
>Fix:

diff -urN /usr/ports/emulators/generator/Makefile emulators/generator/Makefile
--- /usr/ports/emulators/generator/Makefile	2013-11-06 22:06:22.000000000 +0900
+++ emulators/generator/Makefile	2014-01-06 00:00:00.000000000 +0900
@@ -10,29 +10,28 @@
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	SEGA Genesis emulator
 
-LIB_DEPENDS=	jpeg.11:${PORTSDIR}/graphics/jpeg
+LIB_DEPENDS=	libjpeg.so:${PORTSDIR}/graphics/jpeg
 
+OPTIONS_DEFINE=	OPTIMIZED_CFLAGS SDL
+OPTIONS_DEFINE_i386=	RAZE
+RAZE_DESC=	Use RAZE z80 emulation
+SDL_DESC=	Use SDL for audio
+
+USES=		gmake
 USE_GNOME=	gtk12
 USE_SDL=	sdl
-USE_GMAKE=	yes
-
 GNU_CONFIGURE=	yes
-CPPFLAGS+=	-I${LOCALBASE}/include
-LDFLAGS+=	-L${LOCALBASE}/lib
-CONFIGURE_ARGS+=--with-gtk
-
+CONFIGURE_ARGS=	--with-gtk
 MAKE_ARGS=	ACLOCAL="${TRUE}" AUTOCONF="${TRUE}" AUTOMAKE="${TRUE}" \
 		AUTOHEADER="${TRUE}"
 MAKE_JOBS_UNSAFE=	yes
 
-OPTIONS_DEFINE=	OPTIMIZED_CFLAGS RAZE SDL
-RAZE_DESC=	Use RAZE z80 emulation (only for i386)
-SDL_DESC=	Use SDL for audio
+CPPFLAGS+=	-I${LOCALBASE}/include
+LDFLAGS+=	-L${LOCALBASE}/lib
 
 PLIST_FILES=	bin/${PORTNAME}-gtk
 
-NO_STAGE=	yes
-.include <bsd.port.pre.mk>
+.include <bsd.port.options.mk>
 
 .if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
 CONFIGURE_ARGS+=--with-gcc=3
@@ -40,7 +39,7 @@
 CONFIGURE_ARGS+=--without-gcc
 .endif
 
-.if ${PORT_OPTIONS:MRAZE} && ${ARCH} == "i386"
+.if ${PORT_OPTIONS:MRAZE}
 BUILD_DEPENDS+=	nasm:${PORTSDIR}/devel/nasm
 CONFIGURE_ARGS+=--with-raze
 .else
@@ -51,23 +50,15 @@
 CONFIGURE_ARGS+=--with-sdl-audio
 .endif
 
+.include <bsd.port.pre.mk>
+
 post-patch:
 .if ${ARCH} != "amd64" && ${ARCH} != "i386"
 # These architectures do not support "-minline-all-stringops"
-	@${REINPLACE_CMD} -e 's|-minline-all-stringops||g' \
-		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
-.   if ${ARCH} == "alpha"
-# "-ffast-math" does not work on alpha
-	@${REINPLACE_CMD} -e 's|-ffast-math||g' \
-		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
-.   endif
+	@${REINPLACE_CMD} -e \
+		's|-minline-all-stringops||g' ${WRKSRC}/configure
 .endif
-	@${REINPLACE_CMD} -e '/%define %1 @UNDERSCORE@%1 /d' \
-		${WRKSRC}/raze/raze.asm.in
-
-post-install:
-	@${ECHO_CMD}
-	@${CAT} ${PKGMESSAGE}
-	@${ECHO_CMD}
+	@${REINPLACE_CMD} -e \
+		'/%define %1 @UNDERSCORE@%1 /d' ${WRKSRC}/raze/raze.asm.in
 
 .include <bsd.port.post.mk>
diff -urN /usr/ports/emulators/generator/files/patch-hdr__registers.h emulators/generator/files/patch-hdr__registers.h
--- /usr/ports/emulators/generator/files/patch-hdr__registers.h	1970-01-01 09:00:00.000000000 +0900
+++ emulators/generator/files/patch-hdr__registers.h	2014-01-06 00:00:00.000000000 +0900
@@ -0,0 +1,24 @@
+--- hdr/registers.h.orig
++++ hdr/registers.h
+@@ -3,6 +3,7 @@
+    call a C function, then when that C function returns these registers are
+    still what they were before we made the call. */
+ 
++#if defined(__GNUC__) && !defined(__clang__)
+ #ifdef PROCESSOR_ARM
+      register uint32 reg68k_pc asm ("r7");
+      register uint32 *reg68k_regs asm ("r8");
+@@ -17,10 +18,11 @@
+          register uint32 reg68k_pc asm ("%ebx");
+          register uint32 *reg68k_regs asm ("%edi");
+          register t_sr reg68k_sr asm ("%esi");
++#    endif
++#  endif
++#endif
+ #    else
+          extern uint32 reg68k_pc;
+          extern uint32 *reg68k_regs;
+          extern t_sr reg68k_sr;
+-#    endif
+-#  endif
+ #endif
>Release-Note:
>Audit-Trail:

From: KATO Tsuguru <tkato432@yahoo.com>
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/185508: emulators/generator: Fix build with clang
Date: Tue, 21 Jan 2014 02:58:04 +0900

 This is a multi-part message in MIME format.
 
 --Multipart=_Tue__21_Jan_2014_02_58_04_+0900_/zSeaSnqH_CRhONW
 Content-Type: text/plain; charset=US-ASCII
 Content-Transfer-Encoding: 7bit
 
 Remake of the patch against current tree.
 
 --Multipart=_Tue__21_Jan_2014_02_58_04_+0900_/zSeaSnqH_CRhONW
 Content-Type: text/x-diff;
  name="emulators_generator.diff"
 Content-Disposition: attachment;
  filename="emulators_generator.diff"
 Content-Transfer-Encoding: 7bit
 
 diff -urN /usr/ports/emulators/generator/Makefile emulators/generator/Makefile
 --- /usr/ports/emulators/generator/Makefile	2013-11-06 22:06:22.000000000 +0900
 +++ emulators/generator/Makefile	2014-01-21 00:00:00.000000000 +0900
 @@ -10,64 +10,50 @@
  MAINTAINER=	ports@FreeBSD.org
  COMMENT=	SEGA Genesis emulator
  
 -LIB_DEPENDS=	jpeg.11:${PORTSDIR}/graphics/jpeg
 +LICENSE=	GPLv2
  
 +LIB_DEPENDS=	libjpeg.so:${PORTSDIR}/graphics/jpeg
 +
 +USES=		gmake
  USE_GNOME=	gtk12
  USE_SDL=	sdl
 -USE_GMAKE=	yes
 -
  GNU_CONFIGURE=	yes
 -CPPFLAGS+=	-I${LOCALBASE}/include
 -LDFLAGS+=	-L${LOCALBASE}/lib
 -CONFIGURE_ARGS+=--with-gtk
 -
 +CONFIGURE_ARGS=	--with-gtk
  MAKE_ARGS=	ACLOCAL="${TRUE}" AUTOCONF="${TRUE}" AUTOMAKE="${TRUE}" \
  		AUTOHEADER="${TRUE}"
  MAKE_JOBS_UNSAFE=	yes
  
 -OPTIONS_DEFINE=	OPTIMIZED_CFLAGS RAZE SDL
 -RAZE_DESC=	Use RAZE z80 emulation (only for i386)
 -SDL_DESC=	Use SDL for audio
 +CPPFLAGS+=	-I${LOCALBASE}/include
 +LDFLAGS+=	-L${LOCALBASE}/lib
  
  PLIST_FILES=	bin/${PORTNAME}-gtk
  
 -NO_STAGE=	yes
 -.include <bsd.port.pre.mk>
 +OPTIONS_DEFINE=		OPTIMIZED_CFLAGS SDL
 +OPTIONS_DEFINE_i386=	RAZE
  
 -.if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
 -CONFIGURE_ARGS+=--with-gcc=3
 -.else
 -CONFIGURE_ARGS+=--without-gcc
 -.endif
 +OPTIMIZED_CFLAGS_CONFIGURE_ON=	--with-gcc=3
 +OPTIMIZED_CFLAGS_CONFIGURE_OFF=	--without-gcc
 +RAZE_DESC=		Use RAZE z80 emulation
 +RAZE_BUILD_DEPENDS=	nasm:${PORTSDIR}/devel/nasm
 +RAZE_CONFIGURE_ON=	--with-raze
 +SDL_DESC=		Use SDL for audio
 +SDL_CONFIGURE_ON=	--with-sdl-audio
 +
 +.include <bsd.port.options.mk>
  
 -.if ${PORT_OPTIONS:MRAZE} && ${ARCH} == "i386"
 -BUILD_DEPENDS+=	nasm:${PORTSDIR}/devel/nasm
 -CONFIGURE_ARGS+=--with-raze
 -.else
 +.if empty(PORT_OPTIONS:MRAZE)
  CONFIGURE_ARGS+=--with-cmz80
  .endif
  
 -.if ${PORT_OPTIONS:MSDL}
 -CONFIGURE_ARGS+=--with-sdl-audio
 -.endif
 +.include <bsd.port.pre.mk>
  
  post-patch:
  .if ${ARCH} != "amd64" && ${ARCH} != "i386"
  # These architectures do not support "-minline-all-stringops"
 -	@${REINPLACE_CMD} -e 's|-minline-all-stringops||g' \
 -		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
 -.   if ${ARCH} == "alpha"
 -# "-ffast-math" does not work on alpha
 -	@${REINPLACE_CMD} -e 's|-ffast-math||g' \
 -		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
 -.   endif
 +	@${REINPLACE_CMD} -e \
 +		's|-minline-all-stringops||g' ${WRKSRC}/configure
  .endif
 -	@${REINPLACE_CMD} -e '/%define %1 @UNDERSCORE@%1 /d' \
 -		${WRKSRC}/raze/raze.asm.in
 -
 -post-install:
 -	@${ECHO_CMD}
 -	@${CAT} ${PKGMESSAGE}
 -	@${ECHO_CMD}
 +	@${REINPLACE_CMD} -e \
 +		'/%define %1 @UNDERSCORE@%1 /d' ${WRKSRC}/raze/raze.asm.in
  
  .include <bsd.port.post.mk>
 diff -urN /usr/ports/emulators/generator/files/patch-hdr__registers.h emulators/generator/files/patch-hdr__registers.h
 --- /usr/ports/emulators/generator/files/patch-hdr__registers.h	1970-01-01 09:00:00.000000000 +0900
 +++ emulators/generator/files/patch-hdr__registers.h	2014-01-21 00:00:00.000000000 +0900
 @@ -0,0 +1,24 @@
 +--- hdr/registers.h.orig
 ++++ hdr/registers.h
 +@@ -3,6 +3,7 @@
 +    call a C function, then when that C function returns these registers are
 +    still what they were before we made the call. */
 + 
 ++#if defined(__GNUC__) && !defined(__clang__)
 + #ifdef PROCESSOR_ARM
 +      register uint32 reg68k_pc asm ("r7");
 +      register uint32 *reg68k_regs asm ("r8");
 +@@ -17,10 +18,11 @@
 +          register uint32 reg68k_pc asm ("%ebx");
 +          register uint32 *reg68k_regs asm ("%edi");
 +          register t_sr reg68k_sr asm ("%esi");
 ++#    endif
 ++#  endif
 ++#endif
 + #    else
 +          extern uint32 reg68k_pc;
 +          extern uint32 *reg68k_regs;
 +          extern t_sr reg68k_sr;
 +-#    endif
 +-#  endif
 + #endif
 diff -urN /usr/ports/emulators/generator/files/patch-main__reg68k.c emulators/generator/files/patch-main__reg68k.c
 --- /usr/ports/emulators/generator/files/patch-main__reg68k.c	1970-01-01 09:00:00.000000000 +0900
 +++ emulators/generator/files/patch-main__reg68k.c	2014-01-21 00:00:00.000000000 +0900
 @@ -0,0 +1,13 @@
 +--- main/reg68k.c.orig
 ++++ main/reg68k.c
 +@@ -20,8 +20,8 @@
 + 
 + /*** global variables ***/
 + 
 +-#if (!(defined(PROCESSOR_ARM) || defined(PROCESSOR_SPARC) \
 +-       || defined(PROCESSOR_INTEL)))
 ++#if ((!(defined(PROCESSOR_ARM) || defined(PROCESSOR_SPARC) \
 ++       || defined(PROCESSOR_INTEL))) || defined(__clang__))
 + uint32 reg68k_pc;
 + uint32 *reg68k_regs;
 + t_sr reg68k_sr;
 
 --Multipart=_Tue__21_Jan_2014_02_58_04_+0900_/zSeaSnqH_CRhONW--
Responsible-Changed-From-To: freebsd-ports-bugs->miwi 
Responsible-Changed-By: miwi 
Responsible-Changed-When: Thu Jan 23 15:48:27 UTC 2014 
Responsible-Changed-Why:  
I'll take it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=185508 
State-Changed-From-To: open->feedback 
State-Changed-By: miwi 
State-Changed-When: Sat Jan 25 15:40:19 UTC 2014 
State-Changed-Why:  
build fails 8.X amd64 
http://pkgdev.miwibox.org/84amd64-default/2014-01-25_14h25m34s/logs/errors/generator-0.35_12.log 

http://www.freebsd.org/cgi/query-pr.cgi?pr=185508 

From: KATO Tsuguru <tkato432@yahoo.com>
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/185508: emulators/generator: Fix build with clang
Date: Mon, 27 Jan 2014 02:57:06 +0900

 This is a multi-part message in MIME format.
 
 --Multipart=_Mon__27_Jan_2014_02_57_06_+0900_AFWrf1d2cT1a5pZq
 Content-Type: text/plain; charset=US-ASCII
 Content-Transfer-Encoding: 7bit
 
 Here is the corrected patch.
 
 --Multipart=_Mon__27_Jan_2014_02_57_06_+0900_AFWrf1d2cT1a5pZq
 Content-Type: text/x-diff;
  name="emulators_generator.diff"
 Content-Disposition: attachment;
  filename="emulators_generator.diff"
 Content-Transfer-Encoding: 7bit
 
 diff -urN /usr/ports/emulators/generator/Makefile emulators/generator/Makefile
 --- /usr/ports/emulators/generator/Makefile	2014-01-23 03:11:38.000000000 +0900
 +++ emulators/generator/Makefile	2014-01-27 00:00:00.000000000 +0900
 @@ -10,64 +10,50 @@
  MAINTAINER=	ports@FreeBSD.org
  COMMENT=	SEGA Genesis emulator
  
 -LIB_DEPENDS=	jpeg.11:${PORTSDIR}/graphics/jpeg
 +LICENSE=	GPLv2
  
 +LIB_DEPENDS=	libjpeg.so:${PORTSDIR}/graphics/jpeg
 +
 +USES=		gmake
  USE_GNOME=	gtk12
  USE_SDL=	sdl
 -USE_GMAKE=	yes
 -
  GNU_CONFIGURE=	yes
 -CPPFLAGS+=	-I${LOCALBASE}/include
 -LDFLAGS+=	-L${LOCALBASE}/lib
 -CONFIGURE_ARGS+=--with-gtk
 -
 +CONFIGURE_ARGS=	--with-gtk
  MAKE_ARGS=	ACLOCAL="${TRUE}" AUTOCONF="${TRUE}" AUTOMAKE="${TRUE}" \
  		AUTOHEADER="${TRUE}"
  MAKE_JOBS_UNSAFE=	yes
  
 -OPTIONS_DEFINE=	OPTIMIZED_CFLAGS RAZE SDL
 -RAZE_DESC=	Use RAZE z80 emulation (only for i386)
 -SDL_DESC=	Use SDL for audio
 +CPPFLAGS+=	-I${LOCALBASE}/include
 +LDFLAGS+=	-L${LOCALBASE}/lib
  
  PLIST_FILES=	bin/${PORTNAME}-gtk
  
 -NO_STAGE=	yes
 -.include <bsd.port.pre.mk>
 +OPTIONS_DEFINE=		OPTIMIZED_CFLAGS SDL
 +OPTIONS_DEFINE_i386=	RAZE
  
 -.if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
 -CONFIGURE_ARGS+=--with-gcc=3
 -.else
 -CONFIGURE_ARGS+=--without-gcc
 -.endif
 +OPTIMIZED_CFLAGS_CONFIGURE_ON=	--with-gcc=3
 +OPTIMIZED_CFLAGS_CONFIGURE_OFF=	--without-gcc
 +RAZE_DESC=		Use RAZE z80 emulation
 +RAZE_BUILD_DEPENDS=	nasm:${PORTSDIR}/devel/nasm
 +RAZE_CONFIGURE_ON=	--with-raze
 +SDL_DESC=		Use SDL for audio
 +SDL_CONFIGURE_ON=	--with-sdl-audio
 +
 +.include <bsd.port.options.mk>
  
 -.if ${PORT_OPTIONS:MRAZE} && ${ARCH} == "i386"
 -BUILD_DEPENDS+=	nasm:${PORTSDIR}/devel/nasm
 -CONFIGURE_ARGS+=--with-raze
 -.else
 +.if empty(PORT_OPTIONS:MRAZE)
  CONFIGURE_ARGS+=--with-cmz80
  .endif
  
 -.if ${PORT_OPTIONS:MSDL}
 -CONFIGURE_ARGS+=--with-sdl-audio
 -.endif
 +.include <bsd.port.pre.mk>
  
  post-patch:
  .if ${ARCH} != "amd64" && ${ARCH} != "i386"
  # These architectures do not support "-minline-all-stringops"
 -	@${REINPLACE_CMD} -e 's|-minline-all-stringops||g' \
 -		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
 -.   if ${ARCH} == "alpha"
 -# "-ffast-math" does not work on alpha
 -	@${REINPLACE_CMD} -e 's|-ffast-math||g' \
 -		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
 -.   endif
 +	@${REINPLACE_CMD} -e \
 +		's|-minline-all-stringops||g' ${WRKSRC}/configure
  .endif
 -	@${REINPLACE_CMD} -e '/%define %1 @UNDERSCORE@%1 /d' \
 -		${WRKSRC}/raze/raze.asm.in
 -
 -post-install:
 -	@${ECHO_CMD}
 -	@${CAT} ${PKGMESSAGE}
 -	@${ECHO_CMD}
 +	@${REINPLACE_CMD} -e \
 +		'/%define %1 @UNDERSCORE@%1 /d' ${WRKSRC}/raze/raze.asm.in
  
  .include <bsd.port.post.mk>
 diff -urN /usr/ports/emulators/generator/files/patch-hdr__registers.h emulators/generator/files/patch-hdr__registers.h
 --- /usr/ports/emulators/generator/files/patch-hdr__registers.h	1970-01-01 09:00:00.000000000 +0900
 +++ emulators/generator/files/patch-hdr__registers.h	2014-01-27 00:00:00.000000000 +0900
 @@ -0,0 +1,23 @@
 +--- hdr/registers.h.orig
 ++++ hdr/registers.h
 +@@ -3,17 +3,17 @@
 +    call a C function, then when that C function returns these registers are
 +    still what they were before we made the call. */
 + 
 +-#ifdef PROCESSOR_ARM
 ++#if defined(PROCESSOR_ARM) && !defined(__clang__)
 +      register uint32 reg68k_pc asm ("r7");
 +      register uint32 *reg68k_regs asm ("r8");
 +      register t_sr reg68k_sr asm ("r9");
 + #else
 +-#  ifdef PROCESSOR_SPARC
 ++#  if defined(PROCESSOR_SPARC) && !defined(__clang__)
 +        register uint32 reg68k_pc asm ("5");
 +        register uint32 *reg68k_regs asm ("6");
 +        register t_sr reg68k_sr asm ("7");
 + #  else
 +-#    ifdef PROCESSOR_INTEL
 ++#    if defined(PROCESSOR_INTEL) && !defined(__clang__)
 +          register uint32 reg68k_pc asm ("%ebx");
 +          register uint32 *reg68k_regs asm ("%edi");
 +          register t_sr reg68k_sr asm ("%esi");
 diff -urN /usr/ports/emulators/generator/files/patch-main__reg68k.c emulators/generator/files/patch-main__reg68k.c
 --- /usr/ports/emulators/generator/files/patch-main__reg68k.c	1970-01-01 09:00:00.000000000 +0900
 +++ emulators/generator/files/patch-main__reg68k.c	2014-01-27 00:00:00.000000000 +0900
 @@ -0,0 +1,13 @@
 +--- main/reg68k.c.orig
 ++++ main/reg68k.c
 +@@ -20,8 +20,8 @@
 + 
 + /*** global variables ***/
 + 
 +-#if (!(defined(PROCESSOR_ARM) || defined(PROCESSOR_SPARC) \
 +-       || defined(PROCESSOR_INTEL)))
 ++#if ((!(defined(PROCESSOR_ARM) || defined(PROCESSOR_SPARC) \
 ++       || defined(PROCESSOR_INTEL))) || defined(__clang__))
 + uint32 reg68k_pc;
 + uint32 *reg68k_regs;
 + t_sr reg68k_sr;
 
 --Multipart=_Mon__27_Jan_2014_02_57_06_+0900_AFWrf1d2cT1a5pZq--

From: KATO Tsuguru <tkato432@yahoo.com>
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/185508: emulators/generator: Fix build with clang
Date: Mon, 3 Feb 2014 03:18:01 +0900

 This is a multi-part message in MIME format.
 
 --Multipart=_Mon__3_Feb_2014_03_18_01_+0900_fmeyPReLpa4byDFh
 Content-Type: text/plain; charset=US-ASCII
 Content-Transfer-Encoding: 7bit
 
 Remake of the patch against current tree.
 
 --Multipart=_Mon__3_Feb_2014_03_18_01_+0900_fmeyPReLpa4byDFh
 Content-Type: text/x-diff;
  name="emulators_generator.diff"
 Content-Disposition: attachment;
  filename="emulators_generator.diff"
 Content-Transfer-Encoding: 7bit
 
 diff -urN /usr/ports/emulators/generator/Makefile emulators/generator/Makefile
 --- /usr/ports/emulators/generator/Makefile	2014-02-03 02:52:04.000000000 +0900
 +++ emulators/generator/Makefile	2014-02-03 00:00:00.000000000 +0900
 @@ -10,58 +10,50 @@
  MAINTAINER=	ports@FreeBSD.org
  COMMENT=	SEGA Genesis emulator
  
 -LIB_DEPENDS=	jpeg.11:${PORTSDIR}/graphics/jpeg
 +LICENSE=	GPLv2
  
 +LIB_DEPENDS=	libjpeg.so:${PORTSDIR}/graphics/jpeg
 +
 +USES=		gmake
  USE_GNOME=	gtk12
  USE_SDL=	sdl
 -USES=		gmake
 -
  GNU_CONFIGURE=	yes
 -CPPFLAGS+=	-I${LOCALBASE}/include
 -LDFLAGS+=	-L${LOCALBASE}/lib
 -CONFIGURE_ARGS+=--with-gtk
 -
 +CONFIGURE_ARGS=	--with-gtk
  MAKE_ARGS=	ACLOCAL="${TRUE}" AUTOCONF="${TRUE}" AUTOMAKE="${TRUE}" \
  		AUTOHEADER="${TRUE}"
  MAKE_JOBS_UNSAFE=	yes
  
 -OPTIONS_DEFINE=	OPTIMIZED_CFLAGS RAZE SDL
 -RAZE_DESC=	Use RAZE z80 emulation (only for i386)
 -SDL_DESC=	Use SDL for audio
 +CPPFLAGS+=	-I${LOCALBASE}/include
 +LDFLAGS+=	-L${LOCALBASE}/lib
  
  PLIST_FILES=	bin/${PORTNAME}-gtk
  
 -.include <bsd.port.pre.mk>
 +OPTIONS_DEFINE=		OPTIMIZED_CFLAGS SDL
 +OPTIONS_DEFINE_i386=	RAZE
  
 -.if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
 -CONFIGURE_ARGS+=--with-gcc=3
 -.else
 -CONFIGURE_ARGS+=--without-gcc
 -.endif
 +OPTIMIZED_CFLAGS_CONFIGURE_ON=	--with-gcc=3
 +OPTIMIZED_CFLAGS_CONFIGURE_OFF=	--without-gcc
 +RAZE_DESC=		Use RAZE z80 emulation
 +RAZE_BUILD_DEPENDS=	nasm:${PORTSDIR}/devel/nasm
 +RAZE_CONFIGURE_ON=	--with-raze
 +SDL_DESC=		Use SDL for audio
 +SDL_CONFIGURE_ON=	--with-sdl-audio
  
 -.if ${PORT_OPTIONS:MRAZE} && ${ARCH} == "i386"
 -BUILD_DEPENDS+=	nasm:${PORTSDIR}/devel/nasm
 -CONFIGURE_ARGS+=--with-raze
 -.else
 +.include <bsd.port.options.mk>
 +
 +.if empty(PORT_OPTIONS:MRAZE)
  CONFIGURE_ARGS+=--with-cmz80
  .endif
  
 -.if ${PORT_OPTIONS:MSDL}
 -CONFIGURE_ARGS+=--with-sdl-audio
 -.endif
 +.include <bsd.port.pre.mk>
  
  post-patch:
  .if ${ARCH} != "amd64" && ${ARCH} != "i386"
  # These architectures do not support "-minline-all-stringops"
 -	@${REINPLACE_CMD} -e 's|-minline-all-stringops||g' \
 -		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
 -.   if ${ARCH} == "alpha"
 -# "-ffast-math" does not work on alpha
 -	@${REINPLACE_CMD} -e 's|-ffast-math||g' \
 -		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
 -.   endif
 +	@${REINPLACE_CMD} -e \
 +		's|-minline-all-stringops||g' ${WRKSRC}/configure
  .endif
 -	@${REINPLACE_CMD} -e '/%define %1 @UNDERSCORE@%1 /d' \
 -		${WRKSRC}/raze/raze.asm.in
 +	@${REINPLACE_CMD} -e \
 +		'/%define %1 @UNDERSCORE@%1 /d' ${WRKSRC}/raze/raze.asm.in
  
  .include <bsd.port.post.mk>
 diff -urN /usr/ports/emulators/generator/files/patch-hdr__registers.h emulators/generator/files/patch-hdr__registers.h
 --- /usr/ports/emulators/generator/files/patch-hdr__registers.h	1970-01-01 09:00:00.000000000 +0900
 +++ emulators/generator/files/patch-hdr__registers.h	2014-02-03 00:00:00.000000000 +0900
 @@ -0,0 +1,23 @@
 +--- hdr/registers.h.orig
 ++++ hdr/registers.h
 +@@ -3,17 +3,17 @@
 +    call a C function, then when that C function returns these registers are
 +    still what they were before we made the call. */
 + 
 +-#ifdef PROCESSOR_ARM
 ++#if defined(PROCESSOR_ARM) && !defined(__clang__)
 +      register uint32 reg68k_pc asm ("r7");
 +      register uint32 *reg68k_regs asm ("r8");
 +      register t_sr reg68k_sr asm ("r9");
 + #else
 +-#  ifdef PROCESSOR_SPARC
 ++#  if defined(PROCESSOR_SPARC) && !defined(__clang__)
 +        register uint32 reg68k_pc asm ("5");
 +        register uint32 *reg68k_regs asm ("6");
 +        register t_sr reg68k_sr asm ("7");
 + #  else
 +-#    ifdef PROCESSOR_INTEL
 ++#    if defined(PROCESSOR_INTEL) && !defined(__clang__)
 +          register uint32 reg68k_pc asm ("%ebx");
 +          register uint32 *reg68k_regs asm ("%edi");
 +          register t_sr reg68k_sr asm ("%esi");
 diff -urN /usr/ports/emulators/generator/files/patch-main__reg68k.c emulators/generator/files/patch-main__reg68k.c
 --- /usr/ports/emulators/generator/files/patch-main__reg68k.c	1970-01-01 09:00:00.000000000 +0900
 +++ emulators/generator/files/patch-main__reg68k.c	2014-02-03 00:00:00.000000000 +0900
 @@ -0,0 +1,13 @@
 +--- main/reg68k.c.orig
 ++++ main/reg68k.c
 +@@ -20,8 +20,8 @@
 + 
 + /*** global variables ***/
 + 
 +-#if (!(defined(PROCESSOR_ARM) || defined(PROCESSOR_SPARC) \
 +-       || defined(PROCESSOR_INTEL)))
 ++#if ((!(defined(PROCESSOR_ARM) || defined(PROCESSOR_SPARC) \
 ++       || defined(PROCESSOR_INTEL))) || defined(__clang__))
 + uint32 reg68k_pc;
 + uint32 *reg68k_regs;
 + t_sr reg68k_sr;
 
 --Multipart=_Mon__3_Feb_2014_03_18_01_+0900_fmeyPReLpa4byDFh--
State-Changed-From-To: feedback->closed 
State-Changed-By: miwi 
State-Changed-When: Fri Feb 7 15:54:49 UTC 2014 
State-Changed-Why:  
Committed. Thanks! 

http://www.freebsd.org/cgi/query-pr.cgi?pr=185508 
>Unformatted:
