summaryrefslogtreecommitdiffhomepage
path: root/patches
diff options
context:
space:
mode:
Diffstat (limited to 'patches')
-rw-r--r--patches/libtheora-1.1.1.local.patch21
-rw-r--r--patches/libtheora/fix-mmx.patch31
-rw-r--r--patches/libtheora/fix-sizeof.patch15
-rw-r--r--patches/libtheora/fix-timeb.patch75
-rw-r--r--patches/libxslt-1.1.32.local.patch15
5 files changed, 157 insertions, 0 deletions
diff --git a/patches/libtheora-1.1.1.local.patch b/patches/libtheora-1.1.1.local.patch
new file mode 100644
index 00000000..b9e145e9
--- /dev/null
+++ b/patches/libtheora-1.1.1.local.patch
@@ -0,0 +1,21 @@
+diff -ru libtheora-1.1.1.orig/lib/Makefile.in libtheora-1.1.1/lib/Makefile.in
+--- libtheora-1.1.1.orig/lib/Makefile.in 2009-10-01 20:04:07.000000000 +0200
++++ libtheora-1.1.1/lib/Makefile.in 2018-08-04 17:38:41.912201898 +0200
+@@ -179,7 +179,7 @@
+ x86_vc
+
+
+-lib_LTLIBRARIES = libtheoradec.la libtheoraenc.la libtheora.la
++lib_LTLIBRARIES = libtheoradec.la libtheora.la libtheoraenc.la
+
+ @THEORA_DISABLE_ENCODE_TRUE@encoder_uniq_sources = \
+ @THEORA_DISABLE_ENCODE_TRUE@ encoder_disabled.c
+@@ -357,7 +357,7 @@
+ libtheoradec_la_LIBADD =
+ am_libtheoradec_la_OBJECTS = $(am__objects_3)
+ libtheoradec_la_OBJECTS = $(am_libtheoradec_la_OBJECTS)
+-libtheoraenc_la_LIBADD =
++libtheoraenc_la_LIBADD = $(top_srcdir)/lib/libtheora.la
+ @THEORA_DISABLE_ENCODE_FALSE@am__objects_8 = mmxfrag.lo mmxidct.lo \
+ @THEORA_DISABLE_ENCODE_FALSE@ mmxstate.lo x86state.lo
+ @THEORA_DISABLE_ENCODE_FALSE@am__objects_9 =
diff --git a/patches/libtheora/fix-mmx.patch b/patches/libtheora/fix-mmx.patch
new file mode 100644
index 00000000..63fb9f76
--- /dev/null
+++ b/patches/libtheora/fix-mmx.patch
@@ -0,0 +1,31 @@
+http://bugs.alpinelinux.org/issues/6132
+https://trac.xiph.org/ticket/2287
+
+patch rebased for libtheory 1.1.1 stable
+
+diff -ru libtheora-1.1.1.orig/lib/encode.c libtheora-1.1.1/lib/encode.c
+--- libtheora-1.1.1.orig/lib/encode.c 2009-08-22 18:14:04.000000000 +0000
++++ libtheora-1.1.1/lib/encode.c 2016-09-15 05:27:02.065785527 +0000
+@@ -864,6 +864,9 @@
+ }
+
+ static void oc_enc_frame_pack(oc_enc_ctx *_enc){
++ /*musl libc malloc()/realloc() calls might use floating point, so make sure
++ we've cleared the MMX state for them.*/
++ oc_restore_fpu(&_enc->state);
+ oggpackB_reset(&_enc->opb);
+ /*Only proceed if we have some coded blocks.
+ If there are no coded blocks, we can drop this frame simply by emitting a
+diff -ru libtheora-1.1.1.orig/lib/decode.c libtheora-1.1.1/lib/decode.c
+--- libtheora-1.1.1.orig/lib/decode.c 2009-09-26 20:55:21.000000000 +0000
++++ libtheora-1.1.1/lib/decode.c 2016-09-15 05:29:45.912196850 +0000
+@@ -1181,6 +1181,9 @@
+
+
+ static int oc_dec_postprocess_init(oc_dec_ctx *_dec){
++ /*musl libc malloc()/realloc() calls might use floating point, so make sure
++ we've cleared the MMX state for them.*/
++ oc_restore_fpu(&_dec->state);
+ /*pp_level 0: disabled; free any memory used and return*/
+ if(_dec->pp_level<=OC_PP_LEVEL_DISABLED){
+ if(_dec->dc_qis!=NULL){
diff --git a/patches/libtheora/fix-sizeof.patch b/patches/libtheora/fix-sizeof.patch
new file mode 100644
index 00000000..e84685a1
--- /dev/null
+++ b/patches/libtheora/fix-sizeof.patch
@@ -0,0 +1,15 @@
+diff -ru libtheora-1.1.1.orig/examples/png2theora.c libtheora-1.1.1/examples/png2theora.c
+--- libtheora-1.1.1.orig/examples/png2theora.c 2009-08-22 20:14:04.000000000 +0200
++++ libtheora-1.1.1/examples/png2theora.c 2018-08-04 18:02:49.568313482 +0200
+@@ -462,9 +462,9 @@
+ png_set_strip_alpha(png_ptr);
+
+ row_data = (png_bytep)png_malloc(png_ptr,
+- 3*height*width*png_sizeof(*row_data));
++ 3*height*width*sizeof(*row_data));
+ row_pointers = (png_bytep *)png_malloc(png_ptr,
+- height*png_sizeof(*row_pointers));
++ height*sizeof(*row_pointers));
+ for(y = 0; y < height; y++) {
+ row_pointers[y] = row_data + y*(3*width);
+ }
diff --git a/patches/libtheora/fix-timeb.patch b/patches/libtheora/fix-timeb.patch
new file mode 100644
index 00000000..5344c075
--- /dev/null
+++ b/patches/libtheora/fix-timeb.patch
@@ -0,0 +1,75 @@
+--- libtheora-1.1.1.orig/examples/dump_psnr.c
++++ libtheora-1.1.1/examples/dump_psnr.c
+@@ -37,7 +37,6 @@
+ #endif
+ #include <stdlib.h>
+ #include <string.h>
+-#include <sys/timeb.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ /*Yes, yes, we're going to hell.*/
+--- libtheora-1.1.1.orig/examples/dump_video.c
++++ libtheora-1.1.1/examples/dump_video.c
+@@ -37,7 +37,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+-#include <sys/timeb.h>
++#include <sys/time.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ /*Yes, yes, we're going to hell.*/
+@@ -205,9 +205,9 @@
+ int long_option_index;
+ int c;
+
+- struct timeb start;
+- struct timeb after;
+- struct timeb last;
++ struct timeval start;
++ struct timeval after;
++ struct timeval last;
+ int fps_only=0;
+ int frames = 0;
+
+@@ -418,8 +418,8 @@
+ }
+
+ if(fps_only){
+- ftime(&start);
+- ftime(&last);
++ gettimeofday(&start, NULL);
++ gettimeofday(&last, NULL);
+ }
+
+ while(!got_sigint){
+@@ -433,7 +433,7 @@
+ videobuf_ready=1;
+ frames++;
+ if(fps_only)
+- ftime(&after);
++ gettimeofday(&after, NULL);
+ }
+
+ }else
+@@ -442,16 +442,16 @@
+
+ if(fps_only && (videobuf_ready || fps_only==2)){
+ long ms =
+- after.time*1000.+after.millitm-
+- (last.time*1000.+last.millitm);
++ after.tv_sec*1000.+after.tv_usec/1000-
++ (last.tv_sec*1000.+last.tv_usec/1000);
+
+ if(ms>500 || fps_only==1 ||
+ (feof(infile) && !videobuf_ready)){
+ float file_fps = (float)ti.fps_numerator/ti.fps_denominator;
+ fps_only=2;
+
+- ms = after.time*1000.+after.millitm-
+- (start.time*1000.+start.millitm);
++ ms = after.tv_sec*1000.+after.tv_usec/1000-
++ (start.tv_sec*1000.+start.tv_usec/1000);
+
+ fprintf(stderr,"\rframe:%d rate:%.2fx ",
+ frames,
diff --git a/patches/libxslt-1.1.32.local.patch b/patches/libxslt-1.1.32.local.patch
new file mode 100644
index 00000000..1cf25319
--- /dev/null
+++ b/patches/libxslt-1.1.32.local.patch
@@ -0,0 +1,15 @@
+diff -ru libxslt-1.1.32.orig/Makefile.in libxslt-1.1.32/Makefile.in
+--- libxslt-1.1.32.orig/Makefile.in 2017-11-02 21:34:22.000000000 +0100
++++ libxslt-1.1.32/Makefile.in 2018-08-04 15:15:09.283854093 +0200
+@@ -415,10 +415,7 @@
+ SUBDIRS = \
+ libxslt \
+ libexslt \
+- xsltproc \
+- doc \
+- $(PYTHON_SUBDIR) \
+- tests
++ xsltproc
+
+ DIST_SUBDIRS = libxslt libexslt xsltproc python doc tests
+ confexecdir = $(libdir)