svn commit: r474105 - head/multimedia/kodi-devel/files

Tobias Kortkamp tobik at FreeBSD.org
Sat Jul 7 16:15:31 UTC 2018


Author: tobik
Date: Sat Jul  7 16:15:30 2018
New Revision: 474105
URL: https://svnweb.freebsd.org/changeset/ports/474105

Log:
  multimedia/kodi-devel: Unbreak when objdump is missing
  
  Use readelf to find library sonames instead which are used to fill in the
  blanks in xbmc/DllPaths_generated.h.in.

Added:
  head/multimedia/kodi-devel/files/patch-cmake_scripts_freebsd_Macros.cmake   (contents, props changed)

Added: head/multimedia/kodi-devel/files/patch-cmake_scripts_freebsd_Macros.cmake
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/multimedia/kodi-devel/files/patch-cmake_scripts_freebsd_Macros.cmake	Sat Jul  7 16:15:30 2018	(r474105)
@@ -0,0 +1,25 @@
+objdump might not be available everywhere; use readelf instead.
+
+find_soname() is used to fill in the blanks in xbmc/DllPaths_generated.h.in
+
+--- cmake/scripts/freebsd/Macros.cmake.orig	2018-06-30 06:25:00 UTC
++++ cmake/scripts/freebsd/Macros.cmake
+@@ -78,15 +78,11 @@ function(find_soname lib)
+     string(REGEX MATCH ".*lib${liblow}.so" ${lib}_FILENAME ${_TMP_FILENAME})
+   endif()
+   if(${lib}_FILENAME)
+-    execute_process(COMMAND ${CMAKE_OBJDUMP} -p ${${lib}_FILENAME}
+-                    COMMAND grep SONAME.*${liblow}
++    execute_process(COMMAND readelf -d ${${lib}_FILENAME}
++                    COMMAND awk "$2 == \"SONAME\" { printf \"%s\", substr($NF, 2, length($NF) - 2) }"
+                     ERROR_QUIET
+                     OUTPUT_VARIABLE ${lib}_SONAME)
+-    string(REPLACE "SONAME " "" ${lib}_SONAME ${${lib}_SONAME})
+-    string(STRIP ${${lib}_SONAME} ${lib}_SONAME)
+-    if(VERBOSE)
+-      message(STATUS "${lib} soname: ${${lib}_SONAME}")
+-    endif()
++    message(STATUS "${lib} soname: ${${lib}_SONAME}")
+     set(${lib}_SONAME ${${lib}_SONAME} PARENT_SCOPE)
+   endif()
+   if(arg_REQUIRED AND NOT ${lib}_SONAME)


More information about the svn-ports-all mailing list