diff --git a/asdf.lisp b/asdf.lisp index 15bf12de31e12f90c552175ae9d14b60768092fb..dd6e869b1841f7e977050c302113820cc46e50dc 100644 --- a/asdf.lisp +++ b/asdf.lisp @@ -1276,7 +1276,12 @@ recursive calls to traverse.") ;; this is set based on the results of the ;; dependencies and whether we are in the ;; context of a *forcing* call... - (must-operate (or *forcing* forced)) + (must-operate (or *forcing* + ;; inter-system dependencies do NOT trigger + ;; building components + (and + (not (typep c 'system))) + forced)) (error nil)) (dolist (kid (module-components c)) (handler-case