-
-
Notifications
You must be signed in to change notification settings - Fork 3.7k
new package: sbcl #14435
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
new package: sbcl #14435
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
This file was deleted.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| TERMUX_PKG_HOMEPAGE=https://www.sbcl.org/ | ||
| TERMUX_PKG_DESCRIPTION="Steel Bank Common Lisp" | ||
| TERMUX_PKG_LICENSE="BSD" | ||
| TERMUX_PKG_MAINTAINER="@termux" | ||
| TERMUX_PKG_VERSION=2.3.0 | ||
| TERMUX_PKG_SRCURL=https://prdownloads.sourceforge.net/sbcl/sbcl-${TERMUX_PKG_VERSION}-source.tar.bz2 | ||
| TERMUX_PKG_BUILD_DEPENDS="ecl" | ||
| TERMUX_PKG_SHA256=bf743949712ae02cb7493f3b8b57ce241948bf61131e36860ddb334da1439c97 | ||
|
|
||
| termux_step_make() { | ||
| cd $TERMUX_PKG_SRCDIR | ||
| XC_HOST="$TERMUX_PREFIX/bin/ecl --norc --c-stack 16777217" | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. indentation is different on this line compared to rest of the script (use tabs everywhere)
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Sure. |
||
| ./make.sh --prefix=$TERMUX_PREFIX \ | ||
| --xc-host="$XC_HOST" \ | ||
| --with-android \ | ||
| --fancy \ | ||
| --without-gcc-tls | ||
| } | ||
|
|
||
| termux_step_make_install() { | ||
| cd $TERMUX_PKG_SRCDIR | ||
| ./install.sh | ||
| } | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,27 @@ | ||
| --- a/src/code/android-os.lisp | ||
| +++ b/src/code/android-os.lisp | ||
| @@ -19,24 +19,6 @@ | ||
| "Return a string describing the supporting software." | ||
| "Android") | ||
|
|
||
| -;;; FIXME: More duplicated logic here vrt. other oses. Abstract into | ||
| -;;; uname-software-version? | ||
| -(defun software-version () | ||
| - "Return a string describing version of the supporting software, or NIL | ||
| - if not available." | ||
| - (or *software-version* | ||
| - (setf *software-version* | ||
| - (sb-alien:with-alien | ||
| - ((ptr (* char) | ||
| - (sb-alien:alien-funcall | ||
| - (sb-alien:extern-alien "software_version" | ||
| - (function (* sb-alien:char)))))) | ||
| - (and (not (sb-alien:null-alien ptr)) | ||
| - (unwind-protect | ||
| - (sb-alien:with-alien ((c-string sb-alien:c-string ptr)) | ||
| - c-string) | ||
| - (sb-alien:free-alien ptr))))))) | ||
| - | ||
| ;;; Return user time, system time, and number of page faults. | ||
| (defun get-system-info () | ||
| (multiple-value-bind |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| --- a/src/code/run-program.lisp | ||
| +++ b/src/code/run-program.lisp | ||
| @@ -1329,14 +1329,7 @@ Users Manual for details about the PROCESS structure. | ||
| (or sb-sys::*software-version* | ||
| (setf sb-sys::*software-version* | ||
| (possibly-base-stringize | ||
| - #+linux | ||
| - (with-open-file (f "/proc/sys/kernel/osrelease") (read-line f)) | ||
| - #-linux | ||
| (string-trim '(#\newline) | ||
| (%with-output-to-string (stream) | ||
| - (run-program "/bin/uname" | ||
| - ;; "-r" on haiku just prints "1" | ||
| - ;; but "-v" prints some detail. | ||
| - #+haiku '("-v") | ||
| - #-haiku '("-r") | ||
| - :output stream))))))) | ||
| + (run-program "/data/data/com.termux/files/usr/bin/uname" | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Please use
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Makes sense. |
||
| + '("-r") :output stream))))))) | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| --- a/src/cold/build-order.lisp-expr | ||
| +++ b/src/cold/build-order.lisp-expr | ||
| @@ -490,7 +490,6 @@ | ||
| #+android ("src/code/android-os" :not-host) | ||
| #+sunos ("src/code/sunos-os" :not-host) | ||
| #+bsd ("src/code/bsd-os" :not-host) | ||
| - #+linux ("src/code/linux-os" :not-host) | ||
| #+haiku ("src/code/haiku-os" :not-host) | ||
| #+win32 ("src/code/win32-os" :not-host) |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| --- a/src/runtime/run-program.c | ||
| +++ b/src/runtime/run-program.c | ||
| @@ -144,7 +144,7 @@ void closefds_range(unsigned int first, unsigned int last) | ||
| unsigned int close_fd; | ||
| if (last == ~0U) | ||
| { | ||
| -#ifdef SVR4 | ||
| +#if defined(SVR4) || defined(LISP_FEATURE_ANDROID) | ||
| last = sysconf(_SC_OPEN_MAX)-1; | ||
| #else | ||
| last = getdtablesize()-1; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This won't work for cross-compilation, can't run $TERMUX_PREFIX/bin/ecl in the ubuntu docker image. Instead /usr/bin/ecl from ubuntu, or some ecl compiled in termux_step_host_build, needs to be used.
Add ecl to setup-ubuntu.sh to install ubuntu's ecl in the docker image
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose ubuntu 22.04's ecl will be too old as well, so we might need to compile a newer ecl in a
termux_step_host_buildstep for this to workUh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In that case, it would be better to use SBCL as the host. I will try to do it!