| Summary: | Build fails on Redhat Linux 6.x | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Portable OpenSSH | Reporter: | Markus Dobel <mdobel> | ||||
| Component: | Build system | Assignee: | OpenSSH Bugzilla mailing list <openssh-bugs> | ||||
| Status: | CLOSED WORKSFORME | ||||||
| Severity: | normal | Keywords: | patch | ||||
| Priority: | P3 | ||||||
| Version: | 3.6.1p2 | ||||||
| Hardware: | All | ||||||
| OS: | Linux | ||||||
| Bug Depends on: | |||||||
| Bug Blocks: | 793 | ||||||
| Attachments: |
|
||||||
Created attachment 389 [details]
Add build7x variable.
There seems to be some confusion about this.
$ cvs log openssh.spec
revision 1.109
date: 2002/09/04 07:19:06; author: djm; state: Exp; lines: +1 -1
- (djm) Fix Redhat RPM build dependancy test
and from Redhat bug #55105:
"If build_6x is defined for building openssh on a 6.x box, it won't build
because it claims to need db1-devel. However db1-devel does not exist for
6.x, as it is included in glibc-devel."
A quick survey shows db1-devel present *only* in 7.x releases, so no amount of
fiddling with build6x is going to get it right for all cases.
How about this patch? I'm not fluent in specfile so it might be wrong, but it
works on my RH8.0 box.
Is that specfile patch OK or is there a better way of doing it? Perhaps we should conditionalise on the version of redhat-release or just relax the build requirements. The worst consequence of relaxing the build requirements is the build may fail. Since OpenSSH doesn't take long to compile, I think this is preferable to creating another #ifdef hell :) hm, the spec file doesn't even have the db1-devel requirement at the moment. Since OpenSSH doesn't depend on this directly, I'm happy to leave it to whatever requires db1-devel to specify its dependance on it. Mass change of RESOLVED bugs to CLOSED |
I needed this package for a box running Redhat 6.2. So I changed the build6x-define in the specfile from 0 to 1 and tried to build the package. rpm complained about error: failed build dependencies: db1-devel is needed by openssh-3.6.1p1-1 caused by this part of the specfile: %if ! %{build6x} BuildPreReq: glibc-devel, pam %else BuildPreReq: db1-devel, /usr/include/security/pam_appl.h %endif There is no db1 package in Redhat 6.x, db1 was intruduced in 7.x. In Redhat 6.x the contents of db1 are part of the glibc package. It seems like that the condition is the wrong way around.