“subdirs.el”中为啥要检测“normal-top-level-add-subdirs-to-load-path”?

原问题在

我翻译一下:


我打算模仿 PREFIXDIR/share/emacs/28.2/site-lisp/subdirs.el 写一个自己的 subdirs.el (whose directory is in load-path).

然后发现那个文件的内容是:

(if (fboundp 'normal-top-level-add-subdirs-to-load-path)
    (normal-top-level-add-subdirs-to-load-path))

它这边 (fboundp 'normal-top-level-add-subdirs-to-load-path) 的意义是什么? 当 Emacs 加载 PREFIXDIR/share/emacs/28.2/site-lisp/subdirs.el 时, 这个函数到底有没有定义 难道不是一个已知的事实吗, 为什么需要运行时检测?

而且如果经过推测, 此时该函数确实没有定义的话, 那不就是说该目录下的所有子目录以及该文件 (subdirs.el) (从是否自动加入到 load-path 的角度看) 没有存在的意义?