Message ID | 20240624-kbuild-fix-xconfig-v1-1-7c06eae6d3aa@avm.de (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | kbuild: Use $(obj)/%.cc to fix host C++ module builds | expand |
On Montag, 24. Juni 2024 13:12:14 MESZ Nicolas Schier wrote: > Use $(obj)/ instead of $(src)/ prefix when building C++ modules for > host, as explained in commit b1992c3772e6 ("kbuild: use $(src) instead > of $(srctree)/$(src) for source directory"). This fixes build failures > of 'xconfig': > > $ make O=build/ xconfig > make[1]: Entering directory '/data/linux/kbuild-review/build' > GEN Makefile > make[3]: *** No rule to make target '../scripts/kconfig/qconf-moc.cc', > needed by 'scripts/kconfig/qconf-moc.o'. Stop. > > Fixes: b1992c3772e6 ("kbuild: use $(src) instead of $(srctree)/$(src) for > source directory") > Reported-by: Rolf Eike Beer <eb@emlix.com> > Signed-off-by: Nicolas Schier <n.schier@avm.de> Thanks, works for me. Tested-by: Rolf Eike Beer <eb@emlix.com>
On Mon, Jun 24, 2024 at 8:12 PM Nicolas Schier <n.schier@avm.de> wrote: > > Use $(obj)/ instead of $(src)/ prefix when building C++ modules for > host, as explained in commit b1992c3772e6 ("kbuild: use $(src) instead > of $(srctree)/$(src) for source directory"). This fixes build failures > of 'xconfig': > > $ make O=build/ xconfig > make[1]: Entering directory '/data/linux/kbuild-review/build' > GEN Makefile > make[3]: *** No rule to make target '../scripts/kconfig/qconf-moc.cc', needed by 'scripts/kconfig/qconf-moc.o'. Stop. > > Fixes: b1992c3772e6 ("kbuild: use $(src) instead of $(srctree)/$(src) for source directory") > Reported-by: Rolf Eike Beer <eb@emlix.com> > Signed-off-by: Nicolas Schier <n.schier@avm.de> Applied to linux-kbuild. Thanks! > --- > scripts/Makefile.host | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/Makefile.host b/scripts/Makefile.host > index d35f55e0d141..e85be7721a48 100644 > --- a/scripts/Makefile.host > +++ b/scripts/Makefile.host > @@ -146,7 +146,7 @@ $(call multi_depend, $(host-cxxmulti), , -objs -cxxobjs) > # Create .o file from a single .cc (C++) file > quiet_cmd_host-cxxobjs = HOSTCXX $@ > cmd_host-cxxobjs = $(HOSTCXX) $(hostcxx_flags) -c -o $@ $< > -$(host-cxxobjs): $(obj)/%.o: $(src)/%.cc FORCE > +$(host-cxxobjs): $(obj)/%.o: $(obj)/%.cc FORCE > $(call if_changed_dep,host-cxxobjs) > > # Create executable from a single Rust crate (which may consist of > > --- > base-commit: 224a21441b0925ce1e60afb27629773a522c946e > change-id: 20240624-kbuild-fix-xconfig-f0e95d0d5b27 > > Best regards, > -- > Nicolas Schier >
diff --git a/scripts/Makefile.host b/scripts/Makefile.host index d35f55e0d141..e85be7721a48 100644 --- a/scripts/Makefile.host +++ b/scripts/Makefile.host @@ -146,7 +146,7 @@ $(call multi_depend, $(host-cxxmulti), , -objs -cxxobjs) # Create .o file from a single .cc (C++) file quiet_cmd_host-cxxobjs = HOSTCXX $@ cmd_host-cxxobjs = $(HOSTCXX) $(hostcxx_flags) -c -o $@ $< -$(host-cxxobjs): $(obj)/%.o: $(src)/%.cc FORCE +$(host-cxxobjs): $(obj)/%.o: $(obj)/%.cc FORCE $(call if_changed_dep,host-cxxobjs) # Create executable from a single Rust crate (which may consist of
Use $(obj)/ instead of $(src)/ prefix when building C++ modules for host, as explained in commit b1992c3772e6 ("kbuild: use $(src) instead of $(srctree)/$(src) for source directory"). This fixes build failures of 'xconfig': $ make O=build/ xconfig make[1]: Entering directory '/data/linux/kbuild-review/build' GEN Makefile make[3]: *** No rule to make target '../scripts/kconfig/qconf-moc.cc', needed by 'scripts/kconfig/qconf-moc.o'. Stop. Fixes: b1992c3772e6 ("kbuild: use $(src) instead of $(srctree)/$(src) for source directory") Reported-by: Rolf Eike Beer <eb@emlix.com> Signed-off-by: Nicolas Schier <n.schier@avm.de> --- scripts/Makefile.host | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- base-commit: 224a21441b0925ce1e60afb27629773a522c946e change-id: 20240624-kbuild-fix-xconfig-f0e95d0d5b27 Best regards,