From e0fc19fe860da2354b860cb5264bca60ec56961b Mon Sep 17 00:00:00 2001 From: Robby Workman Date: Wed, 12 May 2010 23:33:23 +0200 Subject: system/cdfs: Added to 12.2 repository --- system/cdfs/README | 10 ++++ system/cdfs/cdfs-splice_not_sendfile.patch | 12 +++++ system/cdfs/cdfs.SlackBuild | 74 ++++++++++++++++++++++++++++++ system/cdfs/cdfs.info | 8 ++++ system/cdfs/doinst.sh | 2 + system/cdfs/slack-desc | 19 ++++++++ 6 files changed, 125 insertions(+) create mode 100644 system/cdfs/README create mode 100644 system/cdfs/cdfs-splice_not_sendfile.patch create mode 100644 system/cdfs/cdfs.SlackBuild create mode 100644 system/cdfs/cdfs.info create mode 100644 system/cdfs/doinst.sh create mode 100644 system/cdfs/slack-desc (limited to 'system') diff --git a/system/cdfs/README b/system/cdfs/README new file mode 100644 index 0000000000..3623b025a4 --- /dev/null +++ b/system/cdfs/README @@ -0,0 +1,10 @@ +CDfs is a file system for Linux systems that "exports" all tracks and boot +images on a CD as normal files. These files can then be mounted (e.g. for +ISO and boot images), copied, played (audio and VCD tracks) The primary goal +for developing this file system was to "unlock" information in old ISO images. +For instance, if you have a multisession CD with two ISO images that both +contain the file 'a', you only see the file 'a' in the second session if you +use the iso9660 file system. + +Because this installs a kernel module, you will need to rebuild the package +if you change kernels. diff --git a/system/cdfs/cdfs-splice_not_sendfile.patch b/system/cdfs/cdfs-splice_not_sendfile.patch new file mode 100644 index 0000000000..f38cfb803a --- /dev/null +++ b/system/cdfs/cdfs-splice_not_sendfile.patch @@ -0,0 +1,12 @@ +diff -Nur a/cddata.c b/cddata.c +--- a/cddata.c 2008-12-08 07:21:37.000000000 -0600 ++++ b/cddata.c 2009-02-18 17:34:17.679224488 -0600 +@@ -82,7 +82,7 @@ + .mmap = generic_file_mmap + #else + .mmap = generic_file_readonly_mmap, +- .sendfile = generic_file_sendfile ++ .splice_read = generic_file_splice_read + #endif + }; + diff --git a/system/cdfs/cdfs.SlackBuild b/system/cdfs/cdfs.SlackBuild new file mode 100644 index 0000000000..3e77b0210f --- /dev/null +++ b/system/cdfs/cdfs.SlackBuild @@ -0,0 +1,74 @@ +#!/bin/sh + +# Slackware build script for cdfs + +# Copyright 2009 Robby Workman Northport, AL, USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=cdfs +VERSION=2.6.27 +ARCH=$(uname -m) +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +KERNEL=${KERNEL:-"$(uname -r)"} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2 +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +# Thanks to "MrWeatherbee" from the Arch forums for the nudge on this :) +# http://bbs.archlinux.org/viewtopic.php?id=38894 +# sendfile() is obsolete - use splice() +patch -p1 < $CWD/cdfs-splice_not_sendfile.patch + +make KDIR=/lib/modules/${KERNEL}/build + +mkdir -p $PKG/lib/modules/${KERNEL}/extra +install -m 0644 cdfs.ko $PKG/lib/modules/${KERNEL}/extra + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a \ + CHANGES COPYING INSTALL cdfs.html \ + $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +sed "s%@KERNEL@%$KERNEL%" $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz diff --git a/system/cdfs/cdfs.info b/system/cdfs/cdfs.info new file mode 100644 index 0000000000..5887d3bd25 --- /dev/null +++ b/system/cdfs/cdfs.info @@ -0,0 +1,8 @@ +PRGNAM="cdfs" +VERSION="2.6.27" +HOMEPAGE="http://users.elis.ugent.be/~mronsse/cdfs/" +DOWNLOAD="http://users.elis.ugent.be/~mronsse/cdfs/download/cdfs-2.6.27.tar.bz2" +MD5SUM="84366b903d6beb6ddca5ab457bb8ec33" +MAINTAINER="Robby Workman" +EMAIL="rw@rlworkman.net" +APPROVED="michiel" diff --git a/system/cdfs/doinst.sh b/system/cdfs/doinst.sh new file mode 100644 index 0000000000..57abf59843 --- /dev/null +++ b/system/cdfs/doinst.sh @@ -0,0 +1,2 @@ +chroot . /sbin/depmod -ae @KERNEL@ + diff --git a/system/cdfs/slack-desc b/system/cdfs/slack-desc new file mode 100644 index 0000000000..a6dac81fb3 --- /dev/null +++ b/system/cdfs/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler--------------------------------------------------------| +cdfs: CDfs (cd filesystem driver) +cdfs: +cdfs: CDfs is a file system for Linux systems that `exports' all tracks and +cdfs: boot images on a CD as normal files. These files can then be mounted +cdfs: (e.g. for ISO and boot images), copied, played (audio and VCD tracks) +cdfs: The primary goal for developing this file system was to "unlock" +cdfs: information in old ISO images. +cdfs: +cdfs: Homepage: http://users.elis.ugent.be/~mronsse/cdfs/ +cdfs: +cdfs: -- cgit v1.2.3