On Tue, 1 Nov 2016 15:19:59 +0100 Michal Marek <mmarek@xxxxxxxx> wrote: > On 2016-10-31 12:14, Nicholas Piggin wrote: > > +# This is convoluted. The .S file must first be preprocessed to run guards and > > +# expand names, then the resulting exports must be constructed into plain > > +# EXPORT_SYMBOL(symbol); to build our dummy C file, and that gets preprocessed > > +# to make the genksyms input. > > # > > # These mirror gensymtypes_c and co above, keep them in synch. > > cmd_gensymtypes_S = \ > > (echo "\#include <linux/kernel.h>" ; \ > > echo "\#include <asm/asm-prototypes.h>" ; \ > > - grep EXPORT_SYMBOL $< | sed 's/$$/;/' ) | \ > > + $(CPP) $(a_flags) $< | \ > > + grep ^___EXPORT_SYMBOL | \ > > + sed 's/___EXPORT_SYMBOL \([a-zA-Z0-9_]*\),.*/EXPORT_SYMBOL(\1);/' ) | \ > > Is this sed pass necessary? Just add -D__GENKSYMS__ also to the first > cpp run and EXPORT_SYMBOL will stay intact. I can't see how it would work if asm-generic/export.h doesn't have any tests for GENKSYMS. > Anyway, I'm going to merge your patch 2/2 now. Okay. We should come to some resolution of the preprocessing issue too. I'm logging off for tonight, but if you want to tweak or redo the incremental patch, feel free. Thanks, Nick -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html