Bug 124303

Summary: openssl-devel-0.9.7a-34 has broken header file if rebuilt for non-default arches
Product: [Fedora] Fedora Reporter: Steve Grubb <linux_4ever>
Component: opensslAssignee: Nalin Dahyabhai <nalin>
Status: CLOSED RAWHIDE QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: i586   
OS: Linux   
Whiteboard:
Fixed In Version: 0.9.7a-36 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-05-27 21:38:18 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 124304    

Description Steve Grubb 2004-05-25 15:08:29 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.4.2)
Gecko/20040308

Description of problem:
The opensslconf-new.h file that is recently added has a major flaw
that causes all applications that use the des.h header not to compile.
For example, cyrus-sasl.

The problem is that the header looks like this:

#if defined(__i386__)
#include "opensslconf-i386.h"


However, opensslconf-i586.h is what's provided. Changing the 3 to a 5
in the opensslconf-new.h file fixes this bug.

A side effect of this bug is that some configure scripts are smart
enough to see des.h is broken and disable support for ssl. This is not
a desired state of affairs.

Version-Release number of selected component (if applicable):
openssl-0.9.7a-34

How reproducible:
Always

Steps to Reproduce:
1. rpmbuild -bb /usr/src/redhat/SPEC/cyrus-sasl.spec

    

Actual Results:  A file not found message stops the compile.

Expected Results:  A message indicating where the rpm was written.

Additional info:

Comment 1 Nalin Dahyabhai 2004-05-25 18:14:47 UTC
"rpm -qpl openssl-devel-0.9.7a-34.i386.rpm | grep opensslconf" gives me
/usr/include/openssl/opensslconf-i386.h
/usr/include/openssl/opensslconf.h

Have I missed something?

Comment 2 Steve Grubb 2004-05-25 20:28:52 UTC
That's not the results I get. I see the "real" problem though. At line
307 in the spec file is this:

cat $RPM_BUILD_ROOT/%{_prefix}/include/openssl/opensslconf.h >> \
   $RPM_BUILD_ROOT/%{_prefix}/include/openssl/opensslconf-%{_arch}.h

See, its based on _arch. That's fine if there was a corresponding sed
script or a perl -e that syncs the hardcoded value in opensslconf.h
with _arch.

%_arch is set for 586 on my system, so that's why its broken. Set your
system to %_arch 586 and rebuild for an experiment. This way you can
make sure whatever sed/perl script is needed does the right thing.