--- /dev/null
+--- configure.ac.orig 2004-12-13 22:32:19.202807712 -0500
++++ configure.ac 2004-12-13 22:32:45.232850544 -0500
+@@ -79,12 +79,12 @@
+ packagedocdir=doc/${PACKAGE}
+
+
+-AC_DEFINE_UNQUOTED(LEVEL_DIR, "levels", [Directory for level files])
+-AC_DEFINE_UNQUOTED(OVERWORLD_DIR, "World", [Directory for word data])
+-AC_DEFINE_UNQUOTED(PIXMAPS_DIR, "data/pixmaps", [Directory for pixmap data])
+-AC_DEFINE_UNQUOTED(SOUNDS_DIR, "data/sounds", [Directory for sound data])
+-AC_DEFINE_UNQUOTED(MUSIC_DIR, "data/music", [Directory for music data])
+-AC_DEFINE_UNQUOTED(FONT_DIR, "data/font", [Directory for font data])
++AC_DEFINE_UNQUOTED(LEVEL_DIR, "@GENTOO_DATADIR@/levels", [Directory for level files])
++AC_DEFINE_UNQUOTED(OVERWORLD_DIR, "@GENTOO_DATADIR@/World", [Directory for word data])
++AC_DEFINE_UNQUOTED(PIXMAPS_DIR, "@GENTOO_DATADIR@/pixmaps", [Directory for pixmap data])
++AC_DEFINE_UNQUOTED(SOUNDS_DIR, "@GENTOO_DATADIR@/sounds", [Directory for sound data])
++AC_DEFINE_UNQUOTED(MUSIC_DIR, "@GENTOO_DATADIR@/music", [Directory for music data])
++AC_DEFINE_UNQUOTED(FONT_DIR, "@GENTOO_DATADIR@/font", [Directory for font data])
+
+
+ AC_OUTPUT([Makefile])
--- /dev/null
+--- include/savegame.h.orig 2004-12-13 23:29:55.346394024 -0500
++++ include/savegame.h 2004-12-13 23:30:11.844885872 -0500
+@@ -20,7 +20,7 @@
+ \r
+ #define SAVEGAME_VERSION "2.1"\r
+ \r
+-#define SAVE_DIR "Savegames"\r
++#define SAVE_DIR ".smclone/Savegames"\r
+ \r
+ struct Savegame\r
+ {\r
+--- savegame.cpp.orig 2004-12-13 23:23:21.299298288 -0500
++++ savegame.cpp 2004-12-13 23:28:37.816180408 -0500
+@@ -37,8 +37,8 @@
+ Loaded_Save_info.OverWorld = 0;\r
+ Loaded_Save_info.Itembox_item = 0;\r
+ \r
+- char Full_Save_Name[40];\r
+- sprintf( Full_Save_Name,"%s/%d.sav", SAVE_DIR, Save_file );\r
++ char Full_Save_Name[255];\r
++ snprintf( Full_Save_Name, 254, "%s/%s/%d.sav", getenv("HOME"), SAVE_DIR, Save_file );\r
+ \r
+ ifstream ifs( Full_Save_Name, ios::in );\r
+ \r
+@@ -67,8 +67,8 @@
+ \r
+ int Savegame_Save( unsigned int Save_file, Savegame Save_info )\r
+ {\r
+- char Full_Save_Name[45];\r
+- sprintf( Full_Save_Name, "%s/%d.sav", SAVE_DIR, Save_file );\r
++ char Full_Save_Name[255];\r
++ snprintf( Full_Save_Name, 254, "%s/%s/%d.sav", getenv("HOME"), SAVE_DIR, Save_file );\r
+ \r
+ ifstream ifs( Full_Save_Name, ios::in );\r
+ \r
+@@ -163,11 +163,11 @@
+ const char *Savegame_GetDescription( unsigned int Save_file, bool Only_Description )\r
+ {\r
+ std :: string Full_Save_Name;\r
+- char buffer[10];\r
++ char buffer[255];\r
+ \r
+ Full_Save_Name = SAVE_DIR "/.sav";\r
+ \r
+- sprintf( buffer, "%d", Save_file );\r
++ snprintf( buffer, 254, "%s/%d", getenv("HOME"), Save_file );\r
+ \r
+ Full_Save_Name.insert( strlen( SAVE_DIR ) + 1, buffer );\r
+ \r
+@@ -226,11 +226,11 @@
+ bool Savegame_valid( unsigned int Save_file )\r
+ {\r
+ std :: string Full_Save_Name;\r
+- char buffer[10];\r
++ char buffer[255];\r
+ \r
+ Full_Save_Name = SAVE_DIR "/.sav";\r
+ \r
+- sprintf( buffer, "%d", Save_file );\r
++ snprintf( buffer, 254, "%s/%d", getenv("HOME"), Save_file );\r
+ Full_Save_Name.insert( strlen( SAVE_DIR ) + 1, buffer );\r
+ \r
+ ifstream ifs( Full_Save_Name.c_str(), ios::in );\r
+--- main.cpp.orig 2004-12-13 23:29:48.623416072 -0500
++++ main.cpp 2004-12-13 23:31:16.989982312 -0500
+@@ -554,14 +554,14 @@
+
+ void MakeScreenshot( void )
+ {
+- char filename[20];\r
++ char filename[255];\r
+ int i = 0;\r
+
+ while( i < 1000 )
+ {\r
+ i++;\r
+
+- sprintf( filename, "Screenshots/%03d.bmp" , i );
++ snprintf( filename, 254, "%s/.smclone/Screenshots/%03d.bmp" , getenv("HOME"), i );
+ FILE *fp = fopen( filename, "r" );\r
+
+ if( !fp )
+--- preferences.cpp.orig 2004-12-13 23:31:36.006091424 -0500
++++ preferences.cpp 2004-12-13 23:33:28.611972728 -0500
+@@ -27,6 +27,12 @@
+ {\r
+ //\r
+ }\r
++char *get_PREF_NAME( void )
++{
++ static char ret[255];
++ snprintf(ret, 254, "%s/.smclone/%s", getenv("HOME"), PREF_NAME);
++ return ret;
++}
+ \r
+ bool cPreferences :: Load( void )\r
+ {\r
+@@ -38,11 +44,11 @@
+ return 0;\r
+ }\r
+ \r
+- ifstream ifs( PREF_NAME, ios::in );\r
++ ifstream ifs( get_PREF_NAME(), ios::in );\r
+ \r
+ if( !ifs )\r
+ {\r
+- cout << "Could not open preferences file : " << PREF_NAME << endl;\r
++ cout << "Could not open preferences file : " << get_PREF_NAME() << endl;\r
+ \r
+ return 0;\r
+ }\r
+@@ -67,7 +73,7 @@
+ {\r
+ Update();\r
+ \r
+- ofstream ofs( PREF_NAME, ios::out );\r
++ ofstream ofs( get_PREF_NAME(), ios::out );\r
+ \r
+ char row[250];\r
+ \r
+@@ -150,7 +156,7 @@
+ \r
+ bool cPreferences :: Prefs_available( void )\r
+ {\r
+- FILE *fp = fopen( PREF_NAME, "r" );\r
++ FILE *fp = fopen( get_PREF_NAME(), "r" );\r
+ \r
+ if ( !fp )\r
+ {\r
--- /dev/null
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-arcade/smclone/smclone-0.94.1.ebuild,v 1.1 2004/12/14 04:57:49 vapier Exp $
+
+inherit games eutils
+
+DESCRIPTION="clone of Super Mario World"
+HOMEPAGE="http://smclone.arturh.com/"
+SRC_URI="mirror://sourceforge/smclone/SMC_${PV}_source.zip
+ mirror://sourceforge/smclone/smc_${PV}_linux_x86.tar.gz
+ mirror://sourceforge/smclone/SMC_93_music.zip"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="x86"
+IUSE=""
+
+RDEPEND="media-libs/libsdl
+ media-libs/sdl-image
+ media-libs/sdl-mixer
+ media-libs/sdl-ttf
+ media-libs/sdl-gfx"
+DEPEND="${RDEPEND}
+ >=sys-apps/portage-2.0.51"
+
+S=${WORKDIR}/${PV}/src/unix
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ chmod go+rw *
+ epatch ${FILESDIR}/${PV}-gentoo-paths.patch
+ sed -i \
+ -e "s:@GENTOO_DATADIR@:${GAMES_DATADIR}/${PN}:g" \
+ -e "s:0\.93:${PV}:" \
+ configure.ac
+ sed -i 's:-Wmissing-prototypes:-Wno-deprecated:' Makefile.am
+ chmod a+x autogen.sh
+ ./autogen.sh || die "autogen failed"
+ cd ..
+ sed -i '/define LEVEL_DIR/d' include/savegame.h
+ sed -i '/define VERSION/d' include/globals.h
+ epatch ${FILESDIR}/${PV}-use-HOME.patch
+}
+
+src_install() {
+ dogamesbin smclone || die "smclone"
+ cd ${WORKDIR}/smc-${PV}
+ dodoc *.rtf
+ cd ${PV}
+ insinto ${GAMES_DATADIR}/${PN}
+ doins -r Preferences.ini World levels data/* || die "doins"
+ doins -r ${WORKDIR}/0.93.1/data/music || die "music"
+ prepgamesdirs
+}