aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Enge <andreas@enge.fr>2013-08-07 19:02:56 +0200
committerAndreas Enge <andreas@enge.fr>2013-08-07 19:02:56 +0200
commit6bfc16d93c04f4be2ef53a5fe271d8898a02fda8 (patch)
tree432b76be9b66ef9514ab36d4e1eb22c9ee860f20
parent2ae92cbcc107165abf79d0d0d9c2e073cc63bb13 (diff)
downloadguix-6bfc16d93c04f4be2ef53a5fe271d8898a02fda8.tar
guix-6bfc16d93c04f4be2ef53a5fe271d8898a02fda8.tar.gz
gnu: Add cdparanoia.
* gnu/packages/cdrom.scm (cdparanoia): New variable. * gnu/packages/patches/cdparanoia-fpic.patch: New file. * gnu-system.am: Add patch.
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/cdrom.scm31
-rw-r--r--gnu/packages/patches/cdparanoia-fpic.patch60
3 files changed, 91 insertions, 1 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 6b10c8508d..6285033eb8 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -177,6 +177,7 @@ dist_patch_DATA = \
gnu/packages/patches/automake-skip-amhello-tests.patch \
gnu/packages/patches/bigloo-gc-shebangs.patch \
gnu/packages/patches/binutils-ld-new-dtags.patch \
+ gnu/packages/patches/cdparanoia-fpic.patch \
gnu/packages/patches/cmake-fix-tests.patch \
gnu/packages/patches/cpio-gets-undeclared.patch \
gnu/packages/patches/diffutils-gets-undeclared.patch \
diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm
index d6b0a846e6..f881e7ab3a 100644
--- a/gnu/packages/cdrom.scm
+++ b/gnu/packages/cdrom.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,7 +20,7 @@
(define-module (gnu packages cdrom)
#:use-module (guix download)
#:use-module (guix packages)
- #:use-module ((guix licenses) #:select (lgpl2.1+ gpl3+))
+ #:use-module ((guix licenses) #:select (lgpl2.1+ gpl2 gpl3+))
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages acl)
@@ -113,3 +114,31 @@ images and it writes the session results to optical media or to filesystem
objects. Vice versa xorriso is able to copy file objects out of ISO 9660
filesystems.")
(license gpl3+)))
+
+(define-public cdparanoia
+ (package
+ (name "cdparanoia")
+ (version "10.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://downloads.xiph.org/releases/cdparanoia/cdparanoia-III-"
+ version ".src.tgz"))
+ (sha256
+ (base32
+ "1pv4zrajm46za0f6lv162iqffih57a8ly4pc69f7y0gfyigb8p80"))))
+ (build-system gnu-build-system)
+ (inputs
+ `(("patch/fpic" ,(search-patch "cdparanoia-fpic.patch"))))
+ (arguments
+ `(#:tests? #f ; there is no check target
+ #:patches (list (assoc-ref %build-inputs "patch/fpic"))))
+ (home-page "http://www.xiph.org/paranoia/")
+ (synopsis "audio CD reading utility which includes extra data verification features")
+ (description "Cdparanoia retrieves audio tracks from CDDA capable CDROM
+drives. The data can be saved to a file or directed to standard output
+in WAV, AIFF, AIFF-C or raw format. Most ATAPI, SCSI and several
+proprietary CDROM drive makes are supported; cdparanoia can determine if the
+target drive is CDDA capable. In addition to simple reading, cdparanoia adds
+extra-robust data verification, synchronization, error handling and scratch
+reconstruction capability.")
+ (license gpl2))) ; libraries under lgpl2.1
diff --git a/gnu/packages/patches/cdparanoia-fpic.patch b/gnu/packages/patches/cdparanoia-fpic.patch
new file mode 100644
index 0000000000..7230bda7e8
--- /dev/null
+++ b/gnu/packages/patches/cdparanoia-fpic.patch
@@ -0,0 +1,60 @@
+diff -r -u cdparanoia-III-10.2.old/interface/Makefile.in cdparanoia-III-10.2.new/interface/Makefile.in
+--- cdparanoia-III-10.2.old/interface/Makefile.in 2008-08-21 18:08:54.000000000 +0200
++++ cdparanoia-III-10.2.new/interface/Makefile.in 2013-08-07 18:48:32.000000000 +0200
+@@ -7,7 +7,7 @@
+ srcdir=@srcdir@
+
+ @SET_MAKE@
+-FLAGS=@SBPCD_H@ @UCDROM_H@ @TYPESIZES@ @CFLAGS@
++FLAGS=@SBPCD_H@ @UCDROM_H@ @TYPESIZES@ @CFLAGS@ -fPIC
+ OPT=@OPT@ $(FLAGS)
+ DEBUG=@DEBUG@ -DCDDA_TEST
+ CC=@CC@
+@@ -33,7 +33,7 @@
+
+ slib:
+ $(MAKE) lessmessy
+- $(MAKE) libcdda_interface.so CFLAGS="$(OPT) -fpic"
++ $(MAKE) libcdda_interface.so CFLAGS="$(OPT)"
+ [ -e libcdda_interface.so.0 ] || ln -s libcdda_interface.so libcdda_interface.so.0
+
+ test:
+@@ -46,7 +46,7 @@
+ $(RANLIB) libcdda_interface.a
+
+ libcdda_interface.so: $(OFILES)
+- $(CC) -fpic -shared -o libcdda_interface.so.0.$(VERSION) -Wl,-soname -Wl,libcdda_interface.so.0 $(OFILES) $(LIBS)
++ $(CC) -fPIC -shared -o libcdda_interface.so.0.$(VERSION) -Wl,-soname -Wl,libcdda_interface.so.0 $(OFILES) $(LIBS)
+ [ -e libcdda_interface.so.0 ] || ln -s libcdda_interface.so.0.$(VERSION) libcdda_interface.so.0
+ [ -e libcdda_interface.so ] || ln -s libcdda_interface.so.0.$(VERSION) libcdda_interface.so
+
+diff -r -u cdparanoia-III-10.2.old/paranoia/Makefile.in cdparanoia-III-10.2.new/paranoia/Makefile.in
+--- cdparanoia-III-10.2.old/paranoia/Makefile.in 2008-09-04 21:02:47.000000000 +0200
++++ cdparanoia-III-10.2.new/paranoia/Makefile.in 2013-08-07 18:49:54.000000000 +0200
+@@ -9,7 +9,7 @@
+
+ @SET_MAKE@
+ FLAGS=@TYPESIZES@ @CFLAGS@
+-OPT=@OPT@ $(FLAGS)
++OPT=@OPT@ $(FLAGS) -fPIC
+ DEBUG=@DEBUG@
+ CC=@CC@
+ LD=@CC@
+@@ -34,7 +34,7 @@
+
+ slib:
+ $(MAKE) lessmessy
+- $(MAKE) libcdda_paranoia.so CFLAGS="$(OPT) -fpic"
++ $(MAKE) libcdda_paranoia.so CFLAGS="$(OPT)"
+
+ #test: $(TFILES)
+ #
+@@ -44,7 +44,7 @@
+ $(RANLIB) libcdda_paranoia.a
+
+ libcdda_paranoia.so: $(OFILES)
+- $(CC) -fpic -shared -o libcdda_paranoia.so.0.$(VERSION) -Wl,-soname -Wl,libcdda_paranoia.so.0 $(OFILES) -L ../interface -lcdda_interface
++ $(CC) -fPIC -shared -o libcdda_paranoia.so.0.$(VERSION) -Wl,-soname -Wl,libcdda_paranoia.so.0 $(OFILES) -L ../interface -lcdda_interface
+ [ -e libcdda_paranoia.so.0 ] || ln -s libcdda_paranoia.so.0.$(VERSION) libcdda_paranoia.so.0
+ [ -e libcdda_paranoia.so ] || ln -s libcdda_paranoia.so.0.$(VERSION) libcdda_paranoia.so
+