Closed yurivict closed 2 years ago
Please make according to the type of OS. If it works, it's OK. The operation check is in the verify folder.
The make check
command prints a lot of messages and some errors and warnings:
test-eisl-2.50-114-g1216d9e.txt
Don't worry about the warning. You will be in trouble if you get an error. I don't know about FBSD. Mr. Poldy may know. see https://github.com/sasagawa888/eisl/blob/master/documents/POLICY.md
There are errors. Am I in trouble?
Easy-ISLisp has not been confirmed to work on FreeBSD. I would be grateful if you could improve and send me a pull request.
Note that "make check" doesn't run the test suite. It runs cppcheck, a static analyzer, over the source code which although useful is something different. So errors from this may be false positives because cppcheck isn't a full compiler and may not know that some code is dead.
In the past, I have run the benchmark suite as a simple sanity test. Instructions are in documentation/BENCH.md. Feel free to log tickets for any issues you find, my personal workflow for debugging C is at the end of documentation/DEBUG.md.
A port to FreeBSD is likely to be very similar to OpenBSD, which I run sometimes. If you run "grep -ri openbsd ." you'll see where to start anyway.
FreeBSD patch: https://github.com/sasagawa888/eisl/pull/182
Tests fail:
cd /disk-samsung/freebsd-ports/lang/eisl/work/eisl-2.50-114-g1216d9e && /disk-samsung/freebsd-ports/lang/eisl/work/stage/usr/local/bin/eisl -s bench/runbench.lsp
around here line=1 column=0
Illegal argument at LOAD "bench/fib20.o"
debug mode ?(help)
>>
Tests fail:
cd /disk-samsung/freebsd-ports/lang/eisl/work/eisl-2.50-114-g1216d9e && /disk-samsung/freebsd-ports/lang/eisl/work/stage/usr/local/bin/eisl -s bench/runbench.lsp around here line=1 column=0 Illegal argument at LOAD "bench/fib20.o" debug mode ?(help) >>
I had to double-check, but I think I can explain this. I get the same error if I just run (load "bench/runbench.lsp")
at the REPL in a clean checkout. It should maybe be highlighted more, but you first need to run eisl -c
(to load the compiler feature), then (load "bench/cpbench.lsp")
to compile all the benchmarks first. There is a comment to this effect in bench/runbench.lsp, and a perhaps cryptic command to "please compile with cpbench.lsp" in documentation/BENCH.md, but obviously these are easily missed. Feel free to highlight as you feel appropriate in the pull request.
Thank you for your pull request. However, there is a conflict. I can't solve it. Please make a pull request again.
Maybe you could add a shell script to run benchmarks because it isn't obvious at all.
I tried this and failed:
cd ${TEST_WRKSRC} && \
${STAGEDIR}${PREFIX}/bin/eisl -c && \
${STAGEDIR}${PREFIX}/bin/eisl -s bench/cpbench.lsp && \
${STAGEDIR}${PREFIX}/bin/eisl -s bench/runbench.lsp
Can't open a file at LOAD "/home/yuri/eisl/library/compiler.lsp"
debug mode ?(help)
Try the following:
eisl -c
> (load "bench/cpbench.lsp")
eisl -s bench/runbench.lsp
It fails:
$ ./eisl -c
Can't open a file at LOAD "/home/yuri/eisl/library/compiler.lsp"
debug mode ?(help)
>>
You need to either move your clone to $HOME/eisl or set an EASY_ISLISP variable in your environment to point to where it is, see the end of the "Installation" section of the README.
I modified the compiler for freeBSD. I added compiler options for freeBSD. It is the 241st line in compiler.lsp. Please correct the options.
The
Installation
section should include this information.