summaryrefslogtreecommitdiffstats
path: root/meta-multimedia
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2020-03-03 22:33:30 -0800
committerKhem Raj <raj.khem@gmail.com>2020-03-04 11:23:44 -0800
commit366b427fef6be25488c45cef1deb44aa4cc60c0e (patch)
tree4aab3277e90ba987e86bb13056517cc139658a7c /meta-multimedia
parent3515db02856a09f0e71f108ce6a2e6160db22241 (diff)
downloadmeta-openembedded-366b427fef6be25488c45cef1deb44aa4cc60c0e.tar.gz
openh264: Upgrade to 2.0.0
- Fix host-user-contaminated QA issues - make clean is broken so mark it so - Enable PIC in asm which fixes textrels issue - Fix build on mips Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-multimedia')
-rw-r--r--meta-multimedia/recipes-multimedia/openh264/openh264/0001-Makefile-Do-not-poke-at-host-gcc-for-target-options.patch25
-rw-r--r--meta-multimedia/recipes-multimedia/openh264/openh264/0001-Makefile-Use-cp-options-to-preserve-file-mode.patch32
-rw-r--r--meta-multimedia/recipes-multimedia/openh264/openh264/0001-codec-Disable-asm-for-mips.patch70
-rw-r--r--meta-multimedia/recipes-multimedia/openh264/openh264_2.0.0.bb (renamed from meta-multimedia/recipes-multimedia/openh264/openh264_1.7.0.bb)17
4 files changed, 139 insertions, 5 deletions
diff --git a/meta-multimedia/recipes-multimedia/openh264/openh264/0001-Makefile-Do-not-poke-at-host-gcc-for-target-options.patch b/meta-multimedia/recipes-multimedia/openh264/openh264/0001-Makefile-Do-not-poke-at-host-gcc-for-target-options.patch
new file mode 100644
index 000000000..5f590596d
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/openh264/openh264/0001-Makefile-Do-not-poke-at-host-gcc-for-target-options.patch
@@ -0,0 +1,25 @@
1From af9bd9201c755e0b01251021f4e7642d3fec9c1c Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 4 Mar 2020 08:38:46 -0800
4Subject: [PATCH] Makefile: Do not poke at host gcc for target options
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8 build/arch.mk | 1 -
9 1 file changed, 1 deletion(-)
10
11diff --git a/build/arch.mk b/build/arch.mk
12index 8ac3e70a..b80cee8c 100644
13--- a/build/arch.mk
14+++ b/build/arch.mk
15@@ -35,7 +35,6 @@ ifneq ($(filter mips mips64, $(ARCH)),)
16 ifeq ($(USE_ASM), Yes)
17 ASM_ARCH = mips
18 ASMFLAGS += -I$(SRC_PATH)codec/common/mips/
19-LOONGSON3A = $(shell g++ -dM -E - < /dev/null | grep '_MIPS_TUNE ' | cut -f 3 -d " ")
20 ifeq ($(LOONGSON3A), "loongson3a")
21 CFLAGS += -DHAVE_MMI
22 endif
23--
242.25.1
25
diff --git a/meta-multimedia/recipes-multimedia/openh264/openh264/0001-Makefile-Use-cp-options-to-preserve-file-mode.patch b/meta-multimedia/recipes-multimedia/openh264/openh264/0001-Makefile-Use-cp-options-to-preserve-file-mode.patch
new file mode 100644
index 000000000..92f32948b
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/openh264/openh264/0001-Makefile-Use-cp-options-to-preserve-file-mode.patch
@@ -0,0 +1,32 @@
1From 1c3bda45c55d2334af384caf9e7f240b7aaf2eb5 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Tue, 3 Mar 2020 22:28:25 -0800
4Subject: [PATCH] Makefile: Use cp options to preserve file mode
5
6This fixes packaging issues e.g.
7openh264: /usr/lib/libopenh264.so is owned by uid 1000, which is the same as the user running bitbake
8
9Upstream-Status: Submitted [https://github.com/cisco/openh264/pull/3245]
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11---
12 Makefile | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/Makefile b/Makefile
16index 74ff029d..ac643412 100644
17--- a/Makefile
18+++ b/Makefile
19@@ -306,8 +306,8 @@ install-shared: $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX) install-headers $
20 mkdir -p $(DESTDIR)$(SHAREDLIB_DIR)
21 install -m 755 $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXFULLVER) $(DESTDIR)$(SHAREDLIB_DIR)
22 if [ "$(SHAREDLIBSUFFIXFULLVER)" != "$(SHAREDLIBSUFFIX)" ]; then \
23- cp -a $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXMAJORVER) $(DESTDIR)$(SHAREDLIB_DIR) ; \
24- cp -a $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX) $(DESTDIR)$(SHAREDLIB_DIR) ; \
25+ cp -R --no-dereference --preserve=mode,links $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIXMAJORVER) $(DESTDIR)$(SHAREDLIB_DIR) ; \
26+ cp -R --no-dereference --preserve=mode,links $(LIBPREFIX)$(PROJECT_NAME).$(SHAREDLIBSUFFIX) $(DESTDIR)$(SHAREDLIB_DIR) ; \
27 fi
28 mkdir -p $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)/pkgconfig
29 install -m 644 $(PROJECT_NAME).pc $(DESTDIR)$(PREFIX)/$(LIBDIR_NAME)/pkgconfig
30--
312.25.1
32
diff --git a/meta-multimedia/recipes-multimedia/openh264/openh264/0001-codec-Disable-asm-for-mips.patch b/meta-multimedia/recipes-multimedia/openh264/openh264/0001-codec-Disable-asm-for-mips.patch
new file mode 100644
index 000000000..60ea69dbc
--- /dev/null
+++ b/meta-multimedia/recipes-multimedia/openh264/openh264/0001-codec-Disable-asm-for-mips.patch
@@ -0,0 +1,70 @@
1From edb62d2518d87536290d00a11c78c311e3680914 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 4 Mar 2020 09:14:57 -0800
4Subject: [PATCH] codec: Disable asm for mips
5
6It needs loongson support which qemumips is not targettin
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10 codec/common/targets.mk | 2 +-
11 codec/decoder/targets.mk | 2 +-
12 codec/encoder/targets.mk | 2 +-
13 codec/processing/targets.mk | 2 +-
14 4 files changed, 4 insertions(+), 4 deletions(-)
15
16diff --git a/codec/common/targets.mk b/codec/common/targets.mk
17index 96843cd9..e76cb2cb 100644
18--- a/codec/common/targets.mk
19+++ b/codec/common/targets.mk
20@@ -74,7 +74,7 @@ COMMON_ASM_MIPS_SRCS=\
21 $(COMMON_SRCDIR)/mips/satd_sad_mmi.c\
22
23 COMMON_OBJSMIPS += $(COMMON_ASM_MIPS_SRCS:.c=.$(OBJ))
24-ifeq ($(ASM_ARCH), mips)
25+ifeq ($(ASM_ARCH), mips64)
26 COMMON_OBJS += $(COMMON_OBJSMIPS)
27 endif
28 OBJS += $(COMMON_OBJSMIPS)
29diff --git a/codec/decoder/targets.mk b/codec/decoder/targets.mk
30index eaf5d3c0..615d9216 100644
31--- a/codec/decoder/targets.mk
32+++ b/codec/decoder/targets.mk
33@@ -60,7 +60,7 @@ DECODER_ASM_MIPS_SRCS=\
34 $(DECODER_SRCDIR)/core/mips/dct_mmi.c\
35
36 DECODER_OBJSMIPS += $(DECODER_ASM_MIPS_SRCS:.c=.$(OBJ))
37-ifeq ($(ASM_ARCH), mips)
38+ifeq ($(ASM_ARCH), mips64)
39 DECODER_OBJS += $(DECODER_OBJSMIPS)
40 endif
41 OBJS += $(DECODER_OBJSMIPS)
42diff --git a/codec/encoder/targets.mk b/codec/encoder/targets.mk
43index 1f053280..fd49c1fd 100644
44--- a/codec/encoder/targets.mk
45+++ b/codec/encoder/targets.mk
46@@ -88,7 +88,7 @@ ENCODER_ASM_MIPS_SRCS=\
47 $(ENCODER_SRCDIR)/core/mips/score_mmi.c\
48
49 ENCODER_OBJSMIPS += $(ENCODER_ASM_MIPS_SRCS:.c=.$(OBJ))
50-ifeq ($(ASM_ARCH), mips)
51+ifeq ($(ASM_ARCH), mips64)
52 ENCODER_OBJS += $(ENCODER_OBJSMIPS)
53 endif
54 OBJS += $(ENCODER_OBJSMIPS)
55diff --git a/codec/processing/targets.mk b/codec/processing/targets.mk
56index 300de2d8..8451d66e 100644
57--- a/codec/processing/targets.mk
58+++ b/codec/processing/targets.mk
59@@ -62,7 +62,7 @@ PROCESSING_ASM_MIPS_SRCS=\
60 $(PROCESSING_SRCDIR)/src/mips/vaa_mmi.c\
61
62 PROCESSING_OBJSMIPS += $(PROCESSING_ASM_MIPS_SRCS:.c=.$(OBJ))
63-ifeq ($(ASM_ARCH), mips)
64+ifeq ($(ASM_ARCH), mips64)
65 PROCESSING_OBJS += $(PROCESSING_OBJSMIPS)
66 endif
67 OBJS += $(PROCESSING_OBJSMIPS)
68--
692.25.1
70
diff --git a/meta-multimedia/recipes-multimedia/openh264/openh264_1.7.0.bb b/meta-multimedia/recipes-multimedia/openh264/openh264_2.0.0.bb
index e2f028ac5..31b9da269 100644
--- a/meta-multimedia/recipes-multimedia/openh264/openh264_1.7.0.bb
+++ b/meta-multimedia/recipes-multimedia/openh264/openh264_2.0.0.bb
@@ -3,17 +3,21 @@ decoding. It is suitable for use in real time applications such as WebRTC."
3HOMEPAGE = "http://www.openh264.org/" 3HOMEPAGE = "http://www.openh264.org/"
4SECTION = "libs/multimedia" 4SECTION = "libs/multimedia"
5 5
6DEPENDS_x86 += "nasm-native" 6DEPENDS_append_x86 = " nasm-native"
7DEPENDS_x86-64 += "nasm-native" 7DEPENDS_append_x86-64 = " nasm-native"
8 8
9LICENSE = "BSD-2-Clause" 9LICENSE = "BSD-2-Clause"
10LICENSE_FLAGS = "commercial" 10LICENSE_FLAGS = "commercial"
11LIC_FILES_CHKSUM = "file://LICENSE;md5=bb6d3771da6a07d33fd50d4d9aa73bcf" 11LIC_FILES_CHKSUM = "file://LICENSE;md5=bb6d3771da6a07d33fd50d4d9aa73bcf"
12 12
13S = "${WORKDIR}/git" 13S = "${WORKDIR}/git"
14SRCREV = "a180c9d4d6f1a4830ca9eed9d159d54996bd63cb" 14SRCREV = "71374015cdf13f7aab4bc2d820f77905b3becfb8"
15BRANCH = "openh264v1.7" 15BRANCH = "openh264v2.0.0"
16SRC_URI = "git://github.com/cisco/openh264.git;protocol=https;branch=${BRANCH};" 16SRC_URI = "git://github.com/cisco/openh264.git;protocol=https;branch=${BRANCH} \
17 file://0001-Makefile-Use-cp-options-to-preserve-file-mode.patch \
18 file://0001-Makefile-Do-not-poke-at-host-gcc-for-target-options.patch \
19 file://0001-codec-Disable-asm-for-mips.patch \
20 "
17 21
18COMPATIBLE_MACHINE_armv7a = "(.*)" 22COMPATIBLE_MACHINE_armv7a = "(.*)"
19COMPATIBLE_MACHINE_aarch64 = "(.*)" 23COMPATIBLE_MACHINE_aarch64 = "(.*)"
@@ -30,6 +34,7 @@ EXTRA_OEMAKE_x86-64 = "ARCH=x86_64"
30EXTRA_OEMAKE_mips = "ARCH=mips" 34EXTRA_OEMAKE_mips = "ARCH=mips"
31EXTRA_OEMAKE_mips64 = "ARCH=mips64" 35EXTRA_OEMAKE_mips64 = "ARCH=mips64"
32 36
37EXTRA_OEMAKE_append = " ENABLEPIC=Yes"
33do_configure() { 38do_configure() {
34 : 39 :
35} 40}
@@ -41,3 +46,5 @@ do_compile() {
41do_install() { 46do_install() {
42 oe_runmake install DESTDIR=${D} PREFIX=${prefix} 47 oe_runmake install DESTDIR=${D} PREFIX=${prefix}
43} 48}
49
50CLEANBROKEN = "1"