libbpf seems to be setting a proper soname and versioning symbols now.
Don't replace upstream's soversion with the kernel version.
Refresh "generate pkg-config file for libbpf" based on the upstream
version.
* kconf_id.c was deleted
* Various source files are no longer included by zconf.y => zconf.tab.c
so must be compiled separately
* zconf.l => zconf.lex.c now includes zconf.tab.h
Since commit f5f169ba99 "Split build rules for tools to allow
skipping them." these recursive makefiles are not used.
(debian/rules.d/Makefile can additionally install the top-level Kbuild
and Makefile, but that target hasn't been used since svn rev 18133
(version 3.1-1~experimental.1).)
Since commit f5f169ba99 "Split build rules for tools to allow
skipping them." debian/rules.d/Makefile is not used and the current
kernel's UAPI headers are not installed. This hasn't caused breakage
yet, probably because many tools have their own workaround using
include/uapi etc. directly, but could break backports builds at some
point.
Move the build of userland headers up into debian/rules.real and
make all tools build targets depend on it.
The current check has never worked because the find -path predicate
matches against the whole path, including the given root. In this
case that is $DESTDIR which always includes the version string.
Change to use cd before find.
Also, check all non-directories rather than all entries with "perf" in
the name.
hv_{kvp,vss}_daemon used to communicate with the corresponding kernel
drivers over netlink, but now they use char devices. hv_fcopy_daemon
always used a char device. Rather than checking for Hyper-V
specifically, change all of the init scripts and systemd service
definitions to check for the appropriate device nodes.
Delete the check-hyperv program that we used to check for Hyper-V
in init scripts.
Because these command lines don't start with "$(MAKE)", we should
tell make that we are recursing. Without this, the child make
can't run more than one job in parallel (and warns about this).
The upstream Makefile uses DEBUG to control both stripping of debug
information *and* disabling optimisations.
We want to disable stripping of debug information so that (normally)
dh_strip can move it into a separate package later. However we also
want to enable optimisations by default.
Therefore:
- Set the STRIP variable (a command prefix) to "true"
- Set the DEBUG variable (a pseudo-boolean) to "true" if and only if
the "noopt" build option is used
These two are terse by default and don't respect the KBUILD_VERBOSE
environment variable.
(I considered adding V=1 to the MAKEFLAGS we use by default in
debian/rules.real, but this might have different semantics for the few
tools that aren't built using either kbuild or automake.)
Release linux (4.17.6-2).
- Drop the ABI maintenance patch
- Resolve conflict between changes to config file generation in sid
(delete CONFIG_BUILD_SALT) and master (putting them in
arch-dependent packages)
The previous fix ensured that objtool was built for the right host
architecture, but it was still including some UAPI header files
(in particular <asm/bitsperlong.h>) for the build architecture.
Currently we replicate the mapping of Debian architectures to kernel
source architectures here. Use the KERNEL_ARCH variable that is now
passed down by rules.real. We still need to check whether perf is
supported on the architecture, though.
- Introduce linux-bootwrapper-<abiname> package containing boot wrapper
tools for the host architecture
- linux-image: Install symlinks to boot wrapper tools instead of the
native tools built by kbuild
objtool is normally built and used during the kernel build process,
in which case it should always be built as a native executable.
But when we build it for linux-tools it should match the target
architecture. We need to override the CC and LD variables to
make this work.
It has a lintian error (non-empty-dependency_libs-in-la-file) and it
also seems to be missing a header (the newly added
usbip_host_common.h) since Linux 4.7. No-one seems to have noticed,
and it has nothing build-depending on it, so get rid of it.
This reverts commit 85b468262e "Remove unused liblockdep packaging"
and 87d08943da "liblockdep: Stop trying to build packages, as it
failed to build again", but doesn't restore the patches. All our
patches, and further build fixes, were applied upstream as of
v4.13-rc1.