Hi Jo, Alle giovedì 2 febbraio 2012, Jo Shields ha scritto: > Mono is supported on most Debian architectures. Including > kfreebsd-i386 and kfreebsd-amd64. Know what'd be nice? Support for > hurd-i386. It'd bring in a bunch of nice user-friendly apps to > hurd-i386, which would be good. > > http://www.mono-project.com/Porting#Operating_System_Ports notes that > OS ports aren't too much work if the OS is POSIX and the CPU work > has already been done, so I don't think this would be an outlandish > amount of work for any skilled Hurd hacker. > > Any takers? I'd really like to see this running on all the Debian > architectures, if possible. A couple of weeks before the mono transition, I had a try in building the (formerly in experimental) current mono in unstable. Basically, the chanages I needed were about: - fixing the embedded libgc copy like it has been done upstream or in gcc (it was mostly cherrypicking the changes) - adding hurd-specific bits (like in configure.in, mono-config.c, mini-x86.h) - fixing "#ifdef defined(__MACH__)" to check for both __MACH__ and __APPLE__, since those bits are MacOSX-specific and __MACH__ is defined for us too (since our microkernel, GNU Mach, is derived from Mach) - the usual PATH_MAX/MAXPATHLEN lack (I put #ifndef ... #define to just have a version quickly compilable) and then I got stuck at the .dll generation phase, because of mcs.exe going on starvation, with one mcs' thread waiting on a mutex lock (IIRC) and one libgc's thread on a sem_wait. Few days later, trying to compile a different source, ecl, gave a very similar starvation issue, so most probably there's some bug on our side we need to fix before getting mono compiled on Hurd (but I didn't investigate neither mono nor ecl that much regarding to this). -- Pino Toscano
Attachment:
signature.asc
Description: This is a digitally signed message part.