[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