From: Namhyung Kim <namhyung@kernel.org>
To: Ian Rogers <irogers@google.com>
Cc: "Peter Zijlstra" <peterz@infradead.org>,
"Ingo Molnar" <mingo@redhat.com>,
"Arnaldo Carvalho de Melo" <acme@kernel.org>,
"Mark Rutland" <mark.rutland@arm.com>,
"Alexander Shishkin" <alexander.shishkin@linux.intel.com>,
"Jiri Olsa" <jolsa@kernel.org>,
"Adrian Hunter" <adrian.hunter@intel.com>,
"Kan Liang" <kan.liang@linux.intel.com>,
"John Garry" <john.g.garry@oracle.com>,
"Will Deacon" <will@kernel.org>,
"James Clark" <james.clark@arm.com>,
"Mike Leach" <mike.leach@linaro.org>,
"Leo Yan" <leo.yan@linux.dev>, "Guo Ren" <guoren@kernel.org>,
"Paul Walmsley" <paul.walmsley@sifive.com>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Albert Ou" <aou@eecs.berkeley.edu>,
"Suzuki K Poulose" <suzuki.poulose@arm.com>,
"Yicong Yang" <yangyicong@hisilicon.com>,
"Jonathan Cameron" <jonathan.cameron@huawei.com>,
"Miguel Ojeda" <ojeda@kernel.org>,
"Alex Gaynor" <alex.gaynor@gmail.com>,
"Wedson Almeida Filho" <wedsonaf@gmail.com>,
"Boqun Feng" <boqun.feng@gmail.com>,
"Gary Guo" <gary@garyguo.net>,
"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
"Benno Lossin" <benno.lossin@proton.me>,
"Andreas Hindborg" <a.hindborg@samsung.com>,
"Alice Ryhl" <aliceryhl@google.com>,
"Nick Terrell" <terrelln@fb.com>,
"Ravi Bangoria" <ravi.bangoria@amd.com>,
"Kees Cook" <keescook@chromium.org>,
"Andrei Vagin" <avagin@google.com>,
"Athira Jajeev" <atrajeev@linux.vnet.ibm.com>,
"Oliver Upton" <oliver.upton@linux.dev>,
"Ze Gao" <zegao2021@gmail.com>,
linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-csky@vger.kernel.org,
linux-riscv@lists.infradead.org, coresight@lists.linaro.org,
rust-for-linux@vger.kernel.org, bpf@vger.kernel.org
Subject: Re: [PATCH v3 7/8] perf python: Switch module to linking libraries from building source
Date: Mon, 24 Jun 2024 15:26:19 -0700 [thread overview]
Message-ID: <Znnyi2IPC79jMd9y@google.com> (raw)
In-Reply-To: <20240613233122.3564730-8-irogers@google.com>
On Thu, Jun 13, 2024 at 04:31:21PM -0700, Ian Rogers wrote:
> setup.py was building most perf sources causing setup.py to mimic the
> Makefile logic as well as flex/bison code to be stubbed out, due to
> complexity building. By using libraries fewer functions are stubbed
> out, the build is faster and the Makefile logic is reused which should
> simplify updating. The libraries are passed through LDFLAGS to avoid
> complexity in python.
>
> Force the -fPIC flag for libbpf.a to ensure it is suitable for linking
> into the perf python module.
>
> Signed-off-by: Ian Rogers <irogers@google.com>
> Reviewed-by: James Clark <james.clark@arm.com>
> ---
> tools/perf/Makefile.config | 5 +
> tools/perf/Makefile.perf | 6 +-
> tools/perf/util/python.c | 271 ++++++++++++++-----------------------
> tools/perf/util/setup.py | 33 +----
> 4 files changed, 110 insertions(+), 205 deletions(-)
>
> diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
> index 7f1e016a9253..639be696f597 100644
> --- a/tools/perf/Makefile.config
> +++ b/tools/perf/Makefile.config
> @@ -910,6 +910,11 @@ else
> endif
> CFLAGS += -DHAVE_LIBPYTHON_SUPPORT
> $(call detected,CONFIG_LIBPYTHON)
> + ifeq ($(filter -fPIC,$(CFLAGS)),)
Nitpick: mixed TAB and SPACEs.
> + # Building a shared library requires position independent code.
> + CFLAGS += -fPIC
> + CXXFLAGS += -fPIC
> + endif
I'm curious if it's ok for static libraries too..
Thanks,
Namhyung
> endif
> endif
> endif
next prev parent reply other threads:[~2024-06-24 22:26 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-13 23:31 [PATCH v3 0/8] Refactor perf python module build Ian Rogers
2024-06-13 23:31 ` [PATCH v3 1/8] perf build: Add '*.a' to clean targets Ian Rogers
2024-06-14 9:33 ` James Clark
2024-06-13 23:31 ` [PATCH v3 2/8] perf ui: Make ui its own library Ian Rogers
2024-06-13 23:31 ` [PATCH v3 3/8] perf pmu-events: Make pmu-events a library Ian Rogers
2024-06-13 23:31 ` [PATCH v3 4/8] perf test: Make tests its own library Ian Rogers
2024-06-13 23:31 ` [PATCH v3 5/8] perf bench: Make bench " Ian Rogers
2024-06-13 23:31 ` [PATCH v3 6/8] perf util: Make util " Ian Rogers
2024-06-13 23:31 ` [PATCH v3 7/8] perf python: Switch module to linking libraries from building source Ian Rogers
2024-06-24 22:26 ` Namhyung Kim [this message]
2024-06-25 12:24 ` James Clark
2024-06-25 17:48 ` Namhyung Kim
2024-06-25 18:14 ` Ian Rogers
2024-06-13 23:31 ` [PATCH v3 8/8] perf python: Clean up build dependencies Ian Rogers
2024-06-24 21:46 ` [PATCH v3 0/8] Refactor perf python module build Ian Rogers
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Znnyi2IPC79jMd9y@google.com \
--to=namhyung@kernel.org \
--cc=a.hindborg@samsung.com \
--cc=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=alex.gaynor@gmail.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=aliceryhl@google.com \
--cc=aou@eecs.berkeley.edu \
--cc=atrajeev@linux.vnet.ibm.com \
--cc=avagin@google.com \
--cc=benno.lossin@proton.me \
--cc=bjorn3_gh@protonmail.com \
--cc=boqun.feng@gmail.com \
--cc=bpf@vger.kernel.org \
--cc=coresight@lists.linaro.org \
--cc=gary@garyguo.net \
--cc=guoren@kernel.org \
--cc=irogers@google.com \
--cc=james.clark@arm.com \
--cc=john.g.garry@oracle.com \
--cc=jolsa@kernel.org \
--cc=jonathan.cameron@huawei.com \
--cc=kan.liang@linux.intel.com \
--cc=keescook@chromium.org \
--cc=leo.yan@linux.dev \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-csky@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=mark.rutland@arm.com \
--cc=mike.leach@linaro.org \
--cc=mingo@redhat.com \
--cc=ojeda@kernel.org \
--cc=oliver.upton@linux.dev \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=peterz@infradead.org \
--cc=ravi.bangoria@amd.com \
--cc=rust-for-linux@vger.kernel.org \
--cc=suzuki.poulose@arm.com \
--cc=terrelln@fb.com \
--cc=wedsonaf@gmail.com \
--cc=will@kernel.org \
--cc=yangyicong@hisilicon.com \
--cc=zegao2021@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).