[packages/e-uae] - updated to 0.8.29-WIP4 - added format,ucontext,system-libscg patches

qboosh qboosh at pld-linux.org
Wed Jan 6 22:23:56 CET 2021


commit b0de4b1bf66546534a08492ba731a65715536fca
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Wed Jan 6 22:22:40 2021 +0100

    - updated to 0.8.29-WIP4
    - added format,ucontext,system-libscg patches

 e-uae-format.patch        | 50 ++++++++++++++++++++++++++
 e-uae-system-libscg.patch | 26 ++++++++++++++
 e-uae-ucontext.patch      | 29 +++++++++++++++
 e-uae.spec                | 91 ++++++++++++++++++++++++++++-------------------
 4 files changed, 160 insertions(+), 36 deletions(-)
---
diff --git a/e-uae.spec b/e-uae.spec
index ba6c62a..e9b91ce 100644
--- a/e-uae.spec
+++ b/e-uae.spec
@@ -1,24 +1,38 @@
+#
+# Conditional build:
+%bcond_with	capsimage	# use capsimage for .IPF, .RAW and .CTR disk image support
+
 Summary:	Unix Amiga Emulator
 Summary(pl.UTF-8):	Uniksowy emulator Amigi
 Name:		e-uae
 Version:	0.8.29
-%define	_wip	WIP3
-Release:	0.%{_wip}.0.1
-License:	GPL
+%define	subver	WIP4
+Release:	0.%{subver}.0.1
+License:	GPL v2
 Group:		Applications/Emulators
-Source0:	http://www.rcdrummond.net/uae/e-uae-%{version}-%{_wip}/%{name}-%{version}-%{_wip}.tar.bz2
-# Source0-md5:	cae34d41eaef0336d5182155fd194deb
+Source0:	http://www.rcdrummond.net/uae/e-uae-%{version}-%{subver}/%{name}-%{version}-%{subver}.tar.bz2
+# Source0-md5:	cbfd7e3d7a1b323331afbb92ea7ff4f0
 Source1:	uae.desktop
 Source2:	uae.png
+Patch0:		%{name}-format.patch
+Patch1:		%{name}-ucontext.patch
+Patch2:		%{name}-system-libscg.patch
 URL:		http://www.rcdrummond.net/uae/
+BuildRequires:	OpenGL-GLU-devel
 BuildRequires:	SDL-devel >= 1.2.0
-BuildRequires:	SDL_gfx-devel
-BuildRequires:	SDL_sound-devel
 BuildRequires:	alsa-lib-devel
-BuildRequires:	automake
+BuildRequires:	autoconf >= 2.55
+BuildRequires:	automake >= 1:1.7
 BuildRequires:	cdrtools-devel > 2:2.0
 BuildRequires:	gtk+2-devel >= 2.0.0
+%{?with_capsimage:BuildRequires:	libcapsimage-devel}
 BuildRequires:	pkgconfig
+BuildRequires:	xorg-lib-libX11-devel
+BuildRequires:	xorg-lib-libXext-devel
+BuildRequires:	xorg-lib-libXxf86dga-devel
+BuildRequires:	xorg-lib-libXxf86vm-devel
+BuildRequires:	xorg-lib-libxkbfile-devel
+BuildRequires:	zlib-devel
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -60,32 +74,36 @@ platformy inne niż Windows. Ta wersja ma wreszcie nazwę - E-UAE - jako
 że właśnie tak wszyscy ją nazywali. "E" może oznaczać co tylko chcemy.
 Eksperymentalny, ekstremalny, ekscytujący, egalitarny...
 
-Ta wersja używa SDL jako wyjścia audio i wideo.
+Ta wersja używa SDL jako wyjścia dźwięk i obrazu.
 
 %prep
-%setup -q -n %{name}-%{version}-%{_wip}
+%setup -q -n %{name}-%{version}-%{subver}
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
 
 %build
-cp -f /usr/share/automake/config.* .
+%{__aclocal} -I m4
+%{__autoconf}
+%{__autoheader}
+%{__automake}
 CONFOPTS=`cat` << EOF
+	--enable-action-replay
 	--enable-aga
-	--enable-cdtv
-	--enable-cd32
-	--enable-cycle-exact-cpu
-	--enable-compatible-cpu
-	--enable-threads
+	--enable-audio
 	--enable-autoconfig
-	--enable-scsi-device
 	--enable-bsdsock
 	--enable-bsdsock-new
+	--enable-cd32
+	--enable-cdtv
+	--enable-compatible-cpu
+	--enable-cycle-exact-cpu
 	--enable-enforcer
-	--enable-action-replay
-	--enable-ui
-	--enable-audio
 	--enable-fdi
-	--without-caps
-	--with-libscg-includedir=%{_includedir}/schily
-	--with-libscg-libdir=%{_libdir}
+	--enable-scsi-device
+	--enable-threads
+	--enable-ui
+	--with-caps%{!?with_capsimage:=no}
 EOF
 
 %configure \
@@ -94,10 +112,11 @@ EOF
 	--disable-vidmode	\
 	--without-alsa		\
 	--with-sdl		\
-	--with-sdl-sound	\
-	--with-sdl-gfx
-%{__make}
-mv src/uae e-uae-sdl
+	--with-sdl-gfx		\
+	--with-sdl-gl		\
+	--with-sdl-sound
+%{__make} -j1
+%{__mv} src/uae e-uae-sdl
 %{__make} clean
 
 %configure \
@@ -105,24 +124,24 @@ mv src/uae e-uae-sdl
 	--enable-dga		\
 	--enable-vidmode	\
 	--with-alsa		\
-	--with-x		\
 	--without-sdl		\
+	--without-sdl-gfx	\
 	--without-sdl-sound	\
-	--without-sdl-gfx
-%{__make}
-mv src/uae e-uae
+	--with-x
+%{__make} -j1
+%{__mv} src/uae e-uae
 
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{_bindir},%{_desktopdir},%{_pixmapsdir}}
 
-install e-uae* $RPM_BUILD_ROOT%{_bindir}/
+install e-uae* $RPM_BUILD_ROOT%{_bindir}
 sed %{SOURCE1} -e 's/uae/e-uae/' -e 's/UAE/E-UAE/' \
 	> $RPM_BUILD_ROOT%{_desktopdir}/e-uae.desktop
 sed %{SOURCE1} -e 's/uae/e-uae-sdl/' -e 's/UAE/E-UAE SDL/' \
 	> $RPM_BUILD_ROOT%{_desktopdir}/e-uae-sdl.desktop
-install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}/e-uae.png
-install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}/e-uae-sdl.png
+cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}/e-uae.png
+cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}/e-uae-sdl.png
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -130,13 +149,13 @@ rm -rf $RPM_BUILD_ROOT
 %files
 %defattr(644,root,root,755)
 %doc ChangeLog README docs/*
-%attr(755,root,root) %{_bindir}/%{name}
+%attr(755,root,root) %{_bindir}/e-uae
 %{_desktopdir}/e-uae.desktop
 %{_pixmapsdir}/e-uae.png
 
 %files sdl
 %defattr(644,root,root,755)
 %doc ChangeLog README docs/*
-%attr(755,root,root) %{_bindir}/%{name}-sdl
+%attr(755,root,root) %{_bindir}/e-uae-sdl
 %{_desktopdir}/e-uae-sdl.desktop
 %{_pixmapsdir}/e-uae-sdl.png
diff --git a/e-uae-format.patch b/e-uae-format.patch
new file mode 100644
index 0000000..3256668
--- /dev/null
+++ b/e-uae-format.patch
@@ -0,0 +1,50 @@
+--- e-uae-0.8.29-WIP4/src/gui-gtk/gtkui.c.orig	2007-03-12 21:21:17.000000000 +0100
++++ e-uae-0.8.29-WIP4/src/gui-gtk/gtkui.c	2020-12-29 21:50:23.852860714 +0100
+@@ -2244,7 +2244,7 @@
+     if (gui_available)
+ 	do_message_box (NULL, msg, TRUE, TRUE);
+ 
+-    write_log (msg);
++    write_log ("%s", msg);
+ }
+ 
+ void gui_notify_state (int state)
+--- e-uae-0.8.29-WIP4/src/newcpu.c.orig	2007-03-28 03:27:18.000000000 +0200
++++ e-uae-0.8.29-WIP4/src/newcpu.c	2020-12-29 22:35:14.681616576 +0100
+@@ -2075,7 +2075,7 @@
+ 	}
+ 	while (i++ < 5)
+ 	    f_out (f, "     ");
+-	f_out (f, instrname);
++	fputs (instrname, f);
+ 
+ 	if (ccpt != 0) {
+ 	    if (deaddr)
+--- e-uae-0.8.29-WIP4/src/cfgfile.c.orig	2007-03-28 03:39:39.000000000 +0200
++++ e-uae-0.8.29-WIP4/src/cfgfile.c	2020-12-29 22:36:35.887843311 +0100
+@@ -285,11 +285,9 @@
+ void cfgfile_write (FILE *f, const char *format,...)
+ {
+     va_list parms;
+-    char tmp[CONFIG_BLEN];
+ 
+     va_start (parms, format);
+-    vsprintf (tmp, format, parms);
+-    fprintf (f, tmp);
++    vfprintf (f, format, parms);
+     va_end (parms);
+ }
+ 
+--- e-uae-0.8.29-WIP4/src/enforcer.c.orig	2007-02-16 22:44:18.000000000 +0100
++++ e-uae-0.8.29-WIP4/src/enforcer.c	2020-12-29 22:37:12.217646496 +0100
+@@ -334,8 +334,8 @@
+     sprintf (enforcer_buf_ptr, "Name: \"%s\"\n\n", native_task_name);
+     enforcer_buf_ptr += strlen (enforcer_buf_ptr);
+ 
+-    console_out (enforcer_buf);
+-    write_log (enforcer_buf);
++    console_out ("%s", enforcer_buf);
++    write_log ("%s", enforcer_buf);
+ 
+     enforcer_hit = 0;
+     flashscreen = 30;
diff --git a/e-uae-system-libscg.patch b/e-uae-system-libscg.patch
new file mode 100644
index 0000000..5dc2882
--- /dev/null
+++ b/e-uae-system-libscg.patch
@@ -0,0 +1,26 @@
+--- e-uae-0.8.29-WIP4/configure.in.orig	2007-03-28 03:41:28.000000000 +0200
++++ e-uae-0.8.29-WIP4/configure.in	2021-01-06 19:14:51.132202015 +0100
+@@ -1163,8 +1163,6 @@
+         UAE_DEFINES="$UAE_DEFINES -DSCSIEMU"
+         NEED_THREAD_SUPPORT=yes
+         if [[ "$srcdir" != "." ]]; then
+-          AC_CONFIG_LINKS(src/libscg.a:src/libscg.a)
+-          AC_CONFIG_LINKS(src/libschily.a:src/libschily.a)
+ 	  UAE_LIBS="$UAE_LIBS $LIBSCG_LIBS"
+         else
+           UAE_LIBS="$UAE_LIBS -L. $SCGLIBS"
+--- e-uae-0.8.29-WIP4/src/blkdev-libscg.c.orig	2005-09-12 06:09:48.000000000 +0200
++++ e-uae-0.8.29-WIP4/src/blkdev-libscg.c	2021-01-06 21:18:59.528517256 +0100
+@@ -178,9 +178,9 @@
+ 
+ static void print_product (const struct scsi_inquiry *ip)
+ {
+-    write_log ("'%.8s' ",  ip->vendor_info);
+-    write_log ("'%.16s' ", ip->prod_ident);
+-    write_log ("'%.4s' ",  ip->prod_revision);
++    write_log ("'%.8s' ",  ip->inq_vendor_info);
++    write_log ("'%.16s' ", ip->inq_prod_ident);
++    write_log ("'%.4s' ",  ip->inq_prod_revision);
+ 
+     if (ip->type == INQ_ROMD)
+ 	write_log ("CD-ROM");
diff --git a/e-uae-ucontext.patch b/e-uae-ucontext.patch
new file mode 100644
index 0000000..a9070eb
--- /dev/null
+++ b/e-uae-ucontext.patch
@@ -0,0 +1,29 @@
+--- e-uae-0.8.29-WIP4/src/compemu_raw_x86.c.orig	2007-02-27 07:53:22.000000000 +0100
++++ e-uae-0.8.29-WIP4/src/compemu_raw_x86.c	2020-12-29 22:13:57.711867849 +0100
+@@ -2196,16 +2196,16 @@
+ 
+ typedef void *CONTEXT_T;
+ 
+-#define CONTEXT_EIP(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_EIP])
+-#define CONTEXT_EAX(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_EAX])
+-#define CONTEXT_ECX(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_ECX])
+-#define CONTEXT_EDX(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_EDX])
+-#define CONTEXT_EBX(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_EBX])
+-#define CONTEXT_ESP(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_ESP])
+-#define CONTEXT_EBP(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_EBP])
+-#define CONTEXT_ESI(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_ESI])
+-#define CONTEXT_EDI(context)  (((struct ucontext *)context)->uc_mcontext.gregs[REG_EDI])
+-#define CONTEXT_CR2(context)  (((struct ucontext *)context)->uc_mcontext.cr2)
++#define CONTEXT_EIP(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_EIP])
++#define CONTEXT_EAX(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_EAX])
++#define CONTEXT_ECX(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_ECX])
++#define CONTEXT_EDX(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_EDX])
++#define CONTEXT_EBX(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_EBX])
++#define CONTEXT_ESP(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_ESP])
++#define CONTEXT_EBP(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_EBP])
++#define CONTEXT_ESI(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_ESI])
++#define CONTEXT_EDI(context)  (((struct ucontext_t *)context)->uc_mcontext.gregs[REG_EDI])
++#define CONTEXT_CR2(context)  (((struct ucontext_t *)context)->uc_mcontext.cr2)
+ 
+ /*
+  * Try to handle faulted memory access in compiled code
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/e-uae.git/commitdiff/b0de4b1bf66546534a08492ba731a65715536fca



More information about the pld-cvs-commit mailing list