# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 inherit cmake autotools eutils DESCRIPTION="Advanced rhythm game. Designed for both home and arcade use" MY_HASH="caf2f6522eaafb30a3369717fcf59ec437f71f56" HOMEPAGE="http://www.stepmania.com/" SRC_URI="https://github.com/${PN}/${PN}/archive/${MY_HASH}.tar.gz -> ${P}.tar.gz" LICENSE="MIT" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="+alsa +crash-handler debug +gles2 +gpl +gtk +jpeg +mp3 +networking +ogg +wav +xinerama +sdl +xrandr +X bundled-songs bundled-courses lto minimaid parallel-port profiling pulseaudio jack" DEPEND="gtk? ( x11-libs/gtk+:2 ) alsa? ( media-libs/alsa-lib ) mp3? ( media-libs/libmad ) ogg? ( media-libs/libogg media-libs/libvorbis ) pulseaudio? ( media-sound/pulseaudio ) media-libs/libpng jpeg? ( virtual/jpeg ) xinerama? ( x11-libs/libXinerama ) sdl? ( media-libs/libsdl2 ) >=media-video/ffmpeg-4.2.4 media-libs/glew xrandr? ( x11-libs/libXrandr ) X? ( x11-libs/libX11 ) jack? ( virtual/jack ) virtual/opengl" S="${WORKDIR}/${PN}-${MY_HASH}" CMAKE_MAKEFILE_GENERATOR=ninja src_prepare() { einfo 'Removing useless instructions.txt files ...' find . -type f -iname 'instructions.txt' -exec rm -f {} \; einfo 'Removing useless _assets directory ...' rm -fR _assets # Built-in songs and courses if ! use bundled-courses; then einfo 'Removing bundled courses' rm -rf "${S}/Courses/Default" fi if ! use bundled-songs; then einfo 'Removing bundled songs' rm -rf "${S}/Songs/StepMania 5" fi default } src_configure() { mycmakeargs=( -DWITH_FFMPEG=yes -DWITH_SYSTEM_FFMPEG=yes -DWITH_FULL_RELEASE=yes -DWITH_PORTABLE_TOMCRYPT=no -DWITH_ALSA=$(usex alsa) -DWITH_PULSEAUDIO=$(usex pulseaudio) -DWITH_CRASH_HANDLER=$(usex crash-handler) -DWITH_GLES2=$(usex gles2) -DWITH_GPL_LIBS=$(usex gpl) -DWITH_GTK2=$(usex gtk) -DWITH_JPEG=$(usex jpeg) -DWITH_MP3=$(usex mp3) -DWITH_OGG=$(usex ogg) -DWITH_WAV=$(usex wav) -DWITH_XINERAMA=$(usex xinerama) -DWITH_MINIMAID=$(usex minimaid) -DWITH_PARALLEL_PORT=$(usex parallel-port) -DWITH_PROFILING=$(usex profiling) -DWITH_SDL=$(usex sdl) -DWITH_SYSTEM_GLEW=yes -DWITH_SYSTEM_TOMMATH=yes -DWITH_SYSTEM_MAD=yes -DWITH_SYSTEM_ZLIB=yes -DWITH_SYSTEM_JSONCPP=no # dev-libs/jsoncpp is not a valid version -DWITH_SYSTEM_PNG=no # crashes with 1.6 -DWITH_SYSTEM_JPEG=yes -DWITH_SYSTEM_PCRE=yes -DWITH_SYSTEM_OGG=yes -DWITH_NETWORKING=$(usex networking) -DWITH_LTO=$(usex lto) -DWITH_XRANDR=$(usex xrandr) -DWITH_JACK=$(usex jack) -DWITH_X11=$(usex X) ) cmake_src_configure } src_install() { cp "${FILESDIR}/${PN}" "${PN}-script" sed -i -e "s:@LIBDIR@:$(get_libdir):" "${PN}-script" exeinto /usr/bin newexe "${PN}-script" "${PN}" exeinto /usr/$(get_libdir)/${PN} doexe "${PN}" || die "dobin failed" if use gtk; then doexe GtkModule.so || die "doexe GtkModule.so failed" fi insinto /usr/$(get_libdir)/${PN} ! [ -d Announcers ] && mkdir Announcers doins -r Announcers BackgroundEffects BackgroundTransitions \ BGAnimations Characters Courses Data NoteSkins Songs Themes || die "doins failed" if ! use bundled-songs; then keepdir /usr/$(get_libdir)/${PN}/Songs fi if ! use bundled-courses; then keepdir /usr/$(get_libdir)/${PN}/Courses fi dodoc -r Docs/* || die "dodoc failed" newicon "Themes/default/Graphics/Common window icon.png" ${PN}.png make_desktop_entry ${PN} StepMania } # kate: replace-tabs false