Bug 46240 - New port: emulators/ePSXe
Summary: New port: emulators/ePSXe
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-ports (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-12-13 18:40 UTC by Jean-Yves Lefort
Modified: 2003-01-12 02:47 UTC (History)
0 users

See Also:


Attachments
file.shar (4.95 KB, text/plain)
2002-12-13 18:40 UTC, Jean-Yves Lefort
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jean-Yves Lefort 2002-12-13 18:40:01 UTC
	This is ePSXe, a Sony Playstation emulator (Linux binary).
Comment 1 Jean-Yves Lefort 2002-12-14 15:43:05 UTC
Here's an improved version of the initial submission; since the port
hasn't been committed yet, I choose to send this as a shell archive
rather than a diff.

Regards,
Jean-Yves Lefort

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	ePSXe
#	ePSXe/Makefile
#	ePSXe/distinfo
#	ePSXe/pkg-comment
#	ePSXe/pkg-descr
#	ePSXe/pkg-message
#	ePSXe/pkg-plist
#	ePSXe/files
#	ePSXe/files/epsxe
#	ePSXe/files/epsxe_install.in
#
echo c - ePSXe
mkdir -p ePSXe > /dev/null 2>&1
echo x - ePSXe/Makefile
sed 's/^X//' >ePSXe/Makefile << 'END-of-ePSXe/Makefile'
X# New ports collection makefile for:	ePSXe
X# Date created:			13 Dec 2002
X# Whom:				Jean-Yves Lefort <jylefort@brutele.be>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	ePSXe
XPORTVERSION=	1.5.2
XCATEGORIES=	emulators linux
XMASTER_SITES=	http://download.epsxe.com/files/
XDISTNAME=	epsxe152lin
X
XMAINTAINER=	jylefort@brutele.be
X
XRUN_DEPENDS=	${LINUXBASE}/usr/lib/libgtk-1.2.so.0:${PORTSDIR}/x11-toolkits/linux-gtk
X
XUSE_ZIP=	yes
XNO_WRKSUBDIR=	yes
X
XONLY_FOR_ARCHS=	i386
X
X# Linux binary should not be stripped by INSTALL_PROGRAM
X# because as a side effect it brands the binary as FreeBSD.
XSTRIP=
X
X.include <bsd.port.pre.mk>
X
XLIBDIR=		${PREFIX}/lib/ePSXe
X
Xdo-build:
X	${MKDIR} ${WRKSRC}/FreeBSD
X	${SED} -e "s,@LIBDIR@,${LIBDIR},g" \
X		${FILESDIR}/epsxe_install.in >${WRKSRC}/FreeBSD/epsxe_install
X
Xdo-install:
X	${MKDIR} ${PREFIX}/bin
X	${INSTALL_SCRIPT} \
X		${FILESDIR}/epsxe \
X		${WRKSRC}/FreeBSD/epsxe_install \
X		${PREFIX}/bin
X
X	${MKDIR} ${LIBDIR}
X	${INSTALL_PROGRAM} ${WRKSRC}/epsxe ${LIBDIR}
X	${INSTALL_DATA} ${WRKSRC}/keycodes.lst ${LIBDIR}
X
X	${MKDIR} ${LIBDIR}/cheats
X	${INSTALL_DATA} \
X		${WRKSRC}/cheats/breath_of_fire_4_usa.cht \
X		${WRKSRC}/cheats/chrono_cross_ntsc.cht \
X		${WRKSRC}/cheats/tarzan_pal.cht \
X		${LIBDIR}/cheats
X
X.if !defined(NOPORTDOCS)
X	${MKDIR} ${DOCSDIR}
X	${INSTALL_DATA} \
X		${WRKSRC}/docs/epsxe_en.txt \
X		${WRKSRC}/docs/epsxe_linux_en.txt \
X		${WRKSRC}/docs/epsxe_linux_sp.txt \
X		${WRKSRC}/docs/epsxe_sp.txt \
X		${DOCSDIR}
X.endif
X
Xpost-install:
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.post.mk>
END-of-ePSXe/Makefile
echo x - ePSXe/distinfo
sed 's/^X//' >ePSXe/distinfo << 'END-of-ePSXe/distinfo'
XMD5 (epsxe152lin.zip) = 5834f34cb904b08d95abda057eff3981
END-of-ePSXe/distinfo
echo x - ePSXe/pkg-comment
sed 's/^X//' >ePSXe/pkg-comment << 'END-of-ePSXe/pkg-comment'
XA Sony Playstation emulator
END-of-ePSXe/pkg-comment
echo x - ePSXe/pkg-descr
sed 's/^X//' >ePSXe/pkg-descr << 'END-of-ePSXe/pkg-descr'
XePSXe is a Sony Playstation emulator. It takes advantage of the
Xpopular PSEmu Pro plugin system.
X
XThis is the binary Linux version.
X
XWWW: http://www.epsxe.com/
X
X- Jean-Yves Lefort
Xjylefort@brutele.be
END-of-ePSXe/pkg-descr
echo x - ePSXe/pkg-message
sed 's/^X//' >ePSXe/pkg-message << 'END-of-ePSXe/pkg-message'
X-------------------------------------------------------------------------------
XYou should now log into your normal user account and issue a
X
X	epsxe_install
X
Xin order to create and populate ~/.ePSXe, needed to run the program.
X
XTo do anything useful with the emulator, you'll need a GPU and a SPU
Xplugin (the Ports Collection contains a number of those), and a
XPlaystation BIOS image. From the port's documentation:
X
X	"During testing we found out that the scph1001.bin and
X	 scph7502.bin BIOS are compatible, but the scph1000.bin
X	 won't work."
X
XNote that you may only be in possession of the copyrighted BIOS if
Xyou're legally entitled to do so.
X-------------------------------------------------------------------------------
END-of-ePSXe/pkg-message
echo x - ePSXe/pkg-plist
sed 's/^X//' >ePSXe/pkg-plist << 'END-of-ePSXe/pkg-plist'
Xbin/epsxe
Xbin/epsxe_install
Xlib/ePSXe/epsxe
Xlib/ePSXe/keycodes.lst
Xlib/ePSXe/cheats/breath_of_fire_4_usa.cht
Xlib/ePSXe/cheats/chrono_cross_ntsc.cht
Xlib/ePSXe/cheats/tarzan_pal.cht
X%%PORTDOCS%%share/doc/ePSXe/epsxe_en.txt
X%%PORTDOCS%%share/doc/ePSXe/epsxe_linux_en.txt
X%%PORTDOCS%%share/doc/ePSXe/epsxe_linux_sp.txt
X%%PORTDOCS%%share/doc/ePSXe/epsxe_sp.txt
X@dirrm lib/ePSXe/cheats
X@dirrm lib/ePSXe
X%%PORTDOCS%%@dirrm share/doc/ePSXe
END-of-ePSXe/pkg-plist
echo c - ePSXe/files
mkdir -p ePSXe/files > /dev/null 2>&1
echo x - ePSXe/files/epsxe
sed 's/^X//' >ePSXe/files/epsxe << 'END-of-ePSXe/files/epsxe'
X#!/bin/sh
X# epsxe - ePSXe wrapper
X#
X# (c) 2002 Jean-Yves Lefort.
X# All rights reserved.
X
XUSERDIR=$HOME/.ePSXe
X
Xif [ ! -x $USERDIR/epsxe ]; then
X    echo "$USERDIR/epsxe not found or not executable"
X    echo "Please run epsxe_install"
X    exit 1
Xfi
X
Xcd $USERDIR && exec ./epsxe "$@"
END-of-ePSXe/files/epsxe
echo x - ePSXe/files/epsxe_install.in
sed 's/^X//' >ePSXe/files/epsxe_install.in << 'END-of-ePSXe/files/epsxe_install.in'
X#!/bin/sh
X# epsxe_install - ePSXe user installation
X#
X# (c) 2002 Jean-Yves Lefort.
X# All rights reserved.
X
XLIBDIR=@LIBDIR@
XUSERDIR=$HOME/.ePSXe
X
Xcond_mkdir () {
X    if [ -d $1 ]; then
X	echo "Directory $1 already exists, not created"
X    else
X	echo "Creating directory $1"
X	mkdir -p $1
X    fi
X}
X
Xcond_ln () {
X    if [ -e $2 ]; then
X	echo "File $2 already exists, not replaced"
X    else
X	echo "Symlinking $1 to $2"
X	ln -sf $1 $2
X    fi
X}
X
Xecho "Performing user installation of ePSXe"
Xecho
X
Xfor d in		\
X    $USERDIR		\
X    $USERDIR/cfg	\
X    $USERDIR/cheats	\
X    $USERDIR/memcards	\
X    $USERDIR/patches	\
X    $USERDIR/plugins	\
X    $USERDIR/snap	\
X    $USERDIR/sstates; do
X    cond_mkdir $d
Xdone
X
Xfor f in				\
X    epsxe				\
X    keycodes.lst			\
X    cheats/breath_of_fire_4_usa.cht	\
X    cheats/chrono_cross_ntsc.cht	\
X    cheats/tarzan_pal.cht; do
X    cond_ln $LIBDIR/$f $USERDIR/$f
Xdone
X
Xecho
Xecho "User installation finished. Type epsxe to run the emulator"
END-of-ePSXe/files/epsxe_install.in
exit
Comment 2 Jean-Yves Lefort 2002-12-22 19:52:30 UTC
Upgraded: the port has been renamed to signify more obviously that
it's a Linux program, and to leave space for a hypothetic native
FreeBSD version.

Regards,
Jean-Yves Lefort

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	linux-ePSXe
#	linux-ePSXe/Makefile
#	linux-ePSXe/distinfo
#	linux-ePSXe/pkg-comment
#	linux-ePSXe/pkg-descr
#	linux-ePSXe/pkg-message
#	linux-ePSXe/pkg-plist
#	linux-ePSXe/files
#	linux-ePSXe/files/linux-epsxe
#	linux-ePSXe/files/linux-epsxe_install.in
#
echo c - linux-ePSXe
mkdir -p linux-ePSXe > /dev/null 2>&1
echo x - linux-ePSXe/Makefile
sed 's/^X//' >linux-ePSXe/Makefile << 'END-of-linux-ePSXe/Makefile'
X# New ports collection makefile for:	linux-ePSXe
X# Date created:			21 Dec 2002
X# Whom:				Jean-Yves Lefort <jylefort@brutele.be>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	ePSXe
XPORTVERSION=	1.5.2
XCATEGORIES=	emulators linux
XMASTER_SITES=	http://download.epsxe.com/files/
XPKGNAMEPREFIX=	linux-
XDISTNAME=	epsxe152lin
X
XMAINTAINER=	jylefort@brutele.be
X
XRUN_DEPENDS=	${LINUXBASE}/usr/lib/libgtk-1.2.so.0:${PORTSDIR}/x11-toolkits/linux-gtk
X
XUSE_ZIP=	yes
XNO_WRKSUBDIR=	yes
X
XONLY_FOR_ARCHS=	i386
X
X# Linux binary should not be stripped by INSTALL_PROGRAM
X# because as a side effect it brands the binary as FreeBSD.
XSTRIP=
X
X.include <bsd.port.pre.mk>
X
XEPSXE=		${PREFIX}/libexec/linux-epsxe
X
XDOCSDIR=	${PREFIX}/share/doc/${PKGNAMEPREFIX}${PORTNAME}
XSHAREDIR=	${PREFIX}/share/${PKGNAMEPREFIX}${PORTNAME}
X
XPSEMUPRO_PLUGINS_DIR=	${LOCALBASE}/lib/linux-psemupro/plugins
XPSEMUPRO_CFGBINS_DIR=	${LOCALBASE}/libexec/linux-psemupro/cfg
XPSEMUPRO_CFGFILES_DIR=	${LOCALBASE}/share/linux-psemupro/cfg
X
Xdo-build:
X	${MKDIR} ${WRKSRC}/FreeBSD
X	${SED} \
X		-e "s,@EPSXE@,${EPSXE},g" \
X		-e "s,@SHAREDIR@,${SHAREDIR},g" \
X		-e "s,@PSEMUPRO_PLUGINS_DIR@,${PSEMUPRO_PLUGINS_DIR},g" \
X		-e "s,@PSEMUPRO_CFGBINS_DIR@,${PSEMUPRO_CFGBINS_DIR},g" \
X		-e "s,@PSEMUPRO_CFGFILES_DIR@,${PSEMUPRO_CFGFILES_DIR},g" \
X		${FILESDIR}/linux-epsxe_install.in \
X		>${WRKSRC}/FreeBSD/linux-epsxe_install
X
Xdo-install:
X	${MKDIR} ${PREFIX}/bin
X	${INSTALL_SCRIPT} \
X		${FILESDIR}/linux-epsxe \
X		${WRKSRC}/FreeBSD/linux-epsxe_install \
X		${PREFIX}/bin
X
X	${MKDIR} ${PREFIX}/libexec
X	${INSTALL_PROGRAM} ${WRKSRC}/epsxe ${EPSXE}
X
X	${MKDIR} ${SHAREDIR}
X	${INSTALL_DATA} ${WRKSRC}/keycodes.lst ${SHAREDIR}
X
X	${MKDIR} ${SHAREDIR}/cheats
X	${INSTALL_DATA} \
X		${WRKSRC}/cheats/breath_of_fire_4_usa.cht \
X		${WRKSRC}/cheats/chrono_cross_ntsc.cht \
X		${WRKSRC}/cheats/tarzan_pal.cht \
X		${SHAREDIR}/cheats
X
X.if !defined(NOPORTDOCS)
X	${MKDIR} ${DOCSDIR}
X	${INSTALL_DATA} \
X		${WRKSRC}/docs/epsxe_en.txt \
X		${WRKSRC}/docs/epsxe_linux_en.txt \
X		${WRKSRC}/docs/epsxe_linux_sp.txt \
X		${WRKSRC}/docs/epsxe_sp.txt \
X		${DOCSDIR}
X.endif
X
Xpost-install:
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.post.mk>
END-of-linux-ePSXe/Makefile
echo x - linux-ePSXe/distinfo
sed 's/^X//' >linux-ePSXe/distinfo << 'END-of-linux-ePSXe/distinfo'
XMD5 (epsxe152lin.zip) = 5834f34cb904b08d95abda057eff3981
END-of-linux-ePSXe/distinfo
echo x - linux-ePSXe/pkg-comment
sed 's/^X//' >linux-ePSXe/pkg-comment << 'END-of-linux-ePSXe/pkg-comment'
XA Sony Playstation emulator (Linux version)
END-of-linux-ePSXe/pkg-comment
echo x - linux-ePSXe/pkg-descr
sed 's/^X//' >linux-ePSXe/pkg-descr << 'END-of-linux-ePSXe/pkg-descr'
XePSXe is a Sony Playstation emulator. It takes advantage of the
Xpopular PSEmu Pro plugin system.
X
XThis is the Linux version.
X
XWWW: http://www.epsxe.com/
X
X- Jean-Yves Lefort
Xjylefort@brutele.be
END-of-linux-ePSXe/pkg-descr
echo x - linux-ePSXe/pkg-message
sed 's/^X//' >linux-ePSXe/pkg-message << 'END-of-linux-ePSXe/pkg-message'
X-------------------------------------------------------------------------------
XYou should now log into your normal user account and issue a
X
X	linux-epsxe_install
X
Xin order to create and populate ~/.ePSXe, needed to run the program.
X
XTo do anything useful with the emulator, you'll need a GPU and a SPU
Xplugin (the Ports Collection contains a number of those), and a
XPlaystation BIOS image. From the port's documentation:
X
X	"During testing we found out that the scph1001.bin and
X	 scph7502.bin BIOS are compatible, but the scph1000.bin
X	 won't work."
X
XNote that you may only be in possession of the copyrighted BIOS if
Xyou're legally entitled to do so.
X
XWhen you install a PSEmu Pro plugin from a FreeBSD port or package,
Xyou should re-run
X
X	linux-epsxe_install
X
Xin order to make the plugin available to ePSXe.
X-------------------------------------------------------------------------------
END-of-linux-ePSXe/pkg-message
echo x - linux-ePSXe/pkg-plist
sed 's/^X//' >linux-ePSXe/pkg-plist << 'END-of-linux-ePSXe/pkg-plist'
Xbin/linux-epsxe
Xbin/linux-epsxe_install
Xlibexec/linux-epsxe
Xshare/linux-ePSXe/keycodes.lst
Xshare/linux-ePSXe/cheats/breath_of_fire_4_usa.cht
Xshare/linux-ePSXe/cheats/chrono_cross_ntsc.cht
Xshare/linux-ePSXe/cheats/tarzan_pal.cht
X%%PORTDOCS%%share/doc/linux-ePSXe/epsxe_en.txt
X%%PORTDOCS%%share/doc/linux-ePSXe/epsxe_linux_en.txt
X%%PORTDOCS%%share/doc/linux-ePSXe/epsxe_linux_sp.txt
X%%PORTDOCS%%share/doc/linux-ePSXe/epsxe_sp.txt
X@dirrm share/linux-ePSXe/cheats
X@dirrm share/linux-ePSXe
X%%PORTDOCS%%@dirrm share/doc/linux-ePSXe
END-of-linux-ePSXe/pkg-plist
echo c - linux-ePSXe/files
mkdir -p linux-ePSXe/files > /dev/null 2>&1
echo x - linux-ePSXe/files/linux-epsxe
sed 's/^X//' >linux-ePSXe/files/linux-epsxe << 'END-of-linux-ePSXe/files/linux-epsxe'
X#!/bin/sh
X# linux-epsxe - linux-ePSXe wrapper
X#
X# (c) 2002 Jean-Yves Lefort.
X# All rights reserved.
X
XUSERDIR=$HOME/.linux-ePSXe
X
Xif [ ! -x $USERDIR/epsxe ]; then
X    echo "$USERDIR/epsxe not found or not executable."
X    echo "You should run linux-epsxe_install."
X    exit 1
Xfi
X
Xcd $USERDIR && exec ./epsxe "$@"
END-of-linux-ePSXe/files/linux-epsxe
echo x - linux-ePSXe/files/linux-epsxe_install.in
sed 's/^X//' >linux-ePSXe/files/linux-epsxe_install.in << 'END-of-linux-ePSXe/files/linux-epsxe_install.in'
X#!/bin/sh
X# linux-epsxe_install - linux-ePSXe user installation
X#
X# (c) 2002 Jean-Yves Lefort.
X# All rights reserved.
X
XEPSXE=@EPSXE@
XSHAREDIR=@SHAREDIR@
XPSEMUPRO_PLUGINS_DIR=@PSEMUPRO_PLUGINS_DIR@
XPSEMUPRO_CFGBINS_DIR=@PSEMUPRO_CFGBINS_DIR@
XPSEMUPRO_CFGFILES_DIR=@PSEMUPRO_CFGFILES_DIR@
X
XUSERDIR=$HOME/.linux-ePSXe
X
X_mkdir () {
X    if [ ! -e $1 ]; then
X	echo "Creating directory $1"
X	mkdir -p $1
X    fi
X}
X
X_ln () {
X    if [ ! -e $2 ]; then
X	echo "Creating symlink $2"
X	ln -sf $1 $2
X    fi
X}
X
X_install () {
X    if [ ! -e $2 ]; then
X	echo "Copying $1 to $2"
X	install -m $3 $1 $2
X    fi
X}
X
Xfor d in		\
X    $USERDIR		\
X    $USERDIR/bios	\
X    $USERDIR/cfg	\
X    $USERDIR/cheats	\
X    $USERDIR/memcards	\
X    $USERDIR/patches	\
X    $USERDIR/plugins	\
X    $USERDIR/snap	\
X    $USERDIR/sstates; do
X    _mkdir $d || exit $?
Xdone
X
X_ln $EPSXE $USERDIR/epsxe || exit $?
X
Xfor f in				\
X    keycodes.lst			\
X    cheats/breath_of_fire_4_usa.cht	\
X    cheats/chrono_cross_ntsc.cht	\
X    cheats/tarzan_pal.cht; do
X    _ln $SHAREDIR/$f $USERDIR/$f || exit $?
Xdone
X
Xfor p in $PSEMUPRO_PLUGINS_DIR/*; do
X    [ -e $p ] || break
X    _ln $p $USERDIR/plugins/`basename $p` || exit $?
Xdone
X
Xfor c in $PSEMUPRO_CFGBINS_DIR/*; do
X    [ -e $c ] || break
X    _ln $c $USERDIR/cfg/`basename $c` || exit $?
Xdone
X
Xfor c in $PSEMUPRO_CFGFILES_DIR/*; do
X    [ -e $c ] || break
X    _install $c $USERDIR/cfg/`basename $c` 0644 || exit $?
Xdone
END-of-linux-ePSXe/files/linux-epsxe_install.in
exit
Comment 3 Edwin Groothuis freebsd_committer freebsd_triage 2003-01-12 02:47:51 UTC
State Changed
From-To: open->closed

Commited, thanks!