Apache OpenOffice (AOO) Bugzilla – Issue 30357
needs rpm to build sysui
Last modified: 2005-03-31 15:39:44 UTC
building linux sparc checked out from HEAD /home/jim/680/sysui/desktop/suse ------------- . dmake: Error code 1, while making '../../unxlngs.pro/misc/suse.flag' ---* TG_SLO.MK *--- ERROR: Error 65280 occurred while making /home/jim/680/sysui/desktop/suse jim@sun:~/680/sysui$ rpm: Command not found I guess it might be redhat package manager? Anyway when that debian "rpm" package was installed the build does proceed.
mh->obr: can you comment this ?
This issue has been fixed on milestone m48. Please fetch: sysui/desktop/suse/makefile.mk rev 1.3 sysui/desktop/redhat/makefile.mk rev 1.3 solenv/inc/packtools.mk rev 1.2
Closing. Feel free to re-open this issue if you still encouter the problem with the file revisions mentioned above.
obr: reopening. packtools.mk should IMO read: RPM*=$(shell +-`which rpmbuild` && echo rpmbuild || echo rpm) Right now, RPM is empty on my system with rpmbuild, because: pavel@linux:~/.ooo/ooo_SRC680_m52_src/solenv/inc> which rpm /bin/rpm pavel@linux:~/.ooo/ooo_SRC680_m52_src/solenv/inc> which rpmbuild /usr/bin/rpmbuild
Hi Pavel, I see two problems with your proposal: 1. To ensure backwards compatibility, Hamburg RE always uses RPM 3.x for creating rpms. Prefering rpmbuild as you suggest will break this behaviour. 2. The RPM should be empty on non rpm based systems. Are you sure $(RPM) is empty on your system ? It should point to 'rpm', even though I admit this is probably not what you want it to be ..
obr: you're right. My approach doesn't work on non-rpm distributions. But it should be simple to workaround. BTW: Even with this change, I see: rpmbuild: no spec file given or similar. I do not have my system here right now.
What about: RPM*=$(shell +-set i=`which rpm` && echo rpm`test -x /usr$${{i}}build && echo build`) Does this work for you (note the '/usr' prefix in the 'test' statement) ?
yes, it works. But I think we should rewrite the code like this (meta-makefile.mk): RPM=`which rpmbuild` RPM*=`which rpm` (I hope I remember *= syntax right). Is this better? It is at least readable.
which seems to output the "* not found" message to stdout so the first line will set RPM to garbish and the second gladly regard this as set :-(
hjs: this was metacode. I haven't even tested it in real makefile.mk. which on my system returns either full path to the binary or nothing. So I thought that the first line would either set RPM to the full path of rpmbuild or to be empty and in this case the second line would set it to path to rpm or leave it empty again on systems without rpm.
what using configure instead? Like epm does it: checking for rpm... /bin/rpm checking for rpmbuild... /usr/bin/rpmbuild and suing set_soenv to export it to the environment?
Sounds reasonable to me. Let's move the rpm detecting code to configure/set_soenv and our Hamburg RE equivalent.
Created attachment 17750 [details] create variable for RPM
NOtifying the configure man...
obr@pjanik: Please apply and test the patch. Thanks.
waratah: This is unnecessary: +dnl =================================================================== +dnl Search all the common names for GNU make +dnl ===================================================================
After patching and autoconf, generated env. file contains: RPM="rpmbuild" and it exports RPM variable and build works. Hmm, shouldn't we rename the variable to RPMBUILD aka is there a possibility we want to know the rpm package manager name (if there is any) in the future (think of RPM and RPMBUILD variables)?
-> obr
The only reason I can think of the destinguish between rpm and rpmbuild in the build process would be if rpmbuild would change it's command line interface. Up to then I think a single variable is enough, otherwise one would have to code the decision which variable to use into the different makefile.mk(s).
OK, should I fix that in my pj04 cws which I use for build issues of SRC680_m54?
Yes, please go ahead. Thanks.
Accept, will do that in some cws soon.
rodarvus: please take-over so we do not confilict while working on config_office directory.
fix commited to cws configure4. tested on fedora core 1, fedora core 2, SuSE 9.1 and Windows.
Seen in configure4
close