Changeset 13903


Ignore:
Timestamp:
04/01/12 19:15:39 (9 years ago)
Author:
Mark Evenson
Message:

abcl-asdf: Final touches on 0.8.0.

Location:
trunk/abcl/contrib/abcl-asdf
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/contrib/abcl-asdf/abcl-asdf.lisp

    r13902 r13903  
    2424;;; We intercept compilation to ensure that load-op will succeed
    2525(defmethod perform ((op compile-op) (c mvn))
    26   (maybe-parse-mvn c)
     26  (ensure-parsed-mvn c)
    2727  (abcl-asdf:resolve c))
    2828     
    2929(defmethod perform ((operation load-op) (c mvn))
    30   (maybe-parse-mvn c)
     30  (ensure-parsed-mvn c)
    3131  (java:add-to-classpath
    3232   (abcl-asdf:as-classpath
     
    3535;;; A Maven URI has the form "mvn:group-id/artifact-id/version"
    3636;;;
     37;;; Sometimes people write "group-id:artifact-id:version" to refer to
     38;;; Maven artifacts.  One can use ABCL-ASDF:RESOLVE directly for
     39;;; serialized references to artifacts of this form.
     40;;;
    3741;;; Currently we "stuff" the group-id/artifact-id into the 'name' and
    3842;;; use the component 'version' for the version.  Parts of ASDF
    3943;;; *reallY* want ASDF:VERSION to be a triple of intergers, and never
    4044;;; anything more, so that is part of the motivation behind this effort.
    41 ;;; ??? rename me to ENSURE-MVN-PARSE ??
    42 (defun maybe-parse-mvn (component)
     45(defparameter *mvn-repositories* nil
     46  "A list of all Maven repositories encountered in the lifetime of this instance of the implementation.")
     47
     48(defun ensure-parsed-mvn (component)
    4349  (with-slots (name group-id artifact-id
    44                version schema path)
     50               version schema path repository)
    4551      component
    4652    (when (null asdf::artifact-id)
     
    6470                      name version)))
    6571        (setf schema "mvn")
     72        (pushnew repository *mvn-repositories*)
    6673        ;;; Always normalized path "on the way out" to contain group-id/artifact-id/version
    6774        (setf path (format nil "~A/~A/~A" group-id artifact-id version))))))
  • trunk/abcl/contrib/abcl-asdf/packages.lisp

    r13865 r13903  
    1313
    1414   #:init
     15
     16;;; ASDF
     17;;;   #:iri #:mvn
     18;;;   #:ensure-parsed-mvn
    1519
    1620;;; "Internal" API
Note: See TracChangeset for help on using the changeset viewer.