Re: [ports-gcc] Unbreak emulators/desmume

2019-07-29 Thread Stuart Henderson
On 2019/07/28 15:22, Charlene Wendling wrote:
> On Sun, 28 Jul 2019 09:07:14 +0100
> Stuart Henderson wrote:
> 
> > Please fix the line endings in post-extract so the patch has standard
> > line endings, there's a commented-out example in games/gargoyle.
> 
> Done, thanks for the tip!

Thanks, OK.

> > --
> > Sent from a phone, apologies for poor formatting.
> > 
> > On 28 July 2019 01:49:47 Charlene Wendling 
> > wrote:
> > 
> > >> http://build-failures.rhaalovely.net/powerpc/2019-07-14/emulators/desmume.log
> > >> http://build-failures.rhaalovely.net/sparc64/2019-07-11/emulators/desmume.log
> > >
> > > Since gcc-6 this part of the code requires integer constants, and
> > > later in the build, some additional casting is needed. The diff has
> > > been upstreamed already [0].
> > >
> > > This fixes the build on macppc, i've tested some homebrews without
> > > issues. amd64 is still doing well.
> > >
> > > While here i've moved HOMEPAGE to https.
> > >
> > > The code contains some DOS line endings, so i attach it this time.
> > >
> > > Comments/feedback are welcome!
> > >
> > > Charlène.
> > >
> > >
> > > [0] https://sourceforge.net/p/desmume/bugs/1570/
> > > [1] https://bin.charlenew.xyz/desmume.log
> > 
> > 
> > 
> 
> Index: Makefile
> ===
> RCS file: /cvs/ports/emulators/desmume/Makefile,v
> retrieving revision 1.24
> diff -u -p -u -p -r1.24 Makefile
> --- Makefile  12 Jul 2019 20:46:08 -  1.24
> +++ Makefile  28 Jul 2019 09:46:39 -
> @@ -5,11 +5,11 @@ USE_WXNEEDED =  Yes
>  COMMENT =Nintendo DS emulator
>  
>  DISTNAME =   desmume-0.9.11
> -REVISION =   7
> +REVISION =   8
>  
>  CATEGORIES = emulators
>  
> -HOMEPAGE =   http://desmume.org/
> +HOMEPAGE =   https://desmume.org/
>  
>  MAINTAINER = Anthony J. Bentley 
>  
> @@ -43,5 +43,9 @@ MODULES =   textproc/intltool
>  COMPILER =   base-clang ports-gcc
>  
>  CONFIGURE_STYLE =gnu
> +
> +# Some files needing patches have DOS line endings, removing them.
> +post-extract:
> + @cd ${WRKSRC} && perl -i -pe 's/\r$$//' src/MMU_timing.h
>  
>  .include 
> Index: patches/patch-src_MMU_timing_h
> ===
> RCS file: patches/patch-src_MMU_timing_h
> diff -N patches/patch-src_MMU_timing_h
> --- /dev/null 1 Jan 1970 00:00:00 -
> +++ patches/patch-src_MMU_timing_h28 Jul 2019 09:46:39 -
> @@ -0,0 +1,21 @@
> +$OpenBSD$
> +
> +ports-gcc fix for:
> +error: enumerator value for 'BLOCKMASK' is not an integer constant
> +From:
> +https://sourceforge.net/p/desmume/bugs/1570/
> +
> +Index: src/MMU_timing.h
> +--- src/MMU_timing.h.orig
>  src/MMU_timing.h
> +@@ -155,8 +155,8 @@ class CacheController (private)
> + enum { ASSOCIATIVITY = 1 << ASSOCIATIVESHIFT };
> + enum { BLOCKSIZE = 1 << BLOCKSIZESHIFT };
> + enum { TAGSHIFT = SIZESHIFT - ASSOCIATIVESHIFT };
> +-enum { TAGMASK = (u32)(~0 << TAGSHIFT) };
> +-enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << 
> BLOCKSIZESHIFT) };
> ++enum { TAGMASK = (u32)(~0U << TAGSHIFT) };
> ++enum { BLOCKMASK = ((u32)~0U >> (32 - TAGSHIFT)) & (u32)(~0U << 
> BLOCKSIZESHIFT) };
> + enum { WORDSIZE = sizeof(u32) };
> + enum { WORDSPERBLOCK = (1 << BLOCKSIZESHIFT) / WORDSIZE };
> + enum { DATAPERWORD = WORDSIZE * ASSOCIATIVITY };
> Index: patches/patch-src_ctrlssdl_cpp
> ===
> RCS file: patches/patch-src_ctrlssdl_cpp
> diff -N patches/patch-src_ctrlssdl_cpp
> --- /dev/null 1 Jan 1970 00:00:00 -
> +++ patches/patch-src_ctrlssdl_cpp28 Jul 2019 09:46:39 -
> @@ -0,0 +1,28 @@
> +$OpenBSD$
> +
> +ports-gcc fix for:
> +error: invalid operands of types '__gnu_cxx::__enable_if double>::__type {aka double}' and 'int' to binary 'operator>>'
> +From:
> +https://sourceforge.net/p/desmume/bugs/1570/
> +
> +Index: src/ctrlssdl.cpp
> +--- src/ctrlssdl.cpp.orig
>  src/ctrlssdl.cpp
> +@@ -200,7 +200,7 @@ u16 get_joy_key(int index) {
> +   break;
> + case SDL_JOYAXISMOTION:
> +   /* Dead zone of 50% */
> +-  if( (abs(event.jaxis.value) >> 14) != 0 )
> ++  if( ((u32)abs(event.jaxis.value) >> 14) != 0 )
> + {
> +   key = ((event.jaxis.which & 15) << 12) | JOY_AXIS << 8 | 
> ((event.jaxis.axis & 127) << 1);
> +   if (event.jaxis.value > 0) {
> +@@ -370,7 +370,7 @@ do_process_joystick_events( u16 *keypad, SDL_Event *ev
> +  Note: button constants have a 1bit offset. */
> + case SDL_JOYAXISMOTION:
> +   key_code = ((event->jaxis.which & 15) << 12) | JOY_AXIS << 8 | 
> ((event->jaxis.axis & 127) << 1);
> +-  if( (abs(event->jaxis.value) >> 14) != 0 )
> ++  if( ((u32)abs(event->jaxis.value) >> 14) != 0 )
> + {
> +   if (event->jaxis.value > 0)
> + key_code |= 1;



Re: [ports-gcc] Unbreak emulators/desmume

2019-07-28 Thread Charlene Wendling
On Sun, 28 Jul 2019 09:07:14 +0100
Stuart Henderson wrote:

> Please fix the line endings in post-extract so the patch has standard
> line endings, there's a commented-out example in games/gargoyle.

Done, thanks for the tip!

> --
> Sent from a phone, apologies for poor formatting.
> 
> On 28 July 2019 01:49:47 Charlene Wendling 
> wrote:
> 
> >> http://build-failures.rhaalovely.net/powerpc/2019-07-14/emulators/desmume.log
> >> http://build-failures.rhaalovely.net/sparc64/2019-07-11/emulators/desmume.log
> >
> > Since gcc-6 this part of the code requires integer constants, and
> > later in the build, some additional casting is needed. The diff has
> > been upstreamed already [0].
> >
> > This fixes the build on macppc, i've tested some homebrews without
> > issues. amd64 is still doing well.
> >
> > While here i've moved HOMEPAGE to https.
> >
> > The code contains some DOS line endings, so i attach it this time.
> >
> > Comments/feedback are welcome!
> >
> > Charlène.
> >
> >
> > [0] https://sourceforge.net/p/desmume/bugs/1570/
> > [1] https://bin.charlenew.xyz/desmume.log
> 
> 
> 

Index: Makefile
===
RCS file: /cvs/ports/emulators/desmume/Makefile,v
retrieving revision 1.24
diff -u -p -u -p -r1.24 Makefile
--- Makefile12 Jul 2019 20:46:08 -  1.24
+++ Makefile28 Jul 2019 09:46:39 -
@@ -5,11 +5,11 @@ USE_WXNEEDED =Yes
 COMMENT =  Nintendo DS emulator
 
 DISTNAME = desmume-0.9.11
-REVISION = 7
+REVISION = 8
 
 CATEGORIES =   emulators
 
-HOMEPAGE = http://desmume.org/
+HOMEPAGE = https://desmume.org/
 
 MAINTAINER =   Anthony J. Bentley 
 
@@ -43,5 +43,9 @@ MODULES = textproc/intltool
 COMPILER = base-clang ports-gcc
 
 CONFIGURE_STYLE =  gnu
+
+# Some files needing patches have DOS line endings, removing them.
+post-extract:
+   @cd ${WRKSRC} && perl -i -pe 's/\r$$//' src/MMU_timing.h
 
 .include 
Index: patches/patch-src_MMU_timing_h
===
RCS file: patches/patch-src_MMU_timing_h
diff -N patches/patch-src_MMU_timing_h
--- /dev/null   1 Jan 1970 00:00:00 -
+++ patches/patch-src_MMU_timing_h  28 Jul 2019 09:46:39 -
@@ -0,0 +1,21 @@
+$OpenBSD$
+
+ports-gcc fix for:
+error: enumerator value for 'BLOCKMASK' is not an integer constant
+From:
+https://sourceforge.net/p/desmume/bugs/1570/
+
+Index: src/MMU_timing.h
+--- src/MMU_timing.h.orig
 src/MMU_timing.h
+@@ -155,8 +155,8 @@ class CacheController (private)
+   enum { ASSOCIATIVITY = 1 << ASSOCIATIVESHIFT };
+   enum { BLOCKSIZE = 1 << BLOCKSIZESHIFT };
+   enum { TAGSHIFT = SIZESHIFT - ASSOCIATIVESHIFT };
+-  enum { TAGMASK = (u32)(~0 << TAGSHIFT) };
+-  enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << 
BLOCKSIZESHIFT) };
++  enum { TAGMASK = (u32)(~0U << TAGSHIFT) };
++  enum { BLOCKMASK = ((u32)~0U >> (32 - TAGSHIFT)) & (u32)(~0U << 
BLOCKSIZESHIFT) };
+   enum { WORDSIZE = sizeof(u32) };
+   enum { WORDSPERBLOCK = (1 << BLOCKSIZESHIFT) / WORDSIZE };
+   enum { DATAPERWORD = WORDSIZE * ASSOCIATIVITY };
Index: patches/patch-src_ctrlssdl_cpp
===
RCS file: patches/patch-src_ctrlssdl_cpp
diff -N patches/patch-src_ctrlssdl_cpp
--- /dev/null   1 Jan 1970 00:00:00 -
+++ patches/patch-src_ctrlssdl_cpp  28 Jul 2019 09:46:39 -
@@ -0,0 +1,28 @@
+$OpenBSD$
+
+ports-gcc fix for:
+error: invalid operands of types '__gnu_cxx::__enable_if::__type 
{aka double}' and 'int' to binary 'operator>>'
+From:
+https://sourceforge.net/p/desmume/bugs/1570/
+
+Index: src/ctrlssdl.cpp
+--- src/ctrlssdl.cpp.orig
 src/ctrlssdl.cpp
+@@ -200,7 +200,7 @@ u16 get_joy_key(int index) {
+   break;
+ case SDL_JOYAXISMOTION:
+   /* Dead zone of 50% */
+-  if( (abs(event.jaxis.value) >> 14) != 0 )
++  if( ((u32)abs(event.jaxis.value) >> 14) != 0 )
+ {
+   key = ((event.jaxis.which & 15) << 12) | JOY_AXIS << 8 | 
((event.jaxis.axis & 127) << 1);
+   if (event.jaxis.value > 0) {
+@@ -370,7 +370,7 @@ do_process_joystick_events( u16 *keypad, SDL_Event *ev
+  Note: button constants have a 1bit offset. */
+ case SDL_JOYAXISMOTION:
+   key_code = ((event->jaxis.which & 15) << 12) | JOY_AXIS << 8 | 
((event->jaxis.axis & 127) << 1);
+-  if( (abs(event->jaxis.value) >> 14) != 0 )
++  if( ((u32)abs(event->jaxis.value) >> 14) != 0 )
+ {
+   if (event->jaxis.value > 0)
+ key_code |= 1;



Re: [ports-gcc] Unbreak emulators/desmume

2019-07-28 Thread Stuart Henderson
Please fix the line endings in post-extract so the patch has standard line 
endings, there's a commented-out example in games/gargoyle.


--
Sent from a phone, apologies for poor formatting.

On 28 July 2019 01:49:47 Charlene Wendling  wrote:


http://build-failures.rhaalovely.net/powerpc/2019-07-14/emulators/desmume.log
http://build-failures.rhaalovely.net/sparc64/2019-07-11/emulators/desmume.log


Since gcc-6 this part of the code requires integer constants, and later
in the build, some additional casting is needed. The diff has been
upstreamed already [0].

This fixes the build on macppc, i've tested some homebrews without
issues. amd64 is still doing well.

While here i've moved HOMEPAGE to https.

The code contains some DOS line endings, so i attach it this time.

Comments/feedback are welcome!

Charlène.


[0] https://sourceforge.net/p/desmume/bugs/1570/
[1] https://bin.charlenew.xyz/desmume.log






[ports-gcc] Unbreak emulators/desmume

2019-07-27 Thread Charlene Wendling

> http://build-failures.rhaalovely.net/powerpc/2019-07-14/emulators/desmume.log
> http://build-failures.rhaalovely.net/sparc64/2019-07-11/emulators/desmume.log

Since gcc-6 this part of the code requires integer constants, and later
in the build, some additional casting is needed. The diff has been
upstreamed already [0].

This fixes the build on macppc, i've tested some homebrews without
issues. amd64 is still doing well.

While here i've moved HOMEPAGE to https. 

The code contains some DOS line endings, so i attach it this time. 

Comments/feedback are welcome!

Charlène.


[0] https://sourceforge.net/p/desmume/bugs/1570/
[1] https://bin.charlenew.xyz/desmume.log




desmume.diff
Description: Binary data