IRC channel logs

2026-09-04.log

back to list of logs

<GNU_Hurd_Rocks>damo22: you mentioned stuff about Java in the past, was that OpenJDK?
<damo22>GNU_Hurd_Rocks: yes, openjdk7 (built using icedtea)
<damo22>i have the bootstrapped java 1.7.0 but it hangs on Hurd
<damo22>i need to dig into the code more to figure out why
<damo22>i would like to get openjdk8 eventually as a minimum
<damo22>but i dont have the motivation to do more than that
<GNU_Hurd_Rocks>ah I've ended up building openjdk25, will ::gentoo ebuilds for older versions
<GNU_Hurd_Rocks>will check*
<damo22>wait, you built openjdk25 on hurd?
<GNU_Hurd_Rocks>It's the linux profile for Gentoo
<damo22>does it work on hurd
<GNU_Hurd_Rocks>will have to try building with crossdev but I haven't fully set it up yet
<damo22>i dont think you can bootstrap openjdkN without openjdk(N-1) on the platform
<GNU_Hurd_Rocks>I think I was able to
<damo22>id be happy to be proven wrong
<GNU_Hurd_Rocks>ah, checked logs, emerge (5 of 6) dev-java/openjdk-bin-25.0.4_p7 to /
<damo22>i dont understand how that can work, unless someone did the porting work for hurd
<damo22>there are C++ components with operating-system specific code
<GNU_Hurd_Rocks>setting up a crossdev environment which will take some time unfortunately, since I didn't keep the previous
<damo22>no rush, but if you are interested in java it would be good to see what we can get
<damo22>i assumed there is no other way to bootstrap except the long way
<GNU_Hurd_Rocks>I forgot about the images that are provided from Project:Hurd, https://wiki.gentoo.org/wiki/Project:Hurd#Getting_started
<GNU_Hurd_Rocks>still building the crossdev though as it is very useful
<GNU_Hurd_Rocks>damo22: forgot to mention, there is an ebuild for OpenJDK8 in ::gentoo
<damo22>how does it bootstrap java without java?
<GNU_Hurd_Rocks>seems to be possible
<GNU_Hurd_Rocks>damo22: will have to merge to see if there are any errors, https://bpa.st/I4KA
<damo22>USE="jbootstrap"
<damo22>wonder what that is
<GNU_Hurd_Rocks>jbootstrap : Build OpenJDK twice, the second time using the result of the first
<damo22>ok, thats interesting, but i still cant understand how it builds openjdk without an existing java toolchain
<damo22>ie, the first build
<GNU_Hurd_Rocks>I had to do "-system-bootstrap" or it created a circular dependency, although apparently I don't see that USE on my GNU/Linux machine
<damo22>hmm maybe it uses the host openjdk to compile java sources?
<damo22>since the resulting java classes run on any java vm
<damo22>then it can avoid bootstrapping javac from an existing java on the target
<GNU_Hurd_Rocks>may have to do some of the building tomorrow
<damo22>it would be an interesting experiment
<damo22>but not sure how we could integrate that into a deb package
<damo22>if it worked
<GNU_Hurd_Rocks>emerge allows using --sysroot= or SYSROOT= to decide where the package should be installed to, however would probably have to make some changes to configurations to have it work for Debian
<GNU_Hurd_Rocks>or it might be --root=, ROOT= instead
<GNU_Hurd_Rocks>man page for it, https://dev.gentoo.org/~zmedico/portage/doc/man/emerge.1.html
<GNU_Hurd_Rocks>unfortunately ran into an error unrelated to OpenJDK, debugging it
<GNU_Hurd_Rocks>damo22: having issues with definitions not being defined, such as PATH_MAX and MAXPATHLEN
<GNU_Hurd_Rocks>would need to somehow debug C includes to know where it was defined but I don't have the tool for that
<GNU_Hurd_Rocks>or perhaps I should say it as, how it was included, rather than where it was defined
<azeem>the GNU system does not define those
<GNU_Hurd_Rocks>I will have to look at how the macros get defined for GNU/Linux to then look for a decent solution that can be applied to GNU/Hurd, azeem, although I should sleep first
<azeem>sleep sounds good, see you
<youpi>GNU_Hurd_Rocks: see the porting guidelines https://www.gnu.org/software/hurd/hurd/porting/guidelines.html
<sam_>GNU_Hurd_Rocks: no, it's that you shouldn't use such constructs to begin with
<sam_>as it's meaningless
<sam_>anway, first thing to do is file a bug with pkgconf if it is relying on PATH_MAX
<azeem>pkgconf?
<sam_>filed https://github.com/pkgconf/pkgconf/issues/600
<sam_>azeem: sorry, they asked a question in another channel wrt PATH_MAX
<sam_>(pkgconf didn't build)
<azeem>ah, ok
<damo22>i have a whole stack of changes for java, not just PATH_MAX etc i think you will run into a lot of things
<azeem>I managed to capture a build/install tree of a Postgres testsuite run that failed with "invalid page in block 26 of relation "base/4/1255"", see here:
<azeem> https://buildfarm.postgresql.org/cgi-bin/show_stage_log.pl?nm=fruitcrow&dt=2026-09-04%2007%3A29%3A28&stg=misc-check
<azeem>however, on inspection, it looks like the files are ok (at least the Postgres checksumming client tool does not complain), and the data corruption seems to happen in-memory
<GNU_Hurd_Rocks>I have noticed at least one other package that has the same problem, sam_, app-text/libpaper-2.1.3, have not looked at other versions though, it specifically looks for MAXPATHLEN, will report upstream
<sam_>you'll find many ;)
<sam_>thanks in advance
<GNU_Hurd_Rocks>sam_: done, https://github.com/rrthomas/libpaper/issues/70
<sam_>GNU_Hurd_Rocks: our libpaper isn't up to date
<sam_>but i see you tested upstream sources too
<sam_>excellent
<sam_>or wait, did you?
<sam_> https://github.com/rrthomas/libpaper/blob/800a61a0172da9dbb9ac19b0231459345890a586/src/paperconf.c#L184 still there anyway
<GNU_Hurd_Rocks>I did not test upstream but sort of assumed it would still be there
<GNU_Hurd_Rocks>coming up with a solution to then make a pull request though
<GNU_Hurd_Rocks>I have excerpted the source to make the important parts visible, https://bpa.st/2CLC6
<GNU_Hurd_Rocks>should have included the stuff after, did that now, sorry for yet another link, https://bpa.st/A63BU
<GNU_Hurd_Rocks>sam_: came up with this solution for app-text/libpaper, still an excerpt and will be getting a pull requests made very soon, https://bpa.st/TYAOS
<GNU_Hurd_Rocks>PR done, https://github.com/rrthomas/libpaper/pull/71
<etno>GNU_Hurd_Rocks: 👍