Skip to content
build.xcvb 3.14 KiB
Newer Older
;;; -*- mode: lisp -*-
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;                                                                  ;;;
;;; Free Software available under an MIT-style license. See LICENSE  ;;;
;;;                                                                  ;;;
Francois-Rene Rideau's avatar
Francois-Rene Rideau committed
;;; Copyright (c) 2008-2011 ITA Software, Inc.  All rights reserved. ;;;
;;; Copyright (c) 2012-2012 Google, Inc.  All rights reserved.       ;;;
;;;                                                                  ;;;
;;; Original authors: Francois-Rene Rideau, Spencer Brody            ;;;
;;;                                                                  ;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(module
 (:fullname "xcvb"
  :author ("Francois-Rene Rideau" "Joyce Chen" "Spencer Brody" "Peter Keller")
  :maintainer "Francois-Rene Rideau"
  :licence "MIT" ;; MIT-style license. See LICENSE
  :description "XCVB"
  :long-description "an eXtensible Component Verifier and Builder for Lisp.
XCVB provides a scalable system to build large software in Lisp, featuring
deterministic separate compilation and enforced locally-declared dependencies."
  :build-depends-on
  ((:fasl "/xcvb/driver")
   (:asdf "asdf")
   (:build "/cl-launch")
   (:build "/fare-memoization")
   (:build "/lisp-interface-library")
   (:asdf "asdf-dependency-grovel")
   (:asdf "closer-mop")
   (:build "command-line-arguments")
   (:build "fare-utils") ;; utilities and data structures.
   (:build "fare-matcher") ;; fare-matcher and fare-quasiquote-readtable
   (:build "fare-mop")
   (:when (:featurep :xcvb-farmer)
     (:asdf "iolib") ;; I/O event loop
     (:asdf "quux-iolib")) ;; signalfd support (experimental)
   (:asdf "babel")
   (:asdf "ironclad")
   (:asdf "binascii")
   (:when (:featurep (:not :clisp))
     (:asdf "rucksack"))
Francois-Rene Rideau's avatar
Francois-Rene Rideau committed
   (:when (:featurep :clozure)
     "/single-threaded-ccl")
   (:when (:featurep :sbcl)
     ;; Used by XCVB
     (:require :sb-posix)
     (:require :sb-sprof)
     ;; make life easy for SLIME
     (:require :sb-grovel)
     (:require :sb-cltl2)
     (:require :sb-introspect)
     (:require :sb-bsd-sockets)))
  :depends-on
  ("bootstrap"
   "conditions"
   "digest"
   "manifest"
   "grain-implementation"
   "grain-sets"
   "virtual-pathnames"
   "normalize-dependency"
   "target-lisp-commands"
   "makefile-backend"
   "ne-makefile-backend"
   "asdf-converter"
   "asdf-backend"
   "list-files"
   "pathname-mappings"
   "slave"
   "run-program-backend"
   (:when (:featurep :xcvb-farmer)
     "farmer")
   "source-registry"
   "main"
Francois-Rene Rideau's avatar
Francois-Rene Rideau committed
   "self-upgrade"
   "version"
   "cffi-grovel-support")
  :supersedes-asdf
  ("xcvb"
   ("xcvb-driver" "driver")
   ("lisp-invocation" "lisp-invocation")
   ("asdf-condition-control" "asdf-condition-control")
   ("xcvb-bootstrap" "bootstrap")
   ("xcvb-bridge" "bridge"))
  :depends-on :build
  :pre-image-dump "(xcvb::prepare-image :version #.(xd::get-xcvb-version) :directory #.(xd:getenv \"INSTALL_XCVB\"))"
  :entry-point "xcvb::main"))