Re: [PATCH 5/6] create/adjust generated/expsyms.h

From: Sam Ravnborg
Date: Mon Feb 08 2016 - 17:25:09 EST


On Mon, Feb 08, 2016 at 03:28:34PM -0500, Nicolas Pitre wrote:
> Given the list of exported symbols needed by all modules, we can create
> a header file containing preprocessor defines for each of those symbols.
> Also, when some symbols are added and/or removed from the list, we can
> update the time on the corresponding files used as build dependencies for
> those symbols. And finally, if any symbol did change state, the
> corresponding source files must be rebuilt.
>
> The insertion or removal of an EXPORT_SYMBOL() entry within a module may
> create or remove the need for another exported symbol. This is why this
> operation has to be repeated until the list of needed exported symbols
> becomes stable. Only then the final kernel and modules link take place.

Could this magic with vmlinux_recursive have been implemented in a more
obvious way in link-vmlinux.sh?
One of the purposes with link-vmlinux.sh was to make the final link
stage more readable and this patch goes in the other direction.

Sam