diff --git a/main/libde265/APKBUILD b/main/libde265/APKBUILD index b37f51a38f1..9179a67ee03 100644 --- a/main/libde265/APKBUILD +++ b/main/libde265/APKBUILD @@ -1,8 +1,8 @@ # Contributor: Jakub Jirutka # Maintainer: Jakub Jirutka pkgname=libde265 -pkgver=1.0.15 -pkgrel=1 +pkgver=1.0.16 +pkgrel=0 pkgdesc="Open h.265 video codec implementation" url="https://github.com/strukturag/libde265" arch="all" @@ -14,6 +14,7 @@ source="https://github.com/strukturag/libde265/releases/download/v$pkgver/libde2 disable_tools.patch export-only-decoder-api.patch " + # secfixes: # 1.0.15-r0: # - CVE-2023-49465 @@ -93,7 +94,7 @@ examples() { } sha512sums=" -375d8e781108247e0e8b4d7a036d20cc5d0670bdbf6ddb40a6d3dbf912fa776d2f001fb762301cb97e4d43be29eb415b0cdbfc6e07aa18b3f2346f7409c64fce libde265-1.0.15.tar.gz -1c702f229e2bafb2e72c90aed55b14691fa8f216ea855931197b8cd266c701ce2679a8f143651bdf984d7ac79a66a0d84b603822601a800ffb504461399d84ee disable_tools.patch -f7bd3799f4e4440e7efb98671eca425a5926dd526f8b1147cee2e49b1995853f67b63287c12739ef8ea680713af903517820f83f7f88eac6459f37bae01b4d50 export-only-decoder-api.patch +07f4dd75238030ed86f1b86d990a5a1c31866d5217db2aa23757432da214a19c5f4094a6c2f8fe3453c64d36ee745ca4f1e22a19a80b2685b6530431a35eb4e1 libde265-1.0.16.tar.gz +4229a81d387d8cc14aa94600033856e29019d4b8440fa1e97e8dc3832c7835422b2a3980a253966896783f31bcd979381bfe11b1c193e213970bf15e37a10c67 disable_tools.patch +c74c407eaf2a11a72f0a03b94d141881b8765f72ea8fbebb1bda74f33f772bf9bac3d4a036cca16010cd6d4021684367ca1bbdd4eaa05868dd6e7219e4cbc82f export-only-decoder-api.patch " diff --git a/main/libde265/disable_tools.patch b/main/libde265/disable_tools.patch index e927ac1e0f7..538efa1c5ef 100644 --- a/main/libde265/disable_tools.patch +++ b/main/libde265/disable_tools.patch @@ -1,11 +1,13 @@ +Patch-Source: https://sources.debian.org/src/libde265/1.0.16-1/debian/patches/disable_tools.patch +-- Description: Disable building of some internal tools that no longer link - because internal symbols are no longer exported. - -diff --git a/Makefile.am b/Makefile.am -index b4098f8..0d66934 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -8,13 +8,6 @@ if ENABLE_DEC265 + because internal symbols are no longer exported. +Author: Joachim Bauch +Index: libde265/Makefile.am +=================================================================== +--- libde265.orig/Makefile.am ++++ libde265/Makefile.am +@@ -8,12 +8,6 @@ if ENABLE_DEC265 SUBDIRS+=dec265 endif @@ -14,8 +16,7 @@ index b4098f8..0d66934 100644 -endif - -SUBDIRS+=tools --SUBDIRS+=acceleration-speed - - if ENABLE_SHERLOCK265 - SUBDIRS+=sherlock265 - endif + # Remove acceleration-speed test program, because it needs many internal functions (that have to be dllexported). + # On the other hand, that tool was only used for development. + # SUBDIRS+=acceleration-speed diff --git a/main/libde265/export-only-decoder-api.patch b/main/libde265/export-only-decoder-api.patch index cd58d39636c..ec534b1c1a5 100644 --- a/main/libde265/export-only-decoder-api.patch +++ b/main/libde265/export-only-decoder-api.patch @@ -1,13 +1,14 @@ +Patch-Source: https://sources.debian.org/src/libde265/1.0.16-1/debian/patches/only_export_decoder_api.patch +-- Description: Only export symbols defined in the decoder API. The encoder API is not final yet, so upstream exports all symbols to make development easier. For packaging we only want to expose the public API. Author: Joachim Bauch - -Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265/libde265-only_export_decoder_api.patch - ---- a/libde265/encoder/Makefile.am -+++ b/libde265/encoder/Makefile.am -@@ -12,6 +12,18 @@ +Index: libde265/libde265/encoder/Makefile.am +=================================================================== +--- libde265.orig/libde265/encoder/Makefile.am ++++ libde265/libde265/encoder/Makefile.am +@@ -12,6 +12,18 @@ libde265_encoder_la_SOURCES = \ encpicbuf.h encpicbuf.cc \ sop.h sop.cc @@ -26,9 +27,11 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 SUBDIRS=algo libde265_encoder_la_LIBADD = algo/libde265_encoder_algo.la ---- a/libde265/encoder/algo/Makefile.am -+++ b/libde265/encoder/algo/Makefile.am -@@ -17,5 +17,13 @@ +Index: libde265/libde265/encoder/algo/Makefile.am +=================================================================== +--- libde265.orig/libde265/encoder/algo/Makefile.am ++++ libde265/libde265/encoder/algo/Makefile.am +@@ -17,5 +17,13 @@ libde265_encoder_algo_la_SOURCES = \ tb-rateestim.h tb-rateestim.cc \ pb-mv.h pb-mv.cc @@ -42,9 +45,11 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 + EXTRA_DIST = \ CMakeLists.txt ---- a/configure.ac -+++ b/configure.ac -@@ -56,9 +56,7 @@ +Index: libde265/configure.ac +=================================================================== +--- libde265.orig/configure.ac ++++ libde265/configure.ac +@@ -56,9 +56,7 @@ if test "x$GCC" = "xyes"; then fi changequote([,])dnl @@ -55,9 +60,11 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 AM_CONDITIONAL([HAVE_VISIBILITY], [test "x$HAVE_VISIBILITY" != "x0"]) # Checks for header files. ---- a/libde265/image-io.cc -+++ b/libde265/image-io.cc -@@ -186,7 +186,7 @@ +Index: libde265/libde265/image-io.cc +=================================================================== +--- libde265.orig/libde265/image-io.cc ++++ libde265/libde265/image-io.cc +@@ -208,7 +208,7 @@ PacketSink_File::PacketSink_File() } @@ -66,7 +73,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 { if (mFH) { fclose(mFH); -@@ -194,7 +194,7 @@ +@@ -216,7 +216,7 @@ LIBDE265_API PacketSink_File::~PacketSin } @@ -75,7 +82,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 { assert(mFH==NULL); -@@ -202,7 +202,7 @@ +@@ -224,7 +224,7 @@ LIBDE265_API void PacketSink_File::set_f } @@ -84,16 +91,18 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 { uint8_t startCode[3]; startCode[0] = 0; ---- a/libde265/image-io.h -+++ b/libde265/image-io.h +Index: libde265/libde265/image-io.h +=================================================================== +--- libde265.orig/libde265/image-io.h ++++ libde265/libde265/image-io.h @@ -30,17 +30,17 @@ class ImageSource { public: - LIBDE265_API ImageSource(); -- virtual LIBDE265_API ~ImageSource() { } +- virtual LIBDE265_API ~ImageSource(); + ImageSource(); -+ virtual ~ImageSource() { } ++ virtual ~ImageSource(); //enum ImageStatus { Available, Waiting, EndOfVideo }; @@ -110,7 +119,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 }; -@@ -48,17 +48,17 @@ +@@ -48,17 +48,17 @@ class ImageSource class ImageSource_YUV : public ImageSource { public: @@ -128,19 +137,19 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 + virtual de265_image* get_image(bool block=true); + virtual void skip_frames(int n); -- virtual LIBDE265_API int get_width() const { return width; } -- virtual LIBDE265_API int get_height() const { return height; } -+ virtual int get_width() const { return width; } -+ virtual int get_height() const { return height; } +- virtual LIBDE265_API int get_width() const; +- virtual LIBDE265_API int get_height() const; ++ virtual int get_width() const; ++ virtual int get_height() const; private: FILE* mFH; -@@ -74,20 +74,20 @@ +@@ -74,20 +74,20 @@ class ImageSource_YUV : public ImageSour class ImageSink { public: -- virtual LIBDE265_API ~ImageSink() { } -+ virtual ~ImageSink() { } +- virtual LIBDE265_API ~ImageSink(); ++ virtual ~ImageSink(); - virtual LIBDE265_API void send_image(const de265_image* img) = 0; + virtual void send_image(const de265_image* img) = 0; @@ -149,9 +158,9 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 class ImageSink_YUV : public ImageSink { public: -- LIBDE265_API ImageSink_YUV() : mFH(NULL) { } +- LIBDE265_API ImageSink_YUV(); - LIBDE265_API ~ImageSink_YUV(); -+ ImageSink_YUV() : mFH(NULL) { } ++ ImageSink_YUV(); + ~ImageSink_YUV(); - bool LIBDE265_API set_filename(const char* filename); @@ -162,12 +171,12 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 private: FILE* mFH; -@@ -98,21 +98,21 @@ +@@ -98,21 +98,21 @@ class ImageSink_YUV : public ImageSink class PacketSink { public: -- virtual LIBDE265_API ~PacketSink() { } -+ virtual ~PacketSink() { } +- virtual LIBDE265_API ~PacketSink(); ++ virtual ~PacketSink(); - virtual LIBDE265_API void send_packet(const uint8_t* data, int n) = 0; + virtual void send_packet(const uint8_t* data, int n) = 0; @@ -190,9 +199,11 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 private: FILE* mFH; ---- a/libde265/configparam.h -+++ b/libde265/configparam.h -@@ -95,7 +95,7 @@ +Index: libde265/libde265/configparam.h +=================================================================== +--- libde265.orig/libde265/configparam.h ++++ libde265/libde265/configparam.h +@@ -95,7 +95,7 @@ class option_base bool hasLongOption() const { return true; } //mLongOption!=NULL; } std::string getLongOption() const { return mLongOption ? std::string(mLongOption) : get_name(); } @@ -201,7 +212,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 -@@ -132,7 +132,7 @@ +@@ -132,7 +132,7 @@ public: virtual std::string get_default_string() const { return default_value ? "true":"false"; } virtual std::string getTypeDescr() const { return "(boolean)"; } @@ -210,7 +221,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 bool set(bool v) { value_set=true; value=v; return true; } -@@ -162,10 +162,10 @@ +@@ -162,10 +162,10 @@ public: virtual bool has_default() const { return default_set; } void set_default(std::string v) { default_value=v; default_set=true; } @@ -224,7 +235,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 bool set(std::string v) { value_set=true; value=v; return true; } -@@ -201,10 +201,10 @@ +@@ -201,10 +201,10 @@ public: virtual bool has_default() const { return default_set; } void set_default(int v) { default_value=v; default_set=true; } @@ -238,7 +249,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 bool set(int v) { if (is_valid(v)) { value_set=true; value=v; return true; } -@@ -239,7 +239,7 @@ +@@ -239,7 +239,7 @@ public: virtual std::vector get_choice_names() const = 0; virtual std::string getTypeDescr() const; @@ -247,7 +258,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 const char** get_choices_string_table() const; -@@ -368,10 +368,10 @@ +@@ -368,10 +368,10 @@ class config_parameters config_parameters() : param_string_table(NULL) { } ~config_parameters() { delete[] param_string_table; } @@ -261,8 +272,10 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 bool ignore_unknown_options=false); ---- a/libde265/quality.h -+++ b/libde265/quality.h +Index: libde265/libde265/quality.h +=================================================================== +--- libde265.orig/libde265/quality.h ++++ libde265/libde265/quality.h @@ -26,11 +26,11 @@ #include @@ -277,7 +290,7 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 const uint8_t* ref, int refStride, int width, int height); -@@ -41,7 +41,7 @@ +@@ -41,7 +41,7 @@ LIBDE265_API double MSE(const uint8_t* i LIBDE265_API double PSNR(double mse); @@ -286,5 +299,3 @@ Patch-Source: https://build.opensuse.org/package/view_file/home:jirutka/libde265 int x0, int y0, int log2size, int cIdx); #endif - -