Partly because launchd didn't have a sensible Open Source license, and partly for the same reason systemd doesn't run on non-Linux kernels: it's designed for its target OS, and makes use of that OS's native functionality to the point that porting would become decidedly non-trivial.
systemd took heavy inspiration from launchd and other sources, but provides extensive functionality that launchd does not.
Comments
Partly because launchd didn't have a sensible Open Source license, and partly for the same reason systemd doesn't run on non-Linux kernels: it's designed for its target OS, and makes use of that OS's native functionality to the point that porting would become decidedly non-trivial.
systemd took heavy inspiration from launchd and other sources, but provides extensive functionality that launchd does not.