diff options
Diffstat (limited to 'source/a/file')
-rwxr-xr-x | source/a/file/file.SlackBuild | 131 | ||||
-rw-r--r-- | source/a/file/file.crdaregbin.magic | 5 | ||||
-rw-r--r-- | source/a/file/file.etc.file.diff | 11 | ||||
-rw-r--r-- | source/a/file/file.quiet.diff | 14 | ||||
-rw-r--r-- | source/a/file/file.short.diff | 12 | ||||
-rw-r--r-- | source/a/file/file.xz.magic | 9 | ||||
-rw-r--r-- | source/a/file/file.zisofs.magic | 8 | ||||
-rw-r--r-- | source/a/file/slack-desc | 19 |
8 files changed, 209 insertions, 0 deletions
diff --git a/source/a/file/file.SlackBuild b/source/a/file/file.SlackBuild new file mode 100755 index 00000000..aaa0ca41 --- /dev/null +++ b/source/a/file/file.SlackBuild @@ -0,0 +1,131 @@ +#!/bin/sh + +# Copyright 2005-2008, 2009 Patrick J. Volkerding, Sebeka, MN, 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. + +VERSION=5.03 +ARCH=${ARCH:-x86_64} +BUILD=${BUILD:-1} + +NUMJOBS=${NUMJOBS:--j7} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp} +PKG=$TMP/package-file +rm -rf $PKG +mkdir -p $TMP $PKG + +cd $TMP +rm -rf file-$VERSION +tar xvf $CWD/file-$VERSION.tar.?z* || exit 1 +cd file-$VERSION || exit 1 + +# Make the default data directory /etc/file like it has always been: +zcat $CWD/file.etc.file.diff.gz | patch -p1 --verbose || exit 1 +# This is needed after the patch above: +autoreconf || exit 1 + +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 {} \; + +# Don't spew warnings about using the flat text files +zcat $CWD/file.quiet.diff.gz | patch -p1 -E --verbose || exit 1 +# I don't know what this one does +zcat $CWD/file.short.diff.gz | patch -p1 -E --verbose || exit 1 + +# Add zisofs and crda regulatory bin detection +zcat $CWD/file.zisofs.magic.gz >> magic/Magdir/compress +zcat $CWD/file.crdaregbin.magic.gz >> magic/Magdir/crdaregbin + +CFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --sysconfdir=/etc \ + --datadir=/etc \ + --mandir=/usr/man \ + --infodir=/usr/info \ + --docdir=/usr/doc/file-$VERSION \ + --enable-fsect-man5 \ + --disable-static \ + --build=$ARCH-slackware-linux + +make $NUMJOBS || make || exit 1 +make install DESTDIR=$PKG || exit 1 + +# Is file really this much of a processing bottleneck? Doubtful. +# +# NOTE: Benchmarked flat files vs. .mgc June 2009, found no measurable +# difference on 3000+ files. +# +# If you really need these (let's say you're doing virus scanning +# and this *would* speed things up quite a bit) you can create +# the pre-parsed file yourself using file's -C option. +rm -f $PKG/etc/file/magic.mgc +mkdir -p $PKG/etc/file/magic +cp -a magic/Magdir/* $PKG/etc/file/magic +# After building, this works fine. /etc/file/magic/ takes up 1.2M, +# while the magic.mgc file is 1.7M. Considering a difference of 500k, +# and the potential speedup, I'm not sure it's worth the effort... +# but it does make it easier for an admin to add a small chunk of +# new magic. + +# IMHO, moving this sort of thing does not make sense. +# We'll support both the traditional and new locations. +# I hate to squat on a name as generic as "/etc/misc/", +# but it wasn't my idea. +( cd $PKG/etc ; ln -sf file misc ) + +# Strip everything for good measure: +find $PKG | xargs file | grep -e "executable" -e "shared object" \ + | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + +( cd $PKG/usr/man || exit 1 + find . -type f -exec gzip -9 {} \; + for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done +) + +mkdir -p $PKG/usr/doc/file-$VERSION +cp -a \ + AUTHORS COPYING INSTALL MAINT NEWS README TODO \ + $PKG/usr/doc/file-$VERSION + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +/sbin/makepkg -l y -c n $TMP/file-$VERSION-$ARCH-$BUILD.txz + diff --git a/source/a/file/file.crdaregbin.magic b/source/a/file/file.crdaregbin.magic new file mode 100644 index 00000000..bff01854 --- /dev/null +++ b/source/a/file/file.crdaregbin.magic @@ -0,0 +1,5 @@ +# CRDA Regulatory database file +# http://git.kernel.org/?p=linux/kernel/git/mcgrof/crda.git;a=summary +# (see regdb.h) +0 belong 0x52474442 CRDA regulatory database file +>4 belong 19 (Version 1) diff --git a/source/a/file/file.etc.file.diff b/source/a/file/file.etc.file.diff new file mode 100644 index 00000000..98e07548 --- /dev/null +++ b/source/a/file/file.etc.file.diff @@ -0,0 +1,11 @@ +--- ./configure.ac.orig 2009-05-06 15:32:25.000000000 -0500 ++++ ./configure.ac 2009-06-12 17:40:25.000000000 -0500 +@@ -47,7 +47,7 @@ + fsect=4 + ]) + +-AC_SUBST([pkgdatadir], ['$(datadir)/misc']) ++AC_SUBST([pkgdatadir], ['$(datadir)/file']) + AC_SUBST(fsect) + AM_CONDITIONAL(FSECT5, test x$fsect = x5) + diff --git a/source/a/file/file.quiet.diff b/source/a/file/file.quiet.diff new file mode 100644 index 00000000..198f62df --- /dev/null +++ b/source/a/file/file.quiet.diff @@ -0,0 +1,14 @@ +diff -Nur file-5.00.orig/src/apprentice.c file-5.00/src/apprentice.c +--- file-5.00.orig/src/apprentice.c 2009-02-03 14:27:51.000000000 -0600 ++++ file-5.00/src/apprentice.c 2009-02-08 22:19:19.215635230 -0600 +@@ -285,8 +285,8 @@ + + #ifndef COMPILE_ONLY + if ((rv = apprentice_map(ms, &magic, &nmagic, fn)) == -1) { +- if (ms->flags & MAGIC_CHECK) +- file_magwarn(ms, "using regular magic file `%s'", fn); ++ /* if (ms->flags & MAGIC_CHECK) ++ file_magwarn(ms, "using regular magic file `%s'", fn); */ + rv = apprentice_load(ms, &magic, &nmagic, fn, action); + if (rv != 0) + return -1; diff --git a/source/a/file/file.short.diff b/source/a/file/file.short.diff new file mode 100644 index 00000000..be47218c --- /dev/null +++ b/source/a/file/file.short.diff @@ -0,0 +1,12 @@ +diff -Nur file-5.00.orig/src/readelf.h file-5.00/src/readelf.h +--- file-5.00.orig/src/readelf.h 2008-05-28 15:58:16.000000000 -0500 ++++ file-5.00/src/readelf.h 2009-02-08 22:17:26.681636542 -0600 +@@ -233,7 +233,7 @@ + #define NT_OPENBSD_VERSION 1 + #define NT_DRAGONFLY_VERSION 1 + /* GNU executables (name = "GNU") */ +-#define NT_GNU_VERSION 1 ++#define NT_GNU_VERSION 0 + + /* GNU OS tags */ + #define GNU_OS_LINUX 0 diff --git a/source/a/file/file.xz.magic b/source/a/file/file.xz.magic new file mode 100644 index 00000000..9aa36e45 --- /dev/null +++ b/source/a/file/file.xz.magic @@ -0,0 +1,9 @@ + +# XZ (Lempel-Ziv-Markov chain-Algorithm) file format supported by: +# - 7-Zip <http://7-zip.org/> +# - LZMA SDK <http://7-zip.org/sdk.html> +# - XZ Utils <http://tukaani.org/xz/> +# +0 ustring \xFD7zXZ\x00 xz compressed data, +>6 ubyte&0x10 0x00 single-block stream +>6 ubyte&0x10 0x10 multi-block stream diff --git a/source/a/file/file.zisofs.magic b/source/a/file/file.zisofs.magic new file mode 100644 index 00000000..9aeb61ed --- /dev/null +++ b/source/a/file/file.zisofs.magic @@ -0,0 +1,8 @@ + +#------------------------------------------------------------------------------ +# zisofs: file(1) magic for zisofs/RockRidge compressed files +# +# from H. Peter Anvin <hpa@zytor.com> May 4, 2001 +# +0 string \x37\xE4\x53\x96\xC9\xDB\xD6\x07 zisofs/Rockridge compressed file +>8 lelong x - %d bytes diff --git a/source/a/file/slack-desc b/source/a/file/slack-desc new file mode 100644 index 00000000..96be2617 --- /dev/null +++ b/source/a/file/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------------------------------------------------------| +file: file (a utility to determine file type) +file: +file: This is Ian F. Darwin's 'file' utility, used to identify files. +file: Christos Zoulas has been file's maintainer since 1994. +file: +file: +file: +file: +file: +file: +file: |