[vlc-commits] contrib/libmad: fixed compilation for iOS

Felix Paul Kühne git at videolan.org
Thu Aug 9 12:27:22 CEST 2012


vlc | branch: master | Felix Paul Kühne <fkuehne at videolan.org> | Mon Aug  6 18:18:36 2012 +0200| [fd9795ea296c50bad7b2eae6420a46dadf5ed619] | committer: Felix Paul Kühne

contrib/libmad: fixed compilation for iOS

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fd9795ea296c50bad7b2eae6420a46dadf5ed619
---

 contrib/src/mad/mad-ios-asm.patch |   21 +++++++++++++++++++++
 contrib/src/mad/rules.mak         |   11 +++++++++--
 2 files changed, 30 insertions(+), 2 deletions(-)

diff --git a/contrib/src/mad/mad-ios-asm.patch b/contrib/src/mad/mad-ios-asm.patch
new file mode 100644
index 0000000..88778a0
--- /dev/null
+++ b/contrib/src/mad/mad-ios-asm.patch
@@ -0,0 +1,21 @@
+diff -ru libmad/imdct_l_arm.S libmad-fixed/imdct_l_arm.S
+--- libmad/imdct_l_arm.S	2001-03-25 22:03:34.000000000 +0200
++++ libmad-fixed/imdct_l_arm.S	2012-08-06 18:16:49.000000000 +0200
+@@ -202,7 +202,7 @@
+ 
+ 
+     .text
+-    .align
++    .align 2
+ 
+     .global III_imdct_l
+     .global _III_imdct_l
+@@ -468,7 +468,7 @@
+ 
+     @----
+ 
+-    add     r2, pc, #(imdct36_long_karray-.-8)  @ r2 = base address of Knn array (PIC safe ?)
++    adr     r2, imdct36_long_karray
+ 
+ 
+ loop:
diff --git a/contrib/src/mad/rules.mak b/contrib/src/mad/rules.mak
index 4eb53d2..f40b0c5 100644
--- a/contrib/src/mad/rules.mak
+++ b/contrib/src/mad/rules.mak
@@ -15,18 +15,25 @@ $(TARBALLS)/libmad-$(MAD_VERSION).tar.gz:
 
 libmad: libmad-$(MAD_VERSION).tar.gz .sum-mad
 	$(UNPACK)
-ifdef HAVE_MACOSX
+ifdef HAVE_DARWIN_OS
 	cd $@-$(MAD_VERSION) && sed \
 		-e 's%-march=i486%$(EXTRA_CFLAGS) $(EXTRA_LDFLAGS)%' \
 		-e 's%-dynamiclib%-dynamiclib -arch $(ARCH)%' \
 		-i.orig configure
 endif
+ifdef HAVE_IOS
+	$(APPLY) $(SRC)/mad/mad-ios-asm.patch
+endif
 	$(APPLY) $(SRC)/mad/mad-noopt.patch
 	$(MOVE)
 
 .mad: libmad
 	touch libmad/NEWS libmad/AUTHORS libmad/ChangeLog
 	$(RECONF)
-	cd $< && $(HOSTVARS) CFLAGS="$(CFLAGS) -O3 $(NOTHUMB)" ./configure $(HOSTCONF)
+ifdef HAVE_IOS
+	cd $< && $(HOSTVARS) CCAS="$(AS)" CFLAGS="$(CFLAGS) -O4 -marm $(NOTHUMB)" ./configure $(HOSTCONF) $(MAD_CONF)
+else
+	cd $< && $(HOSTVARS) CFLAGS="$(CFLAGS) -O3 $(NOTHUMB)" ./configure $(HOSTCONF) $(MAD_CONF)
+endif
 	cd $< && $(MAKE) install
 	touch $@



More information about the vlc-commits mailing list