source: trunk/source/tools/asdf-install/variables.lisp @ 10782

Last change on this file since 10782 was 10782, checked in by rme, 13 years ago

Add /usr/local/bin to shell search patch. (From ticket:302).

File size: 4.0 KB
Line 
1(in-package #:asdf-install)
2
3(defun directorify (name)
4  ;; input name may or may not have a trailing #\/, but we know we
5  ;; want a directory
6  (let ((path (pathname name)))
7    (if (pathname-name path)
8        (merge-pathnames
9         (make-pathname :directory `(:relative ,(pathname-name path))
10                        :name "")
11         path)
12        path)))
13
14#+:digitool
15(defparameter *home-volume-name*
16  (second (pathname-directory (truename (user-homedir-pathname))))
17  "Digitool MCL retains the OS 9 convention that ALL volumes have a
18name which includes the startup volume. OS X doesn't know about this.
19This figures in the home path and in the normalization for system
20namestrings.")
21
22(defvar *proxy* (get-env-var "http_proxy"))
23
24(defvar *proxy-user* nil)
25
26(defvar *proxy-passwd* nil)
27
28(defvar *trusted-uids* nil)
29
30(defvar *verify-gpg-signatures* t
31  "Can be t, nil, or :unknown-locations. If true, then the signature of all packages will be checked. If nil, then no signatures will be checked. If :unkown-locations, then only packages whose location is not a prefix of any `*safe-url-prefixes*` will be tested.")
32
33(defvar *safe-url-prefixes* nil)
34
35(defvar *preferred-location* nil)
36
37(defvar *cclan-mirror*
38  (or (get-env-var "CCLAN_MIRROR")
39      "http://ftp.linux.org.uk/pub/lisp/cclan/"))
40
41#+(or :win32 :mswindows)
42(defvar *cygwin-bin-directory*
43  (pathname "C:\\PROGRA~1\\Cygwin\\bin\\"))
44
45#+(or :win32 :mswindows)
46(defvar *cygwin-bash-program*
47  "C:\\PROGRA~1\\Cygwin\\bin\\bash.exe")
48
49;; bin first
50(defvar *shell-search-paths* '((:absolute "bin")
51                               (:absolute "usr" "bin")
52                               (:absolute "usr" "local" "bin"))
53  "A list of places to look for shell commands.")
54
55(defvar *gnu-tar-program*
56  #-(or :netbsd :freebsd :solaris) "tar"
57  #+(or :netbsd :freebsd :solaris) "gtar"
58  "Path to the GNU tar program")
59
60(eval-when (:compile-toplevel :load-toplevel :execute)
61  (defparameter *supported-defsystems*
62    (list :mk-defsystem
63          :asdf
64
65          ;; Add others.
66          ;; #+lispworks :common-defsystem
67          ;; #+gbbopen :mini-module
68          ))         
69  (unless (some (lambda (defsys-tag)
70                  (member defsys-tag *features*))
71                *features*)
72    (error "ASDF-INSTALL requires one of the following \"defsystem\" utilities to work: ~A"
73           *supported-defsystems*)))
74
75(defvar *asdf-install-dirs*
76  (directorify (or #+sbcl (get-env-var "SBCL_HOME")
77                   (get-env-var "ASDF_INSTALL_DIR")
78                   (make-pathname :directory
79                                  `(:absolute
80                                    #+digitool ,*home-volume-name*
81                                    "usr" "local" "asdf-install")))))
82
83(defvar *private-asdf-install-dirs*
84  #+:sbcl
85  (merge-pathnames (make-pathname :directory '(:relative ".sbcl"))
86                   (truename (user-homedir-pathname)))
87  #-:sbcl
88  (cond ((get-env-var "PRIVATE_ASDF_INSTALL_DIR")
89          (directorify (get-env-var "PRIVATE_ASDF_INSTALL_DIR")))
90        (t
91          (merge-pathnames (make-pathname 
92                            :directory '(:relative ".asdf-install-dir"))
93                           (truename (user-homedir-pathname))))))
94
95(defparameter *locations*
96  `((,(merge-pathnames (make-pathname :directory '(:relative "site"))
97                       *asdf-install-dirs*)
98     ,(merge-pathnames (make-pathname :directory '(:relative "site-systems"))
99                       *asdf-install-dirs*)
100     "System-wide install")
101    (,(merge-pathnames (make-pathname :directory '(:relative "site"))
102                       *private-asdf-install-dirs*)
103     ,(merge-pathnames (make-pathname :directory '(:relative "systems"))
104                       *private-asdf-install-dirs*)
105     "Personal installation")))
106
107(defvar *tar-extractors*
108  '(extract-using-tar))
109
110(defvar *systems-installed-this-time* nil
111  "Used during installation propagation \(see *propagate-installation*\) to keep track off which systems have been installed during the current call to install.")
112
113(defvar *propagate-installation* nil
114  "If true, then every required system will be re-asdf-installed.")
115
116(defvar *temporary-directory* 
117  (pathname-sans-name+type (user-homedir-pathname)))
Note: See TracBrowser for help on using the repository browser.