DPDK package lacks of a mechanism to install libraries, headers applications, kernel modules and sdk files to a file system tree.
This patch set allows to install files according to the next proposal: http://www.freedesktop.org/software/systemd/man/file-hierarchy.html Using rules support is possible to do the next steps: make config T=TARGET make make INSTALL-TARGET v3: Modify the makefile target to specify the files that will be installed using a rule: make install-bin (install app files)(dafault path BIN_DIR=/usr/bin). make install-headers (install headers)(dafault path INCLUDE_DIR=/usr/include/dpdk). make install-lib (install libraries)(dafault path if the architecture is 64 bits is LIB_DIR=/usr/lib64 else LIB_DIR=/usr/lib). make install-sbin (install nic bind files)(dafault path SBIN_DIR=/usr/sbin). make install-doc (install documentation)(dafault path DOC_DIR=/usr/share/doc/dpdk). make install-mod (install modules)(dafault path if RTE_EXEC_ENV=linuxapp then KERNEL_DIR=/lib/modules/$(uname -r)/build else KERNEL_DIR=/boot/modules). make install-sdk (install headers, makefiles, scripts,examples, tools and config files) (default path DATA_DIR=/usr/share/dpdk). make install-fhs (install libraries, modules, app files, nic bind files and documentation). Also you can use the DESTDIR variable. All directory variables mentioned above can be overridden (BIN_DIR, LIB_DIR, INCLUDE_DIR, SBIN_DIR, DOC_DIR, KERNEL_DIR and DATA_DIR). v2: Modify the makefile target to specify the files that will be installed using a rule: make install-bin (install app files). make install-headers (install headers). make install-lib (install libraries). make install-sbin (install nic bind files). make install-doc (install documentation). make install-mod (install modules). make install-sdk (install headers, makefiles, scripts, examples, tools and config files). make install-fhs (install libraries, modules, app files, nic bind files and documentation). Also you can use the DESTDIR variable. v1: By adding a parameter H=1 (hierarchy-file) to makefile system, it is possible to do the next steps make config T=TARGET make make install H=1 and files will be installed on the proper directory. Also you can use the DESTDIR variable. Mario Carrillo (8): mk: Add rule for installing headers mk: Add rule for installing app files mk: Add rule for installing libraries mk: Add rule for installing modules mk: Add rule for installing documentation mk: Add rule for installing nic bind files mk: Add rule for installing sdk files mk: Add rule for installing runtime files mk/rte.sdkinstall.mk | 127 +++++++++++++++++++++++++++++++++++++++++++++++++++ mk/rte.sdkroot.mk | 6 ++- 2 files changed, 131 insertions(+), 2 deletions(-) -- 2.1.0