The attached ebuild will intall the latest version of the Hugs98 interpreter for Haskell. I have tested the package with OpenGL enabled and everything worked fine. See "emerge info" below for details. There is one more problem: I built the program with hardened-gcc and it works fine. (Yay!) But PaX kills the interpreter when it tries to do fancy stuff like loading external modules (Boo!). Thus, you need to disable PaX for the /usr/bin/hugs binary by adding this to /etc/conf.d/chpax: | PAGEEXEC_EXEMPT="/usr/bin/hugs" | TRAMPOLINE_EXEMPT="/usr/bin/hugs" | MPROTECT_EXEMPT="/usr/bin/hugs" | MMAP_EXEMPT="/usr/bin/hugs" | SEGEXEC_EXEMPT="/usr/bin/hugs" | RANDEXEC_EXEMPT="/usr/bin/hugs" Then, /etc/init.d/chpax must be restarted, so that chpax is actually _run_. I have no idea how to handle this is the ebuild. Perhaps you hardened guys know the appropriate procedures in this case? Everybody without PaX should be fine (even with hardened-gcc). Reproducible: Always Steps to Reproduce: 1. 2. 3. Portage 2.0.49-r15 (selinux-x86-1.4, gcc-3.3.2, glibc-2.3.2-r9, 2.4.21-hardened) ================================================================= System uname: 2.4.21-hardened i686 AMD Athlon(tm) Processor Gentoo Base System version 1.4.3.11 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-mcpu=athlon -O3 -fomit-frame-pointer -funroll-loops -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /var/bind /usr/X11R6/lib/X11/xkb /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/xdvi/" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-mcpu=athlon -O3 -fomit-frame-pointer -funroll-loops -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache autoaddcvs sfperms sandbox userpriv notitles strict" GENTOO_MIRRORS="http://mirrors.sec.informatik.tu-darmstadt.de/gentoo http://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://gentoo.inode.at/source/ http://gentoo.inode.at/" MAKEOPTS="-j1" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="x86 crypt ncurses selinux zlib gdbm berkdb readline guile pam libwww ssl perl opengl mozilla altcolors curl dga doc dvd emacs ethereal leim mbox moznocompose moznoirc moznomail moznoxft rage128 Xaw3d -arts -cups -gpm -java -kde -motif -nls -qt -svga -xmms -tcpd -python -esd spell -slang X png gtk gif tiff mmx xml xml2 truetype oss tetex jpeg avi oggvobis encode python plotutils pdflib gcl -tcltk"
Created attachment 21308 [details] hugs98 Nov 2003 release ebuild
haskell@gentoo.org isn't valid.
I've committed your ebuild with very minor changes (additional dependency on docbook-dtd). I will try to ask someone about the PaX stuff. Do you know if there is a standard way to determine if PaX is installed on the machine? Is there a USE flag? Thanks for your help. Andres
PaX is a kernel module, which has to be activated to do anything. There is no "installation" per se in the system, except for (maybe) the chpax(1) utility, which can be used to disable PaX. In short: I'm not aware of any way to test whether PaX is enabled. Maybe the hardened guys do know a way?
Is there any progress concerning getting this ebuild marked as stable? Anything I may be able to help with?
What is the problem that causes this ebuild to be marked "~x86" still after more than half a year?
With 2005.3 being out and in portage, I guess this bug report can be considered invalid. ;-)