From befb0811eb757a859fed5f0e60997baffc27bda9 Mon Sep 17 00:00:00 2001 From: Han Gao Date: Wed, 19 Jul 2023 21:57:45 +0800 Subject: [PATCH] feat: build linux-perf-sg2042 Signed-off-by: Han Gao --- scripts/package/builddeb | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/scripts/package/builddeb b/scripts/package/builddeb index de2a21eb25e37..1af78ca4286e0 100755 --- a/scripts/package/builddeb +++ b/scripts/package/builddeb @@ -111,8 +111,10 @@ deploy_libc_headers () { version=$KERNELRELEASE tmpdir=debian/linux-image dbg_dir=debian/linux-image-dbg +perf_dir="$objtree/debian/toolstmp" packagename=linux-image-$version dbg_packagename=$packagename-dbg +perf_packagename=linux-perf-sg2042 if [ "$ARCH" = "um" ] ; then packagename=user-mode-linux-$version @@ -133,9 +135,10 @@ parisc|mips|powerpc) esac BUILD_DEBUG=$(if_enabled_echo CONFIG_DEBUG_INFO Yes) +BUILD_PERF=1 # Setup the directory structure -rm -rf "$tmpdir" "$dbg_dir" debian/files +rm -rf "$tmpdir" "$dbg_dir" "$perf_dir" debian/files mkdir -m 755 -p "$tmpdir/DEBIAN" mkdir -p "$tmpdir/lib" "$tmpdir/boot" @@ -236,4 +239,29 @@ if [ -n "$BUILD_DEBUG" ] ; then create_package "$dbg_packagename" "$dbg_dir" fi +if [ -n "$BUILD_PERF" ] ; then + # HACK - change output dir from relative to absolute + mkdir -p $perf_dir + tools_dest=`readlink -f $perf_dir` + if [ -n "$O" ] ; then + output=$(readlink -f $objtree) + mkdir -p $output/tools/perf + output="O=$output/tools/perf" + fi + $MAKE -C $srctree/tools/perf $output LDFLAGS=-static NO_LIBELF=1 NO_JVMTI=1 VF=1 srctree=$KBUILD_SRC prefix=$tools_dest/usr install + cat <> debian/control + +Package: $perf_packagename +Architecture: any +Depends: \${shlibs:Depends} +Description: Performance analysis tools for Linux $version + This package contains the 'perf' performance analysis tools for Linux + kernel version $version . +EOF + + mv $tools_dest/usr/bin/perf $tools_dest/usr/bin/perf-sg2042 + dpkg-shlibdeps $tools_dest/usr/bin/* + create_package "$perf_packagename" "$perf_dir" +fi + exit 0