media-tv/plex-media-server: Fixing bug 646066
authorJonathan Vasquez <fearedbliss@gentoo.org>
Mon, 29 Jan 2018 20:42:09 +0000 (15:42 -0500)
committerJonathan Vasquez <fearedbliss@gentoo.org>
Mon, 29 Jan 2018 20:43:39 +0000 (15:43 -0500)
Package-Manager: Portage-2.3.19, Repoman-2.3.6

media-tv/plex-media-server/plex-media-server-1.10.1-r1.ebuild [moved from media-tv/plex-media-server/plex-media-server-1.10.1.ebuild with 84% similarity]

similarity index 84%
rename from media-tv/plex-media-server/plex-media-server-1.10.1.ebuild
rename to media-tv/plex-media-server/plex-media-server-1.10.1-r1.ebuild
index 7941b222c814dba2dc5500a13b6ff1cee90bc067..1d59396063e065649afc7807e2f360ae0ae18170 100644 (file)
@@ -87,6 +87,10 @@ src_install() {
        # Disabling due to Bug 644694
        #_handle_multilib
 
+       # Mask Plex libraries so that revdep-rebuild doesn't try to rebuild them.
+       # Plex has it's own precompiled libraries.
+       _mask_plex_libraries_revdep
+
        # Install systemd service file
        local INIT_NAME="${PN}.service"
        local INIT="${FILESDIR}/systemd/${INIT_NAME}"
@@ -108,9 +112,10 @@ pkg_postinst() {
        elog "To start the Plex Server, run 'rc-config start plex-media-server', you will then be able to access your library at http://<ip>:32400/web/"
 }
 
-# Bug 644694. We shouldn't register plex libraries in global
-# library path since this will cause other packages on the system
-# to break.
+# Disabling the follow function due to Bug 644694.
+# We shouldn't register plex libraries in global
+# library path since this will cause other packages
+# on the system to break.
 
 # Finds out where the library directory is for this system
 # and handles ldflags as to not break library dependencies
@@ -124,7 +129,15 @@ _handle_multilib() {
        doenvd "${T}"/66plex
 }
 
-# Remove execstack flags from some libraries/executables so that it works in hardened setups.
+# Adds the precompiled plex libraries to the revdep-rebuild's mask list
+# so it doesn't try to rebuild libraries that can't be rebuilt.
+_mask_plex_libraries_revdep() {
+       dodir /etc/revdep-rebuild/
+       echo "SEARCH_DIRS_MASK=\"${EPREFIX}/usr/$(get_libdir)/plexmediaserver\"" > "${ED}"/etc/revdep-rebuild/80plexmediaserver
+}
+
+# Remove execstack flags from some libraries/executables
+# so that it works in hardened setups.
 _remove_execstack_markings() {
        for f in "${EXECSTACKED_BINS[@]}"; do
                # Unquoting 'f' so that expansion works.