Changeset 11674


Ignore:
Timestamp:
02/20/09 20:17:15 (12 years ago)
Author:
ehuelsmann
Message:

More lispy MAKE-CLASSES.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/build-abcl.lisp

    r11673 r11674  
    246246(defun make-classes (force batch)
    247247  (let* ((source-files
    248           (mapcan #'(lambda (default)
    249                       (directory (merge-pathnames "*.java" default)))
    250                   (list *abcl-dir*
    251                         (merge-pathnames "util/" *abcl-dir*))))
    252          (to-do ()))
    253     (if force
    254         (setf to-do source-files)
    255         (dolist (source-file source-files)
    256           (let ((class-file (merge-pathnames (make-pathname :type "class"
    257                                                             :defaults source-file))))
    258             (when (or (null (probe-file class-file))
    259                       (>= (file-write-date source-file)
    260                           (file-write-date class-file)))
    261               (push source-file to-do)))))
     248          (remove-if-not #'(lambda (name)
     249                             (let ((output-name
     250                                    (make-pathname :type "class"
     251                                                     :defaults name)))
     252                               (or force
     253                                   (null (probe-file output-name))
     254                                   (>= (file-write-date name)
     255                                       (file-write-date output-name)))))
     256                         (mapcan #'(lambda (default)
     257                                     (directory (merge-pathnames "*.java"
     258                                                                 default)))
     259                                 (list *abcl-dir*
     260                                       (merge-pathnames "util/" *abcl-dir*))))))
    262261    (format t "~&JDK: ~A~%" *jdk*)
    263262    (format t "Java compiler: ~A~%" *java-compiler*)
    264263    (format t "Compiler options: ~A~%~%" (if *java-compiler-options* *java-compiler-options* ""))
    265264    (finish-output)
    266     (cond ((null to-do)
     265    (cond ((null source-files)
    267266           (format t "Classes are up to date.~%")
    268267           (finish-output)
     
    273272                         (cmdline (with-output-to-string (s)
    274273                                    (princ *java-compiler-command-line-prefix* s)
    275                                     (dolist (source-file to-do)
     274                                    (dolist (source-file source-files)
    276275                                      (princ
    277276                                       (if (equal (pathname-directory source-file) dir)
     
    283282                    (zerop status)))
    284283                 (t
    285                   (dolist (source-file to-do t)
     284                  (dolist (source-file source-files t)
    286285                    (unless (java-compile-file source-file)
    287286                      (format t "Build failed.~%")
Note: See TracChangeset for help on using the changeset viewer.