Merge semi-1_13_7.
[elisp/semi.git] / SEMI-MK
1 ;;; -*-Emacs-Lisp-*-
2
3 ;; SEMI-MK: installer for SEMI.
4
5 ;;; Code:
6
7 (defun config-semi ()
8   (let (prefix exec-prefix lisp-dir version-specific-lisp-dir)
9     (and (setq prefix (car command-line-args-left))
10          (or (string-equal "NONE" prefix)
11              (defvar PREFIX prefix)
12              ))
13     (setq command-line-args-left (cdr command-line-args-left))
14     (and (setq lisp-dir (car command-line-args-left))
15          (or (string-equal "NONE" lisp-dir)
16              (defvar LISPDIR lisp-dir)
17              ))
18     (setq command-line-args-left (cdr command-line-args-left))
19     (and (setq version-specific-lisp-dir (car command-line-args-left))
20          (or (string-equal "NONE" version-specific-lisp-dir)
21              (progn
22                (defvar VERSION_SPECIFIC_LISPDIR version-specific-lisp-dir)
23                (princ (format "VERSION_SPECIFIC_LISPDIR=%s\n"
24                               VERSION_SPECIFIC_LISPDIR)))
25              ))
26     (setq command-line-args-left (cdr command-line-args-left))
27     )
28   (load-file "SEMI-CFG")
29   (load-file "SEMI-ELS")
30   (princ (format "PREFIX=%s
31 LISPDIR=%s\n" PREFIX LISPDIR))
32   )
33
34 (defun directory= (dir1 dir2)
35   (string= (file-name-as-directory dir1)(file-name-as-directory dir2))
36   )
37
38 (defun compile-semi ()
39   (config-semi)
40   (print load-path)
41   (compile-elisp-modules semi-modules-to-compile ".")
42   (compile-elisp-module  'mime-setup            ".")
43   )
44
45 (defun install-semi ()
46   (config-semi)
47   (princ (format "%s\n" emacs-version))
48   (install-elisp-modules semi-modules    "."    SEMI_KERNEL_DIR)
49   (install-elisp-modules '(mime-setup)   "."    SETUP_FILE_DIR)
50   )
51
52 (defun install-execs ()
53   (config-semi)
54   (install-files METHODS METHOD_SRC_DIR METHOD_DIR nil t)
55   )
56
57 (defun config-semi-package ()
58   (let (package-dir)
59     (and (setq package-dir (car command-line-args-left))
60          (or (string= "NONE" package-dir)
61              (defvar PACKAGEDIR package-dir)
62              ))
63     (setq command-line-args-left (cdr command-line-args-left))
64     (load-file "SEMI-CFG")
65     (load-file "SEMI-ELS")
66                                           
67     (princ (format "PACKAGEDIR=%s\n" PACKAGEDIR))
68     ))
69
70 (defun compile-semi-package ()
71   (config-semi-package)
72
73   (setq autoload-package-name "semi")
74   (add-to-list 'command-line-args-left ".")
75   (batch-update-directory)
76
77   (add-to-list 'command-line-args-left ".")
78   (Custom-make-dependencies)
79
80   (compile-elisp-modules (append semi-modules-to-compile
81                                  '(mime-setup auto-autoloads custom-load))
82                          ".")
83   )
84
85 (defun install-semi-package ()
86   (config-semi-package)
87   (install-elisp-modules (append semi-modules
88                                  '(mime-setup auto-autoloads custom-load))
89                          "./"
90                          (expand-file-name SEMI_PREFIX
91                                            (expand-file-name "lisp"
92                                                              PACKAGEDIR)))
93   )
94
95 ;;; SEMI-MK ends here