From 7bc0877dc9715e891159392abf669f970722dece Mon Sep 17 00:00:00 2001
From: Ken Dreyer <ktdreyer@ktdreyer.com>
Date: Mon, 6 May 2013 17:07:40 -0600
Subject: [PATCH 1/3] Fedora: use external dvdread

Original patch by Alex Lancaster <alexlan[AT]fedoraproject org>
(cherry picked from commit 9f9845af842a376d5bdf70742785e7727695fd03)
---
 bootstrap.mk           |  5 -----
 configure.in           | 19 -------------------
 lib/libdvd/Makefile.in | 20 +++++++-------------
 3 files changed, 7 insertions(+), 37 deletions(-)

diff --git a/bootstrap.mk b/bootstrap.mk
index 8bc4795..1fc31a4 100644
--- a/bootstrap.mk
+++ b/bootstrap.mk
@@ -8,7 +8,6 @@ ifneq ($(wildcard lib/libdvd/libdvdcss/configure.ac),)
 BOOTSTRAP_SUBDIRS += lib/libdvd/libdvdcss/configure.ac
 DVD_CSS=lib/libdvd/libdvdcss/configure
 endif
-BOOTSTRAP_SUBDIRS += lib/libdvd/libdvdread/configure.ac
 BOOTSTRAP_SUBDIRS += lib/libdvd/libdvdnav/configure.ac
 
 ifneq ($(wildcard pvr-addons/Makefile.am),)
@@ -18,10 +17,6 @@ endif
 BOOTSTRAP_TARGETS=$(basename $(BOOTSTRAP_SUBDIRS))
 all: $(BOOTSTRAP_TARGETS)
 
-#preserve order for libdvd. dvdcss (if present) -> dvdread -> dvdnav.
-lib/libdvd/libdvdread/configure: $(DVD_CSS)
-lib/libdvd/libdvdnav/configure: lib/libdvd/libdvdread/configure
-
 %: %.ac
 	autoreconf -vif $(@D)
 	-@rm -rf $(@D)/autom4te.cache
diff --git a/configure.in b/configure.in
index beb8aac..343292e 100644
--- a/configure.in
+++ b/configure.in
@@ -2860,27 +2860,9 @@
     --with-pic
 ], [$SKIP_CONFIG_DVDCSS])
 
-XB_CONFIG_MODULE([lib/libdvd/libdvdread], [
-  ./configure2 \
-    --extra-cflags="$CFLAGS $DVDREAD_CFLAGS -I`pwd`/../libdvdcss/src $DROID_DVDLIB_SEEK64" \
-    --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
-    --host=$host_alias \
-    --build=$build_alias \
-    --target=$target_alias \      
-    --enable-static \
-    --disable-shared \
-    --disable-strip \
-    --disable-opts \
-    --cc="$CC" &&
-  mkdir -p `pwd`/../includes/dvdread
-  cp `pwd`/../libdvdread/src/*.h `pwd`/../includes/dvdread
-  cp `pwd`/../libdvdread/src/dvdread/*.h `pwd`/../includes/dvdread
-], [0])
-
 XB_CONFIG_MODULE([lib/libdvd/libdvdnav], [
   ./configure2 \
     --extra-cflags="$CFLAGS $DVDREAD_CFLAGS -I`pwd`/../includes $DROID_DVDLIB_SEEK64" \
-    --extra-ldflags="-L`pwd`/../libdvdread/obj" \
     --with-dvdread-config="`pwd`/../dvdread-config" \
     --prefix="${prefix}" --includedir="${includedir}" --libdir="${libdir}" --datadir="${datadir}" \
     --host=$host_alias \
diff --git a/lib/libdvd/Makefile.in b/lib/libdvd/Makefile.in
index 69d2286..1f5eebb 100644
--- a/lib/libdvd/Makefile.in
+++ b/lib/libdvd/Makefile.in
@@ -5,8 +5,7 @@ CXX=@CXX@
 
 SYSDIR=@abs_top_srcdir@/system/players/dvdplayer
 SOS= libdvdnav-$(ARCH).so
-DIRS=	libdvdread \
-	libdvdnav
+DIRS=	libdvdnav
 
 WRAPPER=@abs_top_srcdir@/xbmc/cores/DllLoader/exports/wrapper.o
 WRAPPER_MACH_ALIAS=@abs_top_srcdir@/xbmc/cores/DllLoader/exports/wrapper_mach_alias
@@ -14,7 +13,7 @@ WRAPPER_MACH_ALIAS=@abs_top_srcdir@/xbmc/cores/DllLoader/exports/wrapper_mach_al
 ifeq ($(findstring osx,$(ARCH)),osx)
 LDFLAGS +=-bundle -undefined dynamic_lookup -read_only_relocs suppress
 else
-LDFLAGS += -shared -fPIC -rdynamic
+LDFLAGS += -shared -fPIC -rdynamic -ldvdread
 endif
 
 ifeq ($(ARCH), powerpc-osx)
@@ -35,8 +34,7 @@ SLIB=$(addprefix $(SYSDIR)/, $(SOS))
 
 DISTCLEAN_FILES=includes/dvdread/*.h \
 		includes/dvdcss/*.h \
-		libdvdnav/config.h \
-		libdvdread/config.h
+		libdvdnav/config.h
 
 .PHONY: $(DIRS) compile
 
@@ -48,9 +46,9 @@ $(SYSDIR)/libdvdcss-$(ARCH).so:  $($(WRAPPER)) libdvdcss/src/.libs/libdvdcss.a
 	$(CC) $(LDFLAGS) -Wl,-alias_list,$(WRAPPER_MACH_ALIAS) -o $@ \
 		$(WRAPPER) libdvdcss/src/*.o $(BUNDLE1_O)
 
-$(SYSDIR)/libdvdnav-$(ARCH).so: $($(WRAPPER)) $(DVDCSS_A) libdvdread/obj/libdvdread.a libdvdnav/obj/libdvdnav.a
+$(SYSDIR)/libdvdnav-$(ARCH).so: $($(WRAPPER)) $(DVDCSS_A) libdvdnav/obj/libdvdnav.a
 	$(CC) $(LDFLAGS) -Wl,-alias_list,$(WRAPPER_MACH_ALIAS) -o $@ \
-		$(WRAPPER) $(DVDCSS_O) libdvdread/obj/*.o libdvdnav/obj/*.o $(BUNDLE1_O)
+		$(WRAPPER) $(DVDCSS_O) libdvdnav/obj/*.o $(BUNDLE1_O)
 
 else
 
@@ -59,8 +57,8 @@ $(SYSDIR)/libdvdcss-$(ARCH).so: $(WRAPPER) libdvdcss/src/.libs/libdvdcss.a
 		libdvdcss/src/*.o -Wl,--unresolved-symbols=ignore-all -lm \
 		`cat $(WRAPPER:.o=.def)` $(WRAPPER)
 
-$(SYSDIR)/libdvdnav-$(ARCH).so: $(WRAPPER) $(DVDCSS_A) libdvdread/obj/libdvdread.a libdvdnav/obj/libdvdnav.a
-	$(CC) -o $@ $(LDFLAGS) -Wl,--soname,$@ $(DVDCSS_O) libdvdread/obj/*.o libdvdnav/obj/*.o -lm \
+$(SYSDIR)/libdvdnav-$(ARCH).so: $(WRAPPER) $(DVDCSS_A) libdvdnav/obj/libdvdnav.a
+	$(CC) -o $@ $(LDFLAGS) -Wl,--soname,$@ $(DVDCSS_O) libdvdnav/obj/*.o -lm \
 		-Wl,--unresolved-symbols=ignore-all \
 		`cat $(WRAPPER:.o=.def)` $(WRAPPER)
 
@@ -70,10 +68,6 @@ libdvdcss/src/.libs/libdvdcss.a: libdvdcss;
 libdvdcss: compile
 	$(MAKE) -C $@
 
-libdvdread/obj/libdvdread.a: libdvdread;
-libdvdread: compile
-	$(MAKE) -C $@
-
 libdvdnav/obj/libdvdnav.a: libdvdnav;
 libdvdnav: compile
 	$(MAKE) -C $@
-- 
1.8.5.3

