Hi Randy, On 06/11/2018 10:49 PM, Randy Dunlap wrote: > Hi, > > Here is what I have so far. It begins with a makefile and some > template files that are added to. There's a good bit of Perl also. > > I put all of these files in tools/uapi/ and run them from there. > > There is one .c file generated for each .h file in builddir/usr/include > (O=builddir). > Thanks for this! I wrote a small Makefile (uapi-compile.mk) which I'd put in tools/build (I can change this to tools/uapi, if that is more apt). uapi-compile.mk straight-away compiles the uapi headers, without pulling them into any generated c source files. It may also be invoked with an environment variable 'UAPI_DIR' specifying the directory, for which the user would like to compile headers. This way we can test a directory at a time as well. In your opinion, would this be simpler to have rather than having to auto-generate c source files including each uapi header and also autog-enerating the make targets? I feel like this approach would make maintaining these makefiles/ scripts easier as well. > Out of 889 header files, I see 45 errors. That is better than I expected. > > The makefiles and scripts are attached (tar), as well as the output (I used > 'make -ik' so that make would keep going after errors and attempt to build > all target files). > > have fun! > I did a 'make ARCH=arm64 headers_install' from the kernel source's root, and then a 'make -kf uapi-compile.mk all > build.log 2>&1' to compile all the headers. Out of 864 headers, I see 20 compilation failures. I'm attaching uapi-compile.mk and the build.log file along. Thanks, Jayant