diff --git a/libs/libnpupnp/Makefile b/libs/libnpupnp/Makefile index e689b1c84..12d0746d5 100644 --- a/libs/libnpupnp/Makefile +++ b/libs/libnpupnp/Makefile @@ -1,12 +1,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=libnpupnp -PKG_VERSION:=4.0.10 +PKG_VERSION:=4.0.11 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://www.lesbonscomptes.com/upmpdcli/downloads -PKG_HASH:=a682d0584d79acd5a4d551ae18efc83cb0765624da27fb0edcd47e3fb94418f9 +PKG_HASH:=15b73a5197e649afe44dd15002be131b4b0e20a2b2e9b7ea4a2000b9644fefae PKG_MAINTAINER:= PKG_LICENSE:=LGPL-2.1-or-later @@ -35,8 +35,8 @@ TARGET_CFLAGS += -flto TARGET_LDFLAGS += -flto define Build/InstallDev - $(INSTALL_DIR) $(1)/usr/include/npupnp/upnp - $(CP) $(PKG_INSTALL_DIR)/usr/include/npupnp/upnp/* $(1)/usr/include/npupnp/upnp + $(INSTALL_DIR) $(1)/usr/include/npupnp + $(CP) $(PKG_INSTALL_DIR)/usr/include/npupnp/* $(1)/usr/include/npupnp/ $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnpupnp.so* $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig diff --git a/multimedia/gerbera/Makefile b/multimedia/gerbera/Makefile index 58bdb2679..59c953840 100644 --- a/multimedia/gerbera/Makefile +++ b/multimedia/gerbera/Makefile @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=gerbera -PKG_VERSION:=1.6.0 -PKG_RELEASE:=2 +PKG_VERSION:=1.6.1 +PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=https://codeload.github.com/gerbera/gerbera/tar.gz/v$(PKG_VERSION)? -PKG_HASH:=3a4956ec5fea1101e8daa32d9cfb985db908a49e2ac6137a1b2bf509e2684a6c +PKG_HASH:=9bb119ee422c8e7a053c309256215a8899dfd6707f6b93496e6facea7978ac7c PKG_MAINTAINER:= PKG_LICENSE:=GPL-2.0-or-later @@ -45,13 +45,13 @@ define Package/gerbera/conffiles endef CMAKE_OPTIONS += \ - -DCXX_FILESYSTEM_NO_LINK_NEEDED=$(if $(CONFIG_GCC_USE_VERSION_9),ON,OFF) \ - -DCXX_FILESYSTEM_STDCPPFS_NEEDED=$(if $(CONFIG_GCC_USE_VERSION_8),OFF,ON) \ + -DCXX_FILESYSTEM_NO_LINK_NEEDED=$(if $(CONFIG_GCC_USE_VERSION_8),OFF,ON) \ + $(if $(CONFIG_GCC_USE_VERSION_8),-DCXX_FILESYSTEM_STDCPPFS_NEEDED=OFF) \ -DIconv_INCLUDE_DIR=$(ICONV_PREFIX)/include \ -DIconv_LIBRARY=$(ICONV_PREFIX)/lib/libiconv.a \ -DWITH_MAGIC=ON \ -DWITH_MYSQL=OFF \ - -DWITH_CURL=OFF \ + -DWITH_CURL=ON \ -DWITH_INOTIFY=ON \ -DWITH_JS=OFF \ -DWITH_TAGLIB=ON \ @@ -69,8 +69,7 @@ CMAKE_OPTIONS += \ TARGET_CFLAGS += \ -ffunction-sections \ -fdata-sections \ - -flto \ - -I$(STAGING_DIR)/usr/include/npupnp/upnp + -flto TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed diff --git a/multimedia/gerbera/patches/010-ffmpeg.patch b/multimedia/gerbera/patches/010-ffmpeg.patch deleted file mode 100644 index ac3bf28d4..000000000 --- a/multimedia/gerbera/patches/010-ffmpeg.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 72f9db7bd75f03e9e7afeaaa0aa0ab7af9fe81a5 Mon Sep 17 00:00:00 2001 -From: Yuri Timenkov -Date: Sun, 26 Jul 2020 12:17:15 +0000 -Subject: [PATCH] Fixed build with ffmnpeg but without thumbnailer - -Fixes: #953 ---- - src/metadata/ffmpeg_handler.cc | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/metadata/ffmpeg_handler.cc b/src/metadata/ffmpeg_handler.cc -index 4bba5655..e0ff84bb 100644 ---- a/src/metadata/ffmpeg_handler.cc -+++ b/src/metadata/ffmpeg_handler.cc -@@ -265,6 +265,8 @@ void FfmpegHandler::fillMetadata(std::shared_ptr item) - avformat_close_input(&pFormatCtx); - } - -+#ifdef HAVE_FFMPEGTHUMBNAILER -+ - fs::path getThumbnailCacheBasePath(Config& config) - { - if (auto configuredDir = config.getOption(CFG_SERVER_EXTOPTS_FFMPEGTHUMBNAILER_CACHE_DIR); -@@ -284,7 +286,6 @@ fs::path getThumbnailCachePath(const fs::path& base, const fs::path& movie) - return path; - } - --#ifdef HAVE_FFMPEGTHUMBNAILER - std::optional> FfmpegHandler::readThumbnailCacheFile(const fs::path& movie_filename) const - { - auto path = getThumbnailCachePath(getThumbnailCacheBasePath(*config), movie_filename); diff --git a/multimedia/gerbera/patches/020-Quick-changes-for-working-with-NPUPNP.patch b/multimedia/gerbera/patches/010-npupnp.patch similarity index 90% rename from multimedia/gerbera/patches/020-Quick-changes-for-working-with-NPUPNP.patch rename to multimedia/gerbera/patches/010-npupnp.patch index 73019a149..fd96dad63 100644 --- a/multimedia/gerbera/patches/020-Quick-changes-for-working-with-NPUPNP.patch +++ b/multimedia/gerbera/patches/010-npupnp.patch @@ -1,4 +1,4 @@ -From 993e4e157e4a8c4898b45982045cf63e3b57a6a1 Mon Sep 17 00:00:00 2001 +From a13f3588f78e9ffda5e915f44cbf1957f12513c4 Mon Sep 17 00:00:00 2001 From: Jean-Francois Dockes Date: Fri, 13 Mar 2020 09:19:04 +0100 Subject: [PATCH] Quick changes for working with NPUPNP @@ -6,27 +6,27 @@ Subject: [PATCH] Quick changes for working with NPUPNP (Rebased and made default) Signed-off-by: Rosen Penev --- - CMakeLists.txt | 35 +++++++++++++++--------- - src/action_request.cc | 11 +++++++- + CMakeLists.txt | 43 +++++++++++++++++------- + src/action_request.cc | 11 +++++- src/device_description_handler.cc | 4 +++ src/file_request_handler.cc | 4 +++ src/iohandler/file_io_handler.cc | 1 - src/iohandler/io_handler.cc | 1 - src/iohandler/mem_io_handler.cc | 1 - - src/serve_request_handler.cc | 8 ++++++ - src/server.cc | 8 ++++++ + src/serve_request_handler.cc | 8 +++++ + src/server.cc | 8 +++++ src/transcoding/transcode_ext_handler.cc | 1 - - src/upnp_cds.cc | 11 ++++++++ - src/upnp_cm.cc | 11 ++++++++ - src/upnp_mrreg.cc | 7 ++++- - src/url_request_handler.cc | 5 +++- - src/util/upnp_clients.cc | 12 ++++++++ - src/util/upnp_headers.cc | 14 ++++++++++ + src/upnp_cds.cc | 11 ++++++ + src/upnp_cm.cc | 11 ++++++ + src/upnp_mrreg.cc | 7 +++- + src/url_request_handler.cc | 5 ++- + src/util/upnp_clients.cc | 12 +++++++ + src/util/upnp_headers.cc | 12 +++++++ src/web/web_request_handler.cc | 4 +++ - 17 files changed, 118 insertions(+), 20 deletions(-) + 17 files changed, 124 insertions(+), 20 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 81f7818e..56472b97 100644 +index 8b6db993..b23dad57 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -35,6 +35,7 @@ if (CONAN_EXPORTED) @@ -37,17 +37,25 @@ index 81f7818e..56472b97 100644 set(WITH_MAGIC 1 CACHE BOOL "Use libmagic to identify file mime types") set(WITH_MYSQL 0 CACHE BOOL "Store media information in MySQL DB") set(WITH_CURL 1 CACHE BOOL "CURL required for online services") -@@ -303,23 +304,31 @@ add_definitions(${LFS_DEFINITIONS}) +@@ -303,23 +304,39 @@ add_definitions(${LFS_DEFINITIONS}) add_compile_options(${LFS_COMPILE_OPTIONS}) target_link_libraries(libgerbera ${LFS_LIBRARIES}) -find_package (pupnp "1.12.1" REQUIRED) +if (WITH_NPUPNP) -+ pkg_check_modules (NPUPNP REQUIRED libnpupnp) -+ include_directories (${NPUPNP_INCLUDE_DIRS}) -+ set(CMAKE_REQUIRED_LIBRARIES npupnp) -+ add_definitions(-DUSING_NPUPNP) -+ target_link_libraries (libgerbera ${NPUPNP_LIBRARIES}) ++ find_package(PkgConfig QUIET) ++ pkg_check_modules (NPUPNP QUIET libnpupnp>=4.0.11) ++ if (NOT NPUPNP_FOUND) ++ find_package (NPUPNP REQUIRED) ++ endif() ++ if (NPUPNP_FOUND) ++ include_directories (${NPUPNP_INCLUDE_DIRS}) ++ set(CMAKE_REQUIRED_LIBRARIES npupnp) ++ add_definitions(-DUSING_NPUPNP) ++ target_link_libraries (libgerbera ${NPUPNP_LIBRARIES}) ++ else() ++ message(FATAL_ERROR "libnpupnp not found") ++ endif() +else() + find_package (pupnp "1.12.1" REQUIRED) @@ -190,7 +198,7 @@ index 5574a16d..223746ef 100644 #include #include diff --git a/src/serve_request_handler.cc b/src/serve_request_handler.cc -index 210140a3..01dde69b 100644 +index 59f37252..42d07e94 100644 --- a/src/serve_request_handler.cc +++ b/src/serve_request_handler.cc @@ -94,7 +94,11 @@ void ServeRequestHandler::getInfo(const char* filename, UpnpFileInfo* info) @@ -392,10 +400,10 @@ index f2a99c94..7de2227d 100644 /// \todo transcoding for get_info diff --git a/src/util/upnp_clients.cc b/src/util/upnp_clients.cc -index 2033cf31..1dd7964d 100644 +index 6fd40de2..28f0fb16 100644 --- a/src/util/upnp_clients.cc +++ b/src/util/upnp_clients.cc -@@ -268,6 +268,17 @@ bool Clients::getInfoByType(const std::string& match, ClientMatchType type, cons +@@ -262,6 +262,17 @@ bool Clients::getInfoByType(const std::string& match, ClientMatchType type, cons bool Clients::downloadDescription(const std::string& location, std::unique_ptr& xml) { @@ -413,7 +421,7 @@ index 2033cf31..1dd7964d 100644 IXML_Document* descDoc = nullptr; int errCode = UpnpDownloadXmlDoc(location.c_str(), &descDoc); if (errCode != UPNP_E_SUCCESS) { -@@ -281,6 +292,7 @@ bool Clients::downloadDescription(const std::string& location, std::unique_ptr

11201) + #if (UPNP_VERSION > 11299) #include #else #include @@ -439,14 +447,12 @@ index ef85106b..aec13850 100644 #include #include "common.h" -@@ -101,18 +103,29 @@ void Headers::writeHeaders(UpnpFileInfo* fileInfo) const +@@ -101,18 +103,27 @@ void Headers::writeHeaders(UpnpFileInfo* fileInfo) const if (headers == nullptr) return; +#if defined(USING_NPUPNP) -+ for (const auto& iter : *headers) { -+ fileInfo->response_headers.push_back(iter); -+ } ++ std::copy(headers->begin(), headers->end(), std::back_inserter(fileInfo->response_headers)); +#else auto head = const_cast(UpnpFileInfo_get_ExtraHeadersList(fileInfo)); for (const auto& iter : *headers) { @@ -469,7 +475,7 @@ index ef85106b..aec13850 100644 auto head = const_cast(UpnpFileInfo_get_ExtraHeadersList(fileInfo)); UpnpListIter pos; for (pos = UpnpListBegin(head); pos != UpnpListEnd(head); pos = UpnpListNext(head, pos)) { -@@ -121,6 +134,7 @@ std::unique_ptr> Headers::readHeaders(UpnpFil +@@ -121,6 +132,7 @@ std::unique_ptr> Headers::readHeaders(UpnpFil auto add = parseHeader(header); ret->insert(add); }