On 12/17/05, Gregory Bird <[EMAIL PROTECTED]> wrote:
Does asdf-install have the concepts of virtual packages?  What I mean is can you have a 'package' that is simply a list of other packages including version numbers?  If if does then we can create a standard-library-1.0 package which is just a list of  libraries that should be installed to create the standard library toolset version 1.0.

Sorry for replying to myself but I looked into asdf-install tutorial on Edi's site and it says this:

In order to be ASDF-installable a library has to contain a system definition for ASDF. It also has to be packaged in a certain way: It is assumed to come as a gzipped tar archive (usually ending in .tar.gz or .tgz) which unpacks into one directory possibly containing sub-directories. The system definition has to have a name corresponding to the name of the library (so if your library is called "foobar" the system definition is supposed to be foobar.asd) and has to reside in the top-level directory.
 
So based on that I think I could create a shell of a package and asdf-install will download and install my dependencies.  Then I can just 'use' the standard-library package in my program and have access to all of those libraries.

Example standard-library.asd (the packages I'm depending on here are just examples...):
;; -*- lisp -*-

(defpackage standard-library-system
  (:use :common-lisp :asdf))

(in-package standard-library-system)

(defsystem standard-library
  :description "Standard Lisp Library"
  :long-description "Standard Lisp Library"
  :version "0.1"
  :author ""
  :maintainer ""
  :licence "Public Domain"
  :depends-on (#:cl-ppcre
           #:split-sequence
           #:pxmlutils
           #:puri
           #:trivial-http)
  :components
  ((:doc-file "README")
   (:file "packages")))

Example packages.lisp:
;;; -*- lisp -*-

(in-package #:common-lisp-user)

(defpackage #:standard-library
  (:use #:common-lisp
    #:sb-ext
    #:sb-impl
    #:sb-thread
    #:cl-ppcre
    #:split-sequence
    #:net.html.parser
    #:puri
    #:trivial-http)
  (:documentation "Standard Lisp Library"))

Now if I write code that uses this standard-library package I should have access to all of these libraries right?  Or do I need to do something else?  Like an export statement in the defpackage maybe??

--
greg 'lisp newbie'
_______________________________________________
Gardeners mailing list
[email protected]
http://www.lispniks.com/mailman/listinfo/gardeners

Reply via email to