-
Notifications
You must be signed in to change notification settings - Fork 10
Support lisp implementations other than ECL #27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
I appreciate this contribution, thank you. Unfortunately I had things the way they were for a reason - |
I don't know if I would really describe robertb@nobara-pc ~/c/a/uiop (master)> wc -l **lisp
69 backward-driver.lisp
214 common-lisp.lisp
445 configuration.lisp
118 contrib/debug.lisp
933 doc/docstrings.lisp
22 driver.lisp
689 filesystem.lisp
488 image.lisp
728 launch-program.lisp
842 lisp-build.lisp
444 os.lisp
897 package.lisp
763 pathname.lisp
578 run-program.lisp
743 stream.lisp
667 utility.lisp
187 version.lisp
8827 total
robertb@nobara-pc ~/c/a/uiop (master)>However, you are correct that the binary size grows to 3M when compiled with ecl. I will try some things to address this |
|
I typically avoid monolith packages - which includes things like |
Understood, the reason I am working on this is because I had trouble building this with ecl and it seems like a really cool project so I needed some way to build it. I removed the uiop dependency and instead just created simple wrapper functions around the ecl specific functionality. I also added implementations of these functions that work with sbcl. |
Do you recall what the issues were specifically? |
I included the error in my initial PR description. Seems to be related to ``typedef int bool` in my distro's GCC. I rebuilt ecl from source with clang instead, and that worked. However, I am sure I am not the only one who will have problems with getting ecl working - hence, maybe having lower-tier support for at least sbcl might be useful. |
|
What OS are you on? What version of |
Nobara Linux (it's a fedora based distro). It doesn't have ecl in it's package manager afaik so I had to download and comple ecl manually. I'm not sure which specific version of GCC. I will be travelling for a few days so I won't be able to check until I return home. Sorry about that. It should be whatever the latest GCC is that's packaged with nobara |
|
Specifically, the error seems to be that ecl did not specify the C version. Gcc then assumed the version was C23. |
Most ecl-specific calls could be trivially replaced with
uiopcalls, and given that asdf is already a dependency, this doesn't add any additional dependencies (uiopis part of asdf)The ecl specific command line arguments parser has been replaced with a simple manual parser. This may require a little bit of testing, as I wasn't sure exactly what each of the sub-commands were intended to do because I could not get the ecl version to compile on my machine (which was one of my motivations for this port)