[Samba] RPM building tools for Samba 4.0.3 on RHEL 6 published bye me on Github

Miguel Medalha miguelmedalha at sapo.pt
Wed Mar 20 15:35:10 MDT 2013


I forgot something.

%{_libdir}/samba/libdfs_server_ad.so
%{_libdir}/samba/libposix_eadb.so

As I said before, those two entries MUST be within "### LIBS", under 
"%if %with_dc". Otherwise, the build completes cleanly but the install 
process of "samba-libs" and "samba" fails with the following:

error: Failed dependencies:
         libdfs_server_ad.so()(64bit) is needed by 
samba-libs-0:4.0.4-1.el6.x86_64
         libdfs_server_ad.so(SAMBA_4.0.4)(64bit) is needed by 
samba-libs-0:4.0.4-1.el6.x86_64

error: Failed dependencies:
         libposix_eadb.so()(64bit) is needed by samba-0:4.0.3-0.6.el6.x86_64
         libposix_eadb.so(SAMBA_4.0.3)(64bit) is needed by 
samba-0:4.0.3-0.6.el6.x86_64


I suggest doing the described inclusions and, for the sake of 
consistency, moving the correspondent exclusion to the same section:

"### LIBS
%if %with_dc
%{_libdir}/samba/libdfs_server_ad.so
%{_libdir}/samba/libposix_eadb.so
%else
# formerly excluded in files dc
%exclude %{_libdir}/samba/libdfs_server_ad.so
%endif # with_dc

If these steps are taken, everything builds and installs correctly, 
whether AD DC is activated or not.


The Fedora .spec file excludes "samba/libdfs_server_ad.so" from the 
build process altogether because Fedora is not using the AD DC component 
of Samba 4 due to lack of support with MIT Kerberos.

-----------------------

On the matter of the release of Samba 4.0.4, shouldn't the "Obsoletes" 
statement now include the form "Obsoletes: samba < %{samba_depver}" 
instead of only "Obsoletes: samba4 < %{samba_depver}"? You now need to 
Obsolete all versions of Samba 4 prior to 4.0.4, both release and 
pre-release.

Also, I think that the form you are still using for Provides (for 
example "Provides: samba4-common = %{samba_depver}") is no longer 
correct. According to the Samba team conventions, after the release of 
Samba 4 the form should now be "Provides: samba-common = %{samba_depver}".

In a previous mail to you, I suggested:

Provides: samba = %{samba_depver}
Conflicts: samba4 < %{samba_depver}
Obsoletes: samba < %{samba_depver}

I used "Conflicts" for "samba4" because there are significant 
differences between the pre-release and the release versions.
Or maybe we could use two "Obsoletes" statements instead...

Best regards
Miguel



More information about the samba mailing list