;;; Code:
+(defun install-just-print-p ()
+ (let ((flag (getenv "MAKEFLAGS"))
+ case-fold-search)
+ (princ (format "%s\n" flag))
+ (if flag
+ (string-match "^\\(\\(--[^ ]+ \\)+-\\|[^ =-]\\)*n" flag)
+ )))
+
+(defun install-update-package-files (package dir &optional just-print)
+ (cond (just-print
+ (princ (format "Updating autoloads in directory %s..\n\n" dir))
+
+ (princ (format "Processing %s\n" dir))
+ (princ "Generating custom-load.el...\n\n")
+
+ (princ (format "Compiling %s...\n"
+ (expand-file-name "auto-autoloads.el" dir)))
+ (princ (format "Wrote %s\n"
+ (expand-file-name "auto-autoloads.elc" dir)))
+
+ (princ (format "Compiling %s...\n"
+ (expand-file-name "custom-load.el" dir)))
+ (princ (format "Wrote %s\n"
+ (expand-file-name "custom-load.elc" dir)))
+ )
+ (t
+ (setq autoload-package-name package)
+ (add-to-list 'command-line-args-left dir)
+ (batch-update-directory)
+
+ (add-to-list 'command-line-args-left dir)
+ (Custom-make-dependencies)
+
+ (byte-compile-file (expand-file-name "auto-autoloads.el" dir))
+ (byte-compile-file (expand-file-name "custom-load.el" dir))
+ )))
+
(defun config-apel ()
- (let (prefix lisp-dir)
+ (let (prefix lisp-dir version-specific-lisp-dir)
(and (setq prefix (car command-line-args-left))
(or (string-equal "NONE" prefix)
(defvar PREFIX prefix)
(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 "APEL-CFG")
(or (boundp 'apel-modules)
(load-file "APEL-ELS")
))
(defun compile-apel ()
- ;;(add-to-list 'load-path (expand-file-name "../emu"))
- ;;(add-to-list 'load-path ".")
- ;;(require 'install)
(config-apel)
- (load "EMU-ELS")
+ (load-file "EMU-ELS")
(load-file "APEL-ELS")
(compile-elisp-modules emu-modules ".")
(compile-elisp-modules apel-modules ".")
(defun install-apel ()
(compile-apel)
- ;;(config-apel)
- (install-elisp-modules emu-modules "." EMU_DIR)
- (install-elisp-modules apel-modules "." APEL_DIR)
- )
+ (let ((just-print (install-just-print-p)))
+ (install-elisp-modules emu-modules "." EMU_DIR just-print)
+ (install-elisp-modules apel-modules "." APEL_DIR just-print)
+ ))
(defun config-apel-package ()
(let (package-dir)
(setq command-line-args-left (cdr command-line-args-left))
(load-file "APEL-CFG")
(load-file "APEL-ELS")
-
+ (load-file "EMU-ELS")
+
(princ (format "PACKAGEDIR=%s\n" PACKAGEDIR))
))
(defun compile-apel-package ()
(config-apel-package)
- (load "EMU-ELS")
- (load-file "APEL-ELS")
-
- (setq autoload-package-name "apel")
- (add-to-list 'command-line-args-left ".")
- (batch-update-directory)
-
- (add-to-list 'command-line-args-left ".")
- (Custom-make-dependencies)
-
(compile-elisp-modules emu-modules ".")
- (compile-elisp-modules (append apel-modules
- '(auto-autoloads custom-load))
- ".")
+ (compile-elisp-modules apel-modules ".")
)
(defun install-apel-package ()
(config-apel-package)
- (load "EMU-ELS")
- (install-elisp-modules (append emu-modules
- apel-modules
- '(mime auto-autoloads custom-load))
- "./"
- (expand-file-name APEL_PREFIX
- (expand-file-name "lisp"
- PACKAGEDIR)))
- )
+ (let ((just-print (install-just-print-p))
+ (dir (expand-file-name APEL_PREFIX
+ (expand-file-name "lisp" PACKAGEDIR))))
+ (install-elisp-modules emu-modules "." dir just-print)
+ (install-elisp-modules apel-modules "." dir just-print)
+ (install-update-package-files "apel" dir just-print)
+ ))
+
+(defun what-where-apel ()
+ (config-apel)
+ (load-file "EMU-ELS")
+ (princ (format "
+The files that belong to the EMU modules:
+ %s
+ -> %s
+
+The files that belong to the APEL modules:
+ %s
+ -> %s
+"
+ (mapconcat 'symbol-name emu-modules ", ")
+ EMU_DIR
+ (mapconcat 'symbol-name apel-modules ", ")
+ APEL_DIR)))
;;; APEL-MK ends here