From: Jakub Bogusz Date: Wed, 6 Jan 2021 21:22:40 +0000 (+0100) Subject: - updated to 0.8.29-WIP4 X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=commitdiff_plain;h=b0de4b1bf66546534a08492ba731a65715536fca;p=packages%2Fe-uae.git - updated to 0.8.29-WIP4 - added format,ucontext,system-libscg patches --- 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 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