Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#1612 - SBCL does not include multithreading
Attached to Project:
Arch Linux
Opened by Ari (iamtheari) - Sunday, 10 October 2004, 20:14 GMT
Last edited by Dale Blount (dale) - Monday, 11 October 2004, 13:11 GMT
Opened by Ari (iamtheari) - Sunday, 10 October 2004, 20:14 GMT
Last edited by Dale Blount (dale) - Monday, 11 October 2004, 13:11 GMT
|
DetailsThe SBCL 0.4.14-1 package is buitl without :SB-THREAD. This should be a simple thing to change before SBCL is compiled. On Linux, there doesn't seem to be a good reason not to include :SB-THREAD.
|
This task depends upon
PKGBUILD
Regardless of how this is done, here is how to enable :SB-THREAD:
In PKGBUILD's build() function, after cd $startdir/src/sbcl-$pkgver:
echo '(lambda (features)' > customize-target-features.lisp
echo ' (flet ((enable (x) (pushnew x features))' >> customize-target-features.lisp
echo ' (disable (x) (setf features (remove x features))))' >> customize-target-features.lisp
echo ' (enable :sb-thread)))' >> customize-target-features.lisp
I think Debian used to have separate sbcl and sbcl-mt packages, but evidently that is no longer the case, and the main sbcl package is multithreaded. I don't see any reason for Arch to perform the same experiment that Debian apparently did to answer this very question, but that's not my job to decide, so the option of a separate (and conflicting-with) package "sbcl-mt" is available.
I agree with the assessment that if Debian can go with a single multithreaded one, it's probably good enough for us. Those guys regularly re-debate whether or not anal-retentive is hyphenated.
This should enable multithreading (:sb-thread) as well as remove the kludge regarding the previously broken cmucl package.
I think something isn't quite right with install paths, though, because it seems to be producing a lot of stuff in /share, /bin, and /lib. I also verified that when I install the existing package, I have no /share directory.
I used your packagebuild exactly Ari, only I updated pkgrel to 2, and namcap reports:
[pjmattal@brahms sbcl]$ namcap sbcl-0.8.14-2.pkg.tar.gz
sbcl W: File (bin/) exists in a non-standard directory.
sbcl W: File (bin/sbcl) exists in a non-standard directory.
sbcl W: File (share/) exists in a non-standard directory.
sbcl W: File (share/doc/) exists in a non-standard directory.
sbcl W: File (share/doc/sbcl/) exists in a non-standard directory.
sbcl W: File (share/doc/sbcl/BUGS) exists in a non-standard directory.
sbcl W: File (share/doc/sbcl/NEWS) exists in a non-standard directory.
sbcl W: File (share/doc/sbcl/html/) exists in a non-standard directory.
sbcl W: File (share/doc/sbcl/SUPPORT) exists in a non-standard directory.
sbcl W: File (share/doc/sbcl/COPYING) exists in a non-standard directory.
sbcl W: File (share/doc/sbcl/CREDITS) exists in a non-standard directory.
sbcl W: File (share/man/) exists in a non-standard directory.
sbcl W: File (share/man/man1/) exists in a non-standard directory.
sbcl W: File (share/man/man1/sbcl.1) exists in a non-standard directory.
sbcl W: File (share/info/) exists in a non-standard directory.
sbcl W: Directory (lib/sbcl/sb-posix/test-lab/) is empty
sbcl W: Directory (lib/sbcl/site-systems/) is empty
sbcl W: Directory (share/doc/sbcl/html/) is empty
sbcl W: Directory (share/info/) is empty
sbcl W: Directory (usr/) is empty
sbcl W: Directory (usr/man/) is empty
sbcl W: Directory (usr/man/man1/) is empty
If you need more info to replicate this behavior, I can attach the full filelist I got and/or try to get you the binary package. Let me know, and submit a new PKGBUILD. I'd try to figure it out myself but I know only a very little about lisp. ;)
I don't know much about Arch's package management or build system. Note that I did not add the mkdir lines that create, for instance, usr/man/man1. Those were in the PKGBUILD when I first looked at it. I am going to rebuild it with a tweak and see what happens.
The problem I was having was that SBCL's install.sh script refuses to run if INSTALL_PATH and SBCL_HOME conflict.
Jason, do you want to look at it or weigh in, or shall I drop in the new package? I'm using the second attached PKGBUILD verbatim, except with pkgrel = 2.
- P
I've just been sitting here watching the traffic fly back and forth. And I'll just say I appreciate it.
Feel free to update the package.