From 178b344bf251fa8de0d09a986485ec1a68d4c857 Mon Sep 17 00:00:00 2001
From: Francois-Rene Rideau <tunes@google.com>
Date: Mon, 18 Mar 2013 14:32:22 -0400
Subject: [PATCH] 2.32.20: fix monolithic-fasl-op on ECL.

---
 asdf.asd             |  2 +-
 bundle.lisp          | 18 ++++++++----------
 header.lisp          |  2 +-
 uiop/lisp-build.lisp |  2 +-
 upgrade.lisp         |  2 +-
 version.lisp-expr    |  2 +-
 6 files changed, 13 insertions(+), 15 deletions(-)

diff --git a/asdf.asd b/asdf.asd
index 87d6af1e2..1f32c8455 100644
--- a/asdf.asd
+++ b/asdf.asd
@@ -74,7 +74,7 @@
   :licence "MIT"
   :description "Another System Definition Facility"
   :long-description "ASDF builds Common Lisp software organized into defined systems."
-  :version "2.32.19" ;; to be automatically updated by make bump-version
+  :version "2.32.20" ;; to be automatically updated by make bump-version
   :depends-on ()
   #+asdf3 :encoding #+asdf3 :utf-8
   ;; For most purposes, asdf itself specially counts as a builtin system.
diff --git a/bundle.lisp b/bundle.lisp
index fb44ffc82..9a1c6e386 100644
--- a/bundle.lisp
+++ b/bundle.lisp
@@ -70,15 +70,12 @@
     ;; On "normal" Lisps: produce an image file from system and dependencies.
     ((selfward-operation :initform '(monolithic-fasl-op monolithic-lib-op))))
 
-  (defclass monolithic-fasl-op (monolithic-bundle-op basic-fasl-op selfward-operation)
-    ;; Create a single fasl for the system and its dependencies.
-    ((selfward-operation :initform 'load-fasl-op)))
+  ;; Create a single fasl for the system and its dependencies.
+  (defclass monolithic-fasl-op (monolithic-bundle-op basic-fasl-op) ())
 
-  (defclass monolithic-lib-op (monolithic-bundle-op basic-compile-op sideway-operation selfward-operation)
+  (defclass monolithic-lib-op (monolithic-bundle-op basic-compile-op)
     ;; ECL: Create a single linkable library for the system and its dependencies.
-    ((bundle-type :initform :lib)
-     (selfward-operation :initform 'lib-op)
-     (sideway-operation :initform 'lib-op)))
+    ((bundle-type :initform :lib)))
 
   (defclass monolithic-dll-op (monolithic-bundle-op basic-compile-op sideway-operation selfward-operation)
     ((bundle-type :initform :dll)
@@ -215,9 +212,10 @@
 
   (defmethod component-depends-on ((o monolithic-fasl-op) (c system))
     (declare (ignorable o))
-    `((fasl-op ,@(required-components c :other-systems t :component-type 'system
-                                        :goal-operation (find-operation o 'load-fasl-op)
-                                        :keep-operation 'fasl-op))
+    `((#-(or ecl mkcl) fasl-op #+(or ecl mkcl) lib-op
+         ,@(required-components c :other-systems t :component-type 'system
+                                  :goal-operation (find-operation o 'load-fasl-op)
+                                  :keep-operation 'fasl-op))
       ,@(call-next-method)))
 
   (defmethod component-depends-on ((o lib-op) (c system))
diff --git a/header.lisp b/header.lisp
index 859e45ba0..67f794540 100644
--- a/header.lisp
+++ b/header.lisp
@@ -1,5 +1,5 @@
 ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
-;;; This is ASDF 2.32.19: Another System Definition Facility.
+;;; This is ASDF 2.32.20: Another System Definition Facility.
 ;;;
 ;;; Feedback, bug reports, and patches are all welcome:
 ;;; please mail to <asdf-devel@common-lisp.net>.
diff --git a/uiop/lisp-build.lisp b/uiop/lisp-build.lisp
index 49b25d5ba..cfa72214a 100644
--- a/uiop/lisp-build.lisp
+++ b/uiop/lisp-build.lisp
@@ -52,7 +52,7 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
   (defun get-optimization-settings ()
     "Get current compiler optimization settings, ready to PROCLAIM again"
     #-(or clisp clozure cmu ecl sbcl scl)
-    (warn "~S does not support ~S. Please help me fix that." 'get-optimization-settings (lisp-implementation))
+    (warn "~S does not support ~S. Please help me fix that." 'get-optimization-settings (implementation-type))
     #+clozure (ccl:declaration-information 'optimize nil)
     #+(or clisp cmu ecl sbcl scl)
     (let ((settings '(speed space safety debug compilation-speed #+(or cmu scl) c::brevity)))
diff --git a/upgrade.lisp b/upgrade.lisp
index 4db1b3247..cbca42d9d 100644
--- a/upgrade.lisp
+++ b/upgrade.lisp
@@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO
          ;; "3.4.5.67" would be a development version in the official upstream of 3.4.5.
          ;; "3.4.5.0.8" would be your eighth local modification of official release 3.4.5
          ;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67
-         (asdf-version "2.32.19")
+         (asdf-version "2.32.20")
          (existing-version (asdf-version)))
     (setf *asdf-version* asdf-version)
     (when (and existing-version (not (equal asdf-version existing-version)))
diff --git a/version.lisp-expr b/version.lisp-expr
index 770761a7c..1fb6bf0ca 100644
--- a/version.lisp-expr
+++ b/version.lisp-expr
@@ -1 +1 @@
-"2.32.19"
+"2.32.20"
-- 
GitLab