From: Alexandru P. <al...@gm...> - 2024-10-24 09:06:31
|
Also, I see clisp-2.50 branch in Git repository. Is CLISP 2-50 already released or is it prepared to be released in the future? I suppose Haiku specific code will enter in master branch, and from this branch Haiku will prepare the package. But the version will still be clisp-2.49, right? чт, 24 окт. 2024 г. в 10:44, Alexandru Popa <al...@gm...>: > Thank you Bruno for your response. > > Haiku has a package manager, unlike BeOS. The available packages can be > searched via web interface at https://depot.haiku-os.org/. The *ffcall* > package was just added to Haiku repository for the sake of CLIPS, but is is > available also for other purposes of course. The recipe for CLISP is being > prepared these days. The discussion about it is ongoing at > https://discuss.haiku-os.org/t/make-ansi-common-lisp-available-on-haiku-again/15780 > . > > I prepared *cfghaiku.lisp*. Unfortunately, I did not succeed in modifying *makefile.in > <http://makefile.in>* to reflect Haiku specific handling. These days I > try to extensively test CLISP on Haiku. I found *tests* and *sacla-tests* > folders in master tarball from Git. However, I did not find a folder for > ANSI compliance testing as per "*make check-ansi-tests*". Where can I > find them? > > Additionally, what can you suggest for debugging sockets? Is there > something OS specific in SLIME / SLY to support Haiku (never looked at > their code)? > > Thank you again for your time and detailed information, > Alexandru > > ср, 23 окт. 2024 г. в 17:40, Bruno Haible <br...@cl...>: > >> Hi, >> >> Alexandru Popa wrote: >> > I installed >> > necessary dependencies except *libffcall*, which does not (yet) exist in >> > Haiku. >> >> GNU libffcall 2.5 builds and works out-of-the-box on Haiku (both the x86 >> and the x86_64 versions). >> >> > 2. Because Haiku does not have multi-user support, the user has >> > administrative permissions. So, I issued: >> > *export FORCE_UNSAFE_CONFIGURE=1* >> > otherwise it complains about too many permissions. >> >> Yes, this workaround is needed. >> >> > 3. During configuring, it was one crash (recover-able), so I just saved >> > report and continued. I will ask Haiku for help. The error was in >> program >> > *conftest* (during "*checking for working re_compile pattern... *" >> onscreen >> > message). >> >> This configure test (whose source code is in gnulib/m4/regex.m4) tests >> for known regex bugs in older glibcs. Since Haiku's libc descends from >> glibc, it's likely to have some of these bugs. >> >> > 4. After configuration I inspected *src/config.lisp* file and made the >> > following changes: >> > Because *vi* editor is not available by default, I changed: >> > *(defparameter *editor* "vi" "The name of the editor.")* >> > to: >> > *(defparameter *editor* "nano" "The name of the editor.")* >> > This is for console editor. >> >> Ah, Haiku has a console editor actually! I didn't know :) >> >> > If the GUI editor can also be considered, the >> > "Haiku way" would be something like: >> > *(defparameter *editor* "/boot/system/apps/Pe/Pe" "The name of the >> > editor.")* ; Pe = Programmer's Editor for source code. >> > or: >> > *(defparameter *editor* "/boot/system/apps/StyledEdit" "The name of the >> > editor.")* ; Default text editor of Haiku. >> >> I would vote for Pe. If you are in Haiku land, do the Haiku way. >> >> > After that, I added just after: >> > *;; (setq *browser* :firefox)* >> > the following: >> > *(setq *browser* "/boot/system/apps/WebPositive")* ; Firefox is not yet >> > ported to Haiku (the work is ongoing), and will probably not be official >> > one. WebPositive is The Haiku Web Browser. >> >> OK. >> >> > 5. Building was successful and I could find *clisp* executable in *src* >> > folder. >> > - *make* - OK >> > - *make check-tests* - 3 / 59 tests failed: *socket.erg*, *streams.erg* >> and >> > *streamslong.erg*, maybe because of missing *libffcall*. >> > - *make check-recompile* - OK >> > - *make install* - OK >> > - *make distrib* - OK >> >> Nice! >> >> > On the first try, CLISP works with Terminal application under Haiku. It >> > fails to connect to *Slime* or *Sly* under *Emacs*, but this is probably >> > the issue with Slime / Sly. >> >> Sockets have been a known problem with BeOS. It is possible that for these >> historical reason, they are still problematic with Haiku. I haven't looked >> in detail. >> >> > Can you please guide me how can I contribute to making CLISP available >> on >> > Haiku? >> > For now, is there some code I can modify to not being necessary to >> > manually change *config.lisp* after configuration? >> >> Step 1 is to provide source-code patches. You could provide your >> config.lisp, >> for inclusion in the CLISP source code as cfghaiku.lisp. One could then >> make >> it automatic, via a makemake.in rule. >> >> Then, it depends what "make available on Haiku" means. Does it have a >> package system, like so many other OSes do? If yes, then you could submit >> libffcall and then CLISP there. Be sure to pick libffcall version 2.5 >> and CLISP git (https://gitlab.com/gnu-clisp/clisp) master branch. >> >> Bruno >> >> >> >> |