2 # SPDX-License-Identifier: (GPL-2.0-only OR LGPL-2.1-only)
4 # First argument is the path to the kernel headers.
7 if [ ! -f "${KPATH}/include/generated/package.h" ]; then
12 # Debian snippet courtesy of Ben Hutchings
14 # Assuming KPATH is the target kernel headers directory
15 DEB_PACKAGE_VERSION
=$
(sed -rn 's/^#define LINUX_PACKAGE_ID " Debian (.*)"/\1/p' "${KPATH}/include/generated/package.h")
17 # Ignore backports part
18 DEB_PACKAGE_VERSION
=$
(echo "${DEB_PACKAGE_VERSION}" |
sed -r 's/~(bpo|deb).*//')
20 # Get package revision
21 DEB_PACKAGE_REVISION
=$
(echo "${DEB_PACKAGE_VERSION}" |
sed -r 's/.*-([^-]+)$/\1/')
22 # Get non-sec update number
23 DEB_PACKAGE_REVISION_BASE
=$
(echo "${DEB_PACKAGE_REVISION}" |
sed -r 's/^([0-9]+).*/\1/')
24 # Get security update number, if present
25 DEB_PACKAGE_REVISION_SECURITY
=$
(echo "${DEB_PACKAGE_REVISION}" |
sed -rn 's/.*\+(squeeze|deb[0-9]+)+u([0-9]+)$/\2/p')
26 test -n "${DEB_PACKAGE_REVISION_SECURITY}" || DEB_PACKAGE_REVISION_SECURITY
=0
27 # Combine all update numbers into one
28 DEB_API_VERSION
=$
((DEB_PACKAGE_REVISION_BASE
* 100 + DEB_PACKAGE_REVISION_SECURITY
))
30 echo ${DEB_API_VERSION}