diff options
author | Luca Boccassi <luca.boccassi@gmail.com> | 2017-08-03 16:52:37 +0100 |
---|---|---|
committer | Luca Boccassi <luca.boccassi@gmail.com> | 2017-08-03 17:07:45 +0100 |
commit | a082152335290ddbd9014195b78f4ccfb37a90ff (patch) | |
tree | 361d53f80dbb7f502f1b94314a95760e248fba24 /debian/rules | |
parent | d07b5b0b6b370b7c603dd90707e0dfdb03840f56 (diff) |
Copy full headers directory into SDK
The dpdk-dev SDK package is arch-dependent, as it ships a number of
binary executables.
Also using RTE_SDK does not support the multiple level of headers, so
instead of symlinking into /usr/include/dpdk copy the full set of
headers into /usr/share/dpdk/TARGET/include
Given dpkg cannot replace a symlink with a directory automatically
also generate a preinst file to handle it manually on upgrade.
Change-Id: I1fb8fbe424b8ef015c04062f2cffe9f2b9ffe02f
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
Diffstat (limited to 'debian/rules')
-rwxr-xr-x | debian/rules | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/debian/rules b/debian/rules index 954c716c..e05f332f 100755 --- a/debian/rules +++ b/debian/rules @@ -167,6 +167,7 @@ override_dh_auto_clean: sed -i '/Package: dpdk-modules-/,/`tail -n1 debian/control.modules.in`/d' debian/control test -L config/defconfig_$(DPDK_CONFIG) && rm -f config/defconfig_$(DPDK_CONFIG) || true rm -f debian/dpdk-igb-uio-dkms.dkms debian/dpdk-rte-kni-dkms.dkms + rm -f debian/dpdk-dev.preinst override_dh_auto_configure: # Add support for a custom defconfig file in the debian directory. @@ -279,11 +280,20 @@ endif # system installs them in the same directory, breaking multiarch. # Move them in /usr/include/<arch>/dpdk instead. mkdir -p debian/libdpdk-dev/usr/include/$(DEB_HOST_MULTIARCH)/dpdk + # Before moving the files, remove the symlink in usr/share/dpdk and copy them over, + # as the SDK subdir is architecture specific and requires the arch-specific headers + # in the top level + rm -f debian/dpdk-dev/usr/share/dpdk/$(RTE_TARGET)/include + mkdir -p debian/dpdk-dev/usr/share/dpdk/$(RTE_TARGET)/include + cp -r debian/dpdk-dev/usr/include/dpdk/* debian/dpdk-dev/usr/share/dpdk/$(RTE_TARGET)/include + # genereate the preinst to deal with the symlink -> directory transition smoothly + sed "s/@@RTE_TARGET@@/$(RTE_TARGET)/g" debian/dpdk-dev.preinst.in > debian/dpdk-dev.preinst mv $(addprefix debian/dpdk-dev/usr/include/dpdk/,$(notdir $(wildcard lib/librte_eal/common/include/arch/$(INCLUDE_ARCH)/*.h))) \ debian/libdpdk-dev/usr/include/$(DEB_HOST_MULTIARCH)/dpdk/ mv debian/dpdk-dev/usr/include/dpdk/rte_config.h \ debian/libdpdk-dev/usr/include/$(DEB_HOST_MULTIARCH)/dpdk/ mv debian/dpdk-dev/usr/include/dpdk debian/libdpdk-dev/usr/include/ + rmdir debian/dpdk-dev/usr/include # backward compatibility: to ease things for the majority of users, # which are on x86_64, symlink the x86 headers into the global # directory. |