Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
asdf
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
1
Issues
1
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Hugo Ishimaru
asdf
Commits
4b75e2b7
Commit
4b75e2b7
authored
Sep 16, 2014
by
Francois-Rene Rideau
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Improve GCL support: add chdir support; make install-asdf; update TODO.
parent
fe31090f
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
38 additions
and
19 deletions
+38
-19
TODO
TODO
+12
-5
tools/install-asdf.lisp
tools/install-asdf.lisp
+11
-1
uiop/os.lisp
uiop/os.lisp
+15
-13
No files found.
TODO
View file @
4b75e2b7
...
...
@@ -131,7 +131,16 @@
*** XCL doesn't properly process files the name of which contains a *
** GCL is almost working again; but implementation bugs remain.
See November 2013 discussion on gcl-devel.
See Francois-Rene Rideau's messages on gcl-devel starting November 2013.
*** Missing support for many UIOP functions:
combine-fasls, get-optimization-settings...
*** ASDF may now be included for (require "asdf") and (require "ASDF"),
but how to compile it properly?
*** GCL fails to properly compile ASDF with the default compilation settings,
but works with those in script-support.lisp.
Symptoms when trying to load asdf.o:
Signalled by "AN ANONYMOUS FUNCTION".
INTERNAL-SIMPLE-ERROR: The package named ASDF/INTERFACE, does not exist
*** Another GCL compiler bug:
when I changed the definition of getcwd from
(let ((*default-pathname-defaults* #p"")) (truename #p"")) to
...
...
@@ -143,11 +152,11 @@
before `(#',beforef)) ,@(when after `(#',afterf))))
*** (typep p 'logical-pathname) should be T if p has a logical-pathname host.
*** apropos is case-sensitive and returns a same symbol many times
(presumably once per package where it is present,
instead of just once for its home package)
*** compile-file fails to return proper secondary values in case of non-style WARNING.
*** (pathname-directory #p"foo/") is incorrectly ("foo") instead of (:RELATIVE "foo")
*** Missing: chdir, combine-fasls, and plenty more UIOP functions.
*** Do whatever it takes to pass the asdf tests, add the above?
*** Have (require "asdf") and (require "ASDF") both work.
*** Trying to uiop:slurp-stream-forms from a stream with #+(or) :foo
(or read-file-forms from an file with same) results in an error,
rather than nil. This is probably a bug in #+ processing.
...
...
@@ -159,8 +168,6 @@
rather than #(1 2 3 2 3 2 3 2 3) or even better #(1 2 3 3 3).
*** (DIRECTORY #p"*.*") fails to match files with pathname type NIL.
*** GCL doesn't properly process files the name of which contains a *
*** Require is useless, because there is no system search path,
and so you can't put ASDF (or anything) there.
*** Low-level compiler bug:
./cl-launch.sh -B redo_test sh gcl exec noupdate noinc file system noinit
...
...
tools/install-asdf.lisp
View file @
4b75e2b7
...
...
@@ -27,6 +27,16 @@ It notably doesn't work on:
* Corman Lisp, RMCL, Genera, that are obsolete anyway.
|#
#+
gcl
(
eval-when
(
:compile-toplevel
:load-toplevel
:execute
)
(
declaim
(
optimize
(
speed
1
)
(
safety
0
)
(
space
0
)))
(
proclaim
'
(
optimize
(
speed
1
)
(
safety
0
)
(
space
0
)))
(
si::use-fast-links
nil
)
(
compile-file
(
merge-pathnames
#p"../build/asdf.lisp"
*load-truename*
)
:output-file
(
merge-pathnames
#p"../modules/asdf.o"
system:*system-directory*
))
(
system:quit
0
))
;;; Ensure we load and configure this particular ASDF
#-
cl-launch
(
eval-when
(
:compile-toplevel
:load-toplevel
:execute
)
...
...
@@ -93,7 +103,7 @@ It notably doesn't work on:
(
defun
install-asdf-as-module
()
(
nest
(
let*
((
asdf.lisp
(
system-relative-pathname
:
asdf-tools
"../build/asdf.lisp"
))
(
let*
((
asdf.lisp
(
system-relative-pathname
:
uiop
"../build/asdf.lisp"
))
(
asdf.fasl
(
asdf-module-fasl
))
#+
(
or
ecl
mkcl
)
(
asdf.o
(
object-file
asdf.fasl
:object
))
#+
(
or
ecl
mkcl
)
(
asdf.a
(
object-file
asdf.fasl
:lib
))))
...
...
uiop/os.lisp
View file @
4b75e2b7
...
...
@@ -271,19 +271,21 @@ suitable for use as a directory name to segregate Lisp FASLs, C dynamic librarie
(
defun
chdir
(
x
)
"Change current directory, as per POSIX chdir(2), to a given pathname object"
(
if-let
(
x
(
pathname
x
))
(
or
#+
abcl
(
java:jstatic
"setProperty"
"java.lang.System"
"user.dir"
(
namestring
x
))
#+
allegro
(
excl:chdir
x
)
#+
clisp
(
ext:cd
x
)
#+
clozure
(
setf
(
ccl:current-directory
)
x
)
#+
(
or
cmu
scl
)
(
unix:unix-chdir
(
ext:unix-namestring
x
))
#+
cormanlisp
(
unless
(
zerop
(
win32::_chdir
(
namestring
x
)))
(
error
"Could not set current directory to ~A"
x
))
#+
ecl
(
ext:chdir
x
)
#+
genera
(
setf
*default-pathname-defaults*
x
)
#+
lispworks
(
hcl:change-directory
x
)
#+
mkcl
(
mk-ext:chdir
x
)
#+
sbcl
(
progn
(
require
:sb-posix
)
(
symbol-call
:sb-posix
:chdir
(
sb-ext:native-namestring
x
)))
(
error
"chdir not supported on your implementation"
)))))
#+
abcl
(
java:jstatic
"setProperty"
"java.lang.System"
"user.dir"
(
namestring
x
))
#+
allegro
(
excl:chdir
x
)
#+
clisp
(
ext:cd
x
)
#+
clozure
(
setf
(
ccl:current-directory
)
x
)
#+
(
or
cmu
scl
)
(
unix:unix-chdir
(
ext:unix-namestring
x
))
#+
cormanlisp
(
unless
(
zerop
(
win32::_chdir
(
namestring
x
)))
(
error
"Could not set current directory to ~A"
x
))
#+
ecl
(
ext:chdir
x
)
#+
gcl
(
system:chdir
x
)
#+
genera
(
setf
*default-pathname-defaults*
x
)
#+
lispworks
(
hcl:change-directory
x
)
#+
mkcl
(
mk-ext:chdir
x
)
#+
sbcl
(
progn
(
require
:sb-posix
)
(
symbol-call
:sb-posix
:chdir
(
sb-ext:native-namestring
x
)))
#-
(
or
abcl
allegro
clisp
clozure
cmu
cormanlisp
ecl
gcl
genera
lispworks
mkcl
sbcl
scl
)
(
error
"chdir not supported on your implementation"
))))
;;;; -----------------------------------------------------------------
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment