Skip to content
This repository has been archived by the owner on Feb 12, 2021. It is now read-only.

Commit

Permalink
Handle the libssl/libcrypto 0.9.8/1.0.0, rewamp filtering.
Browse files Browse the repository at this point in the history
We need to handle the deps for libcrypto/libssl. Install script
will resolve the 0.9.8 requires as 1.0.0 iff 1.0.0 is present
and 0.9.8 is *not* present during build. This is too complicated
to fix, so we just add some hard links after 'make install' to
always use 1.0.0 according to mysterious entry in changelog.

Current filtering is broken. It Provides: libcef.so, making it possible
for other apps to link to that library. It also turns off the
dependency generator which makes zypper happily install package
with all sorts of dependency errors unless we state all of them
explicitly (how has this ever worked?).

Removing complete filter solution, using upstream builtin filtering
instead. Requires us to add som manual Requires: for symlinked deps
which not are picked up automatically. No solution is really optimal
here, but this is the best I have found out so far.
  • Loading branch information
Alec Leamas authored and Alec Leamas committed May 24, 2013
1 parent e622870 commit e510ab0
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 8 deletions.
5 changes: 0 additions & 5 deletions find-requires.sh

This file was deleted.

27 changes: 24 additions & 3 deletions spotify-client.spec
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@
%global __arch_install_post \
%( echo %{__arch_install_post} | sed '/check-rpaths/d' )

%ifarch x86_64
%global req_64 ()(64bit)
%endif

Name: spotify-client
Version: 0.8.8.323.gd143501.250
Expand All @@ -38,7 +41,6 @@ Source1: spotify-client_%{version}-%{release}_i386.deb
%endif
Source2: pkg-bundled-README
Source3: spotify.sh
Source4: find-requires.sh
NoSource: 0
%if 0%{?suse_version}
BuildRequires: update-desktop-files
Expand All @@ -53,6 +55,11 @@ BuildRequires: mozilla-nspr

Requires: hicolor-icon-theme
Requires: zenity
# Symlinked, not picked up by dep-checker (all 3)
Requires: libopenssl1_0_0%{?req_64}
Requires: mozilla-nss%{?req_64}
Requires: mozilla-nspr%{?req_64}

Recommends: libmp3lame0
%endif

Expand Down Expand Up @@ -84,8 +91,18 @@ It includes the following features:
- Social media integration with Facebook and Twitter
- 3rd-party applications integrated into the client

%define _use_internal_dependency_generator 0
%define __find_requires %{SOURCE4}

# Bundled, we should not Provide these. Using builtin filtering:
# http://rpm.org/wiki/PackagerDocs/DependencyGenerator
%global __provides_exclude_from ^%{_libdir}/spotify-client/.*[.]so

# Filter away the deps om bundled libs and those substituted
# by symlinks and explicit Requires:.
%global __requires_exclude ^libssl.so.0.9.8
%global __requires_exclude %__requires_exclude|^libcrypto.so.0.9.8
%global __requires_exclude %__requires_exclude|^libcef.so
%global __requires_exclude %__requires_exclude|[.]so[.][0-2][a-f]



%prep
Expand All @@ -107,6 +124,10 @@ make install DESTDIR=%{buildroot}
# http://en.opensuse.org/openSUSE:Packaging_desktop_menu_categories#Multimedia
%suse_update_desktop_file spotify

cd %{buildroot}%{_libdir}/spotify-client
ln -sf /lib/libssl.so.1.0.0 libssl.so.0.9.8
ln -sf /lib/libcrypto.so.1.0.0 libcrypto.so.0.9.8


%post
%desktop_database_post
Expand Down

0 comments on commit e510ab0

Please sign in to comment.