All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Graf <tgraf-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Thomas Monjalon
	<thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>,
	dev-VfR2kkLFssw@public.gmane.org
Subject: Re: [PATCH 03/16] pkg: add recipe for RPM
Date: Wed, 26 Feb 2014 14:07:44 +0100	[thread overview]
Message-ID: <530DE720.6090804@redhat.com> (raw)
In-Reply-To: <1391529271-24606-4-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>

On 02/04/2014 04:54 PM, Thomas Monjalon wrote:
> Packages can be built with:
> 	RPM_BUILD_NCPUS=8 rpmbuild -ta dpdk-1.5.2r2.tar.gz
>
> There are packages for runtime, static libraries and development.
> Once devel package installed, it can be used like this:
> 	make -C /usr/share/dpdk/examples/helloworld RTE_SDK=/usr/share/dpdk
>
> Signed-off-by: Thomas Monjalon <thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>

Thanks for getting this started! Some comments below. I'll be glad to
help pushing this into Fedora.

> +Name: dpdk
> +Version: 1.5.2r1
> +Release: 1

What kind of upgrade strategy do you have in mind?

I'm raising this because Fedora and other distributions will require
a unique package name for every version of the package that is not
backwards compatible.

Typically libraries provide backwards compatible within a major release,
i.e. all 1.x.x releases would be compatible. I realize that this might
not be applicable yet but maybe 1.5.x?

Depending on the versioning schema the name would be dpdk15, dpdk16, ...
or dpdk152, dpdk153, ...

> +BuildRequires: kernel-devel, kernel-headers, doxygen

Is a python environment required as well?

> +%description
> +Dummy main package. Make only subpackages.

I would just call the main package "libdpdk152" so you don't have to
repeat the encoding versioning in all the subpackages.

> +
> +%package core-runtime

What about calling it just "libdpdk"?

> +Summary: Intel(r) Data Plane Development Kit core for runtime
> +%description core-runtime
> +Intel(r) DPDK runtime includes kernel modules, core libraries and tools.
> +testpmd application allows to test fast packet processing environments
> +on x86 platforms. For instance, it can be used to check that environment
> +can support fast path applications such as 6WINDGate, pktgen, rumptcpip, etc.
> +More libraries are available as extensions in other packages.
> +
> +%package core-static

Based on the above: "libdpdk-static"

Packages that link against dpdk statically will do:
BuildRequire: libdpdk152-static

> +%files core-runtime
> +%dir %{datadir}
> +%{datadir}/config
> +%{datadir}/tools
> +%{moddir}/*
> +%{_sbindir}/*
> +%{_bindir}/*
> +%{_libdir}/*.so

This brings up the question of multiple parallel DPDK installations.
A specific application linking to library version X will also require
tools of version X, right? A second application linking against version
Y will require tools version Y. Right now, these could not be installed
in parallel. Any chance we can make the runtime version independent?

Same applies to header files. A good option here would be to install
them to /usr/include/libdpdk{version}/ and have a dpdk-1.5.2.pc which
provides Cflags: -I${includedir}/libdpdk${version}

> +%files core-static
> +%{_libdir}/*.a
> +
> +%files core-devel
> +%{_includedir}/*
> +%{datadir}/mk
> +%{datadir}/%{target}
> +%{datadir}/examples
> +%doc %{docdir}
>

You'll also need for all packages and subpackages installing shared
libraries:

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig

  parent reply	other threads:[~2014-02-26 13:07 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-04 15:54 [PATCH 00/16] recipes for RPM packages Thomas Monjalon
     [not found] ` <1391529271-24606-1-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-02-04 15:54   ` [PATCH 01/16] tools: rename pci_unbind script Thomas Monjalon
     [not found]     ` <1391529271-24606-2-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-02-24 16:03       ` Chris Wright
     [not found]         ` <20140224160342.GB27503-SwUeJysX96B82hYKe6nXyg@public.gmane.org>
2014-03-20 17:06           ` Thomas Monjalon
2014-02-04 15:54   ` [PATCH 02/16] virtio: rename library Thomas Monjalon
     [not found]     ` <1391529271-24606-3-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-02-24 16:05       ` Chris Wright
     [not found]         ` <20140224160510.GC27503-SwUeJysX96B82hYKe6nXyg@public.gmane.org>
2014-03-20 17:06           ` Thomas Monjalon
2014-02-04 15:54   ` [PATCH 03/16] pkg: add recipe for RPM Thomas Monjalon
     [not found]     ` <1391529271-24606-4-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-02-24 16:29       ` Chris Wright
2014-02-24 16:52       ` Chris Wright
     [not found]         ` <20140224165208.GF27503-SwUeJysX96B82hYKe6nXyg@public.gmane.org>
2014-04-02  9:01           ` Thomas Monjalon
2014-04-02 11:11             ` Thomas Graf
2014-02-26 13:07       ` Thomas Graf [this message]
     [not found]         ` <530DE720.6090804-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-02-26 16:19           ` Chris Wright
2014-04-02  9:53           ` Thomas Monjalon
2014-04-02 11:04             ` Thomas Graf
2014-04-02 11:29             ` Neil Horman
2014-02-04 15:54   ` [vmxnet3-usermap PATCH 04/16] pmd: add make help Thomas Monjalon
     [not found]     ` <1391529271-24606-5-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-02-24 18:17       ` Chris Wright
     [not found]         ` <20140224181706.GB10251-SwUeJysX96B82hYKe6nXyg@public.gmane.org>
2014-03-26 21:59           ` Thomas Monjalon
2014-02-04 15:54   ` [vmxnet3-usermap PATCH 05/16] pmd: allow to build outside of the source directory Thomas Monjalon
     [not found]     ` <1391529271-24606-6-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-02-24 18:13       ` Chris Wright
     [not found]         ` <20140224181347.GA10251-SwUeJysX96B82hYKe6nXyg@public.gmane.org>
2014-03-26 21:59           ` Thomas Monjalon
2014-02-04 15:54   ` [vmxnet3-usermap PATCH 06/16] pmd: allow to install lib and doc Thomas Monjalon
     [not found]     ` <1391529271-24606-7-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-26 22:00       ` Thomas Monjalon
2014-02-04 15:54   ` [vmxnet3-usermap PATCH 07/16] pkg: add recipe for RPM Thomas Monjalon
     [not found]     ` <1391529271-24606-8-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-02-26 13:22       ` Thomas Graf
     [not found]         ` <530DEA9C.8060101-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-04-02 10:08           ` Thomas Monjalon
2014-04-02 11:07             ` Thomas Graf
2014-02-04 15:54   ` [virtio-net-pmd PATCH 08/16] pmd: fix initialization of Tx queue header Thomas Monjalon
     [not found]     ` <1391529271-24606-9-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  8:23       ` Olivier MATZ
     [not found]         ` <5333E00C.3090806-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  9:34           ` Thomas Monjalon
2014-02-04 15:54   ` [virtio-net-pmd PATCH 09/16] mk: minor fixes Thomas Monjalon
     [not found]     ` <1391529271-24606-10-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  8:26       ` Olivier MATZ
     [not found]         ` <5333E0B0.30704-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  9:35           ` Thomas Monjalon
2014-02-04 15:54   ` [virtio-net-pmd PATCH 10/16] mk: allow to build outside of the source directory Thomas Monjalon
     [not found]     ` <1391529271-24606-11-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  8:31       ` Olivier MATZ
     [not found]         ` <5333E1C9.4020607-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  9:35           ` Thomas Monjalon
2014-02-04 15:54   ` [virtio-net-pmd PATCH 11/16] mk: allow to install lib and doc Thomas Monjalon
     [not found]     ` <1391529271-24606-12-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  8:32       ` Olivier MATZ
     [not found]         ` <5333E215.3020103-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  9:35           ` Thomas Monjalon
2014-02-04 15:54   ` [virtio-net-pmd PATCH 12/16] pkg: add recipe for RPM Thomas Monjalon
2014-02-04 15:54   ` [memnic PATCH 13/16] pmd: rename doc when installing Thomas Monjalon
     [not found]     ` <1391529271-24606-14-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  8:36       ` Olivier MATZ
     [not found]         ` <5333E2F3.6060503-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27 10:29           ` Thomas Monjalon
2014-02-04 15:54   ` [memnic PATCH 14/16] pmd: fix doc uninstalling Thomas Monjalon
     [not found]     ` <1391529271-24606-15-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  8:45       ` Olivier MATZ
     [not found]         ` <5333E521.6050202-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27 10:30           ` Thomas Monjalon
2014-02-04 15:54   ` [memnic PATCH 15/16] pmd: remove useless makefile variables Thomas Monjalon
     [not found]     ` <1391529271-24606-16-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27  8:45       ` Olivier MATZ
     [not found]         ` <5333E53F.2050209-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-03-27 10:30           ` Thomas Monjalon
2014-02-04 15:54   ` [memnic PATCH 16/16] pkg: add recipe for RPM Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=530DE720.6090804@redhat.com \
    --to=tgraf-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
    --cc=dev-VfR2kkLFssw@public.gmane.org \
    --cc=thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.