From nobody Sun Sep 14 03:52:00 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5D003C05027 for ; Thu, 26 Jan 2023 19:07:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229482AbjAZTHh (ORCPT ); Thu, 26 Jan 2023 14:07:37 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50408 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232380AbjAZTHX (ORCPT ); Thu, 26 Jan 2023 14:07:23 -0500 Received: from mail-yb1-xb4a.google.com (mail-yb1-xb4a.google.com [IPv6:2607:f8b0:4864:20::b4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1002D6810E for ; Thu, 26 Jan 2023 11:07:14 -0800 (PST) Received: by mail-yb1-xb4a.google.com with SMTP id u186-20020a2560c3000000b007c8e2cf3668so2862372ybb.14 for ; Thu, 26 Jan 2023 11:07:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=8+gYGtqL2SRpdZUrbarcTj/VyrfCH7sXhTEO9COsfhA=; b=NVYUr+Uqf3LXuiY2vufck3b8NGaYASFbpX9cUq+Y3vSlnWt2MQrtxr5AawvrcLWisL NstcVu8PTp8LcmDng0BrP/LHuuIwpysNYOYw1GRCCHVvYufydYd8QofUm29SVFVAFWgr 8J3H2YNlpa9sS+ddOaMGmYaTYrLRczvAJbJ9F3ZviiVLhwgoEmlUhDmaBNdIQEqg1lTd tOblDzgIFRdaf/3Htpzx5Hu1OtX0PvHLv4ZTHFeMJhMbvQIbi8V+A1m/LSix1DRgMgcT sC16ewzP7A6tErnLqVq+FpwJu3cxJkuKZzrSQnQLUbY7iUI7+sROPYGXWqPSqTshBlhY tM2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8+gYGtqL2SRpdZUrbarcTj/VyrfCH7sXhTEO9COsfhA=; b=QTSvvMBxurvFrQnoe/51YG19EnHf8HQywPh1azzrCHyDZ4Z2M2f1YUFwv8CuZ3Dy8y PQiSKAhLuSlj9DA0PJ+VnTUSiAJpr7zBV+Pxki/s1x/9D+W1rW6uzVSjbja2iiD1hfZ8 WvfR43oavj4mNH87hZjaQkMHOL8JKAN+TSMJ1JmRbiWexzf+3/0RBhCHXnKGApbVCaX5 NlYfFYe7UHvjRwwzPA6gRG9O0lwtYnQ6qZ2NxZ/MYYuOIYRhJMA0slOU10RFRhY62veD NCIdYQRUXM2gTVBwzO0zRpZdRu4WsB89pbXZPAlds0soonk/3JTP9xvrNGCKRGh8rPRZ 11eA== X-Gm-Message-State: AFqh2kobhftKTXYbcdZx7bzJy2MyxswhD6lSuLaoS/kV3kWVvNZrNjP+ yJ0tGg0SOPttGEZ12rLv3Acnx/yihKPS X-Google-Smtp-Source: AMrXdXtudaBVFWg4qUncYz8rcrZjJtg9DTzzyU9zA2GA1yz0akWAMZBB/rWGPj2/alDYiJ3Vlbum5DqAAJ8n X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:568d:4d98:b468:b025]) (user=irogers job=sendgmr) by 2002:a81:78cc:0:b0:364:2f5d:5eb6 with SMTP id t195-20020a8178cc000000b003642f5d5eb6mr6102751ywc.215.1674760033313; Thu, 26 Jan 2023 11:07:13 -0800 (PST) Date: Thu, 26 Jan 2023 11:06:04 -0800 In-Reply-To: <20230126190606.40739-1-irogers@google.com> Message-Id: <20230126190606.40739-2-irogers@google.com> Mime-Version: 1.0 References: <20230126190606.40739-1-irogers@google.com> X-Mailer: git-send-email 2.39.1.456.gfc5497dd1b-goog Subject: [PATCH v4 1/3] objtool: Install libsubcmd in build From: Ian Rogers To: Josh Poimboeuf , Peter Zijlstra , Nathan Chancellor , Nick Desaulniers , Tom Rix , Masahiro Yamada , Nicolas Schier , linux-kernel@vger.kernel.org, llvm@lists.linux.dev Cc: Stephane Eranian , Andrii Nakryiko , Jiri Olsa , Arnaldo Carvalho de Melo , Namhyung Kim , Ian Rogers Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Including from tools/lib can create inadvertent dependencies. Install libsubcmd in the objtool build and then include the headers from there. Signed-off-by: Ian Rogers --- tools/objtool/.gitignore | 1 + tools/objtool/Build | 2 -- tools/objtool/Makefile | 31 +++++++++++++++++++++++-------- 3 files changed, 24 insertions(+), 10 deletions(-) diff --git a/tools/objtool/.gitignore b/tools/objtool/.gitignore index 14236db3677f..4faa4dd72f35 100644 --- a/tools/objtool/.gitignore +++ b/tools/objtool/.gitignore @@ -2,3 +2,4 @@ arch/x86/lib/inat-tables.c /objtool fixdep +libsubcmd/ diff --git a/tools/objtool/Build b/tools/objtool/Build index 33f2ee5a46d3..a3cdf8af6635 100644 --- a/tools/objtool/Build +++ b/tools/objtool/Build @@ -16,8 +16,6 @@ objtool-y +=3D libctype.o objtool-y +=3D str_error_r.o objtool-y +=3D librbtree.o =20 -CFLAGS +=3D -I$(srctree)/tools/lib - $(OUTPUT)libstring.o: ../lib/string.c FORCE $(call rule_mkdir) $(call if_changed_dep,cc_o_c) diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile index a3a9cc24e0e3..0bfdb9da8729 100644 --- a/tools/objtool/Makefile +++ b/tools/objtool/Makefile @@ -12,9 +12,13 @@ srctree :=3D $(patsubst %/,%,$(dir $(CURDIR))) srctree :=3D $(patsubst %/,%,$(dir $(srctree))) endif =20 -SUBCMD_SRCDIR =3D $(srctree)/tools/lib/subcmd/ -LIBSUBCMD_OUTPUT =3D $(or $(OUTPUT),$(CURDIR)/) -LIBSUBCMD =3D $(LIBSUBCMD_OUTPUT)libsubcmd.a +LIBSUBCMD_DIR =3D $(srctree)/tools/lib/subcmd/ +ifneq ($(OUTPUT),) + LIBSUBCMD_OUTPUT =3D $(abspath $(OUTPUT))/libsubcmd +else + LIBSUBCMD_OUTPUT =3D $(CURDIR)/libsubcmd +endif +LIBSUBCMD =3D $(LIBSUBCMD_OUTPUT)/libsubcmd.a =20 OBJTOOL :=3D $(OUTPUT)objtool OBJTOOL_IN :=3D $(OBJTOOL)-in.o @@ -28,7 +32,8 @@ INCLUDES :=3D -I$(srctree)/tools/include \ -I$(srctree)/tools/arch/$(HOSTARCH)/include/uapi \ -I$(srctree)/tools/arch/$(SRCARCH)/include \ -I$(srctree)/tools/objtool/include \ - -I$(srctree)/tools/objtool/arch/$(SRCARCH)/include + -I$(srctree)/tools/objtool/arch/$(SRCARCH)/include \ + -I$(LIBSUBCMD_OUTPUT)/include WARNINGS :=3D $(EXTRA_WARNINGS) -Wno-switch-default -Wno-switch-enum -Wno-= packed -Wno-nested-externs CFLAGS :=3D -Werror $(WARNINGS) $(KBUILD_HOSTCFLAGS) -g $(INCLUDES) $(LI= BELF_FLAGS) LDFLAGS +=3D $(LIBELF_LIBS) $(LIBSUBCMD) $(KBUILD_HOSTLDFLAGS) @@ -38,6 +43,7 @@ elfshdr :=3D $(shell echo '$(pound)include ' | = $(CC) $(CFLAGS) -x c -E - CFLAGS +=3D $(if $(elfshdr),,-DLIBELF_USE_DEPRECATED) =20 AWK =3D awk +MKDIR =3D mkdir =20 BUILD_ORC :=3D n =20 @@ -57,13 +63,22 @@ $(OBJTOOL): $(LIBSUBCMD) $(OBJTOOL_IN) $(QUIET_LINK)$(CC) $(OBJTOOL_IN) $(LDFLAGS) -o $@ =20 =20 -$(LIBSUBCMD): fixdep FORCE - $(Q)$(MAKE) -C $(SUBCMD_SRCDIR) OUTPUT=3D$(LIBSUBCMD_OUTPUT) +$(LIBSUBCMD_OUTPUT): + @$(MKDIR) -p $@ + +$(LIBSUBCMD): fixdep FORCE $(LIBSUBCMD_OUTPUT) + @$(MAKE) -C $(LIBSUBCMD_DIR) O=3D$(LIBSUBCMD_OUTPUT) \ + DESTDIR=3D$(LIBSUBCMD_OUTPUT) prefix=3D subdir=3D \ + $@ install_headers + +$(LIBSUBCMD)-clean: + $(call QUIET_CLEAN, libsubcmd) + $(Q)$(RM) -r -- $(LIBSUBCMD_OUTPUT) =20 -clean: +clean: $(LIBSUBCMD)-clean $(call QUIET_CLEAN, objtool) $(RM) $(OBJTOOL) $(Q)find $(OUTPUT) -name '*.o' -delete -o -name '\.*.cmd' -delete -o -nam= e '\.*.d' -delete - $(Q)$(RM) $(OUTPUT)arch/x86/lib/inat-tables.c $(OUTPUT)fixdep $(LIBSUBCMD) + $(Q)$(RM) $(OUTPUT)arch/x86/lib/inat-tables.c $(OUTPUT)fixdep =20 FORCE: =20 --=20 2.39.1.456.gfc5497dd1b-goog From nobody Sun Sep 14 03:52:00 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 419E1C54EAA for ; Thu, 26 Jan 2023 19:07:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232380AbjAZTHq (ORCPT ); Thu, 26 Jan 2023 14:07:46 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50442 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232402AbjAZTHh (ORCPT ); Thu, 26 Jan 2023 14:07:37 -0500 Received: from mail-yw1-x1149.google.com (mail-yw1-x1149.google.com [IPv6:2607:f8b0:4864:20::1149]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E162468102 for ; Thu, 26 Jan 2023 11:07:21 -0800 (PST) Received: by mail-yw1-x1149.google.com with SMTP id 00721157ae682-4d4b54d0731so30260657b3.18 for ; Thu, 26 Jan 2023 11:07:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=3qJcEY+ZX+KD+dakVj5PWdl1/U84NI1vMkfserB11IU=; b=VBuKku8BGWTkhWFizWHyyhUjws2wNvltFz3NGcXto9JQYc64mPSLQpHRQmInfxQdrH /iK978K8qVY2ui7retQHnfBzrH+rwZ+XmdnBZJmd2iEEazJPCaze9LWAlMqR2++yJLUO bz5PujbGBMPAklGyFoIr73HThaY118yfD3kcQkFHL1Rcrs9feLoyXDaQLGokfVRXcwN6 dxrAZIcpPuFgzX05bfzbZ4xXomN7k1XtTSICMep8lQ132PPjbZVv+6cxC7BsEAZ3B0nx 7GAENPXEyyOirEF0yLNNsewj/5geTHVosmTTISsuLGCYokw5E+jmI/PGOcXm8/ebM1BB Pz7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=3qJcEY+ZX+KD+dakVj5PWdl1/U84NI1vMkfserB11IU=; b=v9NJFv9Aos26HcPa08ElpnsdiMTJGlqmyXvCuY9kLTuWcAyFTJjs/9VgiyKr13O2OH RF2DsS7jJx+X9sQuuOUj8qXojUIGCkuWaEUUum/N34VG3b7dqS5E1EGL2u3fKHtCl8iK dtRS88y4BbYAM7eU5FuRxy7dq7xsfcqMI0wZgPukLWBLgp/llfe7xOXy8Ab2bBZqaQQQ CQvUxDoue1Mr2gYRTHpJySybAXum1tw/XIQDhBc87iLAkFWKvHsZt/Ew98YBUomrNjUk VZb/rWHKaKcoVDCTT3jdGiVXSB1NoXQxgbKT3drMWLvwbcMg8ONRM4UfYMi8hwHjBT8V yvxQ== X-Gm-Message-State: AFqh2kpDMG+dAnstHo2Xtk1sYoPstRgPqGD7X7+5FMx5NMEF4IBUuTKp LWc5c+7lNn/UTtcsCzItXoYuDfYJ/hbV X-Google-Smtp-Source: AMrXdXv8TJ3rPCwa3wVZ7YApAJ0g0saNF9wIGtAze1pHV7rFkK09vJ616P0Gbuqe3EVoKsGLKVVOIs3kXdA8 X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:568d:4d98:b468:b025]) (user=irogers job=sendgmr) by 2002:a0d:eec6:0:b0:4d6:5735:dbfd with SMTP id x189-20020a0deec6000000b004d65735dbfdmr4440830ywe.157.1674760041142; Thu, 26 Jan 2023 11:07:21 -0800 (PST) Date: Thu, 26 Jan 2023 11:06:05 -0800 In-Reply-To: <20230126190606.40739-1-irogers@google.com> Message-Id: <20230126190606.40739-3-irogers@google.com> Mime-Version: 1.0 References: <20230126190606.40739-1-irogers@google.com> X-Mailer: git-send-email 2.39.1.456.gfc5497dd1b-goog Subject: [PATCH v4 2/3] objtool: Properly support make V=1 From: Ian Rogers To: Josh Poimboeuf , Peter Zijlstra , Nathan Chancellor , Nick Desaulniers , Tom Rix , Masahiro Yamada , Nicolas Schier , linux-kernel@vger.kernel.org, llvm@lists.linux.dev Cc: Stephane Eranian , Andrii Nakryiko , Jiri Olsa , Arnaldo Carvalho de Melo , Namhyung Kim , Ian Rogers Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The Q variable was being used but never correctly set up. Add the setting up and use in place of @. Signed-off-by: Ian Rogers --- tools/objtool/Makefile | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile index 0bfdb9da8729..f0651eac06e6 100644 --- a/tools/objtool/Makefile +++ b/tools/objtool/Makefile @@ -45,6 +45,12 @@ CFLAGS +=3D $(if $(elfshdr),,-DLIBELF_USE_DEPRECATED) AWK =3D awk MKDIR =3D mkdir =20 +ifeq ($(V),1) + Q =3D +else + Q =3D @ +endif + BUILD_ORC :=3D n =20 ifeq ($(SRCARCH),x86) @@ -56,18 +62,18 @@ export srctree OUTPUT CFLAGS SRCARCH AWK include $(srctree)/tools/build/Makefile.include =20 $(OBJTOOL_IN): fixdep FORCE - @$(CONFIG_SHELL) ./sync-check.sh - @$(MAKE) $(build)=3Dobjtool + $(Q)$(CONFIG_SHELL) ./sync-check.sh + $(Q)$(MAKE) $(build)=3Dobjtool =20 $(OBJTOOL): $(LIBSUBCMD) $(OBJTOOL_IN) $(QUIET_LINK)$(CC) $(OBJTOOL_IN) $(LDFLAGS) -o $@ =20 =20 $(LIBSUBCMD_OUTPUT): - @$(MKDIR) -p $@ + $(Q)$(MKDIR) -p $@ =20 $(LIBSUBCMD): fixdep FORCE $(LIBSUBCMD_OUTPUT) - @$(MAKE) -C $(LIBSUBCMD_DIR) O=3D$(LIBSUBCMD_OUTPUT) \ + $(Q)$(MAKE) -C $(LIBSUBCMD_DIR) O=3D$(LIBSUBCMD_OUTPUT) \ DESTDIR=3D$(LIBSUBCMD_OUTPUT) prefix=3D subdir=3D \ $@ install_headers =20 --=20 2.39.1.456.gfc5497dd1b-goog From nobody Sun Sep 14 03:52:00 2025 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id C24CDC54EAA for ; Thu, 26 Jan 2023 19:07:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232429AbjAZTHx (ORCPT ); Thu, 26 Jan 2023 14:07:53 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50528 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230221AbjAZTHt (ORCPT ); Thu, 26 Jan 2023 14:07:49 -0500 Received: from mail-yb1-xb4a.google.com (mail-yb1-xb4a.google.com [IPv6:2607:f8b0:4864:20::b4a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 26B056ACB9 for ; Thu, 26 Jan 2023 11:07:29 -0800 (PST) Received: by mail-yb1-xb4a.google.com with SMTP id a62-20020a25ca41000000b0080b838a5199so2853931ybg.6 for ; Thu, 26 Jan 2023 11:07:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=J2pcP69LZTMAGIqNu0kBA1pDv1CbJMJ6T2ufALbnNrU=; b=pXe/uQ1qDwqsEkXeC8cn2A3Ig5yiMlN2CYSEtYX66/pwv/plFMLJJ+/g5ihcr0bNNg l3NUR0pa1SPKeTLGI5HEs5SOD6k7dIH+H62DdoJShBp1QdJDzXFbgNfhjygVhQcVfLro OYc2ok/D5SlYyhkWCP3gaOI12wN5sXvoIZJwR1oY03stXoOJk3d5nru1KuoNFxlBbb9o KrHER9mbu8XcfF7erXoH8hgx/0vt1r2Bo6iMFFzYWrAnvqz9A7Tl1vnlpxEow3QXbNUY 3K8Z3t6XNvFZ3ZeixA8FtLKUKF9qxT7jwZB6tbHbZDPigop7U/YPuS6APny/iAe5s93y SkFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:references:mime-version:message-id:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=J2pcP69LZTMAGIqNu0kBA1pDv1CbJMJ6T2ufALbnNrU=; b=DUkxyVJLGmpFy/XfuurD1Fyeg4Ukg2UsP2BI3txC5eMilRC4IEyWp4nZ1gbxU7MFBB GvTK7ReGvKhJOINv2Al/ICWSBEwAIlntixj5tOkRe0j8IoY8GJcc+Tpj+BBMB6Q9qQRY u4CGnKN5jjy+AwVT40ewLOlQ6iKFECCJE5XVzRigqzPt5cUwrkgQsp3R9EhVmTqBQzwm IHi7ZoRFlUe8LfPK3aezHrUtlAPGaUvTKBRmIC3xulte0w3HLStEps7a6/IP+efYEAcv y7mRotxtEUhRPIbaIUzO3qD+vBtMUHOcJcqvAB/TYXaLkmofOjv1+8BWRYvTmyBq4Ip9 B21A== X-Gm-Message-State: AFqh2kpPHDpwhkTCV2gEPnKJhZtWfZ+N15d8x+vlSYJNES+d23riV5ZM rWmmR5ejrhDSeAyygrHDAtMnUKffNi6R X-Google-Smtp-Source: AMrXdXvSzGwKZ8nnO2G1/GyZ8RLzPyBqRL0rlrAoXXb/Xt4w3MTDSafE+fiH/pRHfQ4J+/s9TSQUoOhPqYPk X-Received: from irogers.svl.corp.google.com ([2620:15c:2d4:203:568d:4d98:b468:b025]) (user=irogers job=sendgmr) by 2002:a81:ee03:0:b0:4ec:8f55:59f7 with SMTP id l3-20020a81ee03000000b004ec8f5559f7mr4315545ywm.317.1674760049111; Thu, 26 Jan 2023 11:07:29 -0800 (PST) Date: Thu, 26 Jan 2023 11:06:06 -0800 In-Reply-To: <20230126190606.40739-1-irogers@google.com> Message-Id: <20230126190606.40739-4-irogers@google.com> Mime-Version: 1.0 References: <20230126190606.40739-1-irogers@google.com> X-Mailer: git-send-email 2.39.1.456.gfc5497dd1b-goog Subject: [PATCH v4 3/3] objtool: Alter how HOSTCC is forced From: Ian Rogers To: Josh Poimboeuf , Peter Zijlstra , Nathan Chancellor , Nick Desaulniers , Tom Rix , Masahiro Yamada , Nicolas Schier , linux-kernel@vger.kernel.org, llvm@lists.linux.dev Cc: Stephane Eranian , Andrii Nakryiko , Jiri Olsa , Arnaldo Carvalho de Melo , Namhyung Kim , Ian Rogers Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" HOSTCC is always wanted when building objtool. Setting CC to HOSTCC happens after tools/scripts/Makefile.include is included, meaning flags (like CFLAGS) are set assuming say CC is gcc, but then it can be later set to HOSTCC which may be clang. tools/scripts/Makefile.include is needed for host set up and common macros in objtool's Makefile. Rather than override the CC variable to HOSTCC, just pass CC as HOSTCC to the sub-makes of Makefile.build, the libsubcmd builds and also to the linkage step. Signed-off-by: Ian Rogers --- tools/objtool/Makefile | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile index f0651eac06e6..bbf8ec440430 100644 --- a/tools/objtool/Makefile +++ b/tools/objtool/Makefile @@ -2,11 +2,6 @@ include ../scripts/Makefile.include include ../scripts/Makefile.arch =20 -# always use the host compiler -AR =3D $(HOSTAR) -CC =3D $(HOSTCC) -LD =3D $(HOSTLD) - ifeq ($(srctree),) srctree :=3D $(patsubst %/,%,$(dir $(CURDIR))) srctree :=3D $(patsubst %/,%,$(dir $(srctree))) @@ -34,13 +29,18 @@ INCLUDES :=3D -I$(srctree)/tools/include \ -I$(srctree)/tools/objtool/include \ -I$(srctree)/tools/objtool/arch/$(SRCARCH)/include \ -I$(LIBSUBCMD_OUTPUT)/include +# Note, EXTRA_WARNINGS here was determined for CC and not HOSTCC, it +# is passed here to match a legacy behavior. WARNINGS :=3D $(EXTRA_WARNINGS) -Wno-switch-default -Wno-switch-enum -Wno-= packed -Wno-nested-externs -CFLAGS :=3D -Werror $(WARNINGS) $(KBUILD_HOSTCFLAGS) -g $(INCLUDES) $(LI= BELF_FLAGS) -LDFLAGS +=3D $(LIBELF_LIBS) $(LIBSUBCMD) $(KBUILD_HOSTLDFLAGS) +OBJTOOL_CFLAGS :=3D -Werror $(WARNINGS) $(KBUILD_HOSTCFLAGS) -g $(INCLUDES= ) $(LIBELF_FLAGS) +OBJTOOL_LDFLAGS :=3D $(LIBELF_LIBS) $(LIBSUBCMD) $(KBUILD_HOSTLDFLAGS) =20 # Allow old libelf to be used: elfshdr :=3D $(shell echo '$(pound)include ' | $(CC) $(CFLAGS) -= x c -E - | grep elf_getshdr) -CFLAGS +=3D $(if $(elfshdr),,-DLIBELF_USE_DEPRECATED) +OBJTOOL_CFLAGS +=3D $(if $(elfshdr),,-DLIBELF_USE_DEPRECATED) + +# Always want host compilation. +HOST_OVERRIDES :=3D CC=3D"$(HOSTCC)" LD=3D"$(HOSTLD)" AR=3D"$(HOSTAR)" =20 AWK =3D awk MKDIR =3D mkdir @@ -63,10 +63,12 @@ include $(srctree)/tools/build/Makefile.include =20 $(OBJTOOL_IN): fixdep FORCE $(Q)$(CONFIG_SHELL) ./sync-check.sh - $(Q)$(MAKE) $(build)=3Dobjtool + $(Q)$(MAKE) $(build)=3Dobjtool $(HOST_OVERRIDES) CFLAGS=3D"$(OBJTOOL_CFLA= GS)" \ + LDFLAGS=3D"$(OBJTOOL_LDFLAGS)" + =20 $(OBJTOOL): $(LIBSUBCMD) $(OBJTOOL_IN) - $(QUIET_LINK)$(CC) $(OBJTOOL_IN) $(LDFLAGS) -o $@ + $(QUIET_LINK)$(HOSTCC) $(OBJTOOL_IN) $(OBJTOOL_LDFLAGS) -o $@ =20 =20 $(LIBSUBCMD_OUTPUT): @@ -75,6 +77,7 @@ $(LIBSUBCMD_OUTPUT): $(LIBSUBCMD): fixdep FORCE $(LIBSUBCMD_OUTPUT) $(Q)$(MAKE) -C $(LIBSUBCMD_DIR) O=3D$(LIBSUBCMD_OUTPUT) \ DESTDIR=3D$(LIBSUBCMD_OUTPUT) prefix=3D subdir=3D \ + $(HOST_OVERRIDES) EXTRA_CFLAGS=3D"$(OBJTOOL_CFLAGS)" \ $@ install_headers =20 $(LIBSUBCMD)-clean: --=20 2.39.1.456.gfc5497dd1b-goog