Hello, guest. We have noticed that you are not registered at this bug tracker. Your experience will be greatly enhanced if you log in. To do so, you first must register by clicking on the Register tab at the top. If you are already registered, you can login at the Login tab.
Syndicate Syndicate Listing New Display Search Login/Register
Bug Id ?
Reporter ?
dherring
Product/Version ?
LibCL Distribution / 0.1
Status ?
Closed
Severity ?
Moderate
Duplicate Of ?
- none -
Summary ?
compile-libcl uses reader-macros to determine which packages to load
Report Time ?
December 21, 2008 08:37:48 PM
Assignment ?
dherring
Resolution ?
Fixed
Priority ?
Normal
Dependencies ?
- none -


Votes
For: 0 (0%)
Against: 0 (0%)
Total: 0

December 21, 2008 08:37:48 PM dherring
This works, but it would be better if the structure was reworked to a more general mechanism.

The biggest problem is things like
#-test :package1
#-test :package-depending-on-package1

But there are also problems where we need to test something not in *features* (e.g. cl-l10n's requirement that files are read using utf-8).

Maybe compile-libcl should use an extension of the libcl-packages database...
(libcl-package
; <current stuff>
:package :package-depending-on-package1
;; both tests must pass. nil indicates no test required
:feature-test "(and ecl (not unicode))" ; as a string for special reading
:test (lambda () ...) ; must be runnable before anything is compiled
;; this package will be compiled after its dependencies, and not at all if their tests fail
:depends-on '(:package1))

Additionally, pass/fail could be logged to drive an implementation-compatibility table.