Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 255644 - app-emulation/basiliskII-jit: a lot improved ebuild
Summary: app-emulation/basiliskII-jit: a lot improved ebuild
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High trivial (vote)
Assignee: Default Assignee for New Packages
Depends on:
Reported: 2009-01-20 15:02 UTC by Martin Mokrejš
Modified: 2021-08-03 20:55 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---

basiliskII-jit-1.0_pre20060501-r1.ebuild (basiliskII-jit-1.0_pre20060501-r1.ebuild,5.67 KB, text/plain)
2009-01-22 18:17 UTC, Martin Mokrejš
basiliskII-jit-1.0_pre20060501-r1.ebuild (basiliskII-jit-1.0_pre20060501-r1.ebuild,6.17 KB, text/plain)
2010-10-30 19:16 UTC, Martin Mokrejš
sys_unix.cpp.patch (sys_unix.cpp.patch,285 bytes, patch)
2010-10-30 19:17 UTC, Martin Mokrejš
Details | Diff
file_handle.patch (file_handle.patch,25.10 KB, patch)
2012-02-09 14:02 UTC, Martin Mokrejš
Details | Diff
basiliskII-jit-1.0_pre20060501-r1.ebuild (basiliskII-jit-1.0_pre20060501-r1.ebuild,6.29 KB, text/plain)
2012-02-09 14:23 UTC, Martin Mokrejš
cast-uint8-uint32-loses-precision.patch (cast-uint8-uint32-loses-precision.patch,1.88 KB, patch)
2012-02-09 14:25 UTC, Martin Mokrejš
Details | Diff
basiliskII-jit-9999.ebuild (basiliskII-jit-9999.ebuild,6.14 KB, text/plain)
2012-12-14 15:30 UTC, Hubert Kromer

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Mokrejš 2009-01-20 15:02:55 UTC
The ebuild mentions one can download the MacOS software installation from Apple but took me several hours:

BTW, here it is clearer what one can get: ;)
Comment 1 Martin Mokrejš 2009-01-22 18:17:26 UTC
Created attachment 179360 [details]

An improved ebuild extensively tested. It correctly passes fbdev or dga or sdl flags to configure, contains extra einfo() lines for the user. Also, supports USE=debug to trun on extra debug. Extensively tested.
Comment 2 Martin Mokrejš 2009-03-04 12:21:11 UTC
This package is anyway in ~x86 and ~amd64. Would somebody please commit this improved ebuild? Thanks a lot.
Comment 3 Markus Meier gentoo-dev 2009-03-07 10:12:12 UTC
(In reply to comment #2)
> This package is anyway in ~x86 and ~amd64. Would somebody please commit this
> improved ebuild? Thanks a lot.

why are you CC-ing me? =)
Comment 4 Martin Mokrejš 2009-03-09 13:08:03 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > This package is anyway in ~x86 and ~amd64. Would somebody please commit this
> > improved ebuild? Thanks a lot.
> why are you CC-ing me? =)

# $Header: /var/cvsroot/gentoo-x86/app-emulation/basiliskII-jit/basiliskII-jit-1.0_pre20060501.ebuild,v 1.3 2008/08/24 12:51:33 maekke Exp $
Comment 5 Martin Mokrejš 2010-10-30 19:16:34 UTC
Created attachment 252607 [details]

Updated ebuild with a patch to src/Unix/sys_unix.cpp to fix:

error: ‘INT_MAX’ was not declared in this scope

Fix proposed at in comment #7
Comment 6 Martin Mokrejš 2010-10-30 19:17:57 UTC
Created attachment 252609 [details, diff]

Comment 7 Pacho Ramos gentoo-dev 2012-02-09 12:10:07 UTC
This is no longer in the tree
Comment 8 Martin Mokrejš 2012-02-09 14:02:31 UTC
Created attachment 301387 [details, diff]

One more patch is needed to avoid name clash with /usr/include/bits/fcntl.h defining struct file_handle.
Comment 9 Martin Mokrejš 2012-02-09 14:23:33 UTC
Created attachment 301389 [details]

An updated ebuild. Just in case you would like to add it to portage.

It does not compile at the very moment due to picky gcc-4.5.3 I think:

x86_64-pc-linux-gnu-g++ -I../include -I. -I../uae_cpu -I../slirp -DHAVE_CONFIG_H  -DOS_linux -DREAL_ADDRESSING -DUNALIGNED_PROFITABLE -DX86_64_ASSEMBLY -DOPTIMIZED_FLAGS -DFPU_IEEE -D_REENTRANT -DDATADIR=\"/usr/share/BasiliskII\" -O2 -pipe -march=native -fno-merge-constants -fno-gcse-sm -pthread -DQT_SHARED -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng15 -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -c ../uae_cpu/basilisk_glue.cpp -o obj/basilisk_glue.o
../uae_cpu/basilisk_glue.cpp: In function 'bool Init680x0()':
../uae_cpu/basilisk_glue.cpp:71:23: error: cast from 'uint8*' to 'uint32' loses precision
../uae_cpu/basilisk_glue.cpp:72:23: error: cast from 'uint8*' to 'uint32' loses precision

A pointer to might help somebody but involves a change somewhere else where the code in basiliskII-jit is somewhat different (I will attach it as well as cast-uint8-uint32-loses-precision.patch though am not sure if this is proper at all).
Comment 10 Martin Mokrejš 2012-02-09 14:25:11 UTC
Created attachment 301391 [details, diff]

Uncertain if this is correct patch. Anyways, I do not need it on ~amd64 multilib. But maybe a clue for somebody else.

In general, basiliskII-jit compiled fine on ~x86 in the past.
Comment 11 Hubert Kromer 2012-12-14 15:30:51 UTC
Created attachment 332292 [details]

Ebuild updated to work nicely with Git version, which is still maintained - don't see a reason of using old build from 2006.
Comment 12 Hubert Kromer 2012-12-14 15:37:41 UTC

I've modified the basiliskII-jit-1.0_pre20060501-r1.ebuild to fetch sources from Git - it looks like they're still maintained. Only additional file required is sys_unix.cpp.patch. For this version of BasiliskII to work is required to add following to /etc/sysctl.conf:
vm.mmap_min_addr = 0
After that Basilisk works like a charm. Another thing is that no more Gnome librarys are required for GTK2 interface to work - ebuild was altered to include that change as well.
You can find modified ebuild above: basiliskII-jit-9999.ebuild
Comment 13 Thomas Capricelli 2014-11-14 15:40:53 UTC
Tested the jit-9999.ebuild today on a fairly standard ~amd64 gentoo box

USE=jit will fail with :
checking whether linker script is usable... yes
checking for the addressing mode to use... 
configure: WARNING: Sorry, no suitable addressing mode in real
configure: error: Sorry, the JIT Compiler requires Direct Addressing, at least
make: *** No targets specified and no makefile found.  Stop.
emake failed

USE=-jit will emerge/install fine.
Comment 14 Thomas Capricelli 2016-08-30 19:21:15 UTC
I can confirm the last bug using the 9999 ebuild attached. The reason is that (at least on amd64) the jit option is not compatible with the real mode adressing.

The fix is to remove --enable-addressing=real in the configure line. Then everything goes well.
Comment 15 Thomas Capricelli 2021-08-03 20:55:25 UTC
The ebuilds are now too old and refused by emerge:
 *   flag-o-matic.eclass: EAPI  is too old.