Update libebml 1.4.0. I reworked the whole CMake shared,static
lib handling. This will send this diff to upstream in a few days.

diff --git a/textproc/libebml/Makefile b/textproc/libebml/Makefile
index 1cd6e0c5b33..87bd70c4a0a 100644
--- a/textproc/libebml/Makefile
+++ b/textproc/libebml/Makefile
@@ -2,12 +2,12 @@
 
 COMMENT=       Extensible Binary Meta Language library
 
-DISTNAME=      libebml-1.3.7
+DISTNAME=      libebml-1.4.0
 CATEGORIES=    textproc
 MASTER_SITES=  https://dl.matroska.org/downloads/libebml/
 EXTRACT_SUFX=  .tar.xz
 
-SHARED_LIBS=   ebml    3.2
+SHARED_LIBS=   ebml    4.0
 
 HOMEPAGE=      http://www.matroska.org/
 
diff --git a/textproc/libebml/distinfo b/textproc/libebml/distinfo
index c330edfee0d..1a236814c4c 100644
--- a/textproc/libebml/distinfo
+++ b/textproc/libebml/distinfo
@@ -1,2 +1,2 @@
-SHA256 (libebml-1.3.7.tar.xz) = 4yRMh/WE1/yMNxiBprewZYPMBB+I4uP66aIV2cpY6fQ=
-SIZE (libebml-1.3.7.tar.xz) = 69460
+SHA256 (libebml-1.4.0.tar.xz) = gKvJqCVJYVAYeY7nBJlycKObQ96abn4NI7YvjOaCxLM=
+SIZE (libebml-1.4.0.tar.xz) = 69944
diff --git a/textproc/libebml/patches/patch-CMakeLists_txt 
b/textproc/libebml/patches/patch-CMakeLists_txt
index 89be14ded7f..a51c19e8f2e 100644
--- a/textproc/libebml/patches/patch-CMakeLists_txt
+++ b/textproc/libebml/patches/patch-CMakeLists_txt
@@ -5,16 +5,16 @@ Add options for building and installing shared, static 
libraries
 Index: CMakeLists.txt
 --- CMakeLists.txt.orig
 +++ CMakeLists.txt
-@@ -4,6 +4,8 @@ project(ebml VERSION 1.3.7)
- 
+@@ -5,6 +5,8 @@ project(ebml VERSION 1.4.0)
  option(DISABLE_PKGCONFIG "Disable PkgConfig module generation" OFF)
  option(DISABLE_CMAKE_CONFIG "Disable CMake package config module generation" 
OFF)
+ option(ENABLE_WIN32_IO "Build the Windows I/O helper class" OFF)
 +option(DISABLE_SHARED_LIBS "Disable build and install shared libraries" OFF)
 +option(DISABLE_STATIC_LIBS "Disable build and install static libraries" OFF)
  
  include(GNUInstallDirs)
  
-@@ -63,40 +65,54 @@ set(libebml_PUBLIC_HEADERS
+@@ -72,50 +74,82 @@ set(libebml_PUBLIC_HEADERS
  
  set(libebml_C_PUBLIC_HEADERS ebml/c/libebml_t.h)
  
@@ -25,82 +25,130 @@ Index: CMakeLists.txt
 -  if(HAVE_WINAPIFAMILY_H)
 -    target_compile_definitions(ebml PUBLIC HAVE_WINAPIFAMILY_H)
 -  endif()
+-endif()
+-set_target_properties(ebml PROPERTIES
+-  VERSION 5.0.0
+-  SOVERSION 5
+-  CXX_VISIBILITY_PRESET hidden
+-  VISIBILITY_INLINES_HIDDEN ON
+-)
+-target_include_directories(ebml
+-  PRIVATE
+-    $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
+-  PUBLIC
+-    $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
+-    $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
+-if(MSVC)
+-  target_compile_definitions(ebml PRIVATE _CRT_SECURE_NO_WARNINGS)
+-endif()
+ 
+ include(GenerateExportHeader)
+-generate_export_header(ebml EXPORT_MACRO_NAME EBML_DLL_API)
+-target_sources(ebml
+-  PRIVATE
+-    ${CMAKE_CURRENT_BINARY_DIR}/ebml_export.h
+-)
 +foreach (TYPE IN ITEMS STATIC SHARED)
 +  if (NOT DISABLE_${TYPE}_LIBS)
-+    string (TOLOWER "${TYPE}" type)
-+    add_library(ebml-${type} ${TYPE} ${libebml_SOURCES} 
${libebml_PUBLIC_HEADERS} ${libebml_C_PUBLIC_HEADERS})
-+    set_target_properties(ebml-${type} PROPERTIES
-+      VERSION 4.0.0
-+      SOVERSION 4)
-+    target_include_directories(ebml-${type} PUBLIC
-+      $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
-+      $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
-+    if(MSVC)
-+      target_compile_definitions(ebml-${type} PRIVATE _CRT_SECURE_NO_WARNINGS)
+ 
+-if(NOT BUILD_SHARED_LIBS)
+-  target_compile_definitions(ebml PUBLIC EBML_STATIC_DEFINE)
++    set(type_suffix "")
++    if ("${TYPE}" STREQUAL "STATIC")
++      string(TOLOWER "${TYPE}" type)
++      set(type_suffix "-${type}")
 +    endif()
++
++    add_library(ebml${type_suffix} ${TYPE}
++      ${libebml_SOURCES}
++      ${libebml_PUBLIC_HEADERS}
++      ${libebml_C_PUBLIC_HEADERS})
++
 +    if(WIN32)
 +      include(CheckIncludeFile)
 +      check_include_file(winapifamily.h HAVE_WINAPIFAMILY_H)
 +      if(HAVE_WINAPIFAMILY_H)
-+        target_compile_definitions(ebml-${type} PUBLIC HAVE_WINAPIFAMILY_H)
++        target_compile_definitions(ebml${type_suffix} PUBLIC 
HAVE_WINAPIFAMILY_H)
 +      endif()
- endif()
--set_target_properties(ebml PROPERTIES
--  VERSION 4.0.0
--  SOVERSION 4)
--target_include_directories(ebml PUBLIC
--  $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
--  $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
--if(MSVC)
--  target_compile_definitions(ebml PRIVATE _CRT_SECURE_NO_WARNINGS)
--endif()
--if(BUILD_SHARED_LIBS)
--  set_target_properties(ebml
++    endif()
++
++    target_include_directories(ebml${type_suffix}
++      PRIVATE
++        $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
++      PUBLIC
++        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
++        $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
++
++    generate_export_header(ebml${type_suffix} EXPORT_MACRO_NAME EBML_DLL_API 
BASE_NAME ebml)
++    target_sources(ebml${type_suffix}
++      PRIVATE
++        ${CMAKE_CURRENT_BINARY_DIR}/ebml_export.h)
++
++    if(MSVC)
++      target_compile_definitions(ebml${type_suffix} PRIVATE 
_CRT_SECURE_NO_WARNINGS)
++    endif()
 +  endif()
 +endforeach()
 +
 +if(NOT DISABLE_SHARED_LIBS)
-+  set_target_properties(ebml-shared
-     PROPERTIES
-     DEFINE_SYMBOL "EBML_DLL_EXPORT"
-     C_VISIBILITY_PRESET hidden
--    VISIBILITY_INLINES_HIDDEN 1)
--  target_compile_definitions(ebml
-+    VISIBILITY_INLINES_HIDDEN 1
-+    OUTPUT_NAME ebml)
-+  target_compile_definitions(ebml-shared
-     PUBLIC EBML_DLL
-     PRIVATE EBML_DLL_EXPORT)
-+  install(TARGETS ebml-shared
-+    EXPORT EbmlTargets
++  set_target_properties(ebml PROPERTIES
++    VERSION 5.0.0
++    SOVERSION 5
++    OUTPUT_NAME ebml
++    DEFINE_SYMBOL "EBML_DLL_EXPORT"
++    VISIBILITY_INLINES_HIDDEN ON
++    C_VISIBILITY_PRESET hidden
++    CXX_VISIBILITY_PRESET hidden)
++
++  target_compile_definitions(ebml
++      PUBLIC EBML_DLL
++      PRIVATE EBML_DLL_EXPORT)
++
++  install(TARGETS ebml
++    EXPORT EBMLTargets
 +    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
 +    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
 +    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
  endif()
  
 -install(TARGETS ebml
--  EXPORT EbmlTargets
+-  EXPORT EBMLTargets
 -  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
 -  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
 -  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
 +if(NOT DISABLE_STATIC_LIBS)
 +  set_target_properties(ebml-static PROPERTIES OUTPUT_NAME ebml)
++  target_compile_definitions(ebml-static PUBLIC EBML_STATIC_DEFINE)
 +  install(TARGETS ebml-static
 +    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
 +    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
 +endif()
  
-+
  install(FILES ${libebml_PUBLIC_HEADERS} DESTINATION 
${CMAKE_INSTALL_INCLUDEDIR}/ebml)
  install(FILES ${libebml_C_PUBLIC_HEADERS} DESTINATION 
${CMAKE_INSTALL_INCLUDEDIR}/ebml/c)
+-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/ebml_export.h DESTINATION 
${CMAKE_INSTALL_INCLUDEDIR}/ebml)
++if(NOT DISABLE_SHARED_LIBS)
++  install(FILES ${CMAKE_CURRENT_BINARY_DIR}/ebml_export.h DESTINATION 
${CMAKE_INSTALL_INCLUDEDIR}/ebml)
++endif()
  
-@@ -118,7 +134,9 @@ if(NOT DISABLE_CMAKE_CONFIG)
+ if(NOT DISABLE_PKGCONFIG)
+   set(prefix ${CMAKE_INSTALL_PREFIX})
+@@ -126,7 +160,7 @@ if(NOT DISABLE_PKGCONFIG)
+   if (HAVE_WINAPIFAMILY_H)
+     set(WINAPIFAMILY_PC -DHAVE_WINAPIFAMILY_H)
+   endif()
+-  if(NOT BUILD_SHARED_LIBS)
++  if(NOT DISABLE_STATIC_LIBS)
+     set(STATIC_DEFINE_CFLAGS -DEBML_STATIC_DEFINE)
    endif()
-   include(CMakePackageConfigHelpers)
-   write_basic_package_version_file(EbmlConfigVersion.cmake COMPATIBILITY 
SameMajorVersion)
+   configure_file(libebml.pc.in libebml.pc @ONLY)
+@@ -139,7 +173,9 @@ if(NOT DISABLE_CMAKE_CONFIG)
+   configure_package_config_file(EBMLConfig.cmake.in 
${CMAKE_CURRENT_BINARY_DIR}/EBMLConfig.cmake
+     INSTALL_DESTINATION ${CMAKE_INSTALL_PACKAGEDIR})
+   write_basic_package_version_file(EBMLConfigVersion.cmake COMPATIBILITY 
SameMajorVersion)
 +if(NOT DISABLE_SHARED_LIBS)
-   install(EXPORT EbmlTargets DESTINATION ${CMAKE_INSTALL_PACKAGEDIR})
+   install(EXPORT EBMLTargets NAMESPACE EBML:: DESTINATION 
${CMAKE_INSTALL_PACKAGEDIR})
 +endif()
    install(FILES
-     ${CMAKE_CURRENT_SOURCE_DIR}/EbmlConfig.cmake
-     ${CMAKE_CURRENT_BINARY_DIR}/EbmlConfigVersion.cmake
+     ${CMAKE_CURRENT_BINARY_DIR}/EBMLConfig.cmake
+     ${CMAKE_CURRENT_BINARY_DIR}/EBMLConfigVersion.cmake
diff --git a/textproc/libebml/pkg/PLIST b/textproc/libebml/pkg/PLIST
index 621ceb53c5e..c230dc8f8fa 100644
--- a/textproc/libebml/pkg/PLIST
+++ b/textproc/libebml/pkg/PLIST
@@ -29,12 +29,13 @@ include/ebml/SafeReadIOCallback.h
 include/ebml/StdIOCallback.h
 include/ebml/c/
 include/ebml/c/libebml_t.h
+include/ebml/ebml_export.h
 lib/cmake/
-lib/cmake/ebml/
-lib/cmake/ebml/EbmlConfig.cmake
-lib/cmake/ebml/EbmlConfigVersion.cmake
-lib/cmake/ebml/EbmlTargets${MODCMAKE_BUILD_SUFFIX}
-lib/cmake/ebml/EbmlTargets.cmake
-lib/libebml.a
+lib/cmake/EBML/
+lib/cmake/EBML/EBMLConfig.cmake
+lib/cmake/EBML/EBMLConfigVersion.cmake
+lib/cmake/EBML/EBMLTargets${MODCMAKE_BUILD_SUFFIX}
+lib/cmake/EBML/EBMLTargets.cmake
+@static-lib lib/libebml.a
 @lib lib/libebml.so.${LIBebml_VERSION}
 lib/pkgconfig/libebml.pc

Reply via email to