Bug 918088 - samba-4.0.3 SRPM from rawhide incompatible with older operating sytems
Summary: samba-4.0.3 SRPM from rawhide incompatible with older operating sytems
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: samba
Version: rawhide
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Guenther Deschner
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-03-05 13:06 UTC by Nico Kadel-Garcia
Modified: 2013-03-20 09:52 UTC (History)
6 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2013-03-20 09:52:31 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
RHEL 6 compatible samba-4.0.3.spec (98.36 KB, text/plain)
2013-03-05 13:11 UTC, Nico Kadel-Garcia
no flags Details

Description Nico Kadel-Garcia 2013-03-05 13:06:31 UTC
User-Agent:       Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0
Build Identifier: 

The samba-4.0.3 SRPM from rawhide is quite good, but is incompatible with older operating systems such as RHEL 6 or older Fedoras.

Reproducible: Always

Steps to Reproduce:
1. Install Fedora 17 or Fedora 18
2: rpmbuild --rebuild samba-4.0.3-2.fc19.src.rpm

Actual Results:  
The "./configure" step fails. There are hardcoded requirements for libtdb and libldb that are more recent than those in samba.spec.

Expected Results:  
Provide init scripts for SysV init for older operating systems, report correct versions of dependencies for Fedora with systemd.

This is work that can be integrated with the samba4 packages for RHEL 6. I've been publishing my notes at https://github.com/nkadel/samba-4.0.3-srpm/samba.spec, along with the library dependencies for RHEL 6. It's possible to avoid the dependencies by using the internal versions of ldb and talloc and others, but then the "talloc_version" settings and "with_talloc" are confusing. 

The versions should be updated to match the current rawhide versions:

    # Versions for libraries if from external RPMs, not internal code
    %define ldb_version 1.1.15
    %define talloc_version 2.0.8
    %define tdb_version 1.2.11
    %define tevent_version 0.9.17

"with_talloc" and other such libraries should be renamed "with_internal_talloc" to be more clear that those flags select for the internal library, not the external library, and the "with_talloc" options for selecting files can be written:

    %if %with_internal_talloc
    # Stop resetting talloc_version locally, use wildcards
    #%global talloc_version 2.0.7
    %{_libdir}/samba/libtalloc.so.*
    %endif

This also eliminates any need to specify the version of ntdb, which is an entirely internal library and not currently used in the rawhide package.

Comment 1 Nico Kadel-Garcia 2013-03-05 13:11:28 UTC
Created attachment 705410 [details]
RHEL 6 compatible samba-4.0.3.spec

This includes most of my current RHEL 6 compatibility work for samba-4.0.3, but also includes the talloc_version, tdb_version, with_internal_talloc, with_internal_tdb, and similar changes to corectly describe and reqport versions and requirements of Samba add-on libraries.

Comment 2 Andreas Schneider 2013-03-20 09:52:31 UTC
We decided to write a new clean spec file for Fedora and RHEL7 to get rid of all the ugly hacks.
That's why we removed support for older Fedora and RHEL versions. We don't plan to include support for RHEL6.


Note You need to log in before you can comment on or make changes to this bug.