Re: I would like to propose a new option -recursive for NetRexxC
I would say yes, bad idea.
There are several approaches, but a common one is to record the dependencies in a makefile, cmake list, build.xml for ant, or maven, or gradle. You need at least one of these tools to ensure dependencies are taken into account, at least for any non-trivial project ) more than a few classes.
Another approach is to let the compiler figure it out by recompiling everything all the time. In this time of fast computers and fast compilers that is feasible. In the days of my youth it certainly was not - I have vivid memories of a C++ project that took every night almost the whole night to rebuild. If that failed, nobody of a 20+ team could work.
So my principle is to make sure you only compile changed source, and relink. Java is doing that for you, so that is easy. What is not so easy, is not to introduce circular dependencies in your code - eliminate these by using interfaces.
Google for “recursive makefiles considered evil”; this will explain why the subdirectory-priority option is not such a good idea. The author advocates One Makefile.