r1750: Simplied logical pathnames and MCL loading
[uffi.git] / uffi.system
1 ;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
4 ;;;;
5 ;;;; Name:          uffi.system
6 ;;;; Purpose:       Defsystem-3/4 system definition file for UFFI package
7 ;;;; Programmer:    Kevin M. Rosenberg
8 ;;;; Date Started:  Feb 2002
9 ;;;;
10 ;;;; $Id: uffi.system,v 1.11 2002/04/07 02:10:18 kevin Exp $
11 ;;;;
12 ;;;; This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
13 ;;;;
14 ;;;; UFFI users are granted the rights to distribute and use this software
15 ;;;; as governed by the terms of the Lisp Lesser GNU Public License
16 ;;;; (http://opensource.franz.com/preamble.html), also known as the LLGPL.
17 ;;;; *************************************************************************
18
19 (declaim (optimize (debug 3) (speed 3) (safety 1) (compilation-speed 0)))
20 (in-package :cl-user)
21
22 (load (make-pathname :name "set-logical" :type "cl"
23                      :defaults *load-truename*))
24
25 (set-logical-host-for-pathname "UFFI" *load-truename*)
26 (set-logical-host-for-pathname "UFFI-SRC" 
27                                (merge-pathnames
28                                 (make-pathname
29                                  :directory
30                                  #+(or cmu allegro lispworks)
31                                  '(:relative "src")
32                                  #+mcl
33                                  '(:relative "src" "mcl")
34                                  )
35                                 *load-truename*))
36
37 ;;; UFFI system definition
38
39 (mk:defsystem :uffi
40     :source-pathname "UFFI-SRC:"
41     :source-extension "cl"
42     :binary-pathname "UFFI-SRC:bin;"
43     :components 
44     ((:file "package")
45      (:file "primitives" :depends-on ("package"))
46      (:file "strings" :depends-on ("primitives"))
47      (:file "objects" :depends-on ("primitives"))
48      (:file "aggregates" :depends-on ("primitives"))
49      (:file "functions" :depends-on ("primitives"))
50      (:file "libraries" :depends-on ("package")))
51     :finally-do
52     (pushnew :uffi cl:*features*))
53