;;; -*- Lisp -*-
-(cl:defpackage #:sb-rotate-byte-system
- (:use #:asdf #:cl))
-(cl:in-package #:sb-rotate-byte-system)
-
(defsystem sb-rotate-byte
:version "0.1"
#+sb-building-contrib :pathname
((:file "package")
(:file "compiler" :depends-on ("package"))
(:module "vm"
- :depends-on ("compiler")
- :components
- ((:file "x86-vm"
- :in-order-to ((compile-op (feature :x86))))
- (:file "x86-64-vm"
- :in-order-to ((compile-op (feature :x86-64))))
- (:file "ppc-vm"
- :in-order-to ((compile-op (feature :ppc)))))
- :pathname
- #+sb-building-contrib #p"SYS:CONTRIB;SB-ROTATE-BYTE;"
- #-sb-building-contrib #.(make-pathname :directory '(:relative))
- :if-component-dep-fails :ignore)
- (:file "rotate-byte" :depends-on ("compiler"))))
+ :depends-on ("compiler")
+ :pathname ""
+ :components
+ ((:file "x86-vm" :if-feature :x86)
+ (:file "x86-64-vm" :if-feature :x86-64)
+ (:file "ppc-vm" :if-feature :ppc)))
+ (:file "rotate-byte" :depends-on ("compiler")))
+ :perform (load-op :after (o c) (provide 'sb-rotate-byte))
+ :perform (test-op (o c) (test-system 'sb-rotate-byte/tests)))
+
-(defmethod perform :after ((o load-op) (c (eql (find-system :sb-rotate-byte))))
- (provide 'sb-rotate-byte))
+(defsystem sb-rotate-byte/tests
+ #+sb-building-contrib :pathname
+ #+sb-building-contrib #p"SYS:CONTRIB;SB-ROTATE-BYTE;"
+ :depends-on (sb-rotate-byte)
+ :components ((:file "rotate-byte-tests")))
-(defmethod perform ((o test-op) (c (eql (find-system :sb-rotate-byte))))
- (or (load (compile-file "rotate-byte-tests.lisp"))
- (error "test-op failed")))