forked from hasufell/hasufell-repository
		
	
		
			
				
	
	
		
			97 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
 | 
						|
# Distributed under the terms of the GNU General Public License v2
 | 
						|
 | 
						|
require qmake
 | 
						|
require scons
 | 
						|
require github [ user=sinamas ]
 | 
						|
 | 
						|
SUMMARY="An accuracy-focused Gameboy / Gameboy Color emulator"
 | 
						|
HOMEPAGE="http://sourceforge.net/projects/gambatte"
 | 
						|
 | 
						|
LICENCES="GPL-2"
 | 
						|
SLOT="0"
 | 
						|
PLATFORMS="~amd64"
 | 
						|
MYOPTIONS="
 | 
						|
    (
 | 
						|
      qt4 [[ description = [ build qt4 frontend with real GUI ] ]]
 | 
						|
      sdl [[ description = [ build sdl fronted, start via cli ] ]]
 | 
						|
    ) [[ number-selected = at-least-one ]]
 | 
						|
"
 | 
						|
 | 
						|
DEPENDENCIES="
 | 
						|
    build+run:
 | 
						|
        sys-libs/zlib
 | 
						|
        qt4? (
 | 
						|
            sys-sound/alsa-lib
 | 
						|
            x11-libs/libX11
 | 
						|
            x11-libs/libXext
 | 
						|
            x11-libs/libXrandr
 | 
						|
            x11-libs/libXv
 | 
						|
            x11-libs/qt:4[opengl]
 | 
						|
        )
 | 
						|
        sdl? ( media-libs/SDL:0[X] )
 | 
						|
"
 | 
						|
 | 
						|
fix_scons() {
 | 
						|
	local i
 | 
						|
	for i; do
 | 
						|
		cat >> $i << END || die
 | 
						|
import os
 | 
						|
import SCons.Util
 | 
						|
 | 
						|
if os.environ.has_key('AR'):
 | 
						|
	env['AR'] = os.environ['AR']
 | 
						|
if os.environ.has_key('RANLIB'):
 | 
						|
	env['RANLIB'] = os.environ['RANLIB']
 | 
						|
if os.environ.has_key('CC'):
 | 
						|
	env['CC'] = os.environ['CC']
 | 
						|
if os.environ.has_key('CFLAGS'):
 | 
						|
	env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CFLAGS'])
 | 
						|
if os.environ.has_key('CXX'):
 | 
						|
	env['CXX'] = os.environ['CXX']
 | 
						|
if os.environ.has_key('CXXFLAGS'):
 | 
						|
	env['CXXFLAGS'] += SCons.Util.CLVar(os.environ['CXXFLAGS'])
 | 
						|
if os.environ.has_key('CPPFLAGS'):
 | 
						|
	env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CPPFLAGS'])
 | 
						|
if os.environ.has_key('LDFLAGS'):
 | 
						|
	env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
 | 
						|
END
 | 
						|
	done
 | 
						|
}
 | 
						|
 | 
						|
src_prepare() {
 | 
						|
	fix_scons {gambatte_sdl,libgambatte}/SConstruct
 | 
						|
}
 | 
						|
 | 
						|
src_configure() {
 | 
						|
	if option qt4; then
 | 
						|
		edo cd "${WORK}"/gambatte_qt
 | 
						|
		eqmake ${PN}_qt.pro
 | 
						|
	fi
 | 
						|
}
 | 
						|
 | 
						|
src_compile() {
 | 
						|
	# build core library
 | 
						|
	edo cd "${WORK}"/libgambatte
 | 
						|
	escons
 | 
						|
 | 
						|
	# build sdl frontend
 | 
						|
	if option sdl; then
 | 
						|
		edo cd "${WORK}"/gambatte_sdl
 | 
						|
		escons
 | 
						|
	fi
 | 
						|
 | 
						|
	# build qt frontend
 | 
						|
	if option qt4; then
 | 
						|
		emake -C "${WORK}"/gambatte_qt
 | 
						|
	fi
 | 
						|
}
 | 
						|
 | 
						|
src_install() {
 | 
						|
	option sdl && dobin gambatte_sdl/gambatte_sdl
 | 
						|
	option qt4 && dobin gambatte_qt/bin/gambatte_qt
 | 
						|
 | 
						|
	nonfatal dodoc README changelog
 | 
						|
}
 | 
						|
 |