diff --git a/media-libs/libdvdcss/libdvdcss-1.3.0.recipe b/media-libs/libdvdcss/libdvdcss-1.3.0.recipe new file mode 100644 index 000000000..f8995fb30 --- /dev/null +++ b/media-libs/libdvdcss/libdvdcss-1.3.0.recipe @@ -0,0 +1,73 @@ +SUMMARY="libdvdcss" +DESCRIPTION=" +libdvdcss is a simple library designed for accessing DVDs like a block device \ +without having to bother about the decryption. +" +HOMEPAGE="http://www.videolan.org/developers/libdvdcss.html" +LICENSE="GNU GPL v2" +COPYRIGHT="Copyright (C) 1998-2008 VideoLAN" +SRC_URI="http://download.videolan.org/pub/libdvdcss/$portVersion/libdvdcss-$portVersion.tar.bz2" +CHECKSUM_SHA256="7c414acd520c4e4dd7267952f72d738ff50321a7869af4d75c65aefad44f1395" +REVISION="1" +ARCHITECTURES="x86_gcc2 x86 x86_64" +SECONDARY_ARCHITECTURES="x86_gcc2 ?x86" + +PATCHES="libdvdcss-${portVersion}.patchset" + +PROVIDES=" + libdvdcss$secondaryArchSuffix = $portVersion + lib:libdvdcss$secondaryArchSuffix = 2.1.0 compat >= 2 + cmd:dvdcss_config$secondaryArchSuffix + " + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + " + +BUILD_REQUIRES=" + " + +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:make + cmd:libtoolize + cmd:aclocal + cmd:autoconf + " + +SOURCE_DIR="libdvdcss-${portVersion}" + +BUILD() +{ + libtoolize --force --copy --install + aclocal + autoconf + automake + runConfigure ./configure + make +} + +INSTALL() +{ + make install + + # prepare develop/lib + prepareInstalledDevelLibs libdvdcss + fixPkgconfig + + packageEntries devel \ + $developDir +} + +# ----- devel package ------------------------------------------------------- + +PROVIDES_devel=" + libdvdcss${secondaryArchSuffix}_devel = $portVersion + devel:libdvdcss$secondaryArchSuffix = 2.1.0 compat >= 2 + " +REQUIRES_devel=" + libdvdcss$secondaryArchSuffix == $portVersion base + " + diff --git a/media-libs/libdvdcss/patches/libdvdcss-1.3.0.patchset b/media-libs/libdvdcss/patches/libdvdcss-1.3.0.patchset new file mode 100644 index 000000000..670083762 --- /dev/null +++ b/media-libs/libdvdcss/patches/libdvdcss-1.3.0.patchset @@ -0,0 +1,182 @@ +From a26e00c0b520782bfc178ac77f2822c85167167b Mon Sep 17 00:00:00 2001 +From: Jerome Duval +Date: Wed, 6 Aug 2014 18:49:28 +0000 +Subject: haiku patch + + +diff --git a/Makefile.am b/Makefile.am +index 15002e9..327c134 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -6,12 +6,6 @@ dist_doc_DATA = AUTHORS COPYING NEWS README ChangeLog + + MAINTAINERCLEANFILES = ChangeLog + +-ChangeLog: $(wildcard $(srcdir)/.git/logs/HEAD) +- -cd $(srcdir) && git log > $(abs_builddir)/$(@)-tmp +- test -s $(@)-tmp && mv $(@)-tmp $(@) +- -rm -f $(@)-tmp +- test -e $(@) || touch $(@) +- + lib_LTLIBRARIES = libdvdcss.la + EXTRA_PROGRAMS = csstest dvd_region + +diff --git a/src/ioctl.c b/src/ioctl.c +index 5221c97..ebc2650 100644 +--- a/src/ioctl.c ++++ b/src/ioctl.c +@@ -64,7 +64,7 @@ + #ifdef DVD_STRUCT_IN_DVD_H + # include + #endif +-#ifdef __BEOS__ ++#if defined( __BEOS__ ) || defined( __HAIKU__ ) + # include + # include + #endif +@@ -93,7 +93,7 @@ + /***************************************************************************** + * Local prototypes, BeOS specific + *****************************************************************************/ +-#if defined( __BEOS__ ) ++#if defined( __BEOS__ ) || defined( __HAIKU__ ) + static void BeInitRDC ( raw_device_command *, int ); + #endif + +@@ -162,7 +162,7 @@ int ioctl_ReadCopyright( int i_fd, int i_layer, int *pi_copyright ) + + *pi_copyright = dvd.cpst; + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_READ_DVD_STRUCTURE, 8 ); + + rdc.command[ 6 ] = i_layer; +@@ -307,7 +307,7 @@ int ioctl_ReadDiscKey( int i_fd, int *pi_agid, uint8_t *p_key ) + + memcpy( p_key, dvd.data, DVD_DISCKEY_SIZE ); + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_READ_DVD_STRUCTURE, DVD_DISCKEY_SIZE + 4 ); + + rdc.command[ 7 ] = DVD_STRUCT_DISCKEY; +@@ -466,7 +466,7 @@ int ioctl_ReadTitleKey( int i_fd, int *pi_agid, int i_pos, uint8_t *p_key ) + + memcpy( p_key, auth_info.keychal, DVD_KEY_SIZE ); + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_REPORT_KEY, 12 ); + + rdc.command[ 2 ] = ( i_pos >> 24 ) & 0xff; +@@ -626,7 +626,7 @@ int ioctl_ReportAgid( int i_fd, int *pi_agid ) + + *pi_agid = auth_info.agid; + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_REPORT_KEY, 8 ); + + rdc.command[ 10 ] = DVD_REPORT_AGID | (*pi_agid << 6); +@@ -746,7 +746,7 @@ int ioctl_ReportChallenge( int i_fd, int *pi_agid, uint8_t *p_challenge ) + + memcpy( p_challenge, auth_info.keychal, DVD_CHALLENGE_SIZE ); + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_REPORT_KEY, 16 ); + + rdc.command[ 10 ] = DVD_REPORT_CHALLENGE | (*pi_agid << 6); +@@ -876,7 +876,7 @@ int ioctl_ReportASF( int i_fd, int *pi_remove_me, int *pi_asf ) + + *pi_asf = auth_info.asf; + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_REPORT_KEY, 8 ); + + rdc.command[ 10 ] = DVD_REPORT_ASF; +@@ -1008,7 +1008,7 @@ int ioctl_ReportKey1( int i_fd, int *pi_agid, uint8_t *p_key ) + + memcpy( p_key, auth_info.keychal, DVD_KEY_SIZE ); + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_REPORT_KEY, 12 ); + + rdc.command[ 10 ] = DVD_REPORT_KEY1 | (*pi_agid << 6); +@@ -1129,7 +1129,7 @@ int ioctl_InvalidateAgid( int i_fd, int *pi_agid ) + + i_ret = ioctl( i_fd, DVDIOCREPORTKEY, &auth_info ); + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_REPORT_KEY, 0 ); + + rdc.command[ 10 ] = DVDCSS_INVALIDATE_AGID | (*pi_agid << 6); +@@ -1242,7 +1242,7 @@ int ioctl_SendChallenge( int i_fd, int *pi_agid, uint8_t *p_challenge ) + + i_ret = ioctl( i_fd, DVDIOCSENDKEY, &auth_info ); + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_SEND_KEY, 16 ); + + rdc.command[ 10 ] = DVD_SEND_CHALLENGE | (*pi_agid << 6); +@@ -1375,7 +1375,7 @@ int ioctl_SendKey2( int i_fd, int *pi_agid, uint8_t *p_key ) + + i_ret = ioctl( i_fd, DVDIOCSENDKEY, &auth_info ); + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_SEND_KEY, 12 ); + + rdc.command[ 10 ] = DVD_SEND_KEY2 | (*pi_agid << 6); +@@ -1514,7 +1514,7 @@ int ioctl_ReportRPC( int i_fd, int *p_type, int *p_mask, int *p_scheme ) + *p_mask = auth_info.region; // ?? + *p_scheme = auth_info.rpc_scheme; + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_REPORT_KEY, 8 ); + + rdc.command[ 10 ] = DVD_REPORT_RPC; +@@ -1636,7 +1636,7 @@ int ioctl_ReportRPC( int i_fd, int *p_type, int *p_mask, int *p_scheme ) + + /* Local prototypes */ + +-#if defined( __BEOS__ ) ++#if defined( __BEOS__ ) || defined( __HAIKU__ ) + /***************************************************************************** + * BeInitRDC: initialize a RDC structure for the BeOS kernel + ***************************************************************************** +diff --git a/src/ioctl.h b/src/ioctl.h +index 8533833..966f81b 100644 +--- a/src/ioctl.h ++++ b/src/ioctl.h +@@ -42,7 +42,7 @@ int ioctl_ReportRPC ( int, int *, int *, int * ); + /***************************************************************************** + * Common macro, BeOS specific + *****************************************************************************/ +-#if defined( __BEOS__ ) ++#if defined( __BEOS__ ) || defined( __HAIKU__ ) + #define INIT_RDC( TYPE, SIZE ) \ + raw_device_command rdc = { 0 }; \ + uint8_t p_buffer[ (SIZE)+1 ]; \ +diff --git a/test/dvd_region.c b/test/dvd_region.c +index 47abea8..cc949fd 100644 +--- a/test/dvd_region.c ++++ b/test/dvd_region.c +@@ -51,7 +51,7 @@ static int ioctl_SendRPC( int i_fd, int i_pdrc ) + + i_ret = ioctl( i_fd, DVDIOCSENDKEY, &auth_info ); + +-#elif defined( __BEOS__ ) ++#elif defined( __BEOS__ ) || defined( __HAIKU__ ) + INIT_RDC( GPCMD_SEND_KEY, 8 ); + + rdc.command[ 10 ] = DVD_SEND_RPC; +-- +1.8.3.4 +