When we ported OpenJDK to macOS, I ended up producing a universal binary by having the Makefile run itself to produce HotSpot twice, and then gluing them together with `lipo` afterwards. There isn't really a better way when the actual project configurations are different.
IIRC it was eventually removed because nobody else needed to do such a thing so it was hard to maintain.