The ARCH argument to osc build doesn't map to the rpm's arch for noarch. It's more for which dependencies to get. You have to force the arch in the spec with BuildArch: noarch as one of the header fields. You'll still build it with openSUSE_11.0 x86_64 or openSUSE_11.0 i586 since the build needs to know what kind of arch in the chroot to make. (Think about it this way, you can have php code that is arch independent, but the php interpreter is not arch independent. Of course, this extend to everything that makes up the chroot.) On Mon, 2008-12-15 at 15:48 +0100, Werner Flamme wrote:
Hi everyone,
yesterday I tried to build a new package (dokuwiki), today I have the questions ;-)
When I build other packages (rssh for example), I get an arch dependant rpm and a src.rpm. Yesterday I additionally got debuginfo and debugsource rpm when building locally (osc build openSUSE_11.0 x86_64 dokuwiki.spec). Why this? The webclient shows debug disabled, and I do not see any <debuginfo> entry in "osc meta pkg home:werfl dokuwiki-stable" and "osc meta prj home:werfl". Adding <debuginfo> <disable /> </debuginfo> did not help, and changing this to <enable/> caused the well known "error: Package already exists: %package debuginfo". And I did not see any %debug_package inside my spec file.
Besides, there is nothing to compile, it is simple PHP source code, one has only to unpack and install... I succeeded at last by adding 2 empty files in the respective directory and deleting them in the %post phase :-(
So: how do I really avoid building those debug packages?
Next: rpmlint (?) had the great proposal not to build this package arch dependant (it really is not), but to use "noarch". Of course, "osc build openSUSE_11.0 noarch dokuwiki.spec" fails ("wrong repo/arch?"), so how do I build a noarch rpm? When I build it manually, I use "rpmbuild -ba --target noarch ...", but how can I convince osc build?
Then: since the standard installation of DokuWiki proposes to simply unpack the source in a directory called (e g.) dokuwiki inside the document root, am I allowed to do so in my package? Or do I have to put it into /srv/www/dokuwiki and create an alias in /etc/apache2/conf.d? Do I have to hardcode the paths or are there macros? The config of DW is maintained via web interface normally, may I create a link /etc/DokuWiki that points to /srv/www/dokuwiki/conf?
Since I am new to packaging, I'm missing a "best practices" guide to the galaxy ;-) And the links in some articles are quite ...ahem... On <http://en.opensuse.org/Build_Service_Tutorial>, the very first sentence has a link to <http://forgeftp.novell.com//library/SUSE%20Package%20Conventions/spc.html> - obviously ;-) I am the only one to have ever used this link, since it shows 0 downloads... There is not only spc.html, but many others linked from there, but they are not accessible directly... Some (all? I'm not yet through) of the info given there is also available on opensuse.org, for example <http://en.opensuse.org/SUSE_Package_Conventions/RPM_Groups> replaces spc_rpm_groups.html. The old link should be replaced with <http://en.opensuse.org/Packaging/SUSE_Package_Conventions>, what I found accidentally when asking alltheweb.com for SUSE build info :-(
Hey, I'm on holiday today, so I got plenty of time to spend asking :-)
Regards, Werner
-- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org