From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.tuxdriver.com (charlotte.tuxdriver.com [70.61.120.58]) by dpdk.org (Postfix) with ESMTP id 52270231C for ; Mon, 19 May 2014 15:18:53 +0200 (CEST) Received: from hmsreliant.think-freely.org ([2001:470:8:a08:7aac:c0ff:fec2:933b] helo=localhost) by smtp.tuxdriver.com with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.63) (envelope-from ) id 1WmNSy-0001UM-9K; Mon, 19 May 2014 09:19:00 -0400 Date: Mon, 19 May 2014 09:18:55 -0400 From: Neil Horman To: Thomas Monjalon Message-ID: <20140519131855.GA2215@hmsreliant.think-freely.org> References: <20140513190840.GB31172@hmsreliant.think-freely.org> <1446205.rSbWAAsRtd@xps13> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1446205.rSbWAAsRtd@xps13> User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Score: -2.9 (--) X-Spam-Status: No Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Heads up: Fedora packaging plans X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 May 2014 13:18:53 -0000 On Mon, May 19, 2014 at 12:11:35PM +0200, Thomas Monjalon wrote: > Hi Neil, > > Thanks for sharing your progress. > No worries. > My main concerns are about naming and extensions. > We must keep "dpdk-core" naming in order to distinguish it from PMD > extensions. I don't see why. We can name packages whatever we want, as long as the spec and srpm share the same name. It seems to me that the core should be the base name of the package while the extensions should have some extension on their name. > And then, packaging of memnic and non-uio paravirtualization PMDs > (virtio/vmxnet3) are missing. > They're in separate repositories, I was planning on packaging them at a later time separately, since their versioning and development is handled separately. > 2014-05-13 15:08, Neil Horman: > > My current effort to do so. I've made some changes from the stock spec file > > included in dpdk: > > We should try to get .spec for Fedora and in-tree .spec as common as possible. > There are probably some things to push. > Ok, sure, just keep in mind that different distributions have different packaging requirements that may affect the contents of the spec file, and so attaining parity may not be possible (or even worthwhile). > > * Modified the version and release values to be separate from the name. I > > did some reading on requirements for packaging and it seems we can be a bit > > more lax with ABI version on a pre-release I think, so I setup the N-V-R to > > use pre-release conventions, which makes sense, give that this is a 1.7.0 > > pre-release. The git tag on the relase value will get bumped as we move > > forward in the patch series. > > I thought that we should put version in the name, in order to be able to > install many versions together. How is it handled by yum? > So, I spent some time thinking about this, and I _really_ want to avoid the inclusion of a version with the package name. Doing so, while it allows yum to install multiple versions side-by-side, is a real overhead for me, as it requires that I go through a new pacakge review process for each released version that we want to package. I do not have time to do that. If someone from 6wind or intel wants to get involved in the Packaging process we can look at that as a solution, but while I'm doing it, its really just too much overhead. This method will allow multiple version to be installed side by side as well. The tradeoff is that yum doesn't directly allow that, as it will just preform an upgrade. The multiple version solution will require that you download older versions and install them directly using rpm commands. I think thats a fair tradeoff. > > * Added config files to match desired configs for Fedora (i.e. disabled > > PMD's that require out of tree kernel modules > > It would be clearer to make your configuration changes with "sed -i". > In a near future we would probably need a "configure" script to do it. > I really disagree. Its not clearer in my mind at all - in that the final config file is a product of two pieces of information (the base config file, and the sed scripts that you run on it), as opposed to one piece (the canonical modified config specified in the source line). Using sed also implies that you need to list sed as a BuildRequires (minimal buildroots may not include sed when they are spun up). > So you don't package igb_uio but you build it because there is no option to > disable it currently. We should add such option. > Not sure what you mean here. The only uio code I see in the package is the uio unbind script for igb, which should still work just fine (save for the fact that we don't have a user space PMD to attach the hardware to). I can certainly remove the script though so it doesn't appear in the package until such time as the LAD group integrates the uio code in the upstream driver. > > * Moved the package target directories to include N-V of the package in the > > path names. This allows for multiple versions of the dpdk to be installed > > in parallel (I.e. dpdk-1.7.0 files are in /lib/dpdk-1.7.0, > > /usr/include/dpdk-1.7.0, etc). This is how java packages allow for > > multiple version installs, and makes sense given ABI instability in dpdk. > > It will require that developers add some -I / -L paths to their makefiles > > to pull the proper version, but I think thats a fair tradeoff. > > I don't see version for include directory and bin directory (testpmd). > Yup, need to fix that. Thank you! Neil > Thanks > -- > Thomas >