]> git.proxmox.com Git - pve-kernel.git/blobdiff - debian/rules
d/rules: check for accidental perf linkage
[pve-kernel.git] / debian / rules
index 7a0d143ea1d63bf578c8d99913ac57482f20bd41..55b20fc8c278bd4832fed72bca105de36e1262b2 100755 (executable)
@@ -77,7 +77,7 @@ install: .install_mark .tools_install_mark .headers_install_mark
 
 binary: install
        debian/rules fwcheck abicheck
-       dh_strip
+       dh_strip -N${PVE_HEADER_PKG}
        dh_makeshlibs
        dh_shlibdeps
        dh_installdeb
@@ -124,14 +124,21 @@ binary: install
        touch $@
 
 .tools_compile_mark: .compile_mark
-       ${MAKE} -C ${KERNEL_SRC}/tools/perf prefix=/usr HAVE_CPLUS_DEMANGLE=1 NO_LIBPYTHON=1 NO_LIBPERL=1 NO_LIBCRYPTO=1 PYTHON=python2.7
+       ${MAKE} -C ${KERNEL_SRC}/tools/perf prefix=/usr HAVE_NO_LIBBFD=1 HAVE_CPLUS_DEMANGLE_SUPPORT=1 NO_LIBPYTHON=1 NO_LIBPERL=1 NO_LIBCRYPTO=1 PYTHON=python2.7
+       echo "checking GPL-2 only perf binary for library linkage with incompatible licenses.."
+       ! ldd ${KERNEL_SRC}/tools/perf/perf | grep -q -E '\blibbfd'
+       ! ldd ${KERNEL_SRC}/tools/perf/perf | grep -q -E '\blibcrypto'
        ${MAKE} -C ${KERNEL_SRC}/tools/perf man
+       # contained in linux-base
+       rm -f ${KERNEL_SRC}/tools/perf/Documentation/perf.1
        touch $@
 
 .tools_install_mark: .tools_compile_mark
        rm -rf debian/${LINUX_TOOLS_PKG}
        mkdir -p debian/${LINUX_TOOLS_PKG}/usr/bin
+       mkdir -p debian/${LINUX_TOOLS_PKG}/usr/share/man/man1
        install -m 755 ${BUILD_DIR}/${KERNEL_SRC}/tools/perf/perf debian/${LINUX_TOOLS_PKG}/usr/bin/perf_4.13
+       install -m644 ${BUILD_DIR}/${KERNEL_SRC}/tools/perf/Documentation/*.1 debian/${LINUX_TOOLS_PKG}/usr/share/man/man1
        touch $@
 
 .headers_install_mark: .compile_mark .modules_compile_mark
@@ -139,15 +146,26 @@ binary: install
        mkdir -p debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
        install -m 0644 ${KERNEL_SRC}/.config debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
        install -m 0644 ${KERNEL_SRC}/Module.symvers debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
-       cd ${KERNEL_SRC}; find . -path './debian/*' -prune -o -path './include/*' -prune -o -path './Documentation' -prune \
-         -o -path './scripts' -prune -o -type f \
-         \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \
-            -name '*.sh' -o -name '*.pl' \) \
-         -print | cpio -pd --preserve-modification-time ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
+       cd ${KERNEL_SRC}; find . -path './debian/*' -prune \
+           -o -path './include/*' -prune \
+           -o -path './Documentation' -prune \
+           -o -path './scripts' -prune \
+           -o -type f \
+           \( \
+               -name 'Makefile*' \
+               -o -name 'Kconfig*' \
+               -o -name 'Kbuild*' \
+               -o -name '*.sh' \
+               -o -name '*.pl' \
+           \) \
+           -print | cpio -pd --preserve-modification-time ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
        cd ${KERNEL_SRC}; cp -a include scripts ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
-       cd ${KERNEL_SRC}; (find arch/${KERNEL_HEADER_ARCH} -name include -type d -print | \
-               xargs -n1 -i: find : -type f) | \
-               cpio -pd --preserve-modification-time ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
+       cd ${KERNEL_SRC}; \
+           ( \
+               find arch/${KERNEL_HEADER_ARCH} -name include -type d -print | \
+               xargs -n1 -i: find : -type f \
+           ) | \
+           cpio -pd --preserve-modification-time ${BUILD_DIR}/debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}
        mkdir -p debian/${PVE_HEADER_PKG}/lib/modules/${KVNAME}
        ln -sf /usr/src/linux-headers-${KVNAME} debian/${PVE_HEADER_PKG}/lib/modules/${KVNAME}/build
        touch $@
@@ -202,10 +220,10 @@ fwcheck: fwlist-${KVNAME} fwlist-previous
 
 
 abi-${KVNAME}: .compile_mark
-       sed -e 's/^\(.\+\)[[:space:]]\+\(.\+\)[[:space:]]\(.\+\)$$/\3 \2 \1/' debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}/Module.symvers | sort > abi-${KVNAME}
+       debian/scripts/abi-generate debian/${PVE_HEADER_PKG}/usr/src/linux-headers-${KVNAME}/Module.symvers abi-${KVNAME} ${KVNAME}
 
 .PHONY: abicheck
-abicheck: debian/scripts/abi-check abi-${KVNAME} abi-previous abi-blacklist
-       debian/scripts/abi-check abi-${KVNAME} abi-previous ${SKIPABI}
+abicheck: debian/scripts/abi-check abi-${KVNAME} abi-prev-* abi-blacklist
+       debian/scripts/abi-check abi-${KVNAME} abi-prev-* ${SKIPABI}
 
 .PHONY: clean