# Copyright 1999-2004 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit eutils games DESCRIPTION="Serious Sam -The Second Encounter- is an old school first-person-shooter with droves and droves of enemies." HOMEPAGE="http://www.serioussam.com/" SRC_URI=" \ http://icculus.org/betas/ssam/ssamtse-beta1.sh.bin \ " LICENSE="as-is" SLOT="0" KEYWORDS="-* ~x86" IUSE="" RDEPEND=" \ virtual/libc \ X? ( virtual/x11 ) \ opengl? ( virtual/opengl ) \ " DEPEND=" \ ${RDEPEND} \ X? ( virtual/x11 ) \ opengl? ( virtual/opengl ) \ media-libs/libsdl \ app-arch/tar \ app-arch/gzip \ " S=${WORKDIR} # Convenience vars ssam_pkg_installer="ssamtse-beta1.sh.bin" ssam_pkg_installer_ea="ssamtse-beta1-embedded-archive.tar" # Embedded archive #------------------------------------------------------------------------------- function pkg_setup() { #--- # License agreement check_license # Check for CD cdrom_get_cds Install/ # FIXME: What is this for? games_pkg_setup #--- } #------------------------------------------------------------------------------- function src_unpack() { #--- # Extract all embedded archives einfo "Extracting all embedded archives from fetched packages." einfo "\to Processing ${ssam_pkg_installer}..." && \ tail -n +266 ${DISTDIR}/${ssam_pkg_installer} > ${S}/${ssam_pkg_installer_ea} \ || die "Failed: Extracting all embedded archives from fetched packages." #--- } #------------------------------------------------------------------------------- function src_install() { local dir=${GAMES_PREFIX_OPT}/${PN} local Ddir=${D}/${dir} #--- # Create directory dodir ${dir} # 1. Copy cdrom mirror to destation directory einfo "Copying CDROM /Install/ image." cp -faxu ${CDROM_ROOT}/* ${Ddir} \ || die "Failed: Copying CDROM /Install/ image." # 2a. Extract and install ${ssam_pkg_installer_ea} einfo "Extracting and installing from sub-archive ${ssam_pkg_installer_ea}" mkdir ${T}/dir.${ssam_pkg_installer_ea} 2>&1 cd ${T}/dir.${ssam_pkg_installer_ea} && \ tar -xf ${S}/${ssam_pkg_installer_ea} \ || die "Failed: Extracting and installing from archive ${ssam_pkg_installer_ea}" # 2b. Extract and install bins.tar.bz2 einfo "Extracting and installing from sub-archive bins.tar.bz2" mkdir ${T}/dir.${ssam_pkg_installer_ea}/dir.bins.tar.bz2 2>&1 cd ${T}/dir.${ssam_pkg_installer_ea}/dir.bins.tar.bz2 && \ tar -jxf ${T}/dir.${ssam_pkg_installer_ea}/bins.tar.bz2 && \ cp -faxu * ${Ddir} \ || die "Failed: Extracting and installing from sub-archive bins.tar.bz2" # 2c. Extract and install files from setupstuff.tar.gz einfo "Extracting and installing from sub-archive setupstuff.tar.gz" mkdir ${T}/dir.${ssam_pkg_installer_ea}/dir.setupstuff.tar.gz 2>&1 cd ${T}/dir.${ssam_pkg_installer_ea}/dir.setupstuff.tar.gz && \ tar -zxf ${T}/dir.${ssam_pkg_installer_ea}/setupstuff.tar.gz && \ cp -faxu bin/ssamtse Data Levels ModExt.txt README.linux ssam.xpm ${Ddir} \ || die "Failed: Extracting and installing from sub-archive setupstuff.tar.gz" # 6. Create symlinks for binaries einfo "Creating symlinks for binaries." dodir ${GAMES_BINDIR} dosym ${dir}/ssamtse ${GAMES_BINDIR}/ssamtse chown root:games ${GAMES_BINDIR}/ssamtse # 7. From games-fps/unreal-tournament/unreal-tournament-451: # now, since these files are coming off a cd, the times/sizes/md5sums wont # be different ... that means portage will try to unmerge some files (!) # we run touch on ${D} so as to make sure portage doesnt do any such thing # # M.J.G./04: This apparently fixes ebuild's unmerge function NOT properly # unmerging all files find ${Ddir} -exec touch '{}' \; # 8. Ensure all of our files are chown'd root:games find ${Ddir} -exec chown root:games '{}' \; #--- } #------------------------------------------------------------------------------- function pkg_postinst() { #--- # FIXME: What is this for? games_pkg_postinst # Information for the user einfo "You can run the game by executing:" einfo "\to ${GAMES_BINDIR}/ssamtse" #--- } #-------------------------------------------------------------------------------