On 13/10/2022 14:05, Anthony Perard wrote: > No need for $(AUTOSRCS), GNU make can generate them as needed when > trying to build them as needed when trying to build the object. Also, > those two AUTOSRCS don't need to be a prerequisite of "all". As for > the "clean" target, those two files are already removed via "_*.c". > > We don't need $(AUTOINCS) either: > - As for both _libxl_savm_msgs*.h headers, we are adding more > selective dependencies so the headers will still be generated as > needed. > - "clean" rule already delete the _*.h files, so AUTOINCS aren't needed > there. > > "libxl_internal_json.h" doesn't seems to have ever existed, so the > dependency is removed. > > Add few prerequisite for "libxl_internal.h" so all headers that it > depends on should be generated. And have $(SAVE_HELPER_OBJS) depends > on "libxl_internal.h". > > Rework objects prerequisites, to have them dependents on either > "libxl.h" or "libxl_internal.h". "libxl.h" is not normally included > directly in the source code as "libxl_internal.h" is used instead. But > we are adding "libxl.h" as prerequisite of "libxl_internal.h", so > generated headers will still be generated as needed. > > "testidl.c" doesn't depends on "libxl.h" but "testidl.o" does.
I'm afraid I don't follow here. How can this be true? ~Andrew