View previous topic :: View next topic |
Author |
Message |
jgpallack n00b
Joined: 21 Nov 2007 Posts: 33
|
Posted: Sun Mar 30, 2008 7:05 am Post subject: [SOLVED] BasiliskII-JIT |
|
|
Any chance this will ever get ported to amd64? Right now, it's just listed as being for x86 and ppc.
Out of curiosity, I put the ebuild in my overlay and added the amd64 keyword, but it fails to compile. Are there any plans from the devs to port it? Or should I just unmask the non-JIT BasiliskII ebuild?
If anyone's interested, here's the error.
Code: |
c++ -I../include -I. -I../uae_cpu -DHAVE_CONFIG_H -DOS_linux -DCPU_x86_64 -DDIRECT_ADDRESSING -DUSE_JIT -DUSE_JIT_FPU -DFPU_IEEE -D_REENTRANT -DDATADIR=\"/usr/share/BasiliskII\" -march=nocona -Os -pipe -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib64/glib/include -fno-merge-constants -c ../ether.cpp -o obj/ether.o
../ether.cpp: In function ‘void ether_udp_read(uint8*, int, sockaddr_in*)’:
../ether.cpp:443: error: cast from ‘uint8*’ to ‘uint32’ loses precision
make: *** [obj/ether.o] Error 1
|
Last edited by jgpallack on Sat Apr 05, 2008 5:12 am; edited 1 time in total |
|
Back to top |
|
|
Carnildo Guru
Joined: 17 Jun 2004 Posts: 594
|
Posted: Mon Mar 31, 2008 11:31 pm Post subject: |
|
|
The error message indicates that a port won't be a trivial task: someone's assuming that a pointer is 32 bits -- which is manifestly untrue on a 64-bit system. Any port will need to go through the code with a fine-toothed comb to locate similar assumptions. |
|
Back to top |
|
|
shanoah n00b
Joined: 09 Apr 2007 Posts: 4
|
Posted: Tue Apr 01, 2008 12:28 pm Post subject: |
|
|
Here, you might try this heavily modified ebuild I made for my own personal use that pulls from cvs. As far as I can tell, the jit and non-jit must have merged at some point, so just make sure to have jit as a keyword.
As a warning, I haven't done many e-builds, and this has not been extensively tested. It does compile with jit on for my amd64 system, though:
Code: | # basilisk-999.ebuild
#
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-emulation/basiliskII/basiliskII-1.0.0_pre20050412.ebuild,v 1.7 2007/07/12 06:39:56 mr_bones_ Exp $
inherit flag-o-matic eutils cvs
### This package requires a Mac II/Classic ROM, A Mac OS Image
### Mac OS 7.5.3r2 is available freely from the Apple Homepage
### System ROMS can be retreived from a 'real' Mac, See info/man pages
DESCRIPTION="Basilisk II Macintosh Emulator"
HOMEPAGE="http://basilisk.cebix.net/"
#SRC_URI="mirror://gentoo/${P}.tar.bz2"
ECVS_SERVER="cvs.cebix.net/home/cvs/cebix"
ECVS_MODULE="BasiliskII"
ECVS_USER="anoncvs"
ECVS_PASS="anoncvs"
#$ cvs -d :pserver:anoncvs@cvs.cebix.net:/home/cvs/cebix login
#(password is "anoncvs")
#$ cvs -d :pserver:anoncvs@cvs.cebix.net:/home/cvs/cebix checkout BasiliskII
LICENSE="|| ( GPL-2 LGPL-2.1 )"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="dga esd gtk nls sdl jit"
### We'll set $S Manually, it's version dependant, and nested strangely.
S=${WORKDIR}/BasiliskII/src/Unix
### fbdev support in the stable release... the cvs branch is broken, period!
### gtk and esd support are compile time options, we'll check the usual
### use variables here and set ./configure options accordingly
RDEPEND="esd? ( media-sound/esound )
gtk? ( >=x11-libs/gtk+-2 gnome-base/libgnomeui )
!sdl? ( dga? ( x11-libs/libXxf86dga ) )
sdl? ( media-libs/libsdl )
nls? ( virtual/libintl )
x11-libs/libSM
x11-libs/libXi
x11-libs/libXxf86vm
!app-emulation/basiliskII-jit"
DEPEND="${RDEPEND}
!sdl? ( dga? ( x11-proto/xf86dgaproto ) )
nls? ( sys-devel/gettext )
x11-proto/xf86vidmodeproto
x11-proto/xextproto
x11-proto/xproto"
src_unpack() {
cvs_src_unpack
cd "${S}"
#prevent prestripped binary
sed -i -e '/^INSTALL_PROGRAM/s/-s//' Makefile.in
if use sdl && use dga ; then
elog "SDL support was requested, DGA will be disabled"
fi
}
src_compile() {
#fpu_x86 doesnt compile properly if -O3 or greater :(
replace-flags -O[3-9] -O2
strip-flags -mpowerpc-gfxopt
local myflags
### Default ./configure options are all =yes by default. we'll check for
### and use -values and switch them accordingly
use esd || myflags="${myflags} --with-esd=no"
use gtk || myflags="${myflags} --with-gtk=no"
use dga || myflags="${myflags} --enable-xf86-dga=no"
use nls || myflags="${myflags} --disable-nls"
use jit && myflags="${myflags} --enable-jit-compiler"
use sdl && myflags="${myflags} \
--enable-sdl-video=yes \
--enable-sdl-audio=yes"
NOCONFIGURE=blah ./autogen.sh \
--host=${CHOST} \
--prefix=/usr \
--infodir=/usr/share/info \
--mandir=/usr/share/man \
${myflags} || die "BasiliskII ./configure Failed"
#hack to link against libstdc++ for gcc3.x compatibility
sed -i -e 's:-o $(OBJ_DIR)/gencpu:-lstdc++ -o $(OBJ_DIR)/gencpu:' Makefile
emake -j1 || die "BasiliskII Make Failed"
}
src_install() {
make \
prefix=${D}/usr \
mandir=${D}/usr/share/man \
infodir=${D}/usr/share/info \
install || die "BasiliskII Make Install Failed"
### Networking is _disabled_ in this revision, hopefully -r2 will
### resolve the permissions issue / linux src compilation problem
### that prevents it's inclusion
### Uncomment the following, and read the manual _carefully_ if you really
### need networking, this will create a sheep_net.o kernel module that
### provides (effectivly) an ethernet bridge between basliskII and the kernel
# make modules
}
|
|
|
Back to top |
|
|
jgpallack n00b
Joined: 21 Nov 2007 Posts: 33
|
Posted: Sat Apr 05, 2008 5:12 am Post subject: |
|
|
Thank you, shanoah! This works. |
|
Back to top |
|
|
shanoah n00b
Joined: 09 Apr 2007 Posts: 4
|
Posted: Sat Apr 05, 2008 8:46 am Post subject: |
|
|
No problem. You may want to keep this e-build around; the one in portage doesn't have an ebuild maintainer, and the non-jit version, anyways, has been masked as a dead application. (I stuck this ebuild on one of the bugs as an attachment, anyways...)
Admittedly, Basilisk II hasn't has a release since 2005, but the cvs is still being updated, and I think they are starting to approach a new release.
Oh, and if anyone wants to adopt this ebuild for use in an overlay, feel free; just let me know so I can add that overlay to my system... |
|
Back to top |
|
|
alexbuell Guru
Joined: 18 Jul 2002 Posts: 490 Location: "Hemp"shire, UK
|
Posted: Wed Sep 22, 2010 7:32 am Post subject: |
|
|
shanoah wrote: | No problem. You may want to keep this e-build around; the one in portage doesn't have an ebuild maintainer, and the non-jit version, anyways, has been masked as a dead application. (I stuck this ebuild on one of the bugs as an attachment, anyways...)
Admittedly, Basilisk II hasn't has a release since 2005, but the cvs is still being updated, and I think they are starting to approach a new release.
Oh, and if anyone wants to adopt this ebuild for use in an overlay, feel free; just let me know so I can add that overlay to my system... |
Have you got a more up to date ebuild of this? Thanks! _________________ Cheers,
Alex.
Linux - the best text adventure game ever. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|