From patchwork Mon Jun 24 08:56:41 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rolf Eike Beer X-Patchwork-Id: 13709208 Received: from mx1.emlix.com (mx1.emlix.com [178.63.209.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 694D422318 for ; Mon, 24 Jun 2024 09:02:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=178.63.209.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1719219776; cv=none; b=LytRxq20k7mb25efzV8SaWxXGDiden0YPAGziX/Rd7VkQNUrPKRl/CgZoHUd7kEdSkOu1aEEo/lWh2V42qCmDoIFeDlEpCi1ZNdSQByeoGngeMumDCnN2y5Y7i79c8fUR48EDa02K2Sxe1cFFZ7hyXuT/ev8offPkzgQxTaX9c4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1719219776; c=relaxed/simple; bh=PUhSn2OMwDV1nFF06BqxmzkNtTScDTzkrG2jYG2LUGY=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type; b=CP4lqW2+jzJOi4P2L4mR+OPPWrcA9t78JbmPBOJ217V/JUWECPPOtaM96Gwy0T0cBZ9MS64v1+IyJimVzQuaiJ4LDjtyVcr9i60Zz9Whi8chGeBQ9vyQAIto+E8pcRze9ggliZn5DCxXMJlAkakzI133LKE8MbNiekq44QZlfks= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=emlix.com; spf=pass smtp.mailfrom=emlix.com; arc=none smtp.client-ip=178.63.209.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=emlix.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=emlix.com Received: from mailer.emlix.com (unknown [81.20.112.87]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.emlix.com (Postfix) with ESMTPS id E824C5F8AF; Mon, 24 Jun 2024 10:56:47 +0200 (CEST) From: Rolf Eike Beer To: Masahiro Yamada Cc: linux-kbuild@vger.kernel.org Subject: "make xconfig" fails with "No rule to make target =?utf-8?b?4oCm?= =?utf-8?b?L3Fjb25mLW1vYy5jYyDigKYi?= Date: Mon, 24 Jun 2024 10:56:41 +0200 Message-ID: <5792762.DvuYhMxLoT@devpool47.emlix.com> Organization: emlix GmbH Precedence: bulk X-Mailing-List: linux-kbuild@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 $ make O=~/repos/build/linux/ xconfig V=1 make -f linux/scripts/Makefile.build obj=scripts/kconfig xconfig # HOSTCXX scripts/kconfig/qconf.o g++ -Wp,-MMD,scripts/kconfig/.qconf.o.d -Wall -O2 -std=c++11 -fPIC -I/usr/include/qt6/QtCore -I/usr/include/qt6 -DQT_CORE_LIB -I/usr/lib64/qt6/mkspecs/linux-g++ -I/usr/include/qt6/QtGui -DQT_GUI_LIB -I/usr/include/qt6/QtWidgets -DQT_WIDGETS_LIB -std=c++17 -I ./scripts/kconfig -c -o scripts/kconfig/qconf.o linux/scripts/kconfig/qconf.cc make[3]: *** No rule to make target 'linux/scripts/kconfig/qconf-moc.cc', needed by 'scripts/kconfig/qconf-moc.o'. Stop. The culprit seems to be 0e912c03208075b95ea726076bf1b45db8419bc2. If I revert this like the following I'm able to do "make xconfig" again: I don't think this is the proper solution, but at least it works. I hope you find a better way to fix this. Regards, Eike --- a/scripts/kconfig/Makefile +++ b/scripts/kconfig/Makefile @@ -198,22 +198,22 @@ $(addprefix $(obj)/, mconf.o $(lxdialog)): | $(obj)/mconf-cflags # qconf: Used for the xconfig target based on Qt hostprogs += qconf -qconf-cxxobjs := qconf.o qconf-moc.o +qconf-cxxobjs := qconf.o qconf-objs := images.o $(common-objs) HOSTLDLIBS_qconf = $(call read-file, $(obj)/qconf-libs) HOSTCXXFLAGS_qconf.o = -std=c++11 -fPIC $(call read-file, $(obj)/qconf-cflags) -HOSTCXXFLAGS_qconf-moc.o = -std=c++11 -fPIC $(call read-file, $(obj)/qconf-cflags) $(obj)/qconf: | $(obj)/qconf-libs -$(obj)/qconf.o $(obj)/qconf-moc.o: | $(obj)/qconf-cflags +$(obj)/qconf.o: | $(obj)/qconf-cflags +$(obj)/qconf.o: $(obj)/qconf.moc quiet_cmd_moc = MOC $@ - cmd_moc = $(call read-file, $(obj)/qconf-bin)/moc $< -o $@ + cmd_moc = $(call read-file, $(obj)/qconf-bin)/moc -i $< -o $@ -$(obj)/qconf-moc.cc: $(src)/qconf.h FORCE | $(obj)/qconf-bin +$(obj)/%.moc: $(src)/%.h FORCE | $(obj)/qconf-bin $(call if_changed,moc) -targets += qconf-moc.cc +targets += qconf.moc # gconf: Used for the gconfig target based on GTK+ hostprogs += gconf diff --git a/scripts/kconfig/qconf.cc b/scripts/kconfig/qconf.cc index c6c42c0f4e5d..283b427f4321 100644 --- a/scripts/kconfig/qconf.cc +++ b/scripts/kconfig/qconf.cc @@ -25,6 +25,7 @@ #include "lkc.h" #include "qconf.h" +#include "qconf.moc" #include "images.h"