From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Fri, 12 Jul 2024 10:06:20 +0200 Received: from metis.whiteo.stw.pengutronix.de ([2a0a:edc0:2:b01:1d::104]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1sSBIK-0042GI-2D for lore@lore.pengutronix.de; Fri, 12 Jul 2024 10:06:20 +0200 Received: from localhost ([127.0.0.1] helo=metis.whiteo.stw.pengutronix.de) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1sSBIK-0004CX-8b; Fri, 12 Jul 2024 10:06:20 +0200 Received: from drehscheibe.grey.stw.pengutronix.de ([2a0a:edc0:0:c01:1d::a2]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1sSBHh-0003Gn-5t; Fri, 12 Jul 2024 10:05:41 +0200 Received: from [2a0a:edc0:0:1101:1d::54] (helo=dude05.red.stw.pengutronix.de) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sSBHg-008xHQ-Pn; Fri, 12 Jul 2024 10:05:40 +0200 Received: from mol by dude05.red.stw.pengutronix.de with local (Exim 4.96) (envelope-from ) id 1sSBHg-002jRL-2R; Fri, 12 Jul 2024 10:05:40 +0200 From: Michael Olbrich To: ptxdist@pengutronix.de Date: Fri, 12 Jul 2024 10:05:40 +0200 Message-Id: <20240712080540.651320-1-m.olbrich@pengutronix.de> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240711122744.600520-1-p.zabel@pengutronix.de> References: <20240711122744.600520-1-p.zabel@pengutronix.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: Re: [ptxdist] [APPLIED] opus: version bump 1.5.1 -> 1.5.2 X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Cc: Philipp Zabel Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false Thanks, applied as 9b4ef399f8df672f8c7b20bdcf1a20eea55338a4. Michael [sent from post-receive hook] On Fri, 12 Jul 2024 10:05:40 +0200, Philipp Zabel wrote: > https://opus-codec.org/release/stable/2024/04/12/libopus-1_5_2.html > > Signed-off-by: Philipp Zabel > Message-Id: <20240711122744.600520-1-p.zabel@pengutronix.de> > Signed-off-by: Michael Olbrich > > diff --git a/patches/opus-1.5.1/0001-fix-arm-asm-meson-source-build.patch b/patches/opus-1.5.1/0001-fix-arm-asm-meson-source-build.patch > deleted file mode 100644 > index 046b12c655f6..000000000000 > --- a/patches/opus-1.5.1/0001-fix-arm-asm-meson-source-build.patch > +++ /dev/null > @@ -1,66 +0,0 @@ > -From: Rudi Heitbaum > -Date: Wed, 6 Mar 2024 11:21:07 +0000 > -Subject: [PATCH] fix arm asm meson source build > - > -meson does mot support output with paths; add a meson.build file in the arm > -directory. The output files were being incorrectly placed in the celt/ directory. > - > -Program arm/arm2gnu.pl found: YES (/var/media/DATA/home-rudi/LibreELEC.kernel11/build.LibreELEC-H3.arm-12.0-devel/build/opus-v1.5.1/celt/arm/arm2gnu.pl) > -Configuring celt_pitch_xcorr_arm-gnu.S with command > - > -../celt/meson.build:51:25: ERROR: configure_file keyword argument "output" Output 'arm/armopts.s' must not contain a path segment. > - > -before: > -celt/celt_pitch_xcorr_arm-gnu.S > - > -after: > -celt/arm/celt_pitch_xcorr_arm-gnu.S > -celt/arm/armopts.s > -celt/arm/armopts-gnu.S > - > -Signed-off-by: Rudi Heitbaum > -Signed-off-by: Jean-Marc Valin > ---- > - celt/arm/meson.build | 12 ++++++++++++ > - celt/meson.build | 9 +-------- > - 2 files changed, 13 insertions(+), 8 deletions(-) > - create mode 100644 celt/arm/meson.build > - > -diff --git a/celt/arm/meson.build b/celt/arm/meson.build > -new file mode 100644 > -index 000000000000..b4dec564fcbe > ---- /dev/null > -+++ b/celt/arm/meson.build > -@@ -0,0 +1,12 @@ > -+arm2gnu = [find_program('arm2gnu.pl')] + arm2gnu_args > -+celt_sources_arm_asm = configure_file(input: 'celt_pitch_xcorr_arm.s', > -+ output: '@BASENAME@-gnu.S', > -+ command: arm2gnu + ['@INPUT@'], > -+ capture: true) > -+celt_arm_armopts_s_in = configure_file(input: 'armopts.s.in', > -+ output: 'armopts.s', > -+ configuration: opus_conf) > -+celt_arm_armopts_s = configure_file(input: [celt_arm_armopts_s_in], > -+ output: '@BASENAME@-gnu.S', > -+ command: arm2gnu + ['@INPUT@'], > -+ capture: true) > -diff --git a/celt/meson.build b/celt/meson.build > -index 7852fc156021..46601ca13586 100644 > ---- a/celt/meson.build > -+++ b/celt/meson.build > -@@ -43,14 +43,7 @@ if host_cpu_family in ['arm', 'aarch64'] and have_arm_intrinsics_or_asm > - celt_sources += sources['CELT_SOURCES_ARM_NE10'] > - endif > - if opus_arm_external_asm > -- arm2gnu = [find_program('arm/arm2gnu.pl')] + arm2gnu_args > -- celt_sources_arm_asm = configure_file(input: 'arm/celt_pitch_xcorr_arm.s', > -- output: '@BASENAME@-gnu.S', > -- command: arm2gnu + ['@INPUT@'], > -- capture: true) > -- celt_arm_armopts_s = configure_file(input: 'arm/armopts.s.in', > -- output: 'arm/armopts.s', > -- configuration: opus_conf) > -+ subdir('arm') > - celt_static_libs += static_library('celt-armasm', > - celt_arm_armopts_s, celt_sources_arm_asm, > - install: false) > diff --git a/patches/opus-1.5.1/0002-Extended-asm-with-C-operands-doesn-t-work-at-top-lev.patch b/patches/opus-1.5.1/0002-Extended-asm-with-C-operands-doesn-t-work-at-top-lev.patch > deleted file mode 100644 > index 6fd6e641d3a1..000000000000 > --- a/patches/opus-1.5.1/0002-Extended-asm-with-C-operands-doesn-t-work-at-top-lev.patch > +++ /dev/null > @@ -1,44 +0,0 @@ > -From: Rudi Heitbaum > -Date: Sat, 9 Mar 2024 17:39:20 +0000 > -Subject: [PATCH] =?UTF-8?q?Extended=20asm=20with=20C=20operands=20doesn?= > - =?UTF-8?q?=E2=80=99t=20work=20at=20top=20level?= > -MIME-Version: 1.0 > -Content-Type: text/plain; charset=UTF-8 > -Content-Transfer-Encoding: 8bit > - > -fix the following test in the meson.build > - > -stderr: > -testfile.c:6:34: error: expected ')' before '::' token > - 6 |__asm__ (""::) > - | ~ ^~ > - | ) > -testfile.c:6:37: error: expected ';' at end of input > - 6 |__asm__ (""::) > - | ^ > - | ; > ------------ > -Checking if "compiler supports gcc-style inline assembly" compiles: NO > - > -refer: > -- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=41045 > - > -Signed-off-by: Rudi Heitbaum > -Signed-off-by: Jean-Marc Valin > ---- > - meson.build | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/meson.build b/meson.build > -index 5623260962fc..1b16b08f662a 100644 > ---- a/meson.build > -+++ b/meson.build > -@@ -227,7 +227,7 @@ if not opt_asm.disabled() > - #error GCC before 3.4 has critical bugs compiling inline assembly > - #endif > - #endif > -- __asm__ (""::)''', > -+ int main(int argc, char ** argv) { __asm__ (""::); }''', > - name : 'compiler supports gcc-style inline assembly') > - > - opus_conf.set('OPUS_ARM_INLINE_ASM', 1) > diff --git a/patches/opus-1.5.1/0003-use-semicolon-not-newline-for-inline-assembler.patch b/patches/opus-1.5.1/0003-use-semicolon-not-newline-for-inline-assembler.patch > deleted file mode 100644 > index e36073e2acd3..000000000000 > --- a/patches/opus-1.5.1/0003-use-semicolon-not-newline-for-inline-assembler.patch > +++ /dev/null > @@ -1,47 +0,0 @@ > -From: Rudi Heitbaum > -Date: Sat, 9 Mar 2024 17:58:18 +0000 > -Subject: [PATCH] use semicolon not newline for inline assembler > - > -fixes: > - > -testfile.c:3:11: warning: missing terminating " character > - 3 | __asm__(".arch armv5te > - | ^ > -testfile.c:4:1: error: expected string literal before '.' token > - 4 | .object_arch armv4t > - | ^ > -testfile.c:5:14: warning: missing terminating " character > - 5 | qadd r3,r3,r3"); > - | ^ > - > -Signed-off-by: Rudi Heitbaum > -Signed-off-by: Jean-Marc Valin > ---- > - meson.build | 6 +++--- > - 1 file changed, 3 insertions(+), 3 deletions(-) > - > -diff --git a/meson.build b/meson.build > -index 1b16b08f662a..bd23744cadb1 100644 > ---- a/meson.build > -+++ b/meson.build > -@@ -277,17 +277,17 @@ if not opt_asm.disabled() > - if not opus_arm_may_have_edsp > - message('Trying to force-enable armv5e EDSP instructions...') > - # AS_ASM_ARM_EDSP_FORCE > -- opus_arm_may_have_edsp = cc.compiles(asm_tmpl.format('.arch armv5te\n.object_arch armv4t\nqadd r3,r3,r3'), > -+ opus_arm_may_have_edsp = cc.compiles(asm_tmpl.format('.arch armv5te;.object_arch armv4t;qadd r3,r3,r3'), > - name : 'Assembler supports EDSP instructions on ARM (forced)') > - endif > - if not opus_arm_may_have_media > - message('Trying to force-enable ARMv6 media instructions...') > -- opus_arm_may_have_media = cc.compiles(asm_tmpl.format('.arch armv6\n.object_arch armv4t\nshadd8 r3,r3,r3'), > -+ opus_arm_may_have_media = cc.compiles(asm_tmpl.format('.arch armv6;.object_arch armv4t;shadd8 r3,r3,r3'), > - name : 'Assembler supports ARMv6 media instructions on ARM (forced)') > - endif > - if not opus_arm_may_have_neon > - message('Trying to force-enable NEON instructions...') > -- opus_arm_may_have_neon = cc.compiles(asm_tmpl.format('.arch armv7-a\n.fpu neon\n.object_arch armv4t\nvorr d0,d0,d0'), > -+ opus_arm_may_have_neon = cc.compiles(asm_tmpl.format('.arch armv7-a;.fpu neon;.object_arch armv4t;vorr d0,d0,d0'), > - name : 'Assembler supports NEON instructions on ARM (forced)') > - endif > - endif > diff --git a/patches/opus-1.5.1/0004-Add-OPUS_ARM_INLINE_DOTPROD-dotprod-check.patch b/patches/opus-1.5.1/0004-Add-OPUS_ARM_INLINE_DOTPROD-dotprod-check.patch > deleted file mode 100644 > index 30590fb63c4b..000000000000 > --- a/patches/opus-1.5.1/0004-Add-OPUS_ARM_INLINE_DOTPROD-dotprod-check.patch > +++ /dev/null > @@ -1,73 +0,0 @@ > -From: Rudi Heitbaum > -Date: Sat, 9 Mar 2024 18:55:53 +0000 > -Subject: [PATCH] Add OPUS_ARM_INLINE_DOTPROD dotprod check > - > -fixes: > - ../meson.build:322:9: ERROR: Unknown variable "opus_arm_may_have_dotprod" > - > -after: > - dotprod check passes through. > - > -Checking if "compiler supports gcc-style inline assembly" compiles: YES > -Checking if "assembler supports EDSP instructions on ARM" compiles: YES > -Checking if "assembler supports ARMv6 media instructions on ARM" compiles: YES > -Checking if "assembler supports NEON instructions on ARM" compiles: YES > -Checking if "assembler supports DOTPROD instructions on ARM" compiles: NO > -Program perl found: YES (/usr/bin/perl) > -Fetching value of define "__APPLE__" : (undefined) > -Checking if "compiler supports ARMv7/AArch64 NEON intrinsics" : links: YES > -Checking if "compiler supports AArch64 NEON intrinsics" : links: NO > -Checking if "compiler supports AArch64 NEON intrinsics with -mfpu=neon" : links: NO > -Message: Compiler does not support AArch64 NEON intrinsics > -Checking if "compiler supports AArch64 DOTPROD intrinsics" : links: NO > -Checking if "compiler supports AArch64 DOTPROD intrinsics with -march=armv8.2-a+dotprod" : links: NO > -Message: Compiler does not support AArch64 DOTPROD intrinsics > - > -refer: > -- https://community.arm.com/arm-community-blogs/b/tools-software-ides-blog/posts/exploring-the-arm-dot-product-instructions > - > -test with: > -armv7ve-none-linux-gnueabihf-gcc test.c > -/tmp/cc02sooK.s: Assembler messages: > -/tmp/cc02sooK.s:32: Error: bad instruction `udot v0.4s,v1.16b,v2.16b' > - > -aarch64-none-linux-gnu-gcc test.c > -/tmp/ccnVi9Ec.s: Assembler messages: > -/tmp/ccnVi9Ec.s:12: Error: selected processor does not support `udot v0.4s,v1.16b,v2.16b' > - > -aarch64-none-linux-gnu-gcc -march=armv8.2-a+dotprod test.c > - > -Signed-off-by: Rudi Heitbaum > -Signed-off-by: Jean-Marc Valin > ---- > - meson.build | 10 ++++++++++ > - 1 file changed, 10 insertions(+) > - > -diff --git a/meson.build b/meson.build > -index bd23744cadb1..8624f0c38a59 100644 > ---- a/meson.build > -+++ b/meson.build > -@@ -252,6 +252,13 @@ if not opt_asm.disabled() > - opus_conf.set('OPUS_ARM_INLINE_NEON', 1) > - inline_optimization += ['NEON'] > - endif > -+ > -+ # AS_ASM_ARM_DOTPROD > -+ if cc.compiles(asm_tmpl.format('udot v0.4s,v1.16b,v2.16b'), > -+ name : 'assembler supports DOTPROD instructions on ARM') > -+ opus_conf.set('OPUS_ARM_INLINE_DOTPROD', 1) > -+ inline_optimization += ['DOTPROD'] > -+ endif > - endif > - > - # We need Perl to translate RVCT-syntax asm to gas syntax > -@@ -273,6 +280,9 @@ if not opt_asm.disabled() > - opus_arm_may_have_neon = opus_conf.has('OPUS_ARM_INLINE_NEON') > - opus_arm_presume_neon = opus_arm_may_have_neon and opus_can_presume_simd > - > -+ opus_arm_may_have_dotprod = opus_conf.has('OPUS_ARM_INLINE_DOTPROD') > -+ opus_arm_presume_dotprod = opus_arm_may_have_dotprod and opus_can_presume_simd > -+ > - if not opt_rtcd.disabled() > - if not opus_arm_may_have_edsp > - message('Trying to force-enable armv5e EDSP instructions...') > diff --git a/patches/opus-1.5.1/0005-Fix-meson-AVX2-fixed-point.patch b/patches/opus-1.5.1/0005-Fix-meson-AVX2-fixed-point.patch > deleted file mode 100644 > index 3ca42f93b983..000000000000 > --- a/patches/opus-1.5.1/0005-Fix-meson-AVX2-fixed-point.patch > +++ /dev/null > @@ -1,23 +0,0 @@ > -From: Jean-Marc Valin > -Date: Tue, 12 Mar 2024 02:03:22 -0400 > -Subject: [PATCH] Fix meson AVX2 fixed-point > - > ---- > - silk/meson.build | 4 +--- > - 1 file changed, 1 insertion(+), 3 deletions(-) > - > -diff --git a/silk/meson.build b/silk/meson.build > -index 80a59b050eb5..35d955784f5d 100644 > ---- a/silk/meson.build > -+++ b/silk/meson.build > -@@ -44,9 +44,7 @@ foreach intr_name : ['sse4_1', 'avx2', 'neon_intr'] > - endif > - > - intr_sources = get_variable('silk_sources_' + intr_name) > -- if opt_fixed_point > -- intr_sources += get_variable('silk_sources_fixed_' + intr_name) > -- else > -+ if not opt_fixed_point > - intr_sources += get_variable('silk_sources_float_' + intr_name) > - endif > - > diff --git a/patches/opus-1.5.1/series b/patches/opus-1.5.1/series > deleted file mode 100644 > index 5678dc243583..000000000000 > --- a/patches/opus-1.5.1/series > +++ /dev/null > @@ -1,11 +0,0 @@ > -# generated by git-ptx-patches > -#tag:base --start-number 1 > -#tag:upstream --start-number 1 > -0001-fix-arm-asm-meson-source-build.patch > -0002-Extended-asm-with-C-operands-doesn-t-work-at-top-lev.patch > -0003-use-semicolon-not-newline-for-inline-assembler.patch > -0004-Add-OPUS_ARM_INLINE_DOTPROD-dotprod-check.patch > -0005-Fix-meson-AVX2-fixed-point.patch > -#tag:ptxdist --start-number 100 > -0100-ptxdist-get-version.py-don-t-detect-extract-git-as-g.patch > -# d3a0d1e86246dea00cfd9809d8cd3632 - git-ptx-patches magic > diff --git a/patches/opus-1.5.1/0100-ptxdist-get-version.py-don-t-detect-extract-git-as-g.patch b/patches/opus-1.5.2/0001-ptxdist-get-version.py-don-t-detect-extract-git-as-g.patch > similarity index 100% > rename from patches/opus-1.5.1/0100-ptxdist-get-version.py-don-t-detect-extract-git-as-g.patch > rename to patches/opus-1.5.2/0001-ptxdist-get-version.py-don-t-detect-extract-git-as-g.patch > diff --git a/patches/opus-1.5.2/series b/patches/opus-1.5.2/series > new file mode 100644 > index 000000000000..0723ece39410 > --- /dev/null > +++ b/patches/opus-1.5.2/series > @@ -0,0 +1,5 @@ > +# generated by git-ptx-patches > +#tag:base --start-number 1 > +#tag:ptxdist --start-number 1 > +0001-ptxdist-get-version.py-don-t-detect-extract-git-as-g.patch > +# 1bdeb1d97ceee32f819192c5ae88c2a3 - git-ptx-patches magic > diff --git a/rules/opus.make b/rules/opus.make > index 707889c79662..49a22b0c5897 100644 > --- a/rules/opus.make > +++ b/rules/opus.make > @@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_OPUS) += opus > # > # Paths and names > # > -OPUS_VERSION := 1.5.1 > -OPUS_MD5 := 06c0e626ea3ad72f7b006e9130c8b15d > +OPUS_VERSION := 1.5.2 > +OPUS_MD5 := c40b3a1fbdbb9a7aa178600b88200c76 > OPUS := opus-$(OPUS_VERSION) > OPUS_SUFFIX := tar.gz > OPUS_URL := http://downloads.xiph.org/releases/opus/$(OPUS).$(OPUS_SUFFIX) > @@ -51,12 +51,11 @@ OPUS_CONF_OPT := \ > -Dassertions=false \ > -Dcheck-asm=false \ > -Dcustom-modes=false \ > + -Ddeep-plc=$(call ptx/endis, PTXCONF_OPUS_DEEP_PLC)d \ > + -Ddnn-debug-float=disabled \ > + -Ddred=disabled \ > -Ddocdir=doc/opus \ > -Ddocs=disabled \ > - -Denable-deep-plc=$(call ptx/truefalse, PTXCONF_OPUS_DEEP_PLC) \ > - -Denable-dnn-debug-float=false \ > - -Denable-dred=false \ > - -Denable-osce=$(call ptx/truefalse, PTXCONF_OPUS_OSCE) \ > -Dextra-programs=disabled \ > -Dfixed-point=$(call ptx/falsetrue, PTXCONF_HAS_HARDFLOAT) \ > -Dfixed-point-debug=false \ > @@ -65,6 +64,7 @@ OPUS_CONF_OPT := \ > -Dfuzzing=false \ > -Dhardening=true \ > -Dintrinsics=$(call ptx/endis, OPUS_INTRINSICS)d \ > + -Dosce=$(call ptx/endis, PTXCONF_OPUS_OSCE)d \ > -Drtcd=$(call ptx/endis, OPUS_RTCD)d \ > -Dtests=disabled >