X-Git-Url: http://git.chise.org/gitweb/?p=elisp%2Fsemi.git;a=blobdiff_plain;f=SEMI-MK;h=482deba3b1793c8169eed9592c763dc9e6988b85;hp=09bfcf93733f56a01ebc5178c74b425fffe85458;hb=HEAD;hpb=e9b4524fd90a96d74a0ab0b352b61e59c348a768 diff --git a/SEMI-MK b/SEMI-MK index 09bfcf9..482deba 100644 --- a/SEMI-MK +++ b/SEMI-MK @@ -1,28 +1,34 @@ ;;; -*-Emacs-Lisp-*- -;;; -;;; $Id: SEMI-MK,v 0.0 1997-02-28 04:08:12 tmorioka Exp $ -;;; + +;; SEMI-MK: installer for SEMI. + +;;; Code: (defun config-semi () - (let (prefix exec-prefix) - (setq prefix (car command-line-args-left)) - (and prefix - (not (string-equal "NONE" prefix)) - (progn - (defvar PREFIX prefix) - (setq command-line-args-left (cdr command-line-args-left)) - ) - (setq exec-prefix (car command-line-args-left)) - (progn - (defvar EXEC_PREFIX exec-prefix) - ;;(setq command-line-args-left (cdr command-line-args-left)) - ))) + (let (prefix exec-prefix lisp-dir version-specific-lisp-dir) + (and (setq prefix (car command-line-args-left)) + (or (string-equal "NONE" prefix) + (defvar PREFIX prefix) + )) + (setq command-line-args-left (cdr command-line-args-left)) + (and (setq lisp-dir (car command-line-args-left)) + (or (string-equal "NONE" lisp-dir) + (defvar LISPDIR lisp-dir) + )) + (setq command-line-args-left (cdr command-line-args-left)) + (and (setq version-specific-lisp-dir (car command-line-args-left)) + (or (string-equal "NONE" version-specific-lisp-dir) + (progn + (defvar VERSION_SPECIFIC_LISPDIR version-specific-lisp-dir) + (princ (format "VERSION_SPECIFIC_LISPDIR=%s\n" + VERSION_SPECIFIC_LISPDIR))) + )) + (setq command-line-args-left (cdr command-line-args-left)) + ) (load-file "SEMI-CFG") - (load-file "../bitmap-mule/BITMAP-ELS") - (load-file "../mu/MU-ELS") - (load-file "../mel/MEL-ELS") (load-file "SEMI-ELS") - (princ (format "PREFIX=%s\tEXEC_PREFIX=%s\n" PREFIX EXEC_PREFIX)) + (princ (format "PREFIX=%s +LISPDIR=%s\n" PREFIX LISPDIR)) ) (defun directory= (dir1 dir2) @@ -32,9 +38,6 @@ (defun compile-semi () (config-semi) (print load-path) - (compile-elisp-modules bitmap-modules "../bitmap-mule") - (compile-elisp-modules mu-modules-to-compile "../mu") - (compile-elisp-modules mel-modules "../mel") (compile-elisp-modules semi-modules-to-compile ".") (compile-elisp-module 'mime-setup ".") ) @@ -42,17 +45,59 @@ (defun install-semi () (config-semi) (princ (format "%s\n" emacs-version)) - (install-elisp-modules bitmap-modules "../bitmap-mule" BITMAP_DIR) - (install-elisp-modules mu-modules "../mu" MU_DIR) - (install-elisp-modules mel-modules "../mel" MEL_DIR) - (install-elisp-modules semi-modules "." SEMI_KERNEL_DIR) + (install-elisp-modules semi-modules "." SEMI_KERNEL_DIR) (install-elisp-modules '(mime-setup) "." SETUP_FILE_DIR) ) (defun install-execs () (config-semi) - (install-files BINS BIN_SRC_DIR BIN_DIR) (install-files METHODS METHOD_SRC_DIR METHOD_DIR nil t) ) +(defun config-semi-package () + (let (package-dir) + (and (setq package-dir (car command-line-args-left)) + (or (string= "NONE" package-dir) + (defvar PACKAGEDIR package-dir) + )) + (setq command-line-args-left (cdr command-line-args-left)) + (load-file "SEMI-CFG") + (load-file "SEMI-ELS") + + (princ (format "PACKAGEDIR=%s\n" PACKAGEDIR)) + )) + +(defun compile-semi-package () + (config-semi-package) + + (if (fboundp 'batch-update-directory-autoloads) + ;; XEmacs 21.5.19 and newer. + (progn + (add-to-list 'command-line-args-left ".") + (add-to-list 'command-line-args-left "semi") + (batch-update-directory-autoloads)) + (setq autoload-package-name "semi") + (add-to-list 'command-line-args-left ".") + (batch-update-directory)) + + (add-to-list 'command-line-args-left ".") + (Custom-make-dependencies) + + (compile-elisp-modules (append semi-modules-to-compile + '(mime-setup auto-autoloads custom-load)) + ".") + ) + +(defun install-semi-package () + (config-semi-package) + (install-elisp-modules (append semi-modules + '(mime-setup auto-autoloads custom-load)) + "./" + (expand-file-name SEMI_PREFIX + (expand-file-name "lisp" + PACKAGEDIR))) + (delete-file "./auto-autoloads.el") + (delete-file "./custom-load.el") + ) + ;;; SEMI-MK ends here