summaryrefslogtreecommitdiff
path: root/audio
diff options
context:
space:
mode:
authorsimonb <simonb>2001-03-25 11:34:57 +0000
committersimonb <simonb>2001-03-25 11:34:57 +0000
commit8f654b9d8d9349a68fac2611fcf0287c62ed8982 (patch)
tree4e768c2fda68ddce8a576651b0943ed4a10b9798 /audio
parent0954de5ad043fa91bf471286587e1ab1c8fb8f8d (diff)
downloadpkgsrc-8f654b9d8d9349a68fac2611fcf0287c62ed8982.tar.gz
Add a patch from Andre McCurdy <armccurdy@yahoo.co.uk> to fix the arm32
PIC code. Fixes PR pkg/12312 from Ignatios Souvatzis.
Diffstat (limited to 'audio')
-rw-r--r--audio/madplay/Makefile5
-rw-r--r--audio/madplay/files/patch-sum5
-rw-r--r--audio/madplay/patches/patch-ab88
3 files changed, 92 insertions, 6 deletions
diff --git a/audio/madplay/Makefile b/audio/madplay/Makefile
index 0a862e4928b..fcb68d13d4e 100644
--- a/audio/madplay/Makefile
+++ b/audio/madplay/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.12 2001/03/13 12:37:23 is Exp $
+# $NetBSD: Makefile,v 1.13 2001/03/25 11:34:57 simonb Exp $
#
DISTNAME= mad-0.12.5b
@@ -15,10 +15,7 @@ BUILD_DEPENDS+= msgfmt:../../devel/gettext
GNU_CONFIGURE= YES
USE_LIBINTL= YES
-# XXX instead, libtool should know how to build shared arm32 libs.
-.if (${MACHINE_ARCH} != "arm32")
USE_LIBTOOL= YES
LTCONFIG_OVERRIDE= ${WRKSRC}/ltconfig
-.endif
.include "../../mk/bsd.pkg.mk"
diff --git a/audio/madplay/files/patch-sum b/audio/madplay/files/patch-sum
index 299da8a1ca8..ff4dbbc90ed 100644
--- a/audio/madplay/files/patch-sum
+++ b/audio/madplay/files/patch-sum
@@ -1,3 +1,4 @@
-$NetBSD: patch-sum,v 1.6 2001/02/13 06:10:11 simonb Exp $
+$NetBSD: patch-sum,v 1.7 2001/03/25 11:34:57 simonb Exp $
-MD5 (patch-aa) = 991bb23e42b2641dfeb4130c8077923a
+SHA1 (patch-aa) = 3bf70a97e7adbc7cffd457bb93bfdd68b94aeeeb
+SHA1 (patch-ab) = afe0f16d409aed61db1b8ec31ab6bfe114d42b0d
diff --git a/audio/madplay/patches/patch-ab b/audio/madplay/patches/patch-ab
new file mode 100644
index 00000000000..0e0aa3a9fc3
--- /dev/null
+++ b/audio/madplay/patches/patch-ab
@@ -0,0 +1,88 @@
+$NetBSD: patch-ab,v 1.3 2001/03/25 11:34:57 simonb Exp $
+
+This patch should be in the next madplay release and can be
+deleted then - simonb (20010325).
+
+--- libmad/imdct_l_arm.S.orig Mon Sep 25 04:49:38 2000
++++ libmad/imdct_l_arm.S Sun Mar 25 19:02:43 2001
+@@ -1,5 +1,5 @@
+ /*****************************************************************************
+-* Copyright (C) 2000 Andre McCurdy <armccurdy@yahoo.co.uk>
++* Copyright (C) 2000-2001 Andre McCurdy <armccurdy@yahoo.co.uk>
+ *
+ * This program is free software. you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+@@ -24,6 +24,9 @@
+ *
+ * $Id: patch-ab,v 1.3 2001/03/25 11:34:57 simonb Exp $
+ *
++* 2001/03/24: Andre McCurdy <armccurdy@yahoo.co.uk>
++* - Corrected PIC unsafe loading of address of 'imdct36_long_karray'
++*
+ * 2000/09/20: Robert Leslie <rob@mars.org>
+ * - Added a global symbol with leading underscore per suggestion of
+ * Simon Burge to support linking with the a.out format.
+@@ -465,7 +468,7 @@
+
+ @----
+
+- ldr r2, =imdct36_long_karray @ base address of Knn array
++ add r2, pc, #(imdct36_long_karray-.-8) @ r2 = base address of Knn array (PIC safe ?)
+
+
+ loop:
+@@ -515,12 +518,29 @@
+
+ movs r8, r8, lsl #8 @ push result location index off the top end
+ beq loop @ loop back if completion flag not set
++ b imdct_l_windowing @ branch to windowing stage if looping finished
++
++imdct36_long_karray:
++
++ .word K17, -K13, K10, -K06, -K05, K01, -K00, K04, -K07, K11, K12, -K16, 0x00000000
++ .word K13, K07, K16, K01, K10, -K05, K04, -K11, K00, -K17, K06, -K12, 0x00200800
++ .word K11, K17, K05, K12, -K01, K06, -K07, K00, -K13, K04, -K16, K10, 0x00200c00
++ .word K07, K00, -K12, K05, -K16, -K10, K11, -K17, K04, K13, K01, K06, 0x00001400
++ .word K05, K10, -K00, -K17, K07, -K13, K12, K06, -K16, K01, -K11, -K04, 0x00181800
++ .word K01, K05, -K07, -K11, K13, K17, -K16, -K12, K10, K06, -K04, -K00, 0x00102000
++ .word -K16, K12, -K11, K07, K04, -K00, -K01, K05, -K06, K10, K13, -K17, 0x00284800
++ .word -K12, K06, K17, -K00, -K11, K04, K05, -K10, K01, K16, -K07, -K13, 0x00085000
++ .word -K10, K16, K04, -K13, -K00, K07, K06, -K01, -K12, -K05, K17, K11, 0x00105400
++ .word -K06, -K01, K13, K04, K17, -K11, -K10, -K16, -K05, K12, K00, K07, 0x00185c00
++ .word -K04, -K11, -K01, K16, K06, K12, K13, -K07, -K17, -K00, -K10, -K05, 0x00006000
++ .word -K00, -K04, -K06, -K10, -K12, -K16, -K17, -K13, -K11, -K07, -K05, -K01, 0x00206801
+
+
+ @----
+ @-------------------------------------------------------------------------
+ @----
+
++imdct_l_windowing:
+
+ ldr r11, [sp, #80] @ fetch function parameter 3 from out of the stack
+ ldmia r1!, { r0, r2 - r9 } @ load 9 words from x0, update pointer
+@@ -973,24 +993,6 @@
+
+ add sp, sp, #(21*4) @ return stack frame
+ ldmia sp!, { r4 - r11, pc } @ restore callee saved regs, and return
+-
+- @----
+-
+-
+-imdct36_long_karray:
+-
+- .word K17, -K13, K10, -K06, -K05, K01, -K00, K04, -K07, K11, K12, -K16, 0x00000000
+- .word K13, K07, K16, K01, K10, -K05, K04, -K11, K00, -K17, K06, -K12, 0x00200800
+- .word K11, K17, K05, K12, -K01, K06, -K07, K00, -K13, K04, -K16, K10, 0x00200c00
+- .word K07, K00, -K12, K05, -K16, -K10, K11, -K17, K04, K13, K01, K06, 0x00001400
+- .word K05, K10, -K00, -K17, K07, -K13, K12, K06, -K16, K01, -K11, -K04, 0x00181800
+- .word K01, K05, -K07, -K11, K13, K17, -K16, -K12, K10, K06, -K04, -K00, 0x00102000
+- .word -K16, K12, -K11, K07, K04, -K00, -K01, K05, -K06, K10, K13, -K17, 0x00284800
+- .word -K12, K06, K17, -K00, -K11, K04, K05, -K10, K01, K16, -K07, -K13, 0x00085000
+- .word -K10, K16, K04, -K13, -K00, K07, K06, -K01, -K12, -K05, K17, K11, 0x00105400
+- .word -K06, -K01, K13, K04, K17, -K11, -K10, -K16, -K05, K12, K00, K07, 0x00185c00
+- .word -K04, -K11, -K01, K16, K06, K12, K13, -K07, -K17, -K00, -K10, -K05, 0x00006000
+- .word -K00, -K04, -K06, -K10, -K12, -K16, -K17, -K13, -K11, -K07, -K05, -K01, 0x00206801
+
+ @----
+ @END