From 61436482484dd990f9a634bf4e67468e17252239 Mon Sep 17 00:00:00 2001 From: snj Date: Mon, 13 Oct 2014 18:29:54 +0000 Subject: Update lsdvd to 0.17. Changes: * Ignore 'phantom' audio, subtitle tracks * Check for garbage in the program chains, which indicate that a track is non-existant, to work around additional copy protection * Fix displaying content type for audio tracks, subtitles * Fix pallete display of first entry * Fix include orders * Ignore read errors in titles that would not be displayed anyway * Fix the chapter count * Make sure the array size and the array limit used when initialising the palette size is the same. * Fix array printing. * Correct subsecond calculations. * Add sector information to the output format. * Clean up code to be closer to ANSI C and compile without warnings with more GCC compiler warnings. --- multimedia/lsdvd/Makefile | 13 ++---- multimedia/lsdvd/distinfo | 10 ++--- multimedia/lsdvd/patches/patch-aa | 23 ---------- multimedia/lsdvd/patches/patch-ab | 91 --------------------------------------- 4 files changed, 8 insertions(+), 129 deletions(-) delete mode 100644 multimedia/lsdvd/patches/patch-aa delete mode 100644 multimedia/lsdvd/patches/patch-ab (limited to 'multimedia/lsdvd') diff --git a/multimedia/lsdvd/Makefile b/multimedia/lsdvd/Makefile index dbf800b06d1..286df6a49c2 100644 --- a/multimedia/lsdvd/Makefile +++ b/multimedia/lsdvd/Makefile @@ -1,7 +1,6 @@ -# $NetBSD: Makefile,v 1.18 2014/10/09 14:06:43 wiz Exp $ +# $NetBSD: Makefile,v 1.19 2014/10/13 18:29:54 snj Exp $ -DISTNAME= lsdvd-0.16 -PKGREVISION= 5 +DISTNAME= lsdvd-0.17 CATEGORIES= multimedia MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=lsdvd/} DIST_SUBDIR= ${PKGNAME_NOREV} @@ -9,14 +8,10 @@ DIST_SUBDIR= ${PKGNAME_NOREV} MAINTAINER= snj@NetBSD.org HOMEPAGE= http://sourceforge.net/projects/lsdvd/ COMMENT= Application displaying the contents of DVDs +LICENSE= gnu-gpl-v2 GNU_CONFIGURE= YES -USE_TOOLS+= autoconf - -BUILDLINK_API_DEPENDS.libdvdread+= libdvdread>=0.9.5nb1 - -pre-configure: - cd ${WRKSRC}; autoconf +USE_TOOLS+= pkg-config .include "../../multimedia/libdvdread/buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/multimedia/lsdvd/distinfo b/multimedia/lsdvd/distinfo index ba8df6b3dd0..087429d5fd8 100644 --- a/multimedia/lsdvd/distinfo +++ b/multimedia/lsdvd/distinfo @@ -1,7 +1,5 @@ -$NetBSD: distinfo,v 1.10 2009/08/23 15:06:36 wiz Exp $ +$NetBSD: distinfo,v 1.11 2014/10/13 18:29:54 snj Exp $ -SHA1 (lsdvd-0.16/lsdvd-0.16.tar.gz) = d5c0d32bfb220807ebdc0bfbb17679e7294791f4 -RMD160 (lsdvd-0.16/lsdvd-0.16.tar.gz) = fcd0993aea6ad2203c8be019ec31ba7c8660ca25 -Size (lsdvd-0.16/lsdvd-0.16.tar.gz) = 100495 bytes -SHA1 (patch-aa) = 41ac6688a47ca1f7f20d17c4fd3d2934eecd369c -SHA1 (patch-ab) = 5e0ecd45852a51b6e6bffb52057167c7702634eb +SHA1 (lsdvd-0.17/lsdvd-0.17.tar.gz) = aa44b8c33c66df2a131e469988ced2b11ebf9aab +RMD160 (lsdvd-0.17/lsdvd-0.17.tar.gz) = d2895c2b7dc806b8d3ed10ae022976b09ef6e55a +Size (lsdvd-0.17/lsdvd-0.17.tar.gz) = 99250 bytes diff --git a/multimedia/lsdvd/patches/patch-aa b/multimedia/lsdvd/patches/patch-aa deleted file mode 100644 index 59fa6dac83f..00000000000 --- a/multimedia/lsdvd/patches/patch-aa +++ /dev/null @@ -1,23 +0,0 @@ -$NetBSD: patch-aa,v 1.3 2006/08/24 09:58:15 xtraeme Exp $ - ---- configure.in.orig 2006-08-24 11:53:41.000000000 +0200 -+++ configure.in 2006-08-24 11:55:34.000000000 +0200 -@@ -3,6 +3,7 @@ - AM_INIT_AUTOMAKE(lsdvd, 0.16) - CFLAGS="$CFLAGS -g -D_FILE_OFFSET_BITS=64" - AC_PROG_CC -+AC_CHECK_HEADERS([stdint.h inttypes.h]) - - if eval "test x$GCC = xyes"; then # Enable warnings when using GCC - CFLAGS="$CFLAGS -W -Wall" -@@ -10,8 +11,8 @@ - - AC_CHECK_LIB(dvdread, DVDOpen, , AC_MSG_ERROR([libdvdread not found!])) - AC_MSG_CHECKING([for dvdread/ifo_read.h]) --AC_TRY_COMPILE([#include -- #include ], , -+AC_TRY_COMPILE([#include -+ #include ], , - AC_MSG_RESULT([yes]), - AC_MSG_RESULT([no]) - AC_MSG_ERROR([Header files for dvdread not found])) diff --git a/multimedia/lsdvd/patches/patch-ab b/multimedia/lsdvd/patches/patch-ab deleted file mode 100644 index 66b798fdc9a..00000000000 --- a/multimedia/lsdvd/patches/patch-ab +++ /dev/null @@ -1,91 +0,0 @@ -$NetBSD: patch-ab,v 1.5 2009/08/23 15:06:37 wiz Exp $ - ---- lsdvd.c.orig 2006-03-02 13:48:11.000000000 +0000 -+++ lsdvd.c -@@ -13,6 +13,7 @@ - * 2003-04-19 Cleanups get_title_name, added dvdtime2msec, added helper macros, - * output info structures in form of a Perl module, by Henk Vergonet. - */ -+#include - #include - #include - #include -@@ -131,19 +132,26 @@ int get_title_name(const char* dvd_devic - return -1; - } - -- if ( fseek(filehandle, 32808, SEEK_SET )) { -+ if ( fseek(filehandle, 32768, SEEK_SET )) { - fclose(filehandle); - fprintf(stderr, "Couldn't seek in %s for title\n", dvd_device); - strcpy(title, "unknown"); - return -1; - } - -- if ( 32 != (i = fread(title, 1, 32, filehandle)) ) { -+ { -+ #define DVD_SEC_SIZ 2048 -+ char tempBuf[ DVD_SEC_SIZ ]; -+ -+ if ( DVD_SEC_SIZ != fread(tempBuf, 1, DVD_SEC_SIZ, filehandle) ) { - fclose(filehandle); - fprintf(stderr, "Couldn't read enough bytes for title.\n"); - strcpy(title, "unknown"); - return -1; - } -+ snprintf( title, 32, "%s", tempBuf + 40 ); -+ i=32; -+ } - - fclose (filehandle); - -@@ -239,6 +247,7 @@ int main(int argc, char *argv[]) - int has_title = 0, ret = 0; - int max_length = 0, max_track = 0; - struct stat dvd_stat; -+ struct dvd_info dvd_info; - - program_name = argv[0]; - -@@ -276,6 +285,9 @@ int main(int argc, char *argv[]) - fprintf(stderr, "Can't find device %s\n", dvd_device); - return 1; - } -+ -+ /* On at least NetBSD this fails if called after DVDOpen */ -+ has_title = get_title_name(dvd_device, title); - - dvd = DVDOpen(dvd_device); - if( !dvd ) { -@@ -305,12 +317,8 @@ int main(int argc, char *argv[]) - return 5; - } - -- has_title = get_title_name(dvd_device, title); -- - vmgi_mat = ifo_zero->vmgi_mat; - -- struct dvd_info dvd_info; -- - dvd_info.discinfo.device = dvd_device; - dvd_info.discinfo.disc_title = has_title ? "unknown" : title; - dvd_info.discinfo.vmg_id = vmgi_mat->vmg_identifier; -@@ -409,14 +417,16 @@ int main(int argc, char *argv[]) - - cell = 0; - if (opt_c) { -+ int ms; -+ - dvd_info.titles[j].chapter_count = pgc->nr_of_programs; - dvd_info.titles[j].chapters = calloc(dvd_info.titles[j].chapter_count, sizeof(*dvd_info.titles[j].chapters)); - -- int ms; - for (i=0; inr_of_programs; i++) - { -+ int next; - ms=0; -- int next = pgc->program_map[i+1]; -+ next = pgc->program_map[i+1]; - if (i == pgc->nr_of_programs - 1) next = pgc->nr_of_cells + 1; - - while (cell < next - 1) -- cgit v1.2.3