mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
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@gentoo.org>
This commit is contained in:
@@ -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
|
||||
}
|
||||
|
||||
20
app-emulation/e-uae/files/e-uae-0.8.29_rc4-no_schily.patch
Normal file
20
app-emulation/e-uae/files/e-uae-0.8.29_rc4-no_schily.patch
Normal file
@@ -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)
|
||||
22
app-emulation/e-uae/files/e-uae-0.8.29_rc4-tinfo.patch
Normal file
22
app-emulation/e-uae/files/e-uae-0.8.29_rc4-tinfo.patch
Normal file
@@ -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
|
||||
Reference in New Issue
Block a user