IRC channel logs

2019-10-10.log

back to list of logs

***catonano_ is now known as catonano
***ng0 is now known as Guest59160
***ng0_ is now known as ng0
<dfeng>Can Guile be built with different C libraries, e.g. musl?
<ng0>probably. the pkgsrc build links against native libc on netbsd, which is not glibc. musl might be different, your mileage may vary
<dsmith-work>Morning Greetings, Guilers
<jcowan>dfeng, ng0: It builds fine on Cygwin, which is newlib
<ng0>davexunit: wrt haunt. a while back I had captured a backtrace of haunt serve -w, but reading it today with some distance I think this is about a feature guile can not build native on netbsd.
<ng0> https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=blob;f=guile-haunt/TODO;h=e415a3cfdbe2aec63d1f268140201253ee69b22e;hb=HEAD
<davexunit>netbsd can't do threaded guile!?
<ng0>i have never tested guile this far on netbsd, only basic stuff
<ng0>this backtrace happens only with -w
<ng0>since I moved on to other domains, is there a test or a couple of tests i could run in guile to find out?
<ng0>make check or the equivalent in guile should cover this I guess?
<davexunit>ng0: it should be trivial to reproduce. open a repl, load the (ice-9 threads) module, and eval something like (call-with-new-thread (lambda () (display "hey!\n")))
<davexunit>the -w flag in haunt spawns a separate thread that checks to see if any files have been updated/created/deleted and rebuilds the site when changes are detected.
<davexunit>the main thread runs a web server
<ng0>yep, same error
<ng0>at least I now have an explanation to add to the package makefile. thank you :)
<ng0>ah!
<davexunit>maybe haunt should detect a guile built without threads and display a clear error message in this case.
<ng0>comment in lang/guile22:
<ng0># not until boehm-gc is threaded
<ng0>so we build --without-threads
<ng0>there is devel/boehm-gc-threaded in freebsd ports, which now looks just like an alias for the real boehm-gc, but the patch being upstreamed won't necessarily mean it's working for netbsd.
<ng0>maybe it's already working, i'll check. but your idea about a better error message upon detecting this is good.
*davexunit wishes he knew why chickadee doesn't work with guile 2.9.4
<ng0>you use pthread_np includes, so i think that's a no but I have to look more into this
*davexunit found the chickadee bug
<davexunit>I hadn't considered how the new declarative module changes would affect things and that was the culprit.
<davexunit>so the issue was indeed on my end.
<davexunit>I have a module that keeps track of opengl state. there are procedures that simply the return the value of mutable top-level variables. but guile modules are considered "declarative" by default, so the compiler does some optimization and the initial values of those globals are all that anyone ever sees.
<davexunit>soooo *none* of the proper gl state was being setup and so people were just seeing a black screen. fun!