On 12/01/2015 09:39 PM, Mario Carrillo wrote:
> 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 based on the next
> proposal:
> http://www.freedesktop.org/software/systemd/man/file-hierarchy.html
>
> v8:
>
> When "make install" is invoked if "T" variable is defined,
> the installation process will have the current
> behaviour, else "install-fhs" rule will be called.
>
> Using rules support is possible to do the next steps:
>
> make config T=<config template>
> make
> make <install target>
>
> Modify the makefile target to specify the files
> that will be installed using a rule:
>
> * make install-bin (install app files)(dafault path 
> bindir=$(exec_prefix)/bin).
>
> * make install-headers (install headers)(dafault path 
> includedir=$(prefix)/include/dpdk).
>
> * make install-lib (install libraries)(dafault path 
> libdir=$(exec_prefix)/lib).
>
> * make install-doc (install documentation)(dafault path 
> docdir=$(datarootdir)/doc/dpdk).
>
> * make install-mod (install modules)(dafault path if RTE_EXEC_ENV=linuxapp 
> then
>                  kerneldir=/lib/modules/$(uname -r)/extra/drivers/dpdk else 
> kerneldir=/boot/modules).
>
> * make install-sdk (install headers, makefiles, scripts,examples and
>                  config files) (default path sdkdir=$(datadir)/share/dpdk).
>
> * make install-fhs (install  libraries, modules, app files, tools and 
> documentation).
>
> * make install (if T is defined current behaviour, else it will call 
> install-fhs rule).
>
> The following defaults apply:
>
>     prefix=/usr/local
>     exec_prefix=$(prefix)
>     datarootdir=$(prefix)/share
>
> All path variables can be overridden and all targets can use the "DESTDIR"
> variable.
>
> Furthermore this information is added to documentation.

Overall, does what it promises.

One point I just realized from comparing with Thomas' variant is that 
this by default installs documentation sources, ie the raw .rst files 
and does not include any "compiled" formats even if they exist.

It might be better to leave docs out by default as Thomas' version does. 
One way of achieving that is only install docs if $(RTE_OUTPUT)/doc, and 
only install anything in that directory. That way you have to request 
doc generation specifically with "make doc" first (which has quite some 
build-dependencies so you might not always wnat it), and only the 
compiled docs get installed. Or something like that.

        - Panu -

Reply via email to