commit:     e0635f9883afc9a3053ec2fa2753b063f58f151b
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 22 13:04:40 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Fri Mar 22 13:10:06 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0635f98

app-emulation/e-uae: Fixed build with sys-libs/ncurses[tinfo]

Closes: https://bugs.gentoo.org/527628
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-emulation/e-uae/e-uae-0.8.29_rc4-r3.ebuild     | 104 +++++++++++++--------
 .../e-uae/files/e-uae-0.8.29_rc4-no_schily.patch   |  20 ++++
 .../e-uae/files/e-uae-0.8.29_rc4-tinfo.patch       |  22 +++++
 3 files changed, 105 insertions(+), 41 deletions(-)

diff --git a/app-emulation/e-uae/e-uae-0.8.29_rc4-r3.ebuild 
b/app-emulation/e-uae/e-uae-0.8.29_rc4-r3.ebuild
index 63d99f142b4..27993eabc59 100644
--- a/app-emulation/e-uae/e-uae-0.8.29_rc4-r3.ebuild
+++ b/app-emulation/e-uae/e-uae-0.8.29_rc4-r3.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
 
-inherit flag-o-matic pax-utils
+inherit autotools flag-o-matic pax-utils
 
 DESCRIPTION="The Ubiquitous Amiga Emulator with an emulation core largely 
based on WinUAE"
 HOMEPAGE="http://www.rcdrummond.net/uae/";
@@ -28,92 +28,114 @@ IUSE="X dga ncurses sdl alsa oss sdl-sound capslib"
 
 # Note: opposed to ./configure --help zlib support required! Check
 # src/Makefile.am that includes zfile.c unconditionaly.
-RDEPEND="X? ( x11-libs/libXt
-                        x11-libs/libxkbfile
-                        x11-libs/libXext
-                        x11-misc/xkeyboard-config
-                        dga? ( x11-libs/libXxf86dga
-                                   x11-libs/libXxf86vm )
-                       )
-               !X? ( sdl? ( media-libs/libsdl )
-                         !sdl? ( sys-libs/ncurses:0= ) )
-               alsa? ( media-libs/alsa-lib )
-               !alsa? ( sdl-sound? ( media-libs/sdl-sound ) )
-               capslib? ( >=games-emulation/caps-20060612 )
-               sys-libs/zlib
-               virtual/cdrtools"
+RDEPEND="
+       sys-libs/zlib
+       virtual/cdrtools
+       X? (
+               x11-libs/libXt
+               x11-libs/libxkbfile
+               x11-libs/libXext
+               x11-misc/xkeyboard-config
+               dga? (
+                       x11-libs/libXxf86dga
+                       x11-libs/libXxf86vm
+               )
+       )
+       !X? (
+               sdl? ( media-libs/libsdl )
+               !sdl? ( sys-libs/ncurses:0= )
+       )
+       alsa? ( media-libs/alsa-lib )
+       !alsa? ( sdl-sound? ( media-libs/sdl-sound ) )
+       capslib? ( >=games-emulation/caps-20060612 )
+"
 
 DEPEND="${RDEPEND}
-               X? ( dga? ( x11-base/xorg-proto ) )"
+       X? ( dga? ( x11-base/xorg-proto ) )
+"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-tinfo.patch #527628
+       "${FILESDIR}"/${P}-no_schily.patch
+)
 
 src_prepare() {
        default
        # Fix for high cpu use when compiled with --disable-audio
-       use alsa || use sdl-sound || use oss || eapply 
"${FILESDIR}"/${P}-high-cpu-usage.patch
+       if ! use alsa && ! use sdl-sound && ! use oss ; then
+               eapply "${FILESDIR}"/${P}-high-cpu-usage.patch
+       fi
+       eautoreconf #527628
 }
 
 src_configure() {
        strip-flags
 
-       local myconf
+       local myconf=()
 
        # Sound setup.
        if use alsa; then
                elog "Choosing alsa as sound target to use."
-               myconf="--with-alsa --without-sdl-sound"
+               myconf=( --with-alsa --without-sdl-sound )
        elif use sdl-sound ; then
                if ! use sdl ; then
                        ewarn "sdl-sound is not enabled because sdl USE flag is 
disabled. Leaving"
                        ewarn "sound on oss autodetection."
-                       myconf="--without-alsa --without-sdl-sound"
+                       myconf=( --without-alsa --without-sdl-sound )
                else
                        elog "Choosing sdl-sound as sound target to use."
                        ewarn "E-UAE with the SDL audio back-end doesn't work 
correctly in Linux."
                        ewarn "Better use alsa... You've been warned ;)"
-                       myconf="--without-alsa --with-sdl-sound"
+                       myconf=( --without-alsa --with-sdl-sound )
                fi
        elif use oss ; then
                elog "Choosing oss as sound target to use."
                ewarn "oss will be autodetected. See output of configure."
-               myconf="--without-alsa --without-sdl-sound"
+               myconf=( --without-alsa --without-sdl-sound )
        else
                ewarn "There is no alsa, sdl-sound or oss in USE. Sound target 
disabled!"
-               myconf="--disable-audio"
+               myconf=( --disable-audio )
        fi
 
        # VIDEO setup. X is autodetected (there is no --with-X option).
        if use X ; then
                elog "Using X11 for video output."
                ewarn "Fullscreen mode is not working in X11 currently. Use 
sdl."
-               myconf="$myconf --without-curses --without-sdl-gfx"
+               myconf+=( --without-curses --without-sdl-gfx )
                use dga && ewarn "To use dga you have to run e-uae as root."
-               use dga && myconf="$myconf --enable-dga --enable-vidmode"
+               use dga && myconf+=( --enable-dga --enable-vidmode )
        elif use sdl ; then
                elog "Using sdl for video output."
-               myconf="$myconf --with-sdl --with-sdl-gfx --without-curses"
+               myconf+=( --with-sdl --with-sdl-gfx --without-curses )
        elif use ncurses; then
                elog "Using ncurses for video output."
-               myconf="$myconf --with-curses --without-sdl-gfx"
+               myconf+=( --with-curses --without-sdl-gfx )
        else
                ewarn "There is no X or sdl or ncurses in USE!"
                ewarn "Following upstream falling back on ncurses."
-               myconf="$myconf --with-curses --without-sdl-gfx"
+               myconf+=( --with-curses --without-sdl-gfx )
        fi
 
        # bug #415787
-       myconf="$myconf --disable-ui"
+       myconf+=(
+               --disable-ui
+               $(use_with capslib caps)
+               --with-zlib
 
-       myconf="$myconf $(use_with capslib caps)"
+               # And explicitly state defaults:
+               --enable-aga
 
-       myconf="$myconf --with-zlib"
+               --enable-autoconfig
+               --enable-scsi-device
+               --enable-cdtv
+               --enable-cd32
 
-       # And explicitly state defaults:
-       myconf="$myconf --enable-aga"
-       myconf="$myconf --enable-autoconfig --enable-scsi-device --enable-cdtv 
--enable-cd32"
-       myconf="$myconf --enable-bsdsock"
+               --enable-bsdsock
 
-       econf ${myconf} \
                --with-libscg-includedir="${EPREFIX}"/usr/include/scsilib
+       )
+
+       econf ${myconf[@]}
 }
 
 src_compile() {
@@ -121,15 +143,15 @@ src_compile() {
 }
 
 src_install() {
-       make DESTDIR="${D}" install || die "make install failed"
+       emake DESTDIR="${D}" install
 
        # The emulator needs to be able to create executable heap
        # - doesn't need trampoline emulation though.
-       pax-mark me "${ED}/usr/bin/uae"
+       pax-mark me "${ED%/}/usr/bin/uae"
 
        # Rename it to e-uae
-       mv "${ED}/usr/bin/uae" "${ED}/usr/bin/e-uae"
-       mv "${ED}/usr/bin/readdisk" "${ED}/usr/bin/e-readdisk"
+       mv "${ED%/}"/usr/bin/{,e-}uae || die
+       mv "${ED%/}"/usr/bin/{,e-}readdisk || die
 
        dodoc docs/* README ChangeLog
 }

diff --git a/app-emulation/e-uae/files/e-uae-0.8.29_rc4-no_schily.patch 
b/app-emulation/e-uae/files/e-uae-0.8.29_rc4-no_schily.patch
new file mode 100644
index 00000000000..1a9ebcb408b
--- /dev/null
+++ b/app-emulation/e-uae/files/e-uae-0.8.29_rc4-no_schily.patch
@@ -0,0 +1,20 @@
+configure.in:1134: error: required file 'src/libscg.a' not found
+configure.in:1134: error: required file 'src/libschily.a' not found
+
+--- e-uae-0.8.29-WIP4/configure.in
++++ e-uae-0.8.29-WIP4/configure.in
+@@ -1162,13 +1162,7 @@
+         SCSIOBJS="scsiemul.o blkdev.o blkdev-libscg.o"
+         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"
+-        fi
++      UAE_LIBS="$UAE_LIBS $LIBSCG_LIBS"
+       ],
+       [
+         AC_MSG_RESULT(no)

diff --git a/app-emulation/e-uae/files/e-uae-0.8.29_rc4-tinfo.patch 
b/app-emulation/e-uae/files/e-uae-0.8.29_rc4-tinfo.patch
new file mode 100644
index 00000000000..7f94dd20d8d
--- /dev/null
+++ b/app-emulation/e-uae/files/e-uae-0.8.29_rc4-tinfo.patch
@@ -0,0 +1,22 @@
+--- e-uae-0.8.29-WIP4/configure.in
++++ e-uae-0.8.29-WIP4/configure.in
+@@ -624,6 +624,7 @@
+ AC_PATH_XTRA
+ 
+ dnl Check for ncurses
++AC_CHECK_LIB(tinfo, main, HAVE_TINFO_LIB=yes,  HAVE_TINFO_LIB=no)
+ AC_CHECK_LIB(ncurses, waddch, HAVE_NCURSES_LIB=yes, HAVE_NCURSES_LIB=no)
+ 
+ dnl Check for SDL
+@@ -793,7 +794,10 @@
+ 
+ if [[ "x$WANT_NCURSES" = "xyes" ]]; then
+  if [[ "x$HAVE_NCURSES_LIB" = "xyes" ]]; then
+-  GFX_LIBS="-lncurses"
++  if [[ "x$HAVE_TINFO_LIB" = "xyes" ]]; then
++   GFX_LIBS="-ltinfo"
++  fi
++  GFX_LIBS="$GFX_LIBS -lncurses"
+   GFX_CFLAGS=
+   GFX_CPPFLAGS=
+   GFX_DEP=gfx-curses

Reply via email to