From: Warren Young Date: March 19 2007 12:48pm Subject: Re: RPM packaging and library versioning List-Archive: http://lists.mysql.com/plusplus/6444 Message-Id: <45FE86B6.3080004@etr-usa.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Remi Collet wrote: > > Here is my full specfile Thanks! I've merged as much of it into my copy as I think I can. I don't think we'll ever be able to get 100% of the differences worked out, simply because of the differences in the targets for our RPMs, but I would like to minimize the differences as much as possible. Some comments on your file, with quotes from it: > %{!?rebake:%define rebake 0} > ... > %if %{rebake} > BuildRequires: bakefile = 0.2.0 > %endif We no longer require rebaking in the RPM build process. It caused too many problems, without a great enough potential reward. The risk here is that Bakefile will generate something different on my system than it does on another system, which might matter to someone. We're now choosing to ignore this risk. If it's a problem for someone, they can just rebuild the tarball with suitable Bakefile output first. > Release: 2%{?dist} I guess that variable becomes something like 'fc7' when built in the Fedora build system? If that's right, and it's empty normally, I'll merge that difference into my copy. > Patch0: mysql++-2.2.1-bkl.patch What is this patch? Should I apply it to the repository? > BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) I guess this is a Fedora convention? I'm hesitant to adopt it immediately, but it looks like it will work on any system. Is that right? > make %{?_smp_mflags} Is there a reason you're not using %{__make} ? I thought you were supposed to use these command aliases wherever possible. > # correct bad perms to avoid rpmlint warning > chmod -x lib/common.h That's just a mistake in the tarball. You can remove this from your spec file after the next version is released. > cp -R doc/refman/html/ doc/html/refman > cp -R doc/userman/html/ doc/html/userman That breaks the hyperlinks from the user manual into the reference manual. If this reorganization is required by Fedora, we can talk about changing the way the manuals are generated so they use that directory structure. If this is just cosmetic, please take this out of your spec file; it would be a pointless difference. > %files > %doc LICENSE README doc/README.mysql++ I removed README.mysql++. That file is only intended to be the README for the -manuals package. It just points people to further sources of information. I've renamed it to README.manuals to make this clearer. > %files devel > %doc doc/README.devel README.examples doc/examples HACKERS Wishlist HACKERS is only useful in the tarball, the -src RPM, and the svn repository. I've removed it from this list.