When I build my own Kamikaze SDK and try to compile packages I experience the issue documented here: https://dev.openwrt.org/ticket/2508

This does not impair my ability to compile packages but it is extremely annoying.

The relevant code is this part of the Makefile in the root SDK directory:

world: FORCE
        $(MAKE) package/compile
        -( \
                cd package; \
                find . -maxdepth 2 -name Config.in | \
                        sed -e 's,/Config.in,,g' | \
                        xargs -n1 $(MAKE) compile -C; \
        )

This is the high level part of the makefile which specifies how to build world (i.e. all packages) when you run make. The first line runs smoothly, and as far as I can tell builds the packages.  The rest is problematic and is what is causing errors.  More importantly, everything after the first line seems redundant. As far as I can tell, this code does almost exactly what the first line does, only it runs make only on package directories that contain the Config.in file.  It goes to the package directory, uses find to identify all Config.in files, uses sed to get the directory containing the Config.in files and xargs to run make.

My question is: Why is this code here?  Is there any reason to run make TWICE on directories that contain Config.in files?  When I run with V=99, I always get messages that the packages are already built from this part of the code (packages are already built by the first line in this portion of the makefile) and that nothing needs to be done.

Worse, as described in the open ticket above, if I run make without the V=99 option, it just dies when it hits this code.  This is because under these circumstances we have $(MAKE) defined as a cmd() (defined in include/verbose.mk) that gets defined and run, and the xargs command contains this huge string resulting in errors. 

So, is there any reason I shouldn't submit a patch that just deletes everything after "$(MAKE) package/compile" which seems to be all that really matters?

I am not intimately familiar with the inner workings of the build system -- I know just enough to make my programs  work -- so I'd like the input of an experienced developer in this matter before I submit a patch, especially one that could cause problems for the entire build system.

Also, I apologize if I am posting this in the wrong forum.  There is this Kamikaze forum and there is a developers forum that focuses on White Russian, so I wasn't sure which forum was more appropiate for a development issue with Kamikaze.

Eric