+++ /dev/null
-#!/bin/sh
-
-[ -z "$1" -o -z "$2" ] && {
-# usage
- echo "usage: $0 <directory> <diff-extension>" 1>&2
- exit 1
-}
-
-: ${DIFF:=diff}
-: ${GENDIFF_DIFF_ARGS:=-up}
-: ${GENDIFF_DIFF_CHANGELOG_ARGS:=-U0}
-
-find $1 \( -name "*$2" -o -name ".*$2" \) -print | sort |
-while read f; do
- U="${GENDIFF_DIFF_ARGS}"
- [ "`basename $f`" = "ChangeLog$2" ] && U="${GENDIFF_DIFF_CHANGELOG_ARGS}"
- diffcmd="${DIFF} ${U} /dev/null ${f%$2}"
-# ${DIFF} ${U} $f `echo $f | sed s/$2\$//`
- if [ -r "$f" ]; then
- diffcmd="${DIFF} ${U} ${f} ${f%$2}"
- fi
- echo "${diffcmd}"
- ${diffcmd}
-done
+++ /dev/null
-../../bin/rpm
\ No newline at end of file
+++ /dev/null
-../../bin/rpm
\ No newline at end of file
+++ /dev/null
-#!/bin/sh
-
-# If using normal root, avoid changing anything.
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-cd $RPM_BUILD_ROOT
-
-# Compress man pages
-COMPRESS="gzip -9 -n"
-COMPRESS_EXT=.gz
-
-for d in ./usr/man/man* ./usr/man/*/man* ./usr/info \
- ./usr/share/man/man* ./usr/share/man/*/man* ./usr/share/info \
- ./usr/kerberos/man ./usr/X11R6/man/man* ./usr/lib/perl5/man/man* \
- ./usr/share/doc/*/man/man* ./usr/lib/*/man/man*
-do
- [ -d $d ] || continue
- for f in `find $d -type f ! -name dir`
- do
- [ -f "$f" ] || continue
-
- case "$f" in
- *.gz|*.Z) gunzip -f $f; b=`echo $f | sed -e 's/\.\(gz\|Z\)$//'`;;
- *.bz2) bunzip2 -f $f; b=`echo $f | sed -e 's/\.bz2$//'`;;
- *.xz|*.lzma) unxz -f $f; b=`echo $f | sed -e 's/\.\(xz\|lzma\)$//'`;;
- *) b=$f;;
- esac
-
- $COMPRESS $b </dev/null 2>/dev/null || {
- inode=`ls -i $b | awk '{ print $1 }'`
- others=`find $d -type f -inum $inode`
- if [ -n "$others" ]; then
- for afile in $others ; do
- [ "$afile" != "$b" ] && rm -f $afile
- done
- $COMPRESS -f $b
- for afile in $others ; do
- [ "$afile" != "$b" ] && ln $b$COMPRESS_EXT $afile$COMPRESS_EXT
- done
- else
- $COMPRESS -f $b
- fi
- }
- done
-
- for f in `find $d -type l`
- do
- l=`ls -l $f | sed -e 's/.* -> //' -e 's/\.\(gz\|Z\|bz2\|xz\|lzma\)$//'`
- rm -f $f
- b=`echo $f | sed -e 's/\.\(gz\|Z\|bz2\|xz\|lzma\)$//'`
- ln -sf $l$COMPRESS_EXT $b$COMPRESS_EXT
- done
-done
+++ /dev/null
-#!/bin/sh
-
-# If using normal root, avoid changing anything.
-[ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ] && exit 0
-
-# If we are a noarch package, avoid changing anything.
-[ "$RPM_ARCH" = "noarch" ] && exit 0
-
-# If we don't have the required executables, avoid changing anything.
-gcj=${1:-/usr/bin/gcj}
-[ ! -x "$gcj" -o ! -x "$gcj-dbtool" ] && exit 0
-
-# Now get to work...
-libdir="/usr/lib" # XXX need to sed this in or something
-dbdir=`gcj-dbtool -p "$libdir"`.d/"$RPM_PACKAGE_NAME-$RPM_PACKAGE_VERSION"
-cflags="$RPM_OPT_FLAGS -fPIC -findirect-dispatch"
-ldflags="-Wl,-Bsymbolic"
-
-# XXX make it so you can override the list, for mx4j et al.
-for jar in `find $RPM_BUILD_ROOT -type f -name "*.?ar"`; do
- [ `head -c 2 "$jar"` != "PK" ] && continue
-
- [ -d "$RPM_BUILD_ROOT/$libdir" ] || mkdir -p "$RPM_BUILD_ROOT/$libdir"
-
- lib="$libdir/lib`basename $jar`.so"
- [ -f "$RPM_BUILD_ROOT/$lib" ] && continue
-
- # XXX need splits to handle #158308
- # (til then we can just compile big ones ourselves)
- echo "$PS4$gcj -shared $cflags $ldflags -o $lib $jar"
- $gcj -shared $cflags $ldflags -o "$RPM_BUILD_ROOT/$lib" "$jar"
-
- [ -d "$RPM_BUILD_ROOT/$dbdir" ] || mkdir -p "$RPM_BUILD_ROOT/$dbdir"
-
- db="$dbdir/`basename $jar`.db"
- [ -f "$RPM_BUILD_ROOT/$db" ] && exit 1
-
- $gcj-dbtool -n "$RPM_BUILD_ROOT/$db" 64
- $gcj-dbtool -f "$RPM_BUILD_ROOT/$db" "$jar" "$lib"
-done
+++ /dev/null
-#!/bin/bash
-errors_terminate=$2
-
-# If using normal root, avoid changing anything.
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-# If we don't have a python interpreter, avoid changing anything.
-default_python=${1:-/usr/bin/python}
-if [ ! -x "$default_python" ]; then
- exit 0
-fi
-
-# Figure out how deep we need to descend. We could pick an insanely high
-# number and hope it's enough, but somewhere, somebody's sure to run into it.
-depth=`(find $RPM_BUILD_ROOT -type f -name "*.py" -print0 ; echo /) | \
- xargs -0 -n 1 dirname | sed 's,[^/],,g' | sort -u | tail -n 1 | wc -c`
-if [ -z "$depth" -o "$depth" -le "1" ]; then
- exit 0
-fi
-
-# .pyc/.pyo files embed a "magic" value, identifying the ABI version of Python
-# bytecode that they are for.
-#
-# The files below RPM_BUILD_ROOT could be targetting multiple versions of
-# python (e.g. a single build that emits several subpackages e.g. a
-# python26-foo subpackage, a python31-foo subpackage etc)
-#
-# Support this by assuming that below each /usr/lib/python$VERSION/, all
-# .pyc/.pyo files are to be compiled for /usr/bin/python$VERSION.
-#
-# For example, below /usr/lib/python2.6/, we're targetting /usr/bin/python2.6
-# and below /usr/lib/python3.1/, we're targetting /usr/bin/python3.1
-
-shopt -s nullglob
-for python_libdir in $RPM_BUILD_ROOT/usr/lib{,64}/python[0-9].[0-9]/ ;
-do
- python_binary=/usr/bin/$(basename $python_libdir)
- real_libdir=${python_libdir/$RPM_BUILD_ROOT/}
- echo "Bytecompiling .py files below $python_libdir using $python_binary"
-
- # Generate normal (.pyc) byte-compiled files.
- $python_binary -c 'import compileall, sys; sys.exit(not compileall.compile_dir("'"$python_libdir"'", '"$depth"', "'"$real_libdir"'", force=1, quiet=1))'
- if [ $? -ne 0 -a 0$errors_terminate -ne 0 ]; then
- # One or more of the files had a syntax error
- exit 1
- fi
-
- # Generate optimized (.pyo) byte-compiled files.
- $python_binary -O -c 'import compileall, sys; sys.exit(not compileall.compile_dir("'"$python_libdir"'", '"$depth"', "'"$real_libdir"'", force=1, quiet=1))'
- if [ $? -ne 0 -a 0$errors_terminate -ne 0 ]; then
- # One or more of the files had a syntax error
- exit 1
- fi
-done
-
-
-# Handle other locations in the filesystem using the default python
-# implementation:
-
-# Generate normal (.pyc) byte-compiled files.
-$default_python -c 'import compileall, re, sys; sys.exit (not compileall.compile_dir("'"$RPM_BUILD_ROOT"'", '"$depth"', "/", 1, re.compile(r"'"/bin/|/sbin/|/usr/lib(64)?/python[0-9]\.[0-9]"'"), quiet=1))'
-if [ $? -ne 0 -a 0$errors_terminate -ne 0 ]; then
- # One or more of the files had a syntax error
- exit 1
-fi
-
-# Generate optimized (.pyo) byte-compiled files.
-$default_python -O -c 'import compileall, re, sys; sys.exit(not compileall.compile_dir("'"$RPM_BUILD_ROOT"'", '"$depth"', "/", 1, re.compile(r"'"/bin/|/sbin/|/usr/lib(64)?/python[0-9]\.[0-9]"'"), quiet=1))' > /dev/null
-if [ $? -ne 0 -a 0$errors_terminate -ne 0 ]; then
- # One or more of the files had a syntax error
- exit 1
-fi
-exit 0
+++ /dev/null
-#!/bin/sh
-
-# If using normal root, avoid changing anything.
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-# Hardlink identical *.pyc and *.pyo, originally from PLD's rpm-build-macros
-# Modified to use sha1sum instead of cmp to avoid a diffutils dependency.
-find "$RPM_BUILD_ROOT" -type f -name "*.pyc" | while read pyc ; do
- pyo="${pyc%c}o"
- if [ -f "$pyo" ] ; then
- csha="$(sha1sum -b $pyc | cut -d' ' -f 1)" && \
- osha="$(sha1sum -b $pyo | cut -d' ' -f 1)" && \
- if [ "$csha" = "$osha" ] ; then
- ln -f "$pyc" "$pyo"
- fi
- fi
-done
+++ /dev/null
-#!/bin/sh
-# If using normal root, avoid changing anything.
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-STRIP=${1:-strip}
-
-case `uname -a` in
-Darwin*) exit 0 ;;
-*) ;;
-esac
-
-# Strip ELF binaries
-for f in `find $RPM_BUILD_ROOT -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \
- grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \
- grep -v ' shared object,' | \
- sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped/\1/p'`; do
- $STRIP -g "$f" || :
-done
+++ /dev/null
-#!/bin/sh
-# If using normal root, avoid changing anything.
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-STRIP=${1:-strip}
-OBJDUMP=${2:-objdump}
-
-case `uname -a` in
-Darwin*) exit 0 ;;
-*) ;;
-esac
-
-# Strip .comment and .note sections (the latter only if it is not allocated)
-# for already stripped elf files in the build root
-for f in `find $RPM_BUILD_ROOT -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) -exec file {} \; | \
- grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \
- sed -n -e 's/^\(.*\):[ ]*ELF.*, stripped/\1/p'`; do
- note="-R .note"
- if $OBJDUMP -h $f | grep '^[ ]*[0-9]*[ ]*.note[ ]' -A 1 | \
- grep ALLOC >/dev/null; then
- note=
- fi
- $STRIP -R .comment $note "$f" || :
-done
+++ /dev/null
-#!/bin/sh
-# Conectiva brp - strip shared libraries. Based on Red Hat's brp-strip.
-# Thu Apr 20 - Guilherme Manika <gwm@conectiva.com.br>
-# Created file
-
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-STRIP=${1:-strip}
-
-case `uname -a` in
-Darwin*) exit 0 ;;
-*) ;;
-esac
-
-# Strip ELF shared objects
-# Please note we don't restrict our search to executable files because
-# our libraries are not (should not be, at least) +x.
-for f in `find $RPM_BUILD_ROOT -type f -a -exec file {} \; | \
- grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \
- grep ' shared object,' | \
- sed -n -e 's/^\(.*\):[ ]*ELF.*, not stripped/\1/p'`; do
- $STRIP --strip-unneeded "$f"
-done
+++ /dev/null
-#!/bin/sh
-
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-STRIP=${1:-strip}
-
-case `uname -a` in
-Darwin*) exit 0 ;;
-*) ;;
-esac
-
-# Strip static libraries.
-for f in `find $RPM_BUILD_ROOT -type f -a -exec file {} \; | \
- grep -v "^${RPM_BUILD_ROOT}/\?usr/lib/debug" | \
- grep 'current ar archive' | \
- sed -n -e 's/^\(.*\):[ ]*current ar archive/\1/p'`; do
- $STRIP -g "$f"
-done
+++ /dev/null
-#! /bin/sh
-
-# Copyright (C) 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; version 2 of the License.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-test -z "$QA_SKIP_BUILD_ROOT" || exit 0
-
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-tmp=$(mktemp ${TMPDIR:-/tmp}/cbr.XXXXXX)
-trap "rm -f $tmp" EXIT
-
-find "$RPM_BUILD_ROOT" \! \( \
- -name '*.pyo' -o -name '*.pyc' -o -name '*.elc' -o -name '.packlist' \
- \) -type f -print0 | \
- LANG=C xargs -0r grep -F "$RPM_BUILD_ROOT" >$tmp
-
-test -s "$tmp" && {
- cat "$tmp"
- echo "Found '$RPM_BUILD_ROOT' in installed files; aborting"
- exit 1
-} || :
+++ /dev/null
-#!/bin/sh
-#
-# Gets file list on standard input and RPM_BUILD_ROOT as first parameter
-# and searches for omitted files (not counting directories).
-# Returns it's output on standard output.
-#
-# filon@pld.org.pl
-
-RPM_BUILD_ROOT=$1
-
-if [ ! -d "$RPM_BUILD_ROOT" ] ; then
- cat > /dev/null
- exit 1
-fi
-
-[ "$TMPDIR" ] || TMPDIR=/tmp
-FILES_DISK=`mktemp $TMPDIR/rpmXXXXXX`
-FILES_RPM=`mktemp $TMPDIR/rpmXXXXXX`
-
-find $RPM_BUILD_ROOT -type f -o -type l | LC_ALL=C sort > $FILES_DISK
-LC_ALL=C sort > $FILES_RPM
-
-diff -d "$FILES_DISK" "$FILES_RPM" | grep "^< " | cut -c3- |
-while read f; do
- echo $f | sed -e "s#^$RPM_BUILD_ROOT# #g"
-done
-
-rm -f $FILES_DISK
-rm -f $FILES_RPM
+++ /dev/null
-#!/bin/bash
-
-bashit="/bin/bash --rpm-requires"
-
-# Make sure that this bash has the rpm-requires hack
-$bashit < /dev/null 2>&1 > /dev/null || exit $?
-
-prereqs="`cat | $bashit | sort | uniq | sed -e 's/^bash(//' -e 's/)$//' -e 's/^executable(//' -e 's/)$//'`"
-[ -z "$prereqs" ] && exit 0
-
-for prereq in $prereqs
-do
- case $prereq in
- /*) echo $prereq ;;
- *) echo "`which $prereq`" ;;
- esac
-done | sort | uniq
+++ /dev/null
-#! /bin/sh
-
-# Copyright (C) 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; version 2 of the License.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-test -z "$QA_SKIP_RPATHS" || {
- echo $"WARNING: '\$QA_SKIP_RPATHS' is obsoleted by 'QA_RPATHS=[0-7]'" >&2
- exit 0
-}
-
-if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
- exit 0
-fi
-
-find "$RPM_BUILD_ROOT" -type f -print0 | xargs -0r /usr/lib/rpm/check-rpaths-worker
+++ /dev/null
-#! /bin/bash
-
-# Copyright (C) 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; version 2 of the License.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-fail=
-already_shown=0
-
-# effect of this expression is obviously:
-# * match paths beginning with:
-# - $SOMETHING/<something>/..
-# - /<something>/..
-# * but not paths beginning with
-# - $SOMETHING/..
-# - $SOMETHING/../../../.....
-BADNESS_EXPR_32='\(\(\$[^/]\+\)\?\(/.*\)\?/\(\([^.][^/]*\)\|\(\.[^./][^/]*\)\|\(\.\.[^/]\+\)\)\)/\.\.\(/.*\)\?$'
-
-function showHint()
-{
- test "$already_shown" -eq 0 || return
- already_shown=1
-
- cat <<EOF >&2
-*******************************************************************************
-*
-* WARNING: 'check-rpaths' detected a broken RPATH and will cause 'rpmbuild'
-* to fail. To ignore these errors, you can set the '\$QA_RPATHS'
-* environment variable which is a bitmask allowing the values
-* below. The current value of QA_RPATHS is $(printf '0x%04x' $QA_RPATHS).
-*
-* 0x0001 ... standard RPATHs (e.g. /usr/lib); such RPATHs are a minor
-* issue but are introducing redundant searchpaths without
-* providing a benefit. They can also cause errors in multilib
-* environments.
-* 0x0002 ... invalid RPATHs; these are RPATHs which are neither absolute
-* nor relative filenames and can therefore be a SECURITY risk
-* 0x0004 ... insecure RPATHs; these are relative RPATHs which are a
-* SECURITY risk
-* 0x0008 ... the special '\$ORIGIN' RPATHs are appearing after other
-* RPATHs; this is just a minor issue but usually unwanted
-* 0x0010 ... the RPATH is empty; there is no reason for such RPATHs
-* and they cause unneeded work while loading libraries
-* 0x0020 ... an RPATH references '..' of an absolute path; this will break
-* the functionality when the path before '..' is a symlink
-*
-*
-* Examples:
-* - to ignore standard and empty RPATHs, execute 'rpmbuild' like
-* \$ QA_RPATHS=\$[ 0x0001|0x0010 ] rpmbuild my-package.src.rpm
-* - to check existing files, set \$RPM_BUILD_ROOT and execute check-rpaths like
-* \$ RPM_BUILD_ROOT=<top-dir> /usr/lib/rpm/check-rpaths
-*
-*******************************************************************************
-EOF
-}
-
-function msg()
-{
- local val=$1
- local cmp=$2
- local msg=
- local fail=
- local code
-
- test $[ $val & $cmp ] -ne 0 || return 0
-
- code=$(printf '%04x' $cmp)
- if test $[ $val & ~$QA_RPATHS ] -eq 0; then
- msg="WARNING"
- else
- showHint
- msg="ERROR "
- fail=1
- fi
-
- shift 2
- echo "$msg $code: $@" >&2
-
- test -z "$fail"
-}
-
-: ${QA_RPATHS:=0}
-old_IFS=$IFS
-
-for i; do
- pos=0
- rpath=$(readelf -d "$i" 2>/dev/null | LANG=C grep '(RPATH).*:') || continue
- rpath=$(echo "$rpath" | LANG=C sed -e 's!.*(RPATH).*: \[\(.*\)\]!\1!p;d')
- tmp=aux:$rpath:/lib/aux || :
- IFS=:
- set -- $tmp
- IFS=$old_IFS
- shift
-
- allow_ORIGIN=1
- for j; do
- new_allow_ORIGIN=0
-
- if test -z "$j"; then
- badness=16
- elif expr match "$j" "$BADNESS_EXPR_32" >/dev/null; then
- badness=32
- else
- case "$j" in
- (/lib/*|/usr/lib/*|/usr/X11R6/lib/*|/usr/local/lib/*)
- badness=0;;
- (/lib64/*|/usr/lib64/*|/usr/X11R6/lib64/*|/usr/local/lib64/*)
- badness=0;;
-
- (\$ORIGIN|\${ORIGINX}|\$ORIGIN/*|\${ORIGINX}/*)
- test $allow_ORIGIN -eq 0 && badness=8 || {
- badness=0
- new_allow_ORIGIN=1
- }
- ;;
- (/*\$PLATFORM*|/*\${PLATFORM}*|/*\$LIB*|/*\${LIB}*)
- badness=0;;
-
- (/lib|/usr/lib|/usr/X11R6/lib)
- badness=1;;
- (/lib64|/usr/lib64|/usr/X11R6/lib64)
- badness=1;;
-
- (.*)
- badness=4;;
- (*) badness=2;;
- esac
- fi
-
- allow_ORIGIN=$new_allow_ORIGIN
-
- base=${i##$RPM_BUILD_ROOT}
- msg "$badness" 1 "file '$base' contains a standard rpath '$j' in [$rpath]" || fail=1
- msg "$badness" 2 "file '$base' contains an invalid rpath '$j' in [$rpath]" || fail=1
- msg "$badness" 4 "file '$base' contains an insecure rpath '$j' in [$rpath]" || fail=1
- msg "$badness" 8 "file '$base' contains the \$ORIGIN rpath specifier at the wrong position in [$rpath]" || fail=1
- msg "$badness" 16 "file '$base' contains an empty rpath in [$rpath]" || fail=1
- msg "$badness" 32 "file '$base' contains an rpath referencing '..' of an absolute path [$rpath]" || fail=2
- let ++pos
- done
-done
-
-test -z "$fail"
+++ /dev/null
-#! /bin/sh
-# Attempt to guess a canonical system name.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-# Free Software Foundation, Inc.
-
-timestamp='2009-11-20'
-
-# This file is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner. Please send patches (context
-# diff format) to <config-patches@gnu.org> and include a ChangeLog
-# entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub. If it succeeds, it prints the system name on stdout, and
-# exits with 0. Otherwise, it exits with 1.
-#
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches@gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help" >&2
- exit 1 ;;
- * )
- break ;;
- esac
-done
-
-if test $# != 0; then
- echo "$me: too many arguments$help" >&2
- exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,) echo "int x;" > $dummy.c ;
- for c in cc gcc c89 c99 ; do
- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
- CC_FOR_BUILD="$c"; break ;
- fi ;
- done ;
- if test x"$CC_FOR_BUILD" = x ; then
- CC_FOR_BUILD=no_compiler_found ;
- fi
- ;;
- ,,*) CC_FOR_BUILD=$CC ;;
- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi@noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
- PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
- *:NetBSD:*:*)
- # NetBSD (nbsd) targets should (where applicable) match one or
- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
- # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
- # switched to ELF, *-*-netbsd* would select the old
- # object file format. This provides both forward
- # compatibility and a consistent mechanism for selecting the
- # object file format.
- #
- # Note: NetBSD doesn't particularly care about the vendor
- # portion of the name. We always set it to "unknown".
- sysctl="sysctl -n hw.machine_arch"
- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
- case "${UNAME_MACHINE_ARCH}" in
- armeb) machine=armeb-unknown ;;
- arm*) machine=arm-unknown ;;
- sh3el) machine=shl-unknown ;;
- sh3eb) machine=sh-unknown ;;
- sh5el) machine=sh5le-unknown ;;
- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
- esac
- # The Operating System including object format, if it has switched
- # to ELF recently, or will in the future.
- case "${UNAME_MACHINE_ARCH}" in
- arm*|i386|m68k|ns32k|sh3*|sparc|vax)
- eval $set_cc_for_build
- if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ELF__
- then
- # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
- # Return netbsd for either. FIX?
- os=netbsd
- else
- os=netbsdelf
- fi
- ;;
- *)
- os=netbsd
- ;;
- esac
- # The OS release
- # Debian GNU/NetBSD machines have a different userland, and
- # thus, need a distinct triplet. However, they do not need
- # kernel version information, so it can be replaced with a
- # suitable tag, in the style of linux-gnu.
- case "${UNAME_VERSION}" in
- Debian*)
- release='-gnu'
- ;;
- *)
- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
- ;;
- esac
- # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
- # contains redundant information, the shorter form:
- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
- echo "${machine}-${os}${release}"
- exit ;;
- *:OpenBSD:*:*)
- UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
- echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
- exit ;;
- *:ekkoBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
- exit ;;
- *:SolidBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
- exit ;;
- macppc:MirBSD:*:*)
- echo powerpc-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
- *:MirBSD:*:*)
- echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
- exit ;;
- alpha:OSF1:*:*)
- case $UNAME_RELEASE in
- *4.0)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
- ;;
- *5.*)
- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
- ;;
- esac
- # According to Compaq, /usr/sbin/psrinfo has been available on
- # OSF/1 and Tru64 systems produced since 1995. I hope that
- # covers most systems running today. This code pipes the CPU
- # types through head -n 1, so we only detect the type of CPU 0.
- ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
- case "$ALPHA_CPU_TYPE" in
- "EV4 (21064)")
- UNAME_MACHINE="alpha" ;;
- "EV4.5 (21064)")
- UNAME_MACHINE="alpha" ;;
- "LCA4 (21066/21068)")
- UNAME_MACHINE="alpha" ;;
- "EV5 (21164)")
- UNAME_MACHINE="alphaev5" ;;
- "EV5.6 (21164A)")
- UNAME_MACHINE="alphaev56" ;;
- "EV5.6 (21164PC)")
- UNAME_MACHINE="alphapca56" ;;
- "EV5.7 (21164PC)")
- UNAME_MACHINE="alphapca57" ;;
- "EV6 (21264)")
- UNAME_MACHINE="alphaev6" ;;
- "EV6.7 (21264A)")
- UNAME_MACHINE="alphaev67" ;;
- "EV6.8CB (21264C)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8AL (21264B)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.8CX (21264D)")
- UNAME_MACHINE="alphaev68" ;;
- "EV6.9A (21264/EV69A)")
- UNAME_MACHINE="alphaev69" ;;
- "EV7 (21364)")
- UNAME_MACHINE="alphaev7" ;;
- "EV7.9 (21364A)")
- UNAME_MACHINE="alphaev79" ;;
- esac
- # A Pn.n version is a patched version.
- # A Vn.n version is a released version.
- # A Tn.n version is a released field test version.
- # A Xn.n version is an unreleased experimental baselevel.
- # 1.2 uses "1.2" for uname -r.
- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- exit ;;
- Alpha\ *:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # Should we change UNAME_MACHINE based on the output of uname instead
- # of the specific Alpha model?
- echo alpha-pc-interix
- exit ;;
- 21064:Windows_NT:50:3)
- echo alpha-dec-winnt3.5
- exit ;;
- Amiga*:UNIX_System_V:4.0:*)
- echo m68k-unknown-sysv4
- exit ;;
- *:[Aa]miga[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-amigaos
- exit ;;
- *:[Mm]orph[Oo][Ss]:*:*)
- echo ${UNAME_MACHINE}-unknown-morphos
- exit ;;
- *:OS/390:*:*)
- echo i370-ibm-openedition
- exit ;;
- *:z/VM:*:*)
- echo s390-ibm-zvmoe
- exit ;;
- *:OS400:*:*)
- echo powerpc-ibm-os400
- exit ;;
- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
- echo arm-acorn-riscix${UNAME_RELEASE}
- exit ;;
- arm:riscos:*:*|arm:RISCOS:*:*)
- echo arm-unknown-riscos
- exit ;;
- SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
- echo hppa1.1-hitachi-hiuxmpp
- exit ;;
- Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
- # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
- if test "`(/bin/universe) 2>/dev/null`" = att ; then
- echo pyramid-pyramid-sysv3
- else
- echo pyramid-pyramid-bsd
- fi
- exit ;;
- NILE*:*:*:dcosx)
- echo pyramid-pyramid-svr4
- exit ;;
- DRS?6000:unix:4.0:6*)
- echo sparc-icl-nx6
- exit ;;
- DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
- case `/usr/bin/uname -p` in
- sparc) echo sparc-icl-nx7; exit ;;
- esac ;;
- s390x:SunOS:*:*)
- echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4H:SunOS:5.*:*)
- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
- echo i386-pc-auroraux${UNAME_RELEASE}
- exit ;;
- i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
- eval $set_cc_for_build
- SUN_ARCH="i386"
- # If there is a compiler, see if it is configured for 64-bit objects.
- # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
- # This test works for both compilers.
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- SUN_ARCH="x86_64"
- fi
- fi
- echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:6*:*)
- # According to config.sub, this is the proper way to canonicalize
- # SunOS6. Hard to guess exactly what SunOS6 will be like, but
- # it's likely to be more like Solaris than SunOS4.
- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- sun4*:SunOS:*:*)
- case "`/usr/bin/arch -k`" in
- Series*|S4*)
- UNAME_RELEASE=`uname -v`
- ;;
- esac
- # Japanese Language versions have a version number like `4.1.3-JL'.
- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
- exit ;;
- sun3*:SunOS:*:*)
- echo m68k-sun-sunos${UNAME_RELEASE}
- exit ;;
- sun*:*:4.2BSD:*)
- UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
- case "`/bin/arch`" in
- sun3)
- echo m68k-sun-sunos${UNAME_RELEASE}
- ;;
- sun4)
- echo sparc-sun-sunos${UNAME_RELEASE}
- ;;
- esac
- exit ;;
- aushp:SunOS:*:*)
- echo sparc-auspex-sunos${UNAME_RELEASE}
- exit ;;
- # The situation for MiNT is a little confusing. The machine name
- # can be virtually everything (everything which is not
- # "atarist" or "atariste" at least should have a processor
- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
- # to the lowercase version "mint" (or "freemint"). Finally
- # the system name "TOS" denotes a system which is actually not
- # MiNT. But MiNT is downward compatible to TOS, so this should
- # be no problem.
- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
- echo m68k-atari-mint${UNAME_RELEASE}
- exit ;;
- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
- echo m68k-milan-mint${UNAME_RELEASE}
- exit ;;
- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
- echo m68k-hades-mint${UNAME_RELEASE}
- exit ;;
- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
- echo m68k-unknown-mint${UNAME_RELEASE}
- exit ;;
- m68k:machten:*:*)
- echo m68k-apple-machten${UNAME_RELEASE}
- exit ;;
- powerpc:machten:*:*)
- echo powerpc-apple-machten${UNAME_RELEASE}
- exit ;;
- RISC*:Mach:*:*)
- echo mips-dec-mach_bsd4.3
- exit ;;
- RISC*:ULTRIX:*:*)
- echo mips-dec-ultrix${UNAME_RELEASE}
- exit ;;
- VAX*:ULTRIX*:*:*)
- echo vax-dec-ultrix${UNAME_RELEASE}
- exit ;;
- 2020:CLIX:*:* | 2430:CLIX:*:*)
- echo clipper-intergraph-clix${UNAME_RELEASE}
- exit ;;
- mips:*:*:UMIPS | mips:*:*:RISCos)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h> /* for printf() prototype */
- int main (int argc, char *argv[]) {
-#else
- int main (argc, argv) int argc; char *argv[]; {
-#endif
- #if defined (host_mips) && defined (MIPSEB)
- #if defined (SYSTYPE_SYSV)
- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_SVR4)
- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
- #endif
- #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
- #endif
- #endif
- exit (-1);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c &&
- dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
- SYSTEM_NAME=`$dummy $dummyarg` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo mips-mips-riscos${UNAME_RELEASE}
- exit ;;
- Motorola:PowerMAX_OS:*:*)
- echo powerpc-motorola-powermax
- exit ;;
- Motorola:*:4.3:PL8-*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
- echo powerpc-harris-powermax
- exit ;;
- Night_Hawk:Power_UNIX:*:*)
- echo powerpc-harris-powerunix
- exit ;;
- m88k:CX/UX:7*:*)
- echo m88k-harris-cxux7
- exit ;;
- m88k:*:4*:R4*)
- echo m88k-motorola-sysv4
- exit ;;
- m88k:*:3*:R3*)
- echo m88k-motorola-sysv3
- exit ;;
- AViiON:dgux:*:*)
- # DG/UX returns AViiON for all architectures
- UNAME_PROCESSOR=`/usr/bin/uname -p`
- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
- then
- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
- [ ${TARGET_BINARY_INTERFACE}x = x ]
- then
- echo m88k-dg-dgux${UNAME_RELEASE}
- else
- echo m88k-dg-dguxbcs${UNAME_RELEASE}
- fi
- else
- echo i586-dg-dgux${UNAME_RELEASE}
- fi
- exit ;;
- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
- echo m88k-dolphin-sysv3
- exit ;;
- M88*:*:R3*:*)
- # Delta 88k system running SVR3
- echo m88k-motorola-sysv3
- exit ;;
- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
- echo m88k-tektronix-sysv3
- exit ;;
- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
- echo m68k-tektronix-bsd
- exit ;;
- *:IRIX*:*:*)
- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
- exit ;;
- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
- exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
- i*86:AIX:*:*)
- echo i386-ibm-aix
- exit ;;
- ia64:AIX:*:*)
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
- exit ;;
- *:AIX:2:3)
- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <sys/systemcfg.h>
-
- main()
- {
- if (!__power_pc())
- exit(1);
- puts("powerpc-ibm-aix3.2.5");
- exit(0);
- }
-EOF
- if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
- then
- echo "$SYSTEM_NAME"
- else
- echo rs6000-ibm-aix3.2.5
- fi
- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
- echo rs6000-ibm-aix3.2.4
- else
- echo rs6000-ibm-aix3.2
- fi
- exit ;;
- *:AIX:*:[456])
- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
- IBM_ARCH=rs6000
- else
- IBM_ARCH=powerpc
- fi
- if [ -x /usr/bin/oslevel ] ; then
- IBM_REV=`/usr/bin/oslevel`
- else
- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
- fi
- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
- exit ;;
- *:AIX:*:*)
- echo rs6000-ibm-aix
- exit ;;
- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
- echo romp-ibm-bsd4.4
- exit ;;
- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
- exit ;; # report: romp-ibm BSD 4.3
- *:BOSX:*:*)
- echo rs6000-bull-bosx
- exit ;;
- DPX/2?00:B.O.S.:*:*)
- echo m68k-bull-sysv3
- exit ;;
- 9000/[34]??:4.3bsd:1.*:*)
- echo m68k-hp-bsd
- exit ;;
- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
- echo m68k-hp-bsd4.4
- exit ;;
- 9000/[34678]??:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- case "${UNAME_MACHINE}" in
- 9000/31? ) HP_ARCH=m68000 ;;
- 9000/[34]?? ) HP_ARCH=m68k ;;
- 9000/[678][0-9][0-9])
- if [ -x /usr/bin/getconf ]; then
- sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
- case "${sc_cpu_version}" in
- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
- 532) # CPU_PA_RISC2_0
- case "${sc_kernel_bits}" in
- 32) HP_ARCH="hppa2.0n" ;;
- 64) HP_ARCH="hppa2.0w" ;;
- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
- esac ;;
- esac
- fi
- if [ "${HP_ARCH}" = "" ]; then
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
-
- #define _HPUX_SOURCE
- #include <stdlib.h>
- #include <unistd.h>
-
- int main ()
- {
- #if defined(_SC_KERNEL_BITS)
- long bits = sysconf(_SC_KERNEL_BITS);
- #endif
- long cpu = sysconf (_SC_CPU_VERSION);
-
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
- case CPU_PA_RISC2_0:
- #if defined(_SC_KERNEL_BITS)
- switch (bits)
- {
- case 64: puts ("hppa2.0w"); break;
- case 32: puts ("hppa2.0n"); break;
- default: puts ("hppa2.0"); break;
- } break;
- #else /* !defined(_SC_KERNEL_BITS) */
- puts ("hppa2.0"); break;
- #endif
- default: puts ("hppa1.0"); break;
- }
- exit (0);
- }
-EOF
- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
- test -z "$HP_ARCH" && HP_ARCH=hppa
- fi ;;
- esac
- if [ ${HP_ARCH} = "hppa2.0w" ]
- then
- eval $set_cc_for_build
-
- # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
- # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
- # generating 64-bit code. GNU and HP use different nomenclature:
- #
- # $ CC_FOR_BUILD=cc ./config.guess
- # => hppa2.0w-hp-hpux11.23
- # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
- # => hppa64-hp-hpux11.23
-
- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
- grep -q __LP64__
- then
- HP_ARCH="hppa2.0w"
- else
- HP_ARCH="hppa64"
- fi
- fi
- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
- exit ;;
- ia64:HP-UX:*:*)
- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
- echo ia64-hp-hpux${HPUX_REV}
- exit ;;
- 3050*:HI-UX:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #include <unistd.h>
- int
- main ()
- {
- long cpu = sysconf (_SC_CPU_VERSION);
- /* The order matters, because CPU_IS_HP_MC68K erroneously returns
- true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
- results, however. */
- if (CPU_IS_PA_RISC (cpu))
- {
- switch (cpu)
- {
- case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
- case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
- default: puts ("hppa-hitachi-hiuxwe2"); break;
- }
- }
- else if (CPU_IS_HP_MC68K (cpu))
- puts ("m68k-hitachi-hiuxwe2");
- else puts ("unknown-hitachi-hiuxwe2");
- exit (0);
- }
-EOF
- $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
- echo unknown-hitachi-hiuxwe2
- exit ;;
- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
- echo hppa1.1-hp-bsd
- exit ;;
- 9000/8??:4.3bsd:*:*)
- echo hppa1.0-hp-bsd
- exit ;;
- *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
- echo hppa1.0-hp-mpeix
- exit ;;
- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
- echo hppa1.1-hp-osf
- exit ;;
- hp8??:OSF1:*:*)
- echo hppa1.0-hp-osf
- exit ;;
- i*86:OSF1:*:*)
- if [ -x /usr/sbin/sysversion ] ; then
- echo ${UNAME_MACHINE}-unknown-osf1mk
- else
- echo ${UNAME_MACHINE}-unknown-osf1
- fi
- exit ;;
- parisc*:Lites*:*:*)
- echo hppa1.1-hp-lites
- exit ;;
- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
- echo c1-convex-bsd
- exit ;;
- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
- echo c34-convex-bsd
- exit ;;
- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
- echo c38-convex-bsd
- exit ;;
- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
- echo c4-convex-bsd
- exit ;;
- CRAY*Y-MP:*:*:*)
- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*[A-Z]90:*:*:*)
- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
- -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*TS:*:*:*)
- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*T3E:*:*:*)
- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- CRAY*SV1:*:*:*)
- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- *:UNICOS/mp:*:*)
- echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
- exit ;;
- F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- 5000:UNIX_System_V:4.*:*)
- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
- FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
- echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
- exit ;;
- i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
- exit ;;
- sparc*:BSD/OS:*:*)
- echo sparc-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:BSD/OS:*:*)
- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
- exit ;;
- *:FreeBSD:*:*)
- case ${UNAME_MACHINE} in
- pc98)
- echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- amd64)
- echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- *)
- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
- esac
- exit ;;
- i*:CYGWIN*:*)
- echo ${UNAME_MACHINE}-pc-cygwin
- exit ;;
- *:MINGW*:*)
- echo ${UNAME_MACHINE}-pc-mingw32
- exit ;;
- i*:windows32*:*)
- # uname -m includes "-pc" on this system.
- echo ${UNAME_MACHINE}-mingw32
- exit ;;
- i*:PW*:*)
- echo ${UNAME_MACHINE}-pc-pw32
- exit ;;
- *:Interix*:*)
- case ${UNAME_MACHINE} in
- x86)
- echo i586-pc-interix${UNAME_RELEASE}
- exit ;;
- authenticamd | genuineintel | EM64T)
- echo x86_64-unknown-interix${UNAME_RELEASE}
- exit ;;
- IA64)
- echo ia64-unknown-interix${UNAME_RELEASE}
- exit ;;
- esac ;;
- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
- echo i${UNAME_MACHINE}-pc-mks
- exit ;;
- 8664:Windows_NT:*)
- echo x86_64-pc-mks
- exit ;;
- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
- # How do we know it's Interix rather than the generic POSIX subsystem?
- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
- # UNAME_MACHINE based on the output of uname instead of i386?
- echo i586-pc-interix
- exit ;;
- i*:UWIN*:*)
- echo ${UNAME_MACHINE}-pc-uwin
- exit ;;
- amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
- echo x86_64-unknown-cygwin
- exit ;;
- p*:CYGWIN*:*)
- echo powerpcle-unknown-cygwin
- exit ;;
- prep*:SunOS:5.*:*)
- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
- exit ;;
- *:GNU:*:*)
- # the GNU system
- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
- exit ;;
- *:GNU/*:*:*)
- # other systems with GNU libc and userland
- echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
- exit ;;
- i*86:Minix:*:*)
- echo ${UNAME_MACHINE}-pc-minix
- exit ;;
- alpha:Linux:*:*)
- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
- EV5) UNAME_MACHINE=alphaev5 ;;
- EV56) UNAME_MACHINE=alphaev56 ;;
- PCA56) UNAME_MACHINE=alphapca56 ;;
- PCA57) UNAME_MACHINE=alphapca56 ;;
- EV6) UNAME_MACHINE=alphaev6 ;;
- EV67) UNAME_MACHINE=alphaev67 ;;
- EV68*) UNAME_MACHINE=alphaev68 ;;
- esac
- objdump --private-headers /bin/sh | grep -q ld.so.1
- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
- exit ;;
- arm*:Linux:*:*)
- eval $set_cc_for_build
- if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
- | grep -q __ARM_EABI__
- then
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- else
- echo ${UNAME_MACHINE}-unknown-linux-gnueabi
- fi
- exit ;;
- avr32*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- cris:Linux:*:*)
- echo cris-axis-linux-gnu
- exit ;;
- crisv32:Linux:*:*)
- echo crisv32-axis-linux-gnu
- exit ;;
- frv:Linux:*:*)
- echo frv-unknown-linux-gnu
- exit ;;
- i*86:Linux:*:*)
- LIBC=gnu
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #ifdef __dietlibc__
- LIBC=dietlibc
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
- echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
- exit ;;
- ia64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- m32r*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- m68*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- mips:Linux:*:* | mips64:Linux:*:*)
- eval $set_cc_for_build
- sed 's/^ //' << EOF >$dummy.c
- #undef CPU
- #undef ${UNAME_MACHINE}
- #undef ${UNAME_MACHINE}el
- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
- CPU=${UNAME_MACHINE}el
- #else
- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
- CPU=${UNAME_MACHINE}
- #else
- CPU=
- #endif
- #endif
-EOF
- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
- test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
- ;;
- or32:Linux:*:*)
- echo or32-unknown-linux-gnu
- exit ;;
- padre:Linux:*:*)
- echo sparc-unknown-linux-gnu
- exit ;;
- parisc64:Linux:*:* | hppa64:Linux:*:*)
- echo hppa64-unknown-linux-gnu
- exit ;;
- parisc:Linux:*:* | hppa:Linux:*:*)
- # Look for CPU level
- case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
- PA7*) echo hppa1.1-unknown-linux-gnu ;;
- PA8*) echo hppa2.0-unknown-linux-gnu ;;
- *) echo hppa-unknown-linux-gnu ;;
- esac
- exit ;;
- ppc64:Linux:*:*)
- echo powerpc64-unknown-linux-gnu
- exit ;;
- ppc:Linux:*:*)
- echo powerpc-unknown-linux-gnu
- exit ;;
- s390:Linux:*:* | s390x:Linux:*:*)
- echo ${UNAME_MACHINE}-ibm-linux
- exit ;;
- sh64*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- sh*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- sparc:Linux:*:* | sparc64:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- vax:Linux:*:*)
- echo ${UNAME_MACHINE}-dec-linux-gnu
- exit ;;
- x86_64:Linux:*:*)
- echo x86_64-unknown-linux-gnu
- exit ;;
- xtensa*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
- exit ;;
- i*86:DYNIX/ptx:4*:*)
- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
- # earlier versions are messed up and put the nodename in both
- # sysname and nodename.
- echo i386-sequent-sysv4
- exit ;;
- i*86:UNIX_SV:4.2MP:2.*)
- # Unixware is an offshoot of SVR4, but it has its own version
- # number series starting with 2...
- # I am not positive that other SVR4 systems won't match this,
- # I just have to hope. -- rms.
- # Use sysv4.2uw... so that sysv4* matches it.
- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
- exit ;;
- i*86:OS/2:*:*)
- # If we were able to find `uname', then EMX Unix compatibility
- # is probably installed.
- echo ${UNAME_MACHINE}-pc-os2-emx
- exit ;;
- i*86:XTS-300:*:STOP)
- echo ${UNAME_MACHINE}-unknown-stop
- exit ;;
- i*86:atheos:*:*)
- echo ${UNAME_MACHINE}-unknown-atheos
- exit ;;
- i*86:syllable:*:*)
- echo ${UNAME_MACHINE}-pc-syllable
- exit ;;
- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
- echo i386-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- i*86:*DOS:*:*)
- echo ${UNAME_MACHINE}-pc-msdosdjgpp
- exit ;;
- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
- else
- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
- fi
- exit ;;
- i*86:*:5:[678]*)
- # UnixWare 7.x, OpenUNIX and OpenServer 6.
- case `/bin/uname -X | grep "^Machine"` in
- *486*) UNAME_MACHINE=i486 ;;
- *Pentium) UNAME_MACHINE=i586 ;;
- *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
- esac
- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
- exit ;;
- i*86:*:3.2:*)
- if test -f /usr/options/cb.name; then
- UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
- elif /bin/uname -X 2>/dev/null >/dev/null ; then
- UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
- (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
- (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
- && UNAME_MACHINE=i586
- (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
- && UNAME_MACHINE=i686
- (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
- && UNAME_MACHINE=i686
- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
- else
- echo ${UNAME_MACHINE}-pc-sysv32
- fi
- exit ;;
- pc:*:*:*)
- # Left here for compatibility:
- # uname -m prints for DJGPP always 'pc', but it prints nothing about
- # the processor, so we play safe by assuming i586.
- # Note: whatever this is, it MUST be the same as what config.sub
- # prints for the "djgpp" host, or else GDB configury will decide that
- # this is a cross-build.
- echo i586-pc-msdosdjgpp
- exit ;;
- Intel:Mach:3*:*)
- echo i386-pc-mach3
- exit ;;
- paragon:*:*:*)
- echo i860-intel-osf1
- exit ;;
- i860:*:4.*:*) # i860-SVR4
- if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
- else # Add other i860-SVR4 vendors below as they are discovered.
- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
- fi
- exit ;;
- mini*:CTIX:SYS*5:*)
- # "miniframe"
- echo m68010-convergent-sysv
- exit ;;
- mc68k:UNIX:SYSTEM5:3.51m)
- echo m68k-convergent-sysv
- exit ;;
- M680?0:D-NIX:5.3:*)
- echo m68k-diab-dnix
- exit ;;
- M68*:*:R3V[5678]*:*)
- test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
- 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
- OS_REL=''
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4; exit; } ;;
- NCR*:*:4.2:* | MPRAS*:*:4.2:*)
- OS_REL='.3'
- test -r /etc/.relid \
- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
- && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
- /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
- && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
- m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
- echo m68k-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- mc68030:UNIX_System_V:4.*:*)
- echo m68k-atari-sysv4
- exit ;;
- TSUNAMI:LynxOS:2.*:*)
- echo sparc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- rs6000:LynxOS:2.*:*)
- echo rs6000-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
- echo powerpc-unknown-lynxos${UNAME_RELEASE}
- exit ;;
- SM[BE]S:UNIX_SV:*:*)
- echo mips-dde-sysv${UNAME_RELEASE}
- exit ;;
- RM*:ReliantUNIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- RM*:SINIX-*:*:*)
- echo mips-sni-sysv4
- exit ;;
- *:SINIX-*:*:*)
- if uname -p 2>/dev/null >/dev/null ; then
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- echo ${UNAME_MACHINE}-sni-sysv4
- else
- echo ns32k-sni-sysv
- fi
- exit ;;
- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
- # says <Richard.M.Bartel@ccMail.Census.GOV>
- echo i586-unisys-sysv4
- exit ;;
- *:UNIX_System_V:4*:FTX*)
- # From Gerald Hewes <hewes@openmarket.com>.
- # How about differentiating between stratus architectures? -djm
- echo hppa1.1-stratus-sysv4
- exit ;;
- *:*:*:FTX*)
- # From seanf@swdc.stratus.com.
- echo i860-stratus-sysv4
- exit ;;
- i*86:VOS:*:*)
- # From Paul.Green@stratus.com.
- echo ${UNAME_MACHINE}-stratus-vos
- exit ;;
- *:VOS:*:*)
- # From Paul.Green@stratus.com.
- echo hppa1.1-stratus-vos
- exit ;;
- mc68*:A/UX:*:*)
- echo m68k-apple-aux${UNAME_RELEASE}
- exit ;;
- news*:NEWS-OS:6*:*)
- echo mips-sony-newsos6
- exit ;;
- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
- if [ -d /usr/nec ]; then
- echo mips-nec-sysv${UNAME_RELEASE}
- else
- echo mips-unknown-sysv${UNAME_RELEASE}
- fi
- exit ;;
- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
- echo powerpc-be-beos
- exit ;;
- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
- echo powerpc-apple-beos
- exit ;;
- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
- echo i586-pc-beos
- exit ;;
- BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
- echo i586-pc-haiku
- exit ;;
- SX-4:SUPER-UX:*:*)
- echo sx4-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-5:SUPER-UX:*:*)
- echo sx5-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-6:SUPER-UX:*:*)
- echo sx6-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-7:SUPER-UX:*:*)
- echo sx7-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-8:SUPER-UX:*:*)
- echo sx8-nec-superux${UNAME_RELEASE}
- exit ;;
- SX-8R:SUPER-UX:*:*)
- echo sx8r-nec-superux${UNAME_RELEASE}
- exit ;;
- Power*:Rhapsody:*:*)
- echo powerpc-apple-rhapsody${UNAME_RELEASE}
- exit ;;
- *:Rhapsody:*:*)
- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
- exit ;;
- *:Darwin:*:*)
- UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
- case $UNAME_PROCESSOR in
- i386)
- eval $set_cc_for_build
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- UNAME_PROCESSOR="x86_64"
- fi
- fi ;;
- unknown) UNAME_PROCESSOR=powerpc ;;
- esac
- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
- exit ;;
- *:procnto*:*:* | *:QNX:[0123456789]*:*)
- UNAME_PROCESSOR=`uname -p`
- if test "$UNAME_PROCESSOR" = "x86"; then
- UNAME_PROCESSOR=i386
- UNAME_MACHINE=pc
- fi
- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
- exit ;;
- *:QNX:*:4*)
- echo i386-pc-qnx
- exit ;;
- NSE-?:NONSTOP_KERNEL:*:*)
- echo nse-tandem-nsk${UNAME_RELEASE}
- exit ;;
- NSR-?:NONSTOP_KERNEL:*:*)
- echo nsr-tandem-nsk${UNAME_RELEASE}
- exit ;;
- *:NonStop-UX:*:*)
- echo mips-compaq-nonstopux
- exit ;;
- BS2000:POSIX*:*:*)
- echo bs2000-siemens-sysv
- exit ;;
- DS/*:UNIX_System_V:*:*)
- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
- exit ;;
- *:Plan9:*:*)
- # "uname -m" is not consistent, so use $cputype instead. 386
- # is converted to i386 for consistency with other x86
- # operating systems.
- if test "$cputype" = "386"; then
- UNAME_MACHINE=i386
- else
- UNAME_MACHINE="$cputype"
- fi
- echo ${UNAME_MACHINE}-unknown-plan9
- exit ;;
- *:TOPS-10:*:*)
- echo pdp10-unknown-tops10
- exit ;;
- *:TENEX:*:*)
- echo pdp10-unknown-tenex
- exit ;;
- KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
- echo pdp10-dec-tops20
- exit ;;
- XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
- echo pdp10-xkl-tops20
- exit ;;
- *:TOPS-20:*:*)
- echo pdp10-unknown-tops20
- exit ;;
- *:ITS:*:*)
- echo pdp10-unknown-its
- exit ;;
- SEI:*:*:SEIUX)
- echo mips-sei-seiux${UNAME_RELEASE}
- exit ;;
- *:DragonFly:*:*)
- echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
- exit ;;
- *:*VMS:*:*)
- UNAME_MACHINE=`(uname -p) 2>/dev/null`
- case "${UNAME_MACHINE}" in
- A*) echo alpha-dec-vms ; exit ;;
- I*) echo ia64-dec-vms ; exit ;;
- V*) echo vax-dec-vms ; exit ;;
- esac ;;
- *:XENIX:*:SysV)
- echo i386-pc-xenix
- exit ;;
- i*86:skyos:*:*)
- echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
- exit ;;
- i*86:rdos:*:*)
- echo ${UNAME_MACHINE}-pc-rdos
- exit ;;
- i*86:AROS:*:*)
- echo ${UNAME_MACHINE}-pc-aros
- exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
- I don't know.... */
- printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
- printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
- "4"
-#else
- ""
-#endif
- ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
- printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
- printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
- int version;
- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
- if (version < 4)
- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
- else
- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
- exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
- printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
- printf ("ns32k-encore-mach\n"); exit (0);
-#else
- printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
- printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
- printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
- printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
- struct utsname un;
-
- uname(&un);
-
- if (strncmp(un.version, "V2", 2) == 0) {
- printf ("i386-sequent-ptx2\n"); exit (0);
- }
- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
- printf ("i386-sequent-ptx1\n"); exit (0);
- }
- printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-# include <sys/param.h>
-# if defined (BSD)
-# if BSD == 43
- printf ("vax-dec-bsd4.3\n"); exit (0);
-# else
-# if BSD == 199006
- printf ("vax-dec-bsd4.3reno\n"); exit (0);
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# endif
-# else
- printf ("vax-dec-bsd\n"); exit (0);
-# endif
-# else
- printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
- printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
- exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
- { echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
- case `getsysinfo -f cpu_type` in
- c1*)
- echo c1-convex-bsd
- exit ;;
- c2*)
- if getsysinfo -f scalar_acc
- then echo c32-convex-bsd
- else echo c2-convex-bsd
- fi
- exit ;;
- c34*)
- echo c34-convex-bsd
- exit ;;
- c38*)
- echo c38-convex-bsd
- exit ;;
- c4*)
- echo c4-convex-bsd
- exit ;;
- esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-and
- http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches@gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo = `(hostinfo) 2>/dev/null`
-/bin/universe = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
+++ /dev/null
-#! /bin/sh
-# Configuration validation subroutine script.
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-# Free Software Foundation, Inc.
-
-timestamp='2009-11-20'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine. It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <config-patches@gnu.org>. Submit a context
-# diff and a properly formatted GNU ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support. The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
- $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-
-Report bugs and patches to <config-patches@gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
- case $1 in
- --time-stamp | --time* | -t )
- echo "$timestamp" ; exit ;;
- --version | -v )
- echo "$version" ; exit ;;
- --help | --h* | -h )
- echo "$usage"; exit ;;
- -- ) # Stop option processing
- shift; break ;;
- - ) # Use stdin as input.
- break ;;
- -* )
- echo "$me: invalid option $1$help"
- exit 1 ;;
-
- *local*)
- # First pass through any local machine types.
- echo $1
- exit ;;
-
- * )
- break ;;
- esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
- exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
- exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
- nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
- uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
- kopensolaris*-gnu* | \
- storm-chaos* | os2-emx* | rtmk-nova*)
- os=-$maybe_os
- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
- ;;
- *)
- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
- if [ $basic_machine != $1 ]
- then os=`echo $1 | sed 's/.*-/-/'`
- else os=; fi
- ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work. We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
- -sun*os*)
- # Prevent following clause from handling this invalid input.
- ;;
- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
- -apple | -axis | -knuth | -cray | -microblaze)
- os=
- basic_machine=$1
- ;;
- -bluegene*)
- os=-cnk
- ;;
- -sim | -cisco | -oki | -wec | -winbond)
- os=
- basic_machine=$1
- ;;
- -scout)
- ;;
- -wrs)
- os=-vxworks
- basic_machine=$1
- ;;
- -chorusos*)
- os=-chorusos
- basic_machine=$1
- ;;
- -chorusrdb)
- os=-chorusrdb
- basic_machine=$1
- ;;
- -hiux*)
- os=-hiuxwe2
- ;;
- -sco6)
- os=-sco5v6
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5)
- os=-sco3.2v5
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco4)
- os=-sco3.2v4
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2.[4-9]*)
- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco3.2v[4-9]*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco5v6*)
- # Don't forget version if it is 3.2v4 or newer.
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -sco*)
- os=-sco3.2v2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -udk*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -isc)
- os=-isc2.2
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -clix*)
- basic_machine=clipper-intergraph
- ;;
- -isc*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
- -lynx*)
- os=-lynxos
- ;;
- -ptx*)
- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
- ;;
- -windowsnt*)
- os=`echo $os | sed -e 's/windowsnt/winnt/'`
- ;;
- -psos*)
- os=-psos
- ;;
- -mint | -mint[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
- # Recognize the basic CPU types without company name.
- # Some are omitted here because they have special meanings below.
- 1750a | 580 \
- | a29k \
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
- | am33_2.0 \
- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
- | bfin \
- | c4x | clipper \
- | d10v | d30v | dlx | dsp16xx \
- | fido | fr30 | frv \
- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
- | i370 | i860 | i960 | ia64 \
- | ip2k | iq2000 \
- | lm32 \
- | m32c | m32r | m32rle | m68000 | m68k | m88k \
- | maxq | mb | microblaze | mcore | mep | metag \
- | mips | mipsbe | mipseb | mipsel | mipsle \
- | mips16 \
- | mips64 | mips64el \
- | mips64octeon | mips64octeonel \
- | mips64orion | mips64orionel \
- | mips64r5900 | mips64r5900el \
- | mips64vr | mips64vrel \
- | mips64vr4100 | mips64vr4100el \
- | mips64vr4300 | mips64vr4300el \
- | mips64vr5000 | mips64vr5000el \
- | mips64vr5900 | mips64vr5900el \
- | mipsisa32 | mipsisa32el \
- | mipsisa32r2 | mipsisa32r2el \
- | mipsisa64 | mipsisa64el \
- | mipsisa64r2 | mipsisa64r2el \
- | mipsisa64sb1 | mipsisa64sb1el \
- | mipsisa64sr71k | mipsisa64sr71kel \
- | mipstx39 | mipstx39el \
- | mn10200 | mn10300 \
- | moxie \
- | mt \
- | msp430 \
- | nios | nios2 \
- | ns16k | ns32k \
- | or32 \
- | pdp10 | pdp11 | pj | pjl \
- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
- | pyramid \
- | rx \
- | score \
- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
- | sh64 | sh64le \
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
- | spu | strongarm \
- | tahoe | thumb | tic4x | tic80 | tron \
- | ubicom32 \
- | v850 | v850e \
- | we32k \
- | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
- | z8k | z80)
- basic_machine=$basic_machine-unknown
- ;;
- m6811 | m68hc11 | m6812 | m68hc12 | picochip)
- # Motorola 68HC11/12.
- basic_machine=$basic_machine-unknown
- os=-none
- ;;
- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
- ;;
- ms1)
- basic_machine=mt-unknown
- ;;
-
- # We use `pc' rather than `unknown'
- # because (1) that's what they normally are, and
- # (2) the word "unknown" tends to confuse beginning users.
- i*86 | x86_64)
- basic_machine=$basic_machine-pc
- ;;
- # Object if more than one company name word.
- *-*-*)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
- # Recognize the basic CPU types with company name.
- 580-* \
- | a29k-* \
- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
- | avr-* | avr32-* \
- | bfin-* | bs2000-* \
- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
- | clipper-* | craynv-* | cydra-* \
- | d10v-* | d30v-* | dlx-* \
- | elxsi-* \
- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
- | h8300-* | h8500-* \
- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
- | i*86-* | i860-* | i960-* | ia64-* \
- | ip2k-* | iq2000-* \
- | lm32-* \
- | m32c-* | m32r-* | m32rle-* \
- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
- | mips16-* \
- | mips64-* | mips64el-* \
- | mips64octeon-* | mips64octeonel-* \
- | mips64orion-* | mips64orionel-* \
- | mips64r5900-* | mips64r5900el-* \
- | mips64vr-* | mips64vrel-* \
- | mips64vr4100-* | mips64vr4100el-* \
- | mips64vr4300-* | mips64vr4300el-* \
- | mips64vr5000-* | mips64vr5000el-* \
- | mips64vr5900-* | mips64vr5900el-* \
- | mipsisa32-* | mipsisa32el-* \
- | mipsisa32r2-* | mipsisa32r2el-* \
- | mipsisa64-* | mipsisa64el-* \
- | mipsisa64r2-* | mipsisa64r2el-* \
- | mipsisa64sb1-* | mipsisa64sb1el-* \
- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
- | mipstx39-* | mipstx39el-* \
- | mmix-* \
- | mt-* \
- | msp430-* \
- | nios-* | nios2-* \
- | none-* | np1-* | ns16k-* | ns32k-* \
- | orion-* \
- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
- | pyramid-* \
- | romp-* | rs6000-* | rx-* \
- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
- | sparclite-* \
- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
- | tahoe-* | thumb-* \
- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
- | tron-* \
- | ubicom32-* \
- | v850-* | v850e-* | vax-* \
- | we32k-* \
- | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
- | xstormy16-* | xtensa*-* \
- | ymp-* \
- | z8k-* | z80-*)
- ;;
- # Recognize the basic CPU types without company name, with glob match.
- xtensa*)
- basic_machine=$basic_machine-unknown
- ;;
- # Recognize the various machine names and aliases which stand
- # for a CPU type and a company and sometimes even an OS.
- 386bsd)
- basic_machine=i386-unknown
- os=-bsd
- ;;
- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
- basic_machine=m68000-att
- ;;
- 3b*)
- basic_machine=we32k-att
- ;;
- a29khif)
- basic_machine=a29k-amd
- os=-udi
- ;;
- abacus)
- basic_machine=abacus-unknown
- ;;
- adobe68k)
- basic_machine=m68010-adobe
- os=-scout
- ;;
- alliant | fx80)
- basic_machine=fx80-alliant
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
- ;;
- am29k)
- basic_machine=a29k-none
- os=-bsd
- ;;
- amd64)
- basic_machine=x86_64-pc
- ;;
- amd64-*)
- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- amdahl)
- basic_machine=580-amdahl
- os=-sysv
- ;;
- amiga | amiga-*)
- basic_machine=m68k-unknown
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
- os=-amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
- os=-sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
- os=-sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
- os=-bsd
- ;;
- aros)
- basic_machine=i386-pc
- os=-aros
- ;;
- aux)
- basic_machine=m68k-apple
- os=-aux
- ;;
- balance)
- basic_machine=ns32k-sequent
- os=-dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
- os=-linux
- ;;
- blackfin-*)
- basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- bluegene*)
- basic_machine=powerpc-ibm
- os=-cnk
- ;;
- c90)
- basic_machine=c90-cray
- os=-unicos
- ;;
- cegcc)
- basic_machine=arm-unknown
- os=-cegcc
- ;;
- convex-c1)
- basic_machine=c1-convex
- os=-bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
- os=-bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
- os=-bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
- os=-bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
- os=-bsd
- ;;
- cray | j90)
- basic_machine=j90-cray
- os=-unicos
- ;;
- craynv)
- basic_machine=craynv-cray
- os=-unicosmp
- ;;
- cr16)
- basic_machine=cr16-unknown
- os=-elf
- ;;
- crds | unos)
- basic_machine=m68k-crds
- ;;
- crisv32 | crisv32-* | etraxfs*)
- basic_machine=crisv32-axis
- ;;
- cris | cris-* | etrax*)
- basic_machine=cris-axis
- ;;
- crx)
- basic_machine=crx-unknown
- os=-elf
- ;;
- da30 | da30-*)
- basic_machine=m68k-da30
- ;;
- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
- ;;
- decsystem10* | dec10*)
- basic_machine=pdp10-dec
- os=-tops10
- ;;
- decsystem20* | dec20*)
- basic_machine=pdp10-dec
- os=-tops20
- ;;
- delta | 3300 | motorola-3300 | motorola-delta \
- | 3300-motorola | delta-motorola)
- basic_machine=m68k-motorola
- ;;
- delta88)
- basic_machine=m88k-motorola
- os=-sysv3
- ;;
- dicos)
- basic_machine=i686-pc
- os=-dicos
- ;;
- djgpp)
- basic_machine=i586-pc
- os=-msdosdjgpp
- ;;
- dpx20 | dpx20-*)
- basic_machine=rs6000-bull
- os=-bosx
- ;;
- dpx2* | dpx2*-bull)
- basic_machine=m68k-bull
- os=-sysv3
- ;;
- ebmon29k)
- basic_machine=a29k-amd
- os=-ebmon
- ;;
- elxsi)
- basic_machine=elxsi-elxsi
- os=-bsd
- ;;
- encore | umax | mmax)
- basic_machine=ns32k-encore
- ;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
- os=-ose
- ;;
- fx2800)
- basic_machine=i860-alliant
- ;;
- genix)
- basic_machine=ns32k-ns
- ;;
- gmicro)
- basic_machine=tron-gmicro
- os=-sysv
- ;;
- go32)
- basic_machine=i386-pc
- os=-go32
- ;;
- h3050r* | hiux*)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
- os=-hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
- os=-xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
- os=-hms
- ;;
- harris)
- basic_machine=m88k-harris
- os=-sysv3
- ;;
- hp300-*)
- basic_machine=m68k-hp
- ;;
- hp300bsd)
- basic_machine=m68k-hp
- os=-bsd
- ;;
- hp300hpux)
- basic_machine=m68k-hp
- os=-hpux
- ;;
- hp3k9[0-9][0-9] | hp9[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k2[0-9][0-9] | hp9k31[0-9])
- basic_machine=m68000-hp
- ;;
- hp9k3[2-9][0-9])
- basic_machine=m68k-hp
- ;;
- hp9k6[0-9][0-9] | hp6[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hp9k7[0-79][0-9] | hp7[0-79][0-9])
- basic_machine=hppa1.1-hp
- ;;
- hp9k78[0-9] | hp78[0-9])
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
- # FIXME: really hppa2.0-hp
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][13679] | hp8[0-9][13679])
- basic_machine=hppa1.1-hp
- ;;
- hp9k8[0-9][0-9] | hp8[0-9][0-9])
- basic_machine=hppa1.0-hp
- ;;
- hppa-next)
- os=-nextstep3
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
- os=-osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
- os=-proelf
- ;;
- i370-ibm* | ibm*)
- basic_machine=i370-ibm
- ;;
-# I'm not sure what "Sysv32" means. Should this be sysv3.2?
- i*86v32)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv32
- ;;
- i*86v4*)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv4
- ;;
- i*86v)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-sysv
- ;;
- i*86sol2)
- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
- os=-solaris2
- ;;
- i386mach)
- basic_machine=i386-mach
- os=-mach
- ;;
- i386-vsta | vsta)
- basic_machine=i386-unknown
- os=-vsta
- ;;
- iris | iris4d)
- basic_machine=mips-sgi
- case $os in
- -irix*)
- ;;
- *)
- os=-irix4
- ;;
- esac
- ;;
- isi68 | isi)
- basic_machine=m68k-isi
- os=-sysv
- ;;
- m68knommu)
- basic_machine=m68k-unknown
- os=-linux
- ;;
- m68knommu-*)
- basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- m88k-omron*)
- basic_machine=m88k-omron
- ;;
- magnum | m3230)
- basic_machine=mips-mips
- os=-sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
- os=-sysv
- ;;
- microblaze)
- basic_machine=microblaze-xilinx
- ;;
- mingw32)
- basic_machine=i386-pc
- os=-mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
- os=-mingw32ce
- ;;
- miniframe)
- basic_machine=m68000-convergent
- ;;
- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
- basic_machine=m68k-atari
- os=-mint
- ;;
- mips3*-*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
- ;;
- mips3*)
- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
- ;;
- monitor)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
- os=-morphos
- ;;
- msdos)
- basic_machine=i386-pc
- os=-msdos
- ;;
- ms1-*)
- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
- ;;
- mvs)
- basic_machine=i370-ibm
- os=-mvs
- ;;
- ncr3000)
- basic_machine=i486-ncr
- os=-sysv4
- ;;
- netbsd386)
- basic_machine=i386-unknown
- os=-netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
- os=-linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
- os=-newsos
- ;;
- news1000)
- basic_machine=m68030-sony
- os=-newsos
- ;;
- news-3600 | risc-news)
- basic_machine=mips-sony
- os=-newsos
- ;;
- necv70)
- basic_machine=v70-nec
- os=-sysv
- ;;
- next | m*-next )
- basic_machine=m68k-next
- case $os in
- -nextstep* )
- ;;
- -ns2*)
- os=-nextstep2
- ;;
- *)
- os=-nextstep3
- ;;
- esac
- ;;
- nh3000)
- basic_machine=m68k-harris
- os=-cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
- os=-cxux
- ;;
- nindy960)
- basic_machine=i960-intel
- os=-nindy
- ;;
- mon960)
- basic_machine=i960-intel
- os=-mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
- os=-nonstopux
- ;;
- np1)
- basic_machine=np1-gould
- ;;
- nsr-tandem)
- basic_machine=nsr-tandem
- ;;
- op50n-* | op60c-*)
- basic_machine=hppa1.1-oki
- os=-proelf
- ;;
- openrisc | openrisc-*)
- basic_machine=or32-unknown
- ;;
- os400)
- basic_machine=powerpc-ibm
- os=-os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
- os=-ose
- ;;
- os68k)
- basic_machine=m68k-none
- os=-os68k
- ;;
- pa-hitachi)
- basic_machine=hppa1.1-hitachi
- os=-hiuxwe2
- ;;
- paragon)
- basic_machine=i860-intel
- os=-osf
- ;;
- parisc)
- basic_machine=hppa-unknown
- os=-linux
- ;;
- parisc-*)
- basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
- os=-linux
- ;;
- pbd)
- basic_machine=sparc-tti
- ;;
- pbb)
- basic_machine=m68k-tti
- ;;
- pc532 | pc532-*)
- basic_machine=ns32k-pc532
- ;;
- pc98)
- basic_machine=i386-pc
- ;;
- pc98-*)
- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium | p5 | k5 | k6 | nexgen | viac3)
- basic_machine=i586-pc
- ;;
- pentiumpro | p6 | 6x86 | athlon | athlon_*)
- basic_machine=i686-pc
- ;;
- pentiumii | pentium2 | pentiumiii | pentium3)
- basic_machine=i686-pc
- ;;
- pentium4)
- basic_machine=i786-pc
- ;;
- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumpro-* | p6-* | 6x86-* | athlon-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pentium4-*)
- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- pn)
- basic_machine=pn-gould
- ;;
- power) basic_machine=power-ibm
- ;;
- ppc) basic_machine=powerpc-unknown
- ;;
- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppcle | powerpclittle | ppc-le | powerpc-little)
- basic_machine=powerpcle-unknown
- ;;
- ppcle-* | powerpclittle-*)
- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64) basic_machine=powerpc64-unknown
- ;;
- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
- basic_machine=powerpc64le-unknown
- ;;
- ppc64le-* | powerpc64little-*)
- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
- ;;
- ps2)
- basic_machine=i386-ibm
- ;;
- pw32)
- basic_machine=i586-unknown
- os=-pw32
- ;;
- rdos)
- basic_machine=i386-pc
- os=-rdos
- ;;
- rom68k)
- basic_machine=m68k-rom68k
- os=-coff
- ;;
- rm[46]00)
- basic_machine=mips-siemens
- ;;
- rtpc | rtpc-*)
- basic_machine=romp-ibm
- ;;
- s390 | s390-*)
- basic_machine=s390-ibm
- ;;
- s390x | s390x-*)
- basic_machine=s390x-ibm
- ;;
- sa29200)
- basic_machine=a29k-amd
- os=-udi
- ;;
- sb1)
- basic_machine=mipsisa64sb1-unknown
- ;;
- sb1el)
- basic_machine=mipsisa64sb1el-unknown
- ;;
- sde)
- basic_machine=mipsisa32-sde
- os=-elf
- ;;
- sei)
- basic_machine=mips-sei
- os=-seiux
- ;;
- sequent)
- basic_machine=i386-sequent
- ;;
- sh)
- basic_machine=sh-hitachi
- os=-hms
- ;;
- sh5el)
- basic_machine=sh5le-unknown
- ;;
- sh64)
- basic_machine=sh64-unknown
- ;;
- sparclite-wrs | simso-wrs)
- basic_machine=sparclite-wrs
- os=-vxworks
- ;;
- sps7)
- basic_machine=m68k-bull
- os=-sysv2
- ;;
- spur)
- basic_machine=spur-unknown
- ;;
- st2000)
- basic_machine=m68k-tandem
- ;;
- stratus)
- basic_machine=i860-stratus
- os=-sysv4
- ;;
- sun2)
- basic_machine=m68000-sun
- ;;
- sun2os3)
- basic_machine=m68000-sun
- os=-sunos3
- ;;
- sun2os4)
- basic_machine=m68000-sun
- os=-sunos4
- ;;
- sun3os3)
- basic_machine=m68k-sun
- os=-sunos3
- ;;
- sun3os4)
- basic_machine=m68k-sun
- os=-sunos4
- ;;
- sun4os3)
- basic_machine=sparc-sun
- os=-sunos3
- ;;
- sun4os4)
- basic_machine=sparc-sun
- os=-sunos4
- ;;
- sun4sol2)
- basic_machine=sparc-sun
- os=-solaris2
- ;;
- sun3 | sun3-*)
- basic_machine=m68k-sun
- ;;
- sun4)
- basic_machine=sparc-sun
- ;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
- ;;
- sv1)
- basic_machine=sv1-cray
- os=-unicos
- ;;
- symmetry)
- basic_machine=i386-sequent
- os=-dynix
- ;;
- t3e)
- basic_machine=alphaev5-cray
- os=-unicos
- ;;
- t90)
- basic_machine=t90-cray
- os=-unicos
- ;;
- tic54x | c54x*)
- basic_machine=tic54x-unknown
- os=-coff
- ;;
- tic55x | c55x*)
- basic_machine=tic55x-unknown
- os=-coff
- ;;
- tic6x | c6x*)
- basic_machine=tic6x-unknown
- os=-coff
- ;;
- tile*)
- basic_machine=tile-unknown
- os=-linux-gnu
- ;;
- tx39)
- basic_machine=mipstx39-unknown
- ;;
- tx39el)
- basic_machine=mipstx39el-unknown
- ;;
- toad1)
- basic_machine=pdp10-xkl
- os=-tops20
- ;;
- tower | tower-32)
- basic_machine=m68k-ncr
- ;;
- tpf)
- basic_machine=s390x-ibm
- os=-tpf
- ;;
- udi29k)
- basic_machine=a29k-amd
- os=-udi
- ;;
- ultra3)
- basic_machine=a29k-nyu
- os=-sym1
- ;;
- v810 | necv810)
- basic_machine=v810-nec
- os=-none
- ;;
- vaxv)
- basic_machine=vax-dec
- os=-sysv
- ;;
- vms)
- basic_machine=vax-dec
- os=-vms
- ;;
- vpp*|vx|vx-*)
- basic_machine=f301-fujitsu
- ;;
- vxworks960)
- basic_machine=i960-wrs
- os=-vxworks
- ;;
- vxworks68)
- basic_machine=m68k-wrs
- os=-vxworks
- ;;
- vxworks29k)
- basic_machine=a29k-wrs
- os=-vxworks
- ;;
- w65*)
- basic_machine=w65-wdc
- os=-none
- ;;
- w89k-*)
- basic_machine=hppa1.1-winbond
- os=-proelf
- ;;
- xbox)
- basic_machine=i686-pc
- os=-mingw32
- ;;
- xps | xps100)
- basic_machine=xps100-honeywell
- ;;
- ymp)
- basic_machine=ymp-cray
- os=-unicos
- ;;
- z8k-*-coff)
- basic_machine=z8k-unknown
- os=-sim
- ;;
- z80-*-coff)
- basic_machine=z80-unknown
- os=-sim
- ;;
- none)
- basic_machine=none-none
- os=-none
- ;;
-
-# Here we handle the default manufacturer of certain CPU types. It is in
-# some cases the only manufacturer, in others, it is the most popular.
- w89k)
- basic_machine=hppa1.1-winbond
- ;;
- op50n)
- basic_machine=hppa1.1-oki
- ;;
- op60c)
- basic_machine=hppa1.1-oki
- ;;
- romp)
- basic_machine=romp-ibm
- ;;
- mmix)
- basic_machine=mmix-knuth
- ;;
- rs6000)
- basic_machine=rs6000-ibm
- ;;
- vax)
- basic_machine=vax-dec
- ;;
- pdp10)
- # there are many clones, so DEC is not a safe bet
- basic_machine=pdp10-unknown
- ;;
- pdp11)
- basic_machine=pdp11-dec
- ;;
- we32k)
- basic_machine=we32k-att
- ;;
- sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
- basic_machine=sh-unknown
- ;;
- sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
- basic_machine=sparc-sun
- ;;
- cydra)
- basic_machine=cydra-cydrome
- ;;
- orion)
- basic_machine=orion-highlevel
- ;;
- orion105)
- basic_machine=clipper-highlevel
- ;;
- mac | mpw | mac-mpw)
- basic_machine=m68k-apple
- ;;
- pmac | pmac-mpw)
- basic_machine=powerpc-apple
- ;;
- *-unknown)
- # Make sure to match an already-canonicalized machine name.
- ;;
- *)
- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
- exit 1
- ;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
- *-digital*)
- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
- ;;
- *-commodore*)
- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
- ;;
- *)
- ;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
- # First match some system type aliases
- # that might get confused with valid system types.
- # -solaris* is a basic system type, with this one exception.
- -auroraux)
- os=-auroraux
- ;;
- -solaris1 | -solaris1.*)
- os=`echo $os | sed -e 's|solaris1|sunos4|'`
- ;;
- -solaris)
- os=-solaris2
- ;;
- -svr4*)
- os=-sysv4
- ;;
- -unixware*)
- os=-sysv4.2uw
- ;;
- -gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
- # First accept the basic system types.
- # The portable systems comes first.
- # Each alternative MUST END IN A *, to match a version number.
- # -sysv* is not here because it comes later, after sysvr4.
- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
- | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
- | -sym* | -kopensolaris* \
- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
- | -aos* | -aros* \
- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
- | -openbsd* | -solidbsd* \
- | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
- | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
- | -chorusos* | -chorusrdb* | -cegcc* \
- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
- | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
- | -uxpv* | -beos* | -mpeix* | -udk* \
- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
- -qnx*)
- case $basic_machine in
- x86-* | i*86-*)
- ;;
- *)
- os=-nto$os
- ;;
- esac
- ;;
- -nto-qnx*)
- ;;
- -nto*)
- os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
- | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
- ;;
- -mac*)
- os=`echo $os | sed -e 's|mac|macos|'`
- ;;
- -linux-dietlibc)
- os=-linux-dietlibc
- ;;
- -linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
- -sunos5*)
- os=`echo $os | sed -e 's|sunos5|solaris2|'`
- ;;
- -sunos6*)
- os=`echo $os | sed -e 's|sunos6|solaris3|'`
- ;;
- -opened*)
- os=-openedition
- ;;
- -os400*)
- os=-os400
- ;;
- -wince*)
- os=-wince
- ;;
- -osfrose*)
- os=-osfrose
- ;;
- -osf*)
- os=-osf
- ;;
- -utek*)
- os=-bsd
- ;;
- -dynix*)
- os=-bsd
- ;;
- -acis*)
- os=-aos
- ;;
- -atheos*)
- os=-atheos
- ;;
- -syllable*)
- os=-syllable
- ;;
- -386bsd)
- os=-bsd
- ;;
- -ctix* | -uts*)
- os=-sysv
- ;;
- -nova*)
- os=-rtmk-nova
- ;;
- -ns2 )
- os=-nextstep2
- ;;
- -nsk*)
- os=-nsk
- ;;
- # Preserve the version number of sinix5.
- -sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
- ;;
- -sinix*)
- os=-sysv4
- ;;
- -tpf*)
- os=-tpf
- ;;
- -triton*)
- os=-sysv3
- ;;
- -oss*)
- os=-sysv3
- ;;
- -svr4)
- os=-sysv4
- ;;
- -svr3)
- os=-sysv3
- ;;
- -sysvr4)
- os=-sysv4
- ;;
- # This must come after -sysvr4.
- -sysv*)
- ;;
- -ose*)
- os=-ose
- ;;
- -es1800*)
- os=-ose
- ;;
- -xenix)
- os=-xenix
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- os=-mint
- ;;
- -aros*)
- os=-aros
- ;;
- -kaos*)
- os=-kaos
- ;;
- -zvmoe)
- os=-zvmoe
- ;;
- -dicos*)
- os=-dicos
- ;;
- -none)
- ;;
- *)
- # Get rid of the `-' at the beginning of $os.
- os=`echo $os | sed 's/[^-]*-//'`
- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
- exit 1
- ;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system. Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
- score-*)
- os=-elf
- ;;
- spu-*)
- os=-elf
- ;;
- *-acorn)
- os=-riscix1.2
- ;;
- arm*-rebel)
- os=-linux
- ;;
- arm*-semi)
- os=-aout
- ;;
- c4x-* | tic4x-*)
- os=-coff
- ;;
- # This must come before the *-dec entry.
- pdp10-*)
- os=-tops20
- ;;
- pdp11-*)
- os=-none
- ;;
- *-dec | vax-*)
- os=-ultrix4.2
- ;;
- m68*-apollo)
- os=-domain
- ;;
- i386-sun)
- os=-sunos4.0.2
- ;;
- m68000-sun)
- os=-sunos3
- # This also exists in the configure program, but was not the
- # default.
- # os=-sunos4
- ;;
- m68*-cisco)
- os=-aout
- ;;
- mep-*)
- os=-elf
- ;;
- mips*-cisco)
- os=-elf
- ;;
- mips*-*)
- os=-elf
- ;;
- or32-*)
- os=-coff
- ;;
- *-tti) # must be before sparc entry or we get the wrong os.
- os=-sysv3
- ;;
- sparc-* | *-sun)
- os=-sunos4.1.1
- ;;
- *-be)
- os=-beos
- ;;
- *-haiku)
- os=-haiku
- ;;
- *-ibm)
- os=-aix
- ;;
- *-knuth)
- os=-mmixware
- ;;
- *-wec)
- os=-proelf
- ;;
- *-winbond)
- os=-proelf
- ;;
- *-oki)
- os=-proelf
- ;;
- *-hp)
- os=-hpux
- ;;
- *-hitachi)
- os=-hiux
- ;;
- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
- os=-sysv
- ;;
- *-cbm)
- os=-amigaos
- ;;
- *-dg)
- os=-dgux
- ;;
- *-dolphin)
- os=-sysv3
- ;;
- m68k-ccur)
- os=-rtu
- ;;
- m88k-omron*)
- os=-luna
- ;;
- *-next )
- os=-nextstep
- ;;
- *-sequent)
- os=-ptx
- ;;
- *-crds)
- os=-unos
- ;;
- *-ns)
- os=-genix
- ;;
- i370-*)
- os=-mvs
- ;;
- *-next)
- os=-nextstep3
- ;;
- *-gould)
- os=-sysv
- ;;
- *-highlevel)
- os=-bsd
- ;;
- *-encore)
- os=-bsd
- ;;
- *-sgi)
- os=-irix
- ;;
- *-siemens)
- os=-sysv4
- ;;
- *-masscomp)
- os=-rtu
- ;;
- f30[01]-fujitsu | f700-fujitsu)
- os=-uxpv
- ;;
- *-rom68k)
- os=-coff
- ;;
- *-*bug)
- os=-coff
- ;;
- *-apple)
- os=-macos
- ;;
- *-atari*)
- os=-mint
- ;;
- *)
- os=-none
- ;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer. We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
- *-unknown)
- case $os in
- -riscix*)
- vendor=acorn
- ;;
- -sunos*)
- vendor=sun
- ;;
- -cnk*|-aix*)
- vendor=ibm
- ;;
- -beos*)
- vendor=be
- ;;
- -hpux*)
- vendor=hp
- ;;
- -mpeix*)
- vendor=hp
- ;;
- -hiux*)
- vendor=hitachi
- ;;
- -unos*)
- vendor=crds
- ;;
- -dgux*)
- vendor=dg
- ;;
- -luna*)
- vendor=omron
- ;;
- -genix*)
- vendor=ns
- ;;
- -mvs* | -opened*)
- vendor=ibm
- ;;
- -os400*)
- vendor=ibm
- ;;
- -ptx*)
- vendor=sequent
- ;;
- -tpf*)
- vendor=ibm
- ;;
- -vxsim* | -vxworks* | -windiss*)
- vendor=wrs
- ;;
- -aux*)
- vendor=apple
- ;;
- -hms*)
- vendor=hitachi
- ;;
- -mpw* | -macos*)
- vendor=apple
- ;;
- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
- vendor=atari
- ;;
- -vos*)
- vendor=stratus
- ;;
- esac
- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
+++ /dev/null
-#!/bin/sh
-#
-# Transform desktop mimetype info into RPM mimehandler(type) provides
-#
-# Author: Richard Hughes <richard@hughsie.com>
-# Based on other provides scripts from RPM
-
-OLD_IFS="$IFS"
-while read instfile ; do
- case "$instfile" in
- *.desktop)
- if ! grep -q '^Type=Application$' "$instfile"; then continue; fi
- if ! grep -q '^Exec=' "$instfile"; then continue; fi
- mime=`grep '^MimeType=' "$instfile" | cut -d'=' -f2`
- IFS=';'
- for type in $mime ; do
- echo 'mimehandler('$type')'
- done
- ;;
- esac
-done
-IFS=$OLD_IFS
-
+++ /dev/null
-%__desktop_provides %{_rpmconfigdir}/desktop-file.prov
-%__desktop_path ^%{_datadir}/applications/.*\\.desktop$
+++ /dev/null
-%__elf_provides %{_rpmconfigdir}/elfdeps --provides %{?__filter_GLIBC_PRIVATE:--filter-private}
-%__elf_requires %{_rpmconfigdir}/elfdeps --requires %{?__filter_GLIBC_PRIVATE:--filter-private}
-%__elf_magic ^(sticky )?ELF (32|64)-bit.*$
-%__elf_flags exeonly
+++ /dev/null
-%__font_provides %{_rpmconfigdir}/fontconfig.prov
-%__font_requires %{nil}
-%__font_magic ^.* [Ff]ont (program )?(text|data).*$
+++ /dev/null
-# Make libfoo.so symlinks require the soname-provide of the target library
-%__libsymlink_requires %{_rpmconfigdir}/elfdeps --provides --soname-only
-%__libsymlink_magic ^symbolic link to `.*lib.*\.so\..*'$
-%__libsymlink_exclude_path ^.*[[:digit:]]$
+++ /dev/null
-%__libtool_provides %{_rpmconfigdir}/libtooldeps.sh --provides %{buildroot} %{name}
-%__libtool_requires %{_rpmconfigdir}/libtooldeps.sh --requires %{buildroot} %{name}
-%__libtool_path ^%{_libdir}/.*\.la$
+++ /dev/null
-%__mono_provides %{_rpmconfigdir}/mono-find-provides %{_builddir}/%{?buildsubdir} %{buildroot} %{_libdir}
-%__mono_requires %{_rpmconfigdir}/mono-find-requires %{_builddir}/%{?buildsubdir} %{buildroot} %{_libdir}
-%__mono_magic ^.*Mono/.Net assembly.*$
+++ /dev/null
-%__ocaml_provides %{_rpmconfigdir}/ocaml-find-provides.sh
-%__ocaml_requires %{_rpmconfigdir}/ocaml-find-requires.sh
-%__ocaml_magic ^(Objective caml|OCaml) .*$
+++ /dev/null
-#%__perl_requires %{_rpmconfigdir}/perl.req
-%__perl_magic ^.*perl .*$
-%__perl_flags exeonly
+++ /dev/null
-%__perllib_provides %{_rpmconfigdir}/perl.prov
-#%__perllib_requires %{_rpmconfigdir}/perl.req
-%__perllib_magic ^Perl[[:digit:]] module source.*
+++ /dev/null
-%__pkgconfig_provides %{_rpmconfigdir}/pkgconfigdeps.sh --provides
-%__pkgconfig_requires %{_rpmconfigdir}/pkgconfigdeps.sh --requires
-%__pkgconfig_path ^((%{_libdir}|%{_datadir})/pkgconfig/.*\.pc|%{_bindir}/pkg-config)$
+++ /dev/null
-%__python_provides %{_rpmconfigdir}/pythondeps.sh --provides
-%__python_requires %{_rpmconfigdir}/pythondeps.sh --requires
-%__python_path ^((/usr/lib(64)?/python[[:digit:]]\\.[[:digit:]]/.*\\.(py[oc]?|so))|(%{_bindir}/python[[:digit:]]\\.[[:digit:]]))$
-%__python_magic ^python.*(executable|byte-compiled)$
+++ /dev/null
-%__script_requires %{_rpmconfigdir}/script.req
-%__script_magic ^.* script[, ].*$
-%__script_flags exeonly
+++ /dev/null
-#!/bin/bash
-#find-debuginfo.sh - automagically generate debug info and file list
-#for inclusion in an rpm spec file.
-#
-# Usage: find-debuginfo.sh [--strict-build-id] [-g] [-r]
-# [-o debugfiles.list]
-# [[-l filelist]... [-p 'pattern'] -o debuginfo.list]
-# [builddir]
-#
-# The -g flag says to use strip -g instead of full strip on DSOs.
-# The --strict-build-id flag says to exit with failure status if
-# any ELF binary processed fails to contain a build-id note.
-# The -r flag says to use eu-strip --reloc-debug-sections.
-#
-# A single -o switch before any -l or -p switches simply renames
-# the primary output file from debugfiles.list to something else.
-# A -o switch that follows a -p switch or some -l switches produces
-# an additional output file with the debuginfo for the files in
-# the -l filelist file, or whose names match the -p pattern.
-# The -p argument is an grep -E -style regexp matching the a file name,
-# and must not use anchors (^ or $).
-#
-# All file names in switches are relative to builddir (. if not given).
-#
-
-# With -g arg, pass it to strip on libraries.
-strip_g=false
-
-# with -r arg, pass --reloc-debug-sections to eu-strip.
-strip_r=false
-
-# Barf on missing build IDs.
-strict=false
-
-BUILDDIR=.
-out=debugfiles.list
-nout=0
-while [ $# -gt 0 ]; do
- case "$1" in
- --strict-build-id)
- strict=true
- ;;
- -g)
- strip_g=true
- ;;
- -o)
- if [ -z "${lists[$nout]}" -a -z "${ptns[$nout]}" ]; then
- out=$2
- else
- outs[$nout]=$2
- ((nout++))
- fi
- shift
- ;;
- -l)
- lists[$nout]="${lists[$nout]} $2"
- shift
- ;;
- -p)
- ptns[$nout]=$2
- shift
- ;;
- -r)
- strip_r=true
- ;;
- *)
- BUILDDIR=$1
- shift
- break
- ;;
- esac
- shift
-done
-
-i=0
-while ((i < nout)); do
- outs[$i]="$BUILDDIR/${outs[$i]}"
- l=''
- for f in ${lists[$i]}; do
- l="$l $BUILDDIR/$f"
- done
- lists[$i]=$l
- ((++i))
-done
-
-LISTFILE="$BUILDDIR/$out"
-SOURCEFILE="$BUILDDIR/debugsources.list"
-LINKSFILE="$BUILDDIR/debuglinks.list"
-
-> "$SOURCEFILE"
-> "$LISTFILE"
-> "$LINKSFILE"
-
-debugdir="${RPM_BUILD_ROOT}/usr/lib/debug"
-
-strip_to_debug()
-{
- local r=
- $strip_r && r=--reloc-debug-sections
- case $2 in
- *.ko)
- # don't attempt to create a minimal backtrace binary for
- # kernel modules as this just causes the stripping process
- # to be skipped entirely
- eu-strip --remove-comment $r -f "$1" "$2" || exit
- ;;
- *)
- eu-strip --remove-comment -g -f "$1" "$2" || exit
- esac
- chmod 444 "$1" || exit
-}
-
-# Make a relative symlink to $1 called $3$2
-shopt -s extglob
-link_relative()
-{
- local t="$1" f="$2" pfx="$3"
- local fn="${f#/}" tn="${t#/}"
- local fd td d
-
- while fd="${fn%%/*}"; td="${tn%%/*}"; [ "$fd" = "$td" ]; do
- fn="${fn#*/}"
- tn="${tn#*/}"
- done
-
- d="${fn%/*}"
- if [ "$d" != "$fn" ]; then
- d="${d//+([!\/])/..}"
- tn="${d}/${tn}"
- fi
-
- mkdir -p "$(dirname "$pfx$f")" && ln -snf "$tn" "$pfx$f"
-}
-
-# Make a symlink in /usr/lib/debug/$2 to $1
-debug_link()
-{
- local l="/usr/lib/debug$2"
- local t="$1"
- echo >> "$LINKSFILE" "$l $t"
- link_relative "$t" "$l" "$RPM_BUILD_ROOT"
-}
-
-# Compare two binaries but ignore the .note.gnu.build-id section
-elfcmp()
-{
- local tmp1=$(mktemp -t ${1##*/}.XXXXXX)
- local tmp2=$(mktemp -t ${2##*/}.XXXXXX)
-
- objcopy -R .note.gnu.build-id -R .gnu_debuglink $1 $tmp1
- objcopy -R .note.gnu.build-id -R .gnu_debuglink $2 $tmp2
- cmp -s $tmp1 $tmp2
- local res=$?
- rm -f $tmp1 $tmp2
- return $res
-}
-
-# Make a build-id symlink for id $1 with suffix $3 to file $2.
-make_id_link()
-{
- local id="$1" file="$2"
- local idfile=".build-id/${id:0:2}/${id:2}"
- [ $# -eq 3 ] && idfile="${idfile}$3"
- local root_idfile="$RPM_BUILD_ROOT/usr/lib/debug/$idfile"
-
- if [ ! -L "$root_idfile" ]; then
- debug_link "$file" "/$idfile"
- return
- fi
-
- [ $# -eq 3 ] && return 0
-
- local other=$(readlink -m "$root_idfile")
- other=${other#$RPM_BUILD_ROOT}
- if cmp -s "$root_idfile" "$RPM_BUILD_ROOT$file" ||
- elfcmp "$root_idfile" "$RPM_BUILD_ROOT$file" ; then
- # Two copies. Maybe one has to be setuid or something.
- echo >&2 "*** WARNING: identical binaries are copied, not linked:"
- echo >&2 " $file"
- echo >&2 " and $other"
- else
- # This is pathological, break the build.
- echo >&2 "*** ERROR: same build ID in nonidentical files!"
- echo >&2 " $file"
- echo >&2 " and $other"
- exit 2
- fi
-}
-
-get_debugfn()
-{
- dn=$(dirname "${1#$RPM_BUILD_ROOT}")
- bn=$(basename "$1" .debug).debug
-
- debugdn=${debugdir}${dn}
- debugfn=${debugdn}/${bn}
-}
-
-set -o pipefail
-
-strict_error=ERROR
-$strict || strict_error=WARNING
-
-# Strip ELF binaries (and no static libraries)
-find $RPM_BUILD_ROOT ! -path "${debugdir}/*.debug" -type f \( -perm +111 -or -name "*.so*" -or -name "*.ko" \) ! -name "*.a" -print0 | sort -z |
-xargs --no-run-if-empty -0 stat -c '%h %D_%i %n' |
-while read nlinks inum f; do
- case $(objdump -h $f 2>/dev/null | egrep -o '(debug[\.a-z_]*|gnu.version)') in
- *debuglink*) continue ;;
- *debug*) ;;
- *gnu.version*)
- echo "WARNING: "`echo $f | sed -e "s,^$RPM_BUILD_ROOT/*,/,"`" is already stripped!"
- continue
- ;;
- *) continue ;;
- esac
- get_debugfn "$f"
- [ -f "${debugfn}" ] && continue
-
- # If this file has multiple links, keep track and make
- # the corresponding .debug files all links to one file too.
- if [ $nlinks -gt 1 ]; then
- eval linked=\$linked_$inum
- if [ -n "$linked" ]; then
- link=$debugfn
- get_debugfn "$linked"
- echo "hard linked $link to $debugfn"
- mkdir -p "$(dirname "$link")" && ln -nf "$debugfn" "$link"
- continue
- else
- eval linked_$inum=\$f
- echo "file $f has $[$nlinks - 1] other hard links"
- fi
- fi
-
- echo "extracting debug info from $f"
- id=$($(DEBUGEDIT=$(which debugedit 2>/dev/null); \
- echo ${DEBUGEDIT:-/usr/lib/rpm/debugedit}) -b "$RPM_BUILD_DIR" \
- -d /usr/src/debug -i -l "$SOURCEFILE" "$f") || exit
- if [ -z "$id" ]; then
- echo >&2 "*** ${strict_error}: No build ID note found in $f"
- $strict && exit 2
- fi
-
- [ -x /usr/bin/gdb-add-index ] && /usr/bin/gdb-add-index "$f" > /dev/null 2>&1
-
- # A binary already copied into /usr/lib/debug doesn't get stripped,
- # just has its file names collected and adjusted.
- case "$dn" in
- /usr/lib/debug/*)
- [ -z "$id" ] || make_id_link "$id" "$dn/$(basename $f)"
- continue ;;
- esac
-
- mkdir -p "${debugdn}"
- if test -w "$f"; then
- strip_to_debug "${debugfn}" "$f"
- else
- chmod u+w "$f"
- strip_to_debug "${debugfn}" "$f"
- chmod u-w "$f"
- fi
-
- if [ -n "$id" ]; then
- make_id_link "$id" "$dn/$(basename $f)"
- make_id_link "$id" "/usr/lib/debug$dn/$bn" .debug
- fi
-done || exit
-
-# For each symlink whose target has a .debug file,
-# make a .debug symlink to that file.
-find $RPM_BUILD_ROOT ! -path "${debugdir}/*" -type l -print |
-while read f
-do
- t=$(readlink -m "$f").debug
- f=${f#$RPM_BUILD_ROOT}
- t=${t#$RPM_BUILD_ROOT}
- if [ -f "$debugdir$t" ]; then
- echo "symlinked /usr/lib/debug$t to /usr/lib/debug${f}.debug"
- debug_link "/usr/lib/debug$t" "${f}.debug"
- fi
-done
-
-if [ -s "$SOURCEFILE" ]; then
- mkdir -p "${RPM_BUILD_ROOT}/usr/src/debug"
- LC_ALL=C sort -z -u "$SOURCEFILE" | grep -E -v -z '(<internal>|<built-in>)$' |
- (cd "$RPM_BUILD_DIR"; cpio -pd0mL "${RPM_BUILD_ROOT}/usr/src/debug")
- # stupid cpio creates new directories in mode 0700, fixup
- find "${RPM_BUILD_ROOT}/usr/src/debug" -type d -print0 |
- xargs --no-run-if-empty -0 chmod a+rx
- find "${RPM_BUILD_ROOT}/usr/src/debug" -type f -print0 |
- xargs --no-run-if-empty -0 chmod a+r
-fi
-
-if [ -d "${RPM_BUILD_ROOT}/usr/lib" -o -d "${RPM_BUILD_ROOT}/usr/src" ]; then
- ((nout > 0)) ||
- test ! -d "${RPM_BUILD_ROOT}/usr/lib" ||
- (cd "${RPM_BUILD_ROOT}/usr/lib"; test ! -d debug || find debug -type d) |
- sed 's,^,%dir /usr/lib/,' >> "$LISTFILE"
-
- (cd "${RPM_BUILD_ROOT}/usr"
- test ! -d lib/debug || find lib/debug ! -type d
- ) | sed 's,^,/usr/,' >> "$LISTFILE"
-fi
-
-: > "$SOURCEFILE"
-if [ -d "${RPM_BUILD_ROOT}/usr/src" ]; then
- (cd "${RPM_BUILD_ROOT}/usr"
- test ! -d src/debug || find src/debug -mindepth 1 -maxdepth 1
- ) | sed 's,^,/usr/,' >> "$SOURCEFILE"
-fi
-
-# Append to $1 only the lines from stdin not already in the file.
-append_uniq()
-{
- grep -F -f "$1" -x -v >> "$1"
-}
-
-# Helper to generate list of corresponding .debug files from a file list.
-filelist_debugfiles()
-{
- local extra="$1"
- shift
- sed 's/^%[a-z0-9_][a-z0-9_]*([^)]*) *//
-s/^%[a-z0-9_][a-z0-9_]* *//
-/^$/d
-'"$extra" "$@"
-}
-
-# Write an output debuginfo file list based on given input file lists.
-filtered_list()
-{
- local out="$1"
- shift
- test $# -gt 0 || return
- grep -F -f <(filelist_debugfiles 's,^.*$,/usr/lib/debug&.debug,' "$@") \
- -x $LISTFILE >> $out
- sed -n -f <(filelist_debugfiles 's/[\\.*+#]/\\&/g
-h
-s,^.*$,s# &$##p,p
-g
-s,^.*$,s# /usr/lib/debug&.debug$##p,p
-' "$@") "$LINKSFILE" | append_uniq "$out"
-}
-
-# Write an output debuginfo file list based on an grep -E -style regexp.
-pattern_list()
-{
- local out="$1" ptn="$2"
- test -n "$ptn" || return
- grep -E -x -e "$ptn" "$LISTFILE" >> "$out"
- sed -n -r "\#^$ptn #s/ .*\$//p" "$LINKSFILE" | append_uniq "$out"
-}
-
-#
-# When given multiple -o switches, split up the output as directed.
-#
-i=0
-while ((i < nout)); do
- > ${outs[$i]}
- filtered_list ${outs[$i]} ${lists[$i]}
- pattern_list ${outs[$i]} "${ptns[$i]}"
- grep -Fvx -f ${outs[$i]} "$LISTFILE" > "${LISTFILE}.new"
- mv "${LISTFILE}.new" "$LISTFILE"
- ((++i))
-done
-if ((nout > 0)); then
- # Now add the right %dir lines to each output list.
- (cd "${RPM_BUILD_ROOT}"; find usr/lib/debug -type d) |
- sed 's#^.*$#\\@^/&/@{h;s@^.*$@%dir /&@p;g;}#' |
- LC_ALL=C sort -ur > "${LISTFILE}.dirs.sed"
- i=0
- while ((i < nout)); do
- sed -n -f "${LISTFILE}.dirs.sed" "${outs[$i]}" | sort -u > "${outs[$i]}.new"
- cat "${outs[$i]}" >> "${outs[$i]}.new"
- mv -f "${outs[$i]}.new" "${outs[$i]}"
- ((++i))
- done
- sed -n -f "${LISTFILE}.dirs.sed" "${LISTFILE}" | sort -u > "${LISTFILE}.new"
- cat "$LISTFILE" >> "${LISTFILE}.new"
- mv "${LISTFILE}.new" "$LISTFILE"
-fi
+++ /dev/null
-#!/bin/sh
-#findlang - automagically generate list of language specific files
-#for inclusion in an rpm spec file.
-#This does assume that the *.mo files are under .../locale/...
-#Run with no arguments gets a usage message.
-
-#findlang is copyright (c) 1998 by W. L. Estes <wlestes@uncg.edu>
-
-#Redistribution and use of this software are hereby permitted for any
-#purpose as long as this notice and the above copyright notice remain
-#in tact and are included with any redistribution of this file or any
-#work based on this file.
-
-# 2004-06-20 Arkadiusz Miśkiewicz <arekm@pld-linux.org>
-# * merge PLD changes, kde, all-name (mkochano,pascalek@PLD)
-# 1999-10-19 Artur Frysiak <wiget@pld-linux.org>
-# * added support for GNOME help files
-# * start support for KDE help files
-
-usage () {
-cat <<EOF
-
-Usage: $0 TOP_DIR PACKAGE_NAME [prefix]
-
-where TOP_DIR is
-the top of the tree containing the files to be processed--should be
-\$RPM_BUILD_ROOT usually. TOP_DIR gets sed'd out of the output list.
-PACKAGE_NAME is the %{name} of the package. This should also be
-the basename of the .mo files. the output is written to
-PACKAGE_NAME.lang unless \$3 is given in which case output is written
-to \$3.
-Additional options:
- --with-gnome find GNOME help files
- --with-kde find KDE help files
- --with-qt find Qt translation files
- --with-man find localized man pages
- --all-name match all package/domain names
- --without-mo do not find locale files
-EOF
-exit 1
-}
-
-if [ -z "$1" ] ; then usage
-elif [ $1 = / ] ; then echo $0: expects non-/ argument for '$1' 1>&2
-elif [ ! -d $1 ] ; then
- echo $0: $1: no such directory
- exit 1
-else TOP_DIR="`echo $1|sed -e 's:/$::'`"
-fi
-shift
-
-if [ -z "$1" ] ; then usage
-else NAME=$1
-fi
-shift
-
-GNOME=#
-KDE=#
-QT=#
-MAN=#
-MO=
-MO_NAME=$NAME.lang
-ALL_NAME=#
-NO_ALL_NAME=
-
-while test $# -gt 0 ; do
- case "${1}" in
- --with-gnome )
- GNOME=
- shift
- ;;
- --with-kde )
- KDE=
- shift
- ;;
- --with-qt )
- QT=
- shift
- ;;
- --with-man )
- MAN=
- shift
- ;;
- --without-mo )
- MO=#
- shift
- ;;
- --all-name )
- ALL_NAME=
- NO_ALL_NAME=#
- shift
- ;;
- * )
- MO_NAME=${1}
- shift
- ;;
- esac
-done
-
-# remove languages we do not yet support - but give out statistics
-find $TOP_DIR/usr/share/locale/ -maxdepth 1 -type d | sed 's:'"$TOP_DIR"/usr/share/locale/'::; /^$/d' | while read dir; do
- if ! rpm -ql filesystem | egrep -q "/usr/share/locale/$dir"$; then
- find $TOP_DIR/usr/share/locale/$dir -name *.mo | sed 's:'"$TOP_DIR"'::' | while read file; do
- echo -n "removing translation $file: "
- msgunfmt "$TOP_DIR/$file" | msgfmt --statistics -o /dev/null -
- done
- rm -rf $TOP_DIR/usr/share/locale/$dir
- fi
-done
-
-find $TOP_DIR -type f -o -type l|sed '
-s:'"$TOP_DIR"'::
-'"$ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*\.mo$\):%lang(\2) \1\2\3:
-'"$NO_ALL_NAME$MO"'s:\(.*/locale/\)\([^/_]\+\)\(.*/'"$NAME"'\.mo$\):%lang(\2) \1\2\3:
-s:^\([^%].*\)::
-s:%lang(C) ::
-/^$/d' > $MO_NAME
-
-find $TOP_DIR -type d|sed '
-s:'"$TOP_DIR"'::
-'"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'$\):%dir \1:
-'"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'/[a-zA-Z0-9.\_\-]/.\+\)::
-'"$NO_ALL_NAME$GNOME"'s:\(.*/gnome/help/'"$NAME"'\/\)\([^/_]\+\):%lang(\2) \1\2:
-'"$ALL_NAME$GNOME"'s:\(.*/gnome/help/[a-zA-Z0-9.\_\-]\+$\):%dir \1:
-'"$ALL_NAME$GNOME"'s:\(.*/gnome/help/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]/.\+\)::
-'"$ALL_NAME$GNOME"'s:\(.*/gnome/help/[a-zA-Z0-9.\_\-]\+\/\)\([^/_]\+\):%lang(\2) \1\2:
-s:%lang(.*) .*/gnome/help/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]\+/.*::
-s:^\([^%].*\)::
-s:%lang(C) ::
-/^$/d' >> $MO_NAME
-
-find $TOP_DIR -type d|sed '
-s:'"$TOP_DIR"'::
-'"$NO_ALL_NAME$GNOME"'s:\(.*/omf/'"$NAME"'$\):%dir \1:
-'"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+$\):%dir \1:
-s:^\([^%].*\)::
-/^$/d' >> $MO_NAME
-
-find $TOP_DIR -type f|sed '
-s:'"$TOP_DIR"'::
-'"$NO_ALL_NAME$GNOME"'s:\(.*/omf/'"$NAME"'/'"$NAME"'-\([^/.]\+\)\.omf\):%lang(\2) \1:
-'"$ALL_NAME$GNOME"'s:\(.*/omf/[a-zA-Z0-9.\_\-]\+/[a-zA-Z0-9.\_\-]\+-\([^/.]\+\)\.omf\):%lang(\2) \1:
-s:^[^%].*::
-s:%lang(C) ::
-/^$/d' >> $MO_NAME
-
-KDE3_HTML=`kde-config --expandvars --install html 2>/dev/null`
-if [ x"$KDE3_HTML" != x -a -d "$TOP_DIR$KDE3_HTML" ]; then
-find $TOP_DIR$KDE3_HTML -type d|sed '
-s:'"$TOP_DIR"'::
-'"$NO_ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/'"$NAME"'/\)::
-'"$NO_ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/'"$NAME"'\)$:%lang(\2) \1\2\3:
-'"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+/\)::
-'"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3:
-s:^\([^%].*\)::
-s:%lang(C) ::
-/^$/d' >> $MO_NAME
-fi
-
-KDE4_HTML=`kde4-config --expandvars --install html 2>/dev/null`
-if [ x"$KDE4_HTML" != x -a -d "$TOP_DIR$KDE4_HTML" ]; then
-find $TOP_DIR$KDE4_HTML -type d|sed '
-s:'"$TOP_DIR"'::
-'"$NO_ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/'"$NAME"'/\)::
-'"$NO_ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/'"$NAME"'\)$:%lang(\2) \1\2\3:
-'"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+/\)::
-'"$ALL_NAME$KDE"'s:\(.*/HTML/\)\([^/_]\+\)\(.*/[a-zA-Z0-9.\_\-]\+$\):%lang(\2) \1\2\3:
-s:^\([^%].*\)::
-s:%lang(C) ::
-/^$/d' >> $MO_NAME
-fi
-
-find $TOP_DIR -type f -o -type l|sed '
-s:'"$TOP_DIR"'::
-'"$NO_ALL_NAME$QT"'s:\(.*/'"$NAME"'_\([a-zA-Z]\{2\}\([_@].*\)\?\)\.qm$\):%lang(\2) \1:
-'"$ALL_NAME$QT"'s:\(.*/[^/_]\+_\([a-zA-Z]\{2\}[_@].*\)\.qm$\):%lang(\2) \1:
-'"$ALL_NAME$QT"'s:\(.*/[^/_]\+_\([a-zA-Z]\{2\}\)\.qm$\):%lang(\2) \1:
-'"$ALL_NAME$QT"'s:^\([^%].*/[^/]\+_\([a-zA-Z]\{2\}[_@].*\)\.qm$\):%lang(\2) \1:
-'"$ALL_NAME$QT"'s:^\([^%].*/[^/]\+_\([a-zA-Z]\{2\}\)\.qm$\):%lang(\2) \1:
-s:^[^%].*::
-s:%lang(C) ::
-/^$/d' >> $MO_NAME
-
-find $TOP_DIR -type d|sed '
-s:'"$TOP_DIR"'::
-'"$ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+/\)::
-'"$ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+$\):%lang(\2) \1*:
-s:^\([^%].*\)::
-s:%lang(C) ::
-/^$/d' >> $MO_NAME
-
-find $TOP_DIR -type f -o -type l|sed '
-s:'"$TOP_DIR"'::
-'"$NO_ALL_NAME$MAN"'s:\(.*/man/\([^/_]\+\).*/man[a-z0-9]\+/'"$NAME"'\.[a-z0-9].*\):%lang(\2) \1*:
-s:^\([^%].*\)::
-s:%lang(C) ::
-/^$/d' >> $MO_NAME
-
-if ! grep -q / $MO_NAME; then
- echo "No translations found for ${NAME} in ${TOP_DIR}"
- exit 1
-fi
-exit 0
+++ /dev/null
-#!/bin/bash
-
-# This script reads filenames from STDIN and outputs any relevant provides
-# information that needs to be included in the package.
-
-filelist=`sed "s/['\"]/\\\&/g"`
-
-solist=$(echo $filelist | grep "\\.so" | grep -v "^/lib/ld.so" | \
- xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1)
-pythonlist=
-tcllist=
-
-#
-# --- Alpha does not mark 64bit dependencies
-case `uname -m` in
- alpha*) mark64="" ;;
- *) mark64="()(64bit)" ;;
-esac
-
-#
-# --- Library sonames and weak symbol versions (from glibc).
-for f in $solist; do
- soname=$(objdump -p $f | awk '/SONAME/ {print $2}')
-
- lib64=`if file -L $f 2>/dev/null | \
- grep "ELF 64-bit" >/dev/null; then echo "$mark64"; fi`
- if [ "$soname" != "" ]; then
- if [ ! -L $f ]; then
- echo $soname$lib64
- objdump -p $f | awk '
- BEGIN { START=0 ; }
- /Version definitions:/ { START=1; }
- /^[0-9]/ && (START==1) { print $4; }
- /^$/ { START=0; }
- ' | \
- grep -v $soname | \
- while read symbol ; do
- echo "$soname($symbol)`echo $lib64 | sed 's/()//'`"
- done
- fi
- else
- echo ${f##*/}$lib64
- fi
-done | sort -u
-
-#
-# --- Perl modules.
-[ -x /usr/lib/rpm/perl.prov ] &&
- echo $filelist | tr '[:blank:]' \\n | grep '\.pm$' | /usr/lib/rpm/perl.prov | sort -u
-
-#
-# --- Python modules.
-[ -x /usr/lib/rpm/python.prov -a -n "$pythonlist" ] &&
- echo $pythonlist | tr '[:blank:]' \\n | /usr/lib/rpm/python.prov | sort -u
-
-#
-# --- Tcl modules.
-[ -x /usr/lib/rpm/tcl.prov -a -n "$tcllist" ] &&
- echo $tcllist | tr '[:blank:]' \\n | /usr/lib/rpm/tcl.prov | sort -u
-
-exit 0
+++ /dev/null
-#!/bin/bash
-
-#
-# Auto-generate requirements for executables (both ELF and a.out) and library
-# sonames, script interpreters, and perl modules.
-#
-
-ulimit -c 0
-
-#
-# --- Set needed to 0 for traditional find-requires behavior.
-needed=1
-if [ X"$1" = Xldd ]; then
- needed=0
-elif [ X"$1" = Xobjdump ]; then
- needed=1
-fi
-
-#
-# --- Grab the file manifest and classify files.
-#filelist=`sed "s/['\"]/\\\&/g"`
-filelist=`sed "s/[]['\"*?{}]/\\\\\&/g"`
-exelist=`echo $filelist | xargs -r file | \
- grep -Ev ":.* (commands|script)[, ]" | \
- grep ":.*executable" | cut -d: -f1`
-scriptlist=`echo $filelist | xargs -r file | \
- grep -E ":.* (commands|script)[, ]" | cut -d: -f1`
-liblist=`echo $filelist | xargs -r file | \
- grep ":.*shared object" | cut -d : -f1`
-
-interplist=
-perllist=
-pythonlist=
-tcllist=
-
-#
-# --- Alpha does not mark 64bit dependencies
-case `uname -m` in
- alpha*) mark64="" ;;
- *) mark64="()(64bit)" ;;
-esac
-
-if [ "$needed" -eq 0 ]; then
-#
-# --- Executable dependency sonames.
- for f in $exelist; do
- [ -r $f -a -x $f ] || continue
- lib64=`if file -L $f 2>/dev/null | \
- grep "ELF 64-bit" >/dev/null; then echo "$mark64"; fi`
- ldd $f | awk '/=>/ {
- if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/ && $1 !~ /libredhat-kernel.so/) {
- gsub(/'\''"/,"\\&",$1);
- printf "%s'$lib64'\n", $1
- }
- }'
- done | xargs -r -n 1 basename | sort -u
-
-#
-# --- Library dependency sonames.
- for f in $liblist; do
- [ -r $f ] || continue
- lib64=`if file -L $f 2>/dev/null | \
- grep "ELF 64-bit" >/dev/null; then echo "$mark64"; fi`
- ldd $f | awk '/=>/ {
- if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/ && $1 !~ /libredhat-kernel.so/) {
- gsub(/'\''"/,"\\&",$1);
- printf "%s'$lib64'\n", $1
- }
- }'
- done | xargs -r -n 1 basename | sort -u
-fi
-
-#
-# --- Script interpreters.
-for f in $scriptlist; do
- [ -r $f -a -x $f ] || continue
- interp=`head -n 1 $f | sed -e 's/^\#\![ ]*//' | cut -d" " -f1`
- interplist="$interplist $interp"
- case $interp in
- */perl) perllist="$perllist $f" ;;
- esac
-done
-[ -n "$interplist" ] && { echo "$interplist" | tr '[:blank:]' \\n | sort -u ; }
-
-#
-# --- Add perl module files to perllist.
-for f in $filelist; do
- [ -r $f -a "${f%.pm}" != "${f}" ] && perllist="$perllist $f"
-done
-
-#
-# --- Weak symbol versions (from glibc).
-[ -n "$mark64" ] && mark64="(64bit)"
-for f in $liblist $exelist ; do
- [ -r $f ] || continue
- lib64=`if file -L $f 2>/dev/null | \
- grep "ELF 64-bit" >/dev/null; then echo "$mark64"; fi`
- objdump -p $f | awk 'BEGIN { START=0; LIBNAME=""; needed='$needed'; }
- /^$/ { START=0; }
- /^Dynamic Section:$/ { START=1; }
- (START==1) && /NEEDED/ {
- if (needed) {
- if ("'$lib64'" != "") {
- sub(/$/, "()'$lib64'", $2) ;
- }
- print $2 ;
- }
- }
- (START==2) && /^[A-Za-z]/ { START=3; }
- /^Version References:$/ { START=2; }
- (START==2) && /required from/ {
- sub(/:/, "", $3);
- LIBNAME=$3;
- }
- (START==2) && (LIBNAME!="") && ($4!="") && (($4~/^GLIBC_*/) || ($4~/^GCC_*/)) {
- print LIBNAME "(" $4 ")'$lib64'";
- }
- '
-done | sort -u
-
-#
-# --- Perl modules.
-[ -x /usr/lib/rpm/perl.req -a -n "$perllist" ] && \
- echo $perllist | tr '[:blank:]' \\n | /usr/lib/rpm/perl.req | sort -u
-
-#
-# --- Python modules.
-[ -x /usr/lib/rpm/python.req -a -n "$pythonlist" ] && \
- echo $pythonlist | tr '[:blank:]' \\n | /usr/lib/rpm/python.req | sort -u
-
-#
-# --- Tcl modules.
-[ -x /usr/lib/rpm/tcl.req -a -n "$tcllist" ] && \
- echo $tcllist | tr '[:blank:]' \\n | /usr/lib/rpm/tcl.req | sort -u
-
-exit 0
+++ /dev/null
-#!/bin/bash
-#
-# Script to install in:
-# /usr/lib/rpm/redhat/find-provides.d
-#
-# Transform font files into RPM provides
-# Requires fontconfig >= 2.6.90
-#
-# Author: Behdad Esfahbod <behdad@redhat.com>
-# Based on other provides scripts from RPM
-#
-
-fcquery=/usr/bin/fc-query
-
-if [ ! -x $fcquery ]; then
- cat > /dev/null
- exit 0
-fi
-
-# filter out anything outside main fontconfig path
-grep /usr/share/fonts/ |
-while read fn; do
- $fcquery --format '%{=pkgkit}' "${fn}" 2> /dev/null
-done
+++ /dev/null
-#!/bin/sh
-
-[ $# -ge 2 ] || {
- cat > /dev/null
- exit 0
-}
-
-case $1 in
--P|--provides)
- shift
- RPM_BUILD_ROOT="$1"
- while read possible
- do
- case "$possible" in
- *.la)
- if grep -iq '^# Generated by ltmain.sh' "$possible" 2> /dev/null ; then
- possible="`echo ${possible} | sed -e s,${RPM_BUILD_ROOT}/,/,`"
- echo "libtool($possible)"
- fi
- ;;
- esac
- done
- ;;
--R|--requires)
- while read possible ; do
- case "$possible" in
- *.la)
- for dep in `grep '^dependency_libs='"$possible" 2> /dev/null | \
- sed -e "s,^dependency_libs='\(.*\)',\1,g"`
- do
- case "$dep" in
- /*.la)
- echo "libtool($dep)"
- ;;
- esac
- done
- ;;
- esac
- done
- ;;
-esac
-exit 0
+++ /dev/null
-#/*! \page config_macros Default configuration: /usr/lib/rpm/macros
-# \verbatim
-#
-# This is a global RPM configuration file. All changes made here will
-# be lost when the rpm package is upgraded. Any per-system configuration
-# should be added to /etc/rpm/macros, while per-user configuration should
-# be added to ~/.rpmmacros.
-#
-#==============================================================================
-# Macro naming conventions (preliminary):
-#
-# Macros that begin with an underscore are "local" in the sense that
-# they (if used) will not be exported in rpm headers. Some macros
-# that don't start with an underscore (but look like they should)
-# are compatible with macros generated by rpm-2.5.x and will be made
-# more consistent in a future release.
-#
-
-#==============================================================================
-# ---- A macro that expands to nothing.
-#
-%nil %{!?nil}
-
-#==============================================================================
-# ---- filesystem macros.
-#
-%_usr /usr
-%_usrsrc %{_usr}/src
-%_var /var
-
-#==============================================================================
-# ---- Generally useful path macros.
-#
-%__awk gawk
-%__bzip2 /usr/bin/bzip2
-%__cat /bin/cat
-%__chgrp /bin/chgrp
-%__chmod /bin/chmod
-%__chown /bin/chown
-%__cp /bin/cp
-%__cpio /bin/cpio
-%__file /usr/bin/file
-%__gpg /usr/bin/gpg
-%__grep /bin/grep
-%__gzip /bin/gzip
-%__id /usr/bin/id
-%__id_u %{__id} -u
-%__install /usr/bin/install
-%__ln_s ln -s
-%__lrzip /usr/bin/lrzip
-%__lzip /usr/bin/lzip
-# Deprecated, use %__xz instead.
-%__lzma %__xz --format=lzma
-%__xz /usr/bin/xz
-%__make /usr/bin/make
-%__mkdir /bin/mkdir
-%__mkdir_p /bin/mkdir -p
-%__mv /bin/mv
-%__patch /usr/bin/patch
-%__perl /usr/bin/perl
-%__python /usr/bin/python
-%__restorecon /sbin/restorecon
-%__rm /bin/rm
-%__rsh /usr/bin/rsh
-%__sed /bin/sed
-%__semodule /usr/bin/semodule
-%__ssh /usr/bin/ssh
-%__tar /bin/tar
-%__unzip /usr/bin/unzip
-
-#==============================================================================
-# ---- Build system path macros.
-#
-%__ar ar
-%__as as
-%__cc gcc
-%__cpp gcc -E
-%__cxx g++
-%__ld /usr/bin/ld
-%__nm /usr/bin/nm
-%__objcopy /usr/bin/objcopy
-%__objdump /usr/bin/objdump
-%__ranlib ranlib
-%__remsh %{__rsh}
-%__strip /usr/bin/strip
-
-# XXX avoid failures if tools are not installed when rpm is built.
-%__libtoolize libtoolize
-%__aclocal aclocal
-%__autoheader autoheader
-%__automake automake
-%__autoconf autoconf
-
-#==============================================================================
-# Conditional build stuff.
-
-# Check if symbol is defined.
-# Example usage: %if %{defined with_foo} && %{undefined with_bar} ...
-%defined() %{expand:%%{?%{1}:1}%%{!?%{1}:0}}
-%undefined() %{expand:%%{?%{1}:0}%%{!?%{1}:1}}
-
-# Shorthand for %{defined with_...}
-%with() %{expand:%%{?with_%{1}:1}%%{!?with_%{1}:0}}
-%without() %{expand:%%{?with_%{1}:0}%%{!?with_%{1}:1}}
-
-# Handle conditional builds. %bcond_with is for case when feature is
-# default off and needs to be activated with --with ... command line
-# switch. %bcond_without is for the dual case.
-#
-# %bcond_with foo defines symbol with_foo if --with foo was specified on
-# command line.
-# %bcond_without foo defines symbol with_foo if --without foo was *not*
-# specified on command line.
-#
-# For example (spec file):
-#
-# (at the beginning)
-# %bcond_with extra_fonts
-# %bcond_without static
-# (and later)
-# %if %{with extra_fonts}
-# ...
-# %else
-# ...
-# %endif
-# %if ! %{with static}
-# ...
-# %endif
-# %ifdef %{with static}
-# ...
-# %endif
-# %{?with_static: ... }
-# %{!?with_static: ... }
-# %{?with_extra_fonts: ... }
-# %{!?with_extra_fonts: ... }
-
-#
-# The bottom line: never use without_foo, _with_foo nor _without_foo, only
-# with_foo. This way changing default set of bconds for given spec is just
-# a matter of changing single line in it and syntax is more readable.
-%bcond_with() %{expand:%%{?_with_%{1}:%%global with_%{1} 1}}
-%bcond_without() %{expand:%%{!?_without_%{1}:%%global with_%{1} 1}}
-#
-#==============================================================================
-# ---- Required rpmrc macros.
-# Macros that used to be initialized as a side effect of rpmrc parsing.
-# These are the default values that can be overridden by other
-# (e.g. per-platform, per-system, per-packager, per-package) macros.
-#
-# The directory where rpm's configuration and scripts live
-%_rpmconfigdir %{getconfdir}
-
-# The directory where sources/patches will be unpacked and built.
-%_builddir %{_topdir}/BUILD
-
-# The interpreter used for build scriptlets.
-%_buildshell /bin/sh
-
-# The path to the bzip2 executable (legacy, use %{__bzip2} instead).
-%_bzip2bin %{__bzip2}
-
-# The location of the rpm database file(s).
-%_dbpath %{_var}/lib/rpm
-
-# The location of the rpm database file(s) after "rpm --rebuilddb".
-%_dbpath_rebuild %{_dbpath}
-
-%_keyringpath %{_dbpath}/pubkeys/
-
-#
-# Path to script that creates debug symbols in a /usr/lib/debug
-# shadow tree.
-#
-# A spec file can %%define _find_debuginfo_opts to pass options to
-# the script. See the script for details.
-#
-%__debug_install_post \
- %{_rpmconfigdir}/find-debuginfo.sh %{?_missing_build_ids_terminate_build:--strict-build-id} %{?_find_debuginfo_opts} "%{_builddir}/%{?buildsubdir}"\
-%{nil}
-
-# Template for debug information sub-package.
-%debug_package \
-%ifnarch noarch\
-%global __debug_package 1\
-%package debuginfo\
-Summary: Debug information for package %{name}\
-Group: Development/Debug\
-AutoReqProv: 0\
-%description debuginfo\
-This package provides debug information for package %{name}.\
-Debug information is useful when developing applications that use this\
-package or when debugging this package.\
-%files debuginfo -f debugfiles.list\
-%defattr(-,root,root)\
-\
-%package debugsource\
-Summary: Debug sources for package %{name}\
-Group: Development/Debug\
-AutoReqProv: 0\
-Requires: %{name}-debuginfo = %{version}-%{release}\
-%description debugsource\
-This package provides debug sources for package %{name}.\
-Debug sources are useful when developing applications that use this\
-package or when debugging this package.\
-%files debugsource -f debugsources.list\
-%defattr(-,root,root)\
-%endif\
-%{nil}
-
-%_defaultdocdir %{_datadir}/doc
-
-# The path to the gzip executable (legacy, use %{__gzip} instead).
-%_gzipbin %{__gzip}
-
-# The Unix time of the latest kept changelog entry in binary packages.
-# Any older entry is not packaged in binary packages.
-%_changelog_trimtime 0
-
-# The directory where newly built binary packages will be written.
-%_rpmdir %{_topdir}/RPMS
-
-# A template used to generate the output binary package file name
-# (legacy).
-%_rpmfilename %{_build_name_fmt}
-
-# The directory where sources/patches from a source package will be
-# installed. This is also where sources/patches are found when building.
-%_sourcedir %{_topdir}/SOURCES
-
-# The directory where the spec file from a source package will be
-# installed.
-%_specdir %{_topdir}/SPECS
-
-# The directory where newly built source packages will be written.
-%_srcrpmdir %{_topdir}/SRPMS
-
-# The directory where buildroots will be created.
-%_buildrootdir %{_topdir}/BUILDROOT
-
-# Build root path, where %install installs the package during build.
-%buildroot %{_buildrootdir}/%{name}-%{version}-%{release}.%{_arch}
-
-# Directory where temporaray files can be created.
-%_tmppath %{_var}/tmp
-
-# Path to top of build area.
-%_topdir %{getenv:HOME}/rpmbuild
-
-# The path to the unzip executable (legacy, use %{__unzip} instead).
-%_unzipbin %{__unzip}
-
-#==============================================================================
-# ---- Optional rpmrc macros.
-# Macros that are initialized as a side effect of rpmrc and/or spec
-# file parsing.
-#
-# The sub-directory (relative to %{_builddir}) where sources are compiled.
-# This macro is set after processing %setup, either explicitly from the
-# value given to -n or the default name-version.
-#
-#%buildsubdir
-
-# Configurable distribution information, same as Distribution: tag in a
-# specfile.
-#
-#%distribution
-
-# Configurable distribution URL, same as DistURL: tag in a specfile.
-# The URL will be used to supply reliable information to tools like
-# rpmfind.
-#
-# Note: You should not configure with disturl (or build packages with
-# the DistURL: tag) unless you are willing to supply content in a
-# yet-to-be-determined format at the URL specified.
-#
-#%disturl
-
-# Configurable bug URL, same as BugURL: tag in a specfile.
-# The URL will be used to supply reliable information to where
-# to file bugs.
-#
-#%bugurl
-
-# Boolean (i.e. 1 == "yes", 0 == "no") that controls whether files
-# marked as %doc should be installed.
-#%_excludedocs
-
-# The port and machine name of a FTP proxy host running TIS firewall.
-#
-#%_ftpport
-#%_ftpproxy
-
-# The signature to use and the location of configuration files for
-# signing packages with GNU gpg.
-#
-#%_gpg_name
-#%_gpg_path
-
-# The port and machine name of an HTTP proxy host.
-#
-#%_httpport
-#%_httpproxy
-
-# The PATH put into the environment before running %pre/%post et al.
-#
-%_install_script_path /sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin
-
-# A colon separated list of desired locales to be installed;
-# "all" means install all locale specific files.
-#
-%_install_langs all
-
-# The value of CLASSPATH in build scriptlets (iff configured).
-#
-#%_javaclasspath all
-
-# Import packaging conventions from jpackage.org (prefixed with _
-# to avoid name collisions).
-#
-%_javadir %{_datadir}/java
-%_javadocdir %{_datadir}/javadoc
-
-# A colon separated list of paths where files should *not* be installed.
-# Usually, these are network file system mount points.
-#
-#%_netsharedpath
-
-# (experimental)
-# The type of pattern match used on rpmdb iterator selectors:
-# "default" simple glob-like regex, periods will be escaped,
-# splats will have period prepended, full "^...$" match
-# required. Also, file path tags will use glob(7).
-# "strcmp" compare strings
-# "regex" regex(7) patterns using regcomp(3)/regexec(3)
-# "glob" glob(7) patterns using fnmatch(3)
-#
-%_query_selector_match default
-
-# Configurable packager information, same as Packager: in a specfile.
-#
-#%packager
-
-# Compression type and level for source/binary package payloads.
-# "w9.gzdio" gzip level 9 (default).
-# "w9.bzdio" bzip2 level 9.
-# "w7.xzdio" xz level 7, xz's default.
-# "w7.lzdio" lzma-alone level 7, lzma's default
-#
-#%_source_payload w9.gzdio
-#%_binary_payload w9.gzdio
-
-# Algorithm to use for generating file checksum digests on build.
-# If not specified or 0, MD5 is used.
-# WARNING: non-MD5 is backwards incompatible, don't enable lightly!
-# The supported algorithms may depend on NSS version, as of NSS
-# 3.11.99.5 the following are supported:
-# 1 MD5 (default)
-# 2 SHA1
-# 8 SHA256
-# 9 SHA384
-# 10 SHA512
-#
-#%_source_filedigest_algorithm 1
-#%_binary_filedigest_algorithm 1
-
-# Configurable vendor information, same as Vendor: in a specfile.
-#
-#%vendor
-
-# Default fuzz level for %patch in spec file.
-%_default_patch_fuzz 0
-
-# Default patch flags
-%_default_patch_flags -s
-
-#==============================================================================
-# ---- Build configuration macros.
-#
-# Script gets packaged file list on input and buildroot as first parameter.
-# Returns list of unpackaged files, i.e. files in $RPM_BUILD_ROOT not packaged.
-#
-# Note: Disable (by commenting out) for legacy compatibility.
-%__check_files %{_rpmconfigdir}/check-files %{buildroot}
-
-#
-# Should unpackaged files in a build root terminate a build?
-#
-# Note: The default value should be 0 for legacy compatibility.
-%_unpackaged_files_terminate_build 1
-
-#
-# Should missing %doc files in the build directory terminate a build?
-#
-# Note: The default value should be 0 for legacy compatibility.
-%_missing_doc_files_terminate_build 1
-
-#
-# Should binaries in noarch packages terminate a build?
-%_binaries_in_noarch_packages_terminate_build 1
-
-#
-# Program to call for each successfully built and written binary package.
-# The package name is passed to the program as a command-line argument.
-#
-#%_build_pkgcheck %{_bindir}/rpmlint
-
-#
-# Program to call for the whole binary package set after build.
-# The package set is passed to the program via command-line arguments.
-#
-#%_build_pkgcheck_set %{_bindir}/rpmlint
-
-#
-# Program to call for successfully built and written SRPM.
-# The package name is passed to the program as a command-line argument.
-#
-#%_build_pkgcheck_srpm %{_bindir}/rpmlint
-
-#
-# Should the build of packages fail if package checker (if defined) returns
-# non-zero exit status?
-#
-#%_nonzero_exit_pkgcheck_terminate_build 1
-
-#
-# Should an ELF file processed by find-debuginfo.sh having no build ID
-# terminate a build? This is left undefined to disable it and defined to
-# enable.
-#
-#%_missing_build_ids_terminate_build 1
-
-#
-# Use internal dependency generator rather than external helpers?
-%_use_internal_dependency_generator 1
-
-#
-# Filter GLIBC_PRIVATE Provides: and Requires:
-%_filter_GLIBC_PRIVATE 0
-
-# Desired selinux policy tree
-%__policy_tree %{expand:%%global __policy_tree %{lua:\
-t="targeted"\
-f = io.open("/etc/selinux/config")\
-if f then\
- for l in f:lines() do\
- if "SELINUXTYPE=" == string.sub(l,0,12) then t=string.sub(l,13); end\
- end\
- f:close()\
-end\
-print (t)\
-}}%{__policy_tree}
-
-# Path to selinux file context patterns.
-%__file_context_path /etc/selinux/%{__policy_tree}/contexts/files/file_contexts
-
-# Directories whose contents should be considered as documentation.
-%__docdir_path %{_datadir}/doc:%{_datadir}/man:%{_datadir}/info:%{_datadir}/gtk-doc/html:%{?_docdir}:%{?_mandir}:%{?_infodir}:%{?_javadocdir}:/usr/doc:/usr/man:/usr/info:/usr/X11R6/man
-
-#
-# Path to selinux file context patterns used to add
-# RPMTAG_FILECONTEXTS to packages when building.
-#
-# Undefined, missing or %{nil} will disable.
-%_build_file_context_path %{nil}
-
-#
-# Path to selinux file context patterns used to set
-# (or override package content) file contexts when installing.
-#
-# Undefined, missing or %{nil} will use package content (if available).
-%_install_file_context_path %{__file_context_path}
-
-#
-# Path to selinux file context patterns used to verify
-# file contexts on file system.
-#
-# Undefined, missing or %{nil} will use package content (if available).
-%_verify_file_context_path %{__file_context_path}
-
-#
-# Path to scripts to autogenerate package dependencies,
-#
-# Note: Used iff _use_internal_dependency_generator is zero.
-#%__find_provides %{_rpmconfigdir}/rpmdeps --provides
-#%__find_requires %{_rpmconfigdir}/rpmdeps --requires
-%__find_provides %{_rpmconfigdir}/find-provides
-%__find_requires %{_rpmconfigdir}/find-requires
-#%__find_conflicts ???
-#%__find_obsoletes ???
-
-#
-# Path to file attribute classifications for automatic dependency
-# extraction, used when _use_internal_dependency_generator
-# is used (on by default). Files can have any number of attributes
-# attached to them, and dependencies are separately extracted for
-# each attribute.
-#
-# To define a new file attribute called "myattr", add a file named
-# "myattr" to this directory, defining the requires and/or provides
-# finder script(s) + magic and/or path pattern regex(es).
-# provides finder and
-# %__myattr_requires path + args to requires finder script for <myattr>
-# %__myattr_provides path + args to provides finder script for <myattr>
-# %__myattr_magic libmagic classification match regex
-# %__myattr_path path based classification match regex
-# %__myattr_flags flags to control behavior (just "exeonly" for now)
-# %__myattr_exclude_magic exclude by magic regex
-# %__myattr_exclude_path exclude by path regex
-#
-%_fileattrsdir %{_rpmconfigdir}/fileattrs
-
-#==============================================================================
-# ---- Database configuration macros.
-# Macros used to configure Berkley db parameters.
-#
-# rpmdb macro configuration values are a colon (or white space) separated
-# list of tokens, with an optional '!' negation to explicitly disable bit
-# values, or a "=value" if a parameter. A per-tag value is used (e.g.
-# %_dbi_config_Packages) if defined, otherwise a per-rpmdb default
-# (e.g. %_dbi_config).
-#
-# Here's a short list of the tokens, with a guess of whether the option is
-# useful:
-# (nothing) currently used in rpm, known to work.
-# "+++" under development, will be supported in rpm eventually.
-# "???" I have no clue, you're mostly on your own.
-#
-# If you do find yourself inclined to fiddle, here's what I see (shrug):
-# 1) Only the value of mp_size has any serious impact on overall performance,
-# and you will need ~256Kb to handle a typical machine install.
-# 2) Only the Packages hash, because of the size of the values (i.e. headers),
-# will ever need tuning. Diddle the pagesize if you're interested, although
-# I believe that you will find pagesize=512 "best".
-# 3) Adding nofsync increases speed, but risks total data loss. Fiddle shared
-# and/or mp_size instead.
-#
-# token works? Berkeley db flag or value
-#==================================================
-#---------------------- DBENV tunable values:
-# mmapsize=16Mb DBENV->set_mp_mmapsize
-# cachesize=1Mb DBENV->set_cachesize, DB->set_cachesize
-#---------------------- DB->open bits:
-# nommap ??? DB_NOMMAP
-#----------------------- rpmdb specific configuration:
-# lockdbfd (always on for Packages) Use fcntl(2) locking ?
-# nofsync Disable fsync(2) call performed after db3 writes?
-#
-
-# Misc BDB tuning options
-%__dbi_other mp_mmapsize=128Mb mp_size=64Mb
-
-%_dbi_config %{?__dbi_other}
-
-# "Packages" should have shared/exclusive fcntl(2) lock using "lockdbfd".
-%_dbi_config_Packages %{?_dbi_config} lockdbfd
-
-#==============================================================================
-# ---- GPG/PGP/PGP5 signature macros.
-# Macro(s) to hold the arguments passed to GPG/PGP for package
-# signing and verification.
-#
-%__gpg_check_password_cmd %{__gpg} \
- gpg --batch --no-verbose --passphrase-fd 3 -u "%{_gpg_name}" -so -
-
-%__gpg_sign_cmd %{__gpg} \
- gpg --batch --no-verbose --no-armor --passphrase-fd 3 \
- %{?_gpg_digest_algo:--digest-algo %{_gpg_digest_algo}} \
- --no-secmem-warning \
- -u "%{_gpg_name}" -sbo %{__signature_filename} %{__plaintext_filename}
-
-# XXX rpm >= 4.1 verifies signatures internally
-#%__gpg_verify_cmd %{__gpg} \
-# gpg --batch --no-verbose --verify --no-secmem-warning \
-# %{__signature_filename} %{__plaintext_filename}
-#
-# XXX rpm-4.1 verifies prelinked libraries using a prelink undo helper.
-# Normally this macro is defined in /etc/rpm/macros.prelink, installed
-# with the prelink package. If the macro is undefined, then prelinked
-# shared libraries contents are MD5 digest verified (as usual), rather
-# than MD5 verifying the output of the prelink undo helper.
-#
-# Note: The 2nd token is used as argv[0] and "library" is a
-# placeholder that will be deleted and replaced with the appropriate
-# library file path.
-#%__prelink_undo_cmd /usr/sbin/prelink prelink -y library
-
-# Horowitz Key Protocol server configuration
-#
-%_hkp_keyserver http://pgp.mit.edu
-%_hkp_keyserver_query %{_hkp_keyserver}:11371/pks/lookup?op=get&search=0x
-
-#==============================================================================
-# ---- Transaction macros.
-# Macro(s) used to parameterize transactions.
-#
-# The output binary package file name template used when building
-# binary packages.
-#
-# XXX Note: escaped %% for use in headerSprintf()
-%_build_name_fmt %%{ARCH}/%%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm
-
-# The default transaction color. This value is a set of bits to
-# determine file and dependency affinity for this arch.
-# 0 uncolored (i.e. use only arch as install hint)
-# 1 Elf32 permitted
-# 2 Elf64 permitted
-%_transaction_color 0
-
-# Verify digest/signature flags for various rpm modes:
-# 0x30300 (_RPMVSF_NODIGESTS) --nohdrchk if set, don't check digest(s)
-# 0xc0c00 (_RPMVSF_NOSIGNATURES) --nosignature if set, don't check signature(s)
-# 0xf0000 (_RPMVSF_NOPAYLOAD) --nolegacy if set, check header+payload (if possible)
-# 0x00f00 (_RPMVSF_NOHEADER) --nohdrchk if set, don't check rpmdb headers
-#
-# For example, the value 0xf0c00 (=0xf0000+0xc0c00) disables legacy
-# digest/signature checking, disables signature checking, but attempts
-# digest checking, also when retrieving headers from the database.
-#
-# You also can do:
-# >>> hex(rpm._RPMVSF_NOSIGNATURES)
-# '0xc0c00'
-# or:
-# >>> hex(rpm._RPMVSF_NOSIGNATURES|rpm._RPMVSF_NOPAYLOAD)
-# '0xf0c00'
-# at the python prompt for example, after "import rpm".
-#
-# The checking overhead is ~11ms per header for digests/signatures;
-# each header from the database is checked only when first encountered
-# for each database open.
-#
-# Note: the %_vsflags_erase applies to --upgrade/--freshen modes as
-# well as --erase.
-#
-%__vsflags 0xf0000
-%_vsflags_build %{__vsflags}
-%_vsflags_erase %{__vsflags}
-%_vsflags_install %{__vsflags}
-%_vsflags_query %{__vsflags}
-%_vsflags_rebuilddb %{__vsflags}
-%_vsflags_verify %{__vsflags}
-
-#
-# Default output format string for rpm -qa
-#
-# XXX Note: escaped %% for use in headerFormat()
-%_query_all_fmt %%{nvra}
-
-#
-# Default path to the file used for transaction fcntl lock.
-%_rpmlock_path %{_dbpath}/.rpm.lock
-
-#==============================================================================
-# ---- per-platform macros.
-# Macros that are specific to an individual platform. The values here
-# will be used if the per-platform macro file does not exist..
-#
-%_arch i386
-%_build_arch i386
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}%{?_gnu}
-
-#
-# Define a generic value for optflags. Normally overridden by per-target macros.
-%optflags -O2
-
-#
-# ISA dependency marker, none for noarch and name-bitness for others
-%_isa %{?__isa:(%{__isa})}%{!?__isa:%{nil}}
-
-#
-# Define per-arch and per-os defaults. Normally overridden by per-target macros.
-%__arch_install_post %{nil}
-%__os_install_post %{___build_post}
-
-#==============================================================================
-# ---- Scriptlet template templates.
-# Global defaults used for building scriptlet templates.
-#
-
-%___build_shell %{?_buildshell:%{_buildshell}}%{!?_buildshell:/bin/sh}
-%___build_args -e
-%___build_cmd %{?_sudo:%{_sudo} }%{?_remsh:%{_remsh} %{_remhost} }%{?_remsudo:%{_remsudo} }%{?_remchroot:%{_remchroot} %{_remroot} }%{___build_shell} %{___build_args}
-%___build_pre \
- RPM_SOURCE_DIR=\"%{u2p:%{_sourcedir}}\"\
- RPM_BUILD_DIR=\"%{u2p:%{_builddir}}\"\
- RPM_OPT_FLAGS=\"%{optflags}\"\
- RPM_ARCH=\"%{_arch}\"\
- RPM_OS=\"%{_os}\"\
- export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS\
- RPM_DOC_DIR=\"%{_docdir}\"\
- export RPM_DOC_DIR\
- RPM_PACKAGE_NAME=\"%{name}\"\
- RPM_PACKAGE_VERSION=\"%{version}\"\
- RPM_PACKAGE_RELEASE=\"%{release}\"\
- export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE\
- LANG=C\
- export LANG\
- unset CDPATH DISPLAY ||:\
- %{?buildroot:RPM_BUILD_ROOT=\"%{u2p:%{buildroot}}\"\
- export RPM_BUILD_ROOT}\
- %{?_javaclasspath:CLASSPATH=\"%{_javaclasspath}\"\
- export CLASSPATH}\
- PKG_CONFIG_PATH=\"%{_libdir}/pkgconfig:%{_datadir}/pkgconfig\"\
- export PKG_CONFIG_PATH\
- \
- %{verbose:set -x}%{!verbose:exec > /dev/null}\
- umask 022\
- cd \"%{u2p:%{_builddir}}\"\
-
-
-#%___build_body %{nil}
-%___build_post exit 0
-
-%___build_template #!%{___build_shell}\
-%{___build_pre}\
-%{nil}
-
-#%{___build_body}\
-#%{___build_post}\
-#%{nil}
-
-#==============================================================================
-# ---- Scriptlet templates.
-# Macro(s) that expand to a command and script that is executed.
-# CAVEAT: All macro expansions must fit in a BUFSIZ (8192 byte) buffer.
-#
-%__spec_prep_shell %{___build_shell}
-%__spec_prep_args %{___build_args}
-%__spec_prep_cmd %{___build_cmd}
-%__spec_prep_pre %{___build_pre}
-%__spec_prep_body %{___build_body}
-%__spec_prep_post %{___build_post}
-%__spec_prep_template #!%{__spec_prep_shell}\
-%{__spec_prep_pre}\
-%{nil}
-
-#%{__spec_prep_body}\
-#%{__spec_prep_post}\
-#%{nil}
-
-%__spec_build_shell %{___build_shell}
-%__spec_build_args %{___build_args}
-%__spec_build_cmd %{___build_cmd}
-%__spec_build_pre %{___build_pre}
-%__spec_build_body %{___build_body}
-%__spec_build_post %{___build_post}
-%__spec_build_template #!%{__spec_build_shell}\
-%{__spec_build_pre}\
-%{nil}
-
-#%{__spec_build_body}\
-#%{__spec_build_post}\
-#%{nil}
-
-%__spec_install_shell %{___build_shell}
-%__spec_install_args %{___build_args}
-%__spec_install_cmd %{___build_cmd}
-%__spec_install_pre %{___build_pre}
-%__spec_install_body %{___build_body}
-%__spec_install_post\
-%{?__debug_package:%{__debug_install_post}}\
-%{__arch_install_post}\
-%{__os_install_post}\
-%{nil}
-%__spec_install_template #!%{__spec_install_shell}\
-%{__spec_install_pre}\
-%{nil}
-
-#%{__spec_install_body}\
-#%{__spec_install_post}\
-#%{nil}
-
-%__spec_check_shell %{___build_shell}
-%__spec_check_args %{___build_args}
-%__spec_check_cmd %{___build_cmd}
-%__spec_check_pre %{___build_pre}
-%__spec_check_body %{___build_body}
-%__spec_check_post %{___build_post}
-%__spec_check_template #!%{__spec_check_shell}\
-%{__spec_check_pre}\
-%{nil}
-
-#%{__spec_check_body}\
-#%{__spec_check_post}\
-#%{nil}
-
-#%__spec_autodep_shell %{___build_shell}
-#%__spec_autodep_args %{___build_args}
-#%__spec_autodep_cmd %{___build_cmd}
-#%__spec_autodep_pre %{___build_pre}
-#%__spec_autodep_body %{___build_body}
-#%__spec_autodep_post %{___build_post}
-#%__spec_autodep_template #!%{__spec_autodep_shell}\
-#%{__spec_autodep_pre}\
-#%{nil}
-
-#%{__spec_autodep_body}\
-#%{__spec_autodep_post}\
-#%{nil}
-
-%__spec_clean_shell %{___build_shell}
-%__spec_clean_args %{___build_args}
-%__spec_clean_cmd %{___build_cmd}
-%__spec_clean_pre %{___build_pre}
-%__spec_clean_body %{___build_body}
-%__spec_clean_post %{___build_post}
-%__spec_clean_template #!%{__spec_clean_shell}\
-%{__spec_clean_pre}\
-%{nil}
-
-#%{__spec_clean_body}\
-#%{__spec_clean_post}\
-#%{nil}
-
-%__spec_rmbuild_shell %{___build_shell}
-%__spec_rmbuild_args %{___build_args}
-%__spec_rmbuild_cmd %{___build_cmd}
-%__spec_rmbuild_pre %{___build_pre}
-%__spec_rmbuild_body %{___build_body}
-%__spec_rmbuild_post %{___build_post}
-%__spec_rmbuild_template #!%{__spec_rmbuild_shell}\
-%{__spec_rmbuild_pre}\
-%{nil}
-
-#%{__spec_rmbuild_body}\
-#%{__spec_rmbuild_post}\
-#%{nil}
-
-# XXX We don't expand pre/post install scriptlets (yet).
-#%__spec_pre_pre %{nil}
-#%__spec_pre_post %{nil}
-#%__spec_post_pre %{nil}
-#%__spec_post_post %{nil}
-#%__spec_preun_pre %{nil}
-#%__spec_preun_post %{nil}
-#%__spec_postun_pre %{nil}
-#%__spec_postun_post %{nil}
-#%__spec_triggerpostun_pre %{nil}
-#%__spec_triggerpostun_post %{nil}
-#%__spec_triggerun_pre %{nil}
-#%__spec_triggerun_post %{nil}
-#%__spec_triggerin_pre %{nil}
-#%__spec_triggerin_post %{nil}
-
-#==============================================================================
-# ---- configure macros.
-# Macro(s) slavishly copied from autoconf's config.status.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datadir %{_prefix}/share
-%_sysconfdir /etc
-%_sharedstatedir %{_prefix}/com
-%_localstatedir %{_prefix}/var
-%_lib lib
-%_libdir %{_exec_prefix}/%{_lib}
-%_includedir %{_prefix}/include
-%_infodir %{_datadir}/info
-%_mandir %{_datadir}/man
-
-#==============================================================================
-# ---- config.guess platform macros.
-# Macro(s) similar to the tokens used by configure.
-#
-%_build %{_host}
-%_build_alias %{_host_alias}
-%_build_cpu %{_host_cpu}
-%_build_vendor %{_host_vendor}
-%_build_os %{_host_os}
-%_host i686-pc-linux-gnu
-%_host_alias %{nil}
-%_host_cpu i686
-%_host_vendor pc
-%_host_os linux
-%_target %{_host}
-%_target_alias %{_host_alias}
-%_target_cpu %{_host_cpu}
-%_target_vendor %{_host_vendor}
-%_target_os %{_host_os}
-
-#==============================================================================
-# ---- specfile macros.
-# Macro(s) here can be used reliably for reproducible builds.
-# (Note: Above is the goal, below are the macros under development)
-#
-# The configure macro runs autoconf configure script with platform specific
-# directory structure (--prefix, --libdir etc) and compiler flags
-# such as CFLAGS.
-#
-# The configure macro should be invoked as %configure (rather than %{configure})
-# because the rest of the arguments will be expanded using %*.
-#
-%_configure ./configure
-%configure \
- CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; \
- CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; \
- FFLAGS="${FFLAGS:-%optflags}" ; export FFLAGS ; \
- %{_configure} --host=%{_host} --build=%{_build} \\\
- --program-prefix=%{?_program_prefix} \\\
- --prefix=%{_prefix} \\\
- --exec-prefix=%{_exec_prefix} \\\
- --bindir=%{_bindir} \\\
- --sbindir=%{_sbindir} \\\
- --sysconfdir=%{_sysconfdir} \\\
- --datadir=%{_datadir} \\\
- --includedir=%{_includedir} \\\
- --libdir=%{_libdir} \\\
- --libexecdir=%{_libexecdir} \\\
- --localstatedir=%{_localstatedir} \\\
- --sharedstatedir=%{_sharedstatedir} \\\
- --mandir=%{_mandir} \\\
- --infodir=%{_infodir}
-
-#------------------------------------------------------------------------------
-# The make install analogue of %configure for modern autotools:
-%make_install %{__make} install DESTDIR=%{?buildroot}
-
-#------------------------------------------------------------------------------
-# Former make install analogue, kept for compatibility and for old/broken
-# packages that don't support DESTDIR properly.
-%makeinstall \
- %{__make} \\\
- prefix=%{?buildroot:%{buildroot}}%{_prefix} \\\
- exec_prefix=%{?buildroot:%{buildroot}}%{_exec_prefix} \\\
- bindir=%{?buildroot:%{buildroot}}%{_bindir} \\\
- sbindir=%{?buildroot:%{buildroot}}%{_sbindir} \\\
- sysconfdir=%{?buildroot:%{buildroot}}%{_sysconfdir} \\\
- datadir=%{?buildroot:%{buildroot}}%{_datadir} \\\
- includedir=%{?buildroot:%{buildroot}}%{_includedir} \\\
- libdir=%{?buildroot:%{buildroot}}%{_libdir} \\\
- libexecdir=%{?buildroot:%{buildroot}}%{_libexecdir} \\\
- localstatedir=%{?buildroot:%{buildroot}}%{_localstatedir} \\\
- sharedstatedir=%{?buildroot:%{buildroot}}%{_sharedstatedir} \\\
- mandir=%{?buildroot:%{buildroot}}%{_mandir} \\\
- infodir=%{?buildroot:%{buildroot}}%{_infodir} \\\
- install
-
-#------------------------------------------------------------------------------
-# The GNUconfigure macro does the following:
-# update config.guess and config.sub.
-# regenerate all autoconf/automake files
-# optionally change to a directory (make the directory if requested).
-# run configure with correct prefix, platform, and CFLAGS.
-# optionally restore current directory.
-#
-# Based on autogen.sh from GNOME and orginal GNUconfigure
-#
-%GNUconfigure(MCs:) \
- CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS; \
- LDFLAGS="${LDFLAGS:-%{-s:-s}}" ; export LDFLAGS; \
- %{-C:_mydir="`pwd`"; %{-M: %{__mkdir} -p %{-C*};} cd %{-C*}} \
- dirs="`find ${_mydir} -name configure.in -print`"; export dirs; \
- for coin in `echo ${dirs}` \
-do \
- dr=`dirname ${coin}`; \
-if test -f ${dr}/NO-AUTO-GEN; then \
- : \
-else \
- macrodirs=`sed -n -e 's,AM_ACLOCAL_INCLUDE(\(.*\)),\1,gp' < ${coin}`; \
- ( cd ${dr}; \
- aclocalinclude="${ACLOCAL_FLAGS}"; \
- for k in ${macrodirs}; do \
- if test -d ${k}; then \
- aclocalinclude="${aclocalinclude} -I ${k}"; \
- ##else \
- ## echo "**Warning**: No such directory \`${k}'. Ignored." \
- fi \
- done \
- if grep "^AM_GNU_GETTEXT" configure.in >/dev/null; then \
- if grep "sed.*POTFILES" configure.in >/dev/null; then \
- : do nothing -- we still have an old unmodified configure.in \
- else \
- test -r ${dr}/aclocal.m4 || touch ${dr}/aclocal.m4; \
- echo "no" | gettextize --force --copy; \
- test -r ${dr}/aclocal.m4 && %{__chmod} u+w ${dr}/aclocal.m4; \
- fi \
- fi \
- if grep "^AM_PROG_LIBTOOL" configure.in >/dev/null; then \
- %{__libtoolize} --force --copy; \
- fi \
- aclocal ${aclocalinclude}; \
- if grep "^AM_CONFIG_HEADER" configure.in >/dev/null; then \
- %{__autoheader}; \
- fi \
- echo "Running automake --gnu ${am_opt} ..."; \
- %{__automake} --add-missing --gnu ${am_opt}; \
- %{__autoconf}; \
- ); \
- fi \
-done \
- %{-C:${_mydir}}%{!-C:.}/configure --prefix=%{_prefix} --exec-prefix=%{_exec_prefix} --bindir=%{_bindir} --sbindir=%{_sbindir} --sysconfdir=%{_sysconfdir} --datadir=%{_datadir} --includedir=%{_includedir} --libdir=%{_libdir} --libexecdir=%{_libexecdir} --localstatedir=%{_localstatedir} --sharedstatedir=%{_sharedstatedir} --mandir=%{_mandir} --infodir=%{_infodir} %* ; \
- %{-C:cd ${_mydir}; unset _mydir}
-
-%patches %{lua: for i, p in ipairs(patches) do print(p.." ") end}
-%sources %{lua: for i, s in ipairs(sources) do print(s.." ") end}
-
-#------------------------------------------------------------------------------
-# Useful perl macros (from Artur Frysiak <wiget@t17.ds.pwr.wroc.pl>)
-#
-# For example, these can be used as (from ImageMagick.spec from PLD site)
-# [...]
-# BuildPrereq: perl
-# [...]
-# %package perl
-# Summary: libraries and modules for access to ImageMagick from perl
-# Group: Development/Languages/Perl
-# Requires: %{name} = %{version}
-# %requires_eq perl
-# [...]
-# %install
-# rm -fr $RPM_BUILD_ROOT
-# install -d $RPM_BUILD_ROOT/%{perl_sitearch}
-# [...]
-# %files perl
-# %defattr(644,root,root,755)
-# %{perl_sitearch}/Image
-# %dir %{perl_sitearch}/auto/Image
-#
-%requires_eq() %(LC_ALL="C" echo '%*' | xargs -r rpm -q --qf 'Requires: %%{name} = %%{epoch}:%%{version}\\n' | sed -e 's/ (none):/ /' -e 's/ 0:/ /' | grep -v "is not")
-%perl_sitearch %(eval "`%{__perl} -V:installsitearch`"; echo $installsitearch)
-%perl_sitelib %(eval "`%{__perl} -V:installsitelib`"; echo $installsitelib)
-%perl_vendorarch %(eval "`%{__perl} -V:installvendorarch`"; echo $installvendorarch)
-%perl_vendorlib %(eval "`%{__perl} -V:installvendorlib`"; echo $installvendorlib)
-%perl_archlib %(eval "`%{__perl} -V:installarchlib`"; echo $installarchlib)
-%perl_privlib %(eval "`%{__perl} -V:installprivlib`"; echo $installprivlib)
-
-#------------------------------------------------------------------------------
-# Useful python macros for determining python version and paths
-#
-%python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib())")
-%python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib(1))")
-%python_version %(%{__python} -c "import sys; sys.stdout.write(sys.version[:3])")
-
-#------------------------------------------------------------------------------
-# arch macro for all Intel i?86 compatibile processors
-# (Note: This macro (and it's analogues) will probably be obsoleted when
-# rpm can use regular expressions against target platforms in macro
-# conditionals.
-#
-%ix86 i386 i486 i586 i686 pentium3 pentium4 athlon geode
-
-#------------------------------------------------------------------------------
-# arch macro for all supported ARM processors
-%arm armv3l armv4b armv4l armv4tl armv5tel armv5tejl armv6l armv7l armv7hl armv7nhl armv7tnhl armv7thl
-
-#------------------------------------------------------------------------------
-# arch macro for all supported Sparc processors
-%sparc sparc sparcv8 sparcv9 sparcv9v sparc64 sparc64v
-
-#------------------------------------------------------------------------------
-# arch macro for all supported Alpha processors
-%alpha alpha alphaev56 alphaev6 alphaev67
-
-#------------------------------------------------------------------------
-# Use in %install to generate locale specific file lists. For example,
-#
-# %install
-# ...
-# %find_lang %{name}
-# ...
-# %files -f %{name}.lang
-#
-%find_lang %{_rpmconfigdir}/find-lang.sh %{buildroot}
-
-# Commands + opts to use for retrieving remote files
-# Proxy opts can be set through --httpproxy/--httpport popt aliases,
-# for any special local needs use %__urlhelper_localopts in system-wide
-# or per-user macro configuration.
-%__urlhelpercmd /usr/bin/curl
-%__urlhelperopts --silent --show-error --fail --location -o
-%__urlhelper_proxyopts %{?_httpproxy:--proxy %{_httpproxy}%{?_httpport::%{_httpport}}}%{!?_httpproxy:%{nil}}
-%_urlhelper %{__urlhelpercmd} %{?__urlhelper_localopts} %{?__urlhelper_proxyopts} %{__urlhelperopts}
-
-#------------------------------------------------------------------------------
-# Collection specific macros
-%__plugindir %{_libdir}/rpm-plugins
-%__collection_font %{__plugindir}/exec.so /usr/bin/fc-cache
-%__collection_java %{__plugindir}/exec.so /usr/bin/rebuild-gcj-db
-%__collection_sepolicy %{__plugindir}/sepolicy.so
-%__collection_sepolicy_flags 1
-
-%__security_plugin %{__plugindir}/msm.so
-
-# \endverbatim
-#*/
+++ /dev/null
-# Perl specific macro definitions.
-# To make use of these macros insert the following line into your spec file:
-# %include %{_rpmconfigdir}/macros.perl
-
-%define __find_requires %{_rpmconfigdir}/find-perl-requires
-%define __find_provides %{_rpmconfigdir}/find-perl-provides
-
-%define perl_sitelib %(eval "`perl -V:installsitelib`"; echo $installsitelib)
-%define perl_sitearch %(eval "`perl -V:installsitearch`"; echo $installsitearch)
-%define perl_archlib %(eval "`perl -V:installarchlib`"; echo $installarchlib)
-%define perl_privlib %(eval "`perl -V:installprivlib`"; echo $installprivlib)
-
+++ /dev/null
-# Perl specific macro definitions.
-# To make use of these macros insert the following line into your spec file:
-# %include %{_rpmconfigdir}/macros.php
-
-%define __find_requires %{_rpmconfigdir}/find-php-requires
-%define __find_provides %{_rpmconfigdir}/find-php-provides
-
-%define php_pear_dir %{_datadir}/pear
-
+++ /dev/null
-# Python specific macro definitions.
-# To make use of these macros insert the following line into your spec file:
-# %include %{_rpmconfigdir}/macros.python
-
-# python main version
-%define py_ver %(echo `python -c "import sys; sys.stdout.write(sys.version[:3])"`)
-
-# directories
-%define py_prefix %(echo `python -c "import sys; sys.stdout.write(sys.prefix)"`)
-%define py_libdir %{py_prefix}/lib/python%{py_ver}
-%define py_incdir /usr/include/python%{py_ver}
-%define py_sitedir %{py_libdir}/site-packages
-%define py_dyndir %{py_libdir}/lib-dynload
-
-# pure python modules compilation
-%define py_comp python -c "import compileall; import sys; compileall.compile_dir(sys.argv[1], ddir=sys.argv[1][len('$RPM_BUILD_ROOT'):])"
-
-%define py_ocomp python -O -c "import compileall; import sys; compileall.compile_dir(sys.argv[1], ddir=sys.argv[1][len('$RPM_BUILD_ROOT'):])"
+++ /dev/null
-#! /bin/sh
-# mkinstalldirs --- make directory hierarchy
-
-scriptversion=2006-05-11.19
-
-# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
-# Created: 1993-05-16
-# Public domain.
-#
-# This file is maintained in Automake, please report
-# bugs to <bug-automake@gnu.org> or send patches to
-# <automake-patches@gnu.org>.
-
-nl='
-'
-IFS=" "" $nl"
-errstatus=0
-dirmode=
-
-usage="\
-Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
-
-Create each directory DIR (with mode MODE, if specified), including all
-leading file name components.
-
-Report bugs to <bug-automake@gnu.org>."
-
-# process command line arguments
-while test $# -gt 0 ; do
- case $1 in
- -h | --help | --h*) # -h for help
- echo "$usage"
- exit $?
- ;;
- -m) # -m PERM arg
- shift
- test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
- dirmode=$1
- shift
- ;;
- --version)
- echo "$0 $scriptversion"
- exit $?
- ;;
- --) # stop option processing
- shift
- break
- ;;
- -*) # unknown option
- echo "$usage" 1>&2
- exit 1
- ;;
- *) # first non-opt arg
- break
- ;;
- esac
-done
-
-for file
-do
- if test -d "$file"; then
- shift
- else
- break
- fi
-done
-
-case $# in
- 0) exit 0 ;;
-esac
-
-# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
-# mkdir -p a/c at the same time, both will detect that a is missing,
-# one will create a, then the other will try to create a and die with
-# a "File exists" error. This is a problem when calling mkinstalldirs
-# from a parallel make. We use --version in the probe to restrict
-# ourselves to GNU mkdir, which is thread-safe.
-case $dirmode in
- '')
- if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
- echo "mkdir -p -- $*"
- exec mkdir -p -- "$@"
- else
- # On NextStep and OpenStep, the `mkdir' command does not
- # recognize any option. It will interpret all options as
- # directories to create, and then abort because `.' already
- # exists.
- test -d ./-p && rmdir ./-p
- test -d ./--version && rmdir ./--version
- fi
- ;;
- *)
- if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
- test ! -d ./--version; then
- echo "mkdir -m $dirmode -p -- $*"
- exec mkdir -m "$dirmode" -p -- "$@"
- else
- # Clean up after NextStep and OpenStep mkdir.
- for d in ./-m ./-p ./--version "./$dirmode";
- do
- test -d $d && rmdir $d
- done
- fi
- ;;
-esac
-
-for file
-do
- case $file in
- /*) pathcomp=/ ;;
- *) pathcomp= ;;
- esac
- oIFS=$IFS
- IFS=/
- set fnord $file
- shift
- IFS=$oIFS
-
- for d
- do
- test "x$d" = x && continue
-
- pathcomp=$pathcomp$d
- case $pathcomp in
- -*) pathcomp=./$pathcomp ;;
- esac
-
- if test ! -d "$pathcomp"; then
- echo "mkdir $pathcomp"
-
- mkdir "$pathcomp" || lasterr=$?
-
- if test ! -d "$pathcomp"; then
- errstatus=$lasterr
- else
- if test ! -z "$dirmode"; then
- echo "chmod $dirmode $pathcomp"
- lasterr=
- chmod "$dirmode" "$pathcomp" || lasterr=$?
-
- if test ! -z "$lasterr"; then
- errstatus=$lasterr
- fi
- fi
- fi
- fi
-
- pathcomp=$pathcomp/
- done
-done
-
-exit $errstatus
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
-# End:
+++ /dev/null
-#!/bin/bash
-#
-# mono-find-provides
-#
-# Authors:
-# Ben Maurer (bmaurer@ximian.com)
-#
-# (C) 2005 Novell (http://www.novell.com)
-#
-# Args: builddir buildroot libdir
-
-IFS=$'\n'
-filelist=($(grep -Ev '/usr/doc/|/usr/share/doc/'))
-monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
-
-# If monodis is in the package being installed, use that one
-# This is to support building mono
-build_bindir="$2/usr/bin"
-build_libdir="$2$3"
-
-if [ -x $build_bindir/monodis ]; then
- monodis="$build_bindir/monodis"
- export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
-elif [ -x /usr/bin/monodis ]; then
- monodis="/usr/bin/monodis"
-else
- exit 0;
-fi
-
-export MONO_SHARED_DIR=$1
-
-for i in "${monolist[@]}"; do
- ($monodis --assembly $i | awk '
- BEGIN { LIBNAME=""; VERSION=""; }
- /^Version:/ { VERSION=$2 }
- /^Name:/ { LIBNAME=$2 }
- END {
- if (VERSION && LIBNAME)
- print "mono(" LIBNAME ") = " VERSION
- }
- ') 2>/dev/null
-done
+++ /dev/null
-#!/bin/bash
-#
-# mono-find-requires
-#
-# Authors:
-# Ben Maurer (bmaurer@ximian.com)
-#
-# (C) 2005 Novell (http://www.novell.com)
-#
-# Args: builddir buildroot libdir
-
-IFS=$'\n'
-filelist=($(grep -Ev '/usr/doc/|/usr/share/doc/'))
-monolist=($(printf "%s\n" "${filelist[@]}" | grep -E "\\.(exe|dll)\$"))
-
-# If monodis is in the package being installed, use that one
-# This is to support building mono
-build_bindir="$2/usr/bin"
-build_libdir="$2$3"
-
-if [ -x $build_bindir/monodis ]; then
- monodis="$build_bindir/monodis"
- export LD_LIBRARY_PATH=$build_libdir${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
-elif [ -x /usr/bin/monodis ]; then
- monodis="/usr/bin/monodis"
-else
- exit 0;
-fi
-
-export MONO_SHARED_DIR=$1
-
-REQUIRES=$(
- for i in "${monolist[@]}"; do
- ($monodis --assemblyref $i | awk '
- BEGIN { START=0; LIBNAME=""; VERSION=""; }
- (START==0) && /^[0-9]+: Version=/ {
- START=1;
- sub(/Version=/, "", $2);
- VERSION=$2
- }
-
- (START==1) && /^\tName=/ {
- sub(/Name=/, "", $1);
- LIBNAME=$1
-
- print "mono(" LIBNAME ") = " VERSION
- START=0
- }
- ') 2> /dev/null
- done
-)
-
-PROVIDES=$(
- for i in "${monolist[@]}"; do
- ($monodis --assembly $i | awk '
- BEGIN { LIBNAME=""; VERSION=""; }
- /^Version:/ { VERSION=$2 }
- /^Name:/ { LIBNAME=$2 }
- END {
- if (VERSION && LIBNAME)
- print "mono(" LIBNAME ") = " VERSION
- }
- ') 2>/dev/null
- done
-)
-#
-# This is a little magic trick to get all REQUIRES that are not
-# in PROVIDES. While RPM functions correctly when such deps exist,
-# they make the metadata a bit bloated.
-#
-
-# Filter out dups from both lists
-REQUIRES=$(echo "$REQUIRES" | sort | uniq)
-PROVIDES=$(echo "$PROVIDES" | sort | uniq)
-
-#
-# Get a list of elements that exist in exactly one of PROVIDES or REQUIRES
-#
-UNIQ=$(echo "$PROVIDES
-$REQUIRES" | sort | uniq -u)
-
-#
-# Of those, only chose the ones that are in REQUIRES
-#
-echo "$UNIQ
-$REQUIRES" | sort | uniq -d
+++ /dev/null
-#!/bin/sh -
-# OCaml-specific "find-provides" for RPM.
-# By Richard W.M. Jones <rjones@redhat.com>
-# $Id: ocaml-find-provides.sh,v 1.2 2007/09/06 11:49:59 rjones Exp $
-
-#set -x
-
-# Usage:
-# (1) If you don't want the module to depend on the exact compiler
-# version then use ocaml-find-requires.sh -c, but this is not something
-# you should do normally.
-#
-# (2) For any modules which you want to ignore, use '-i Modulename'.
-
-OCAMLOBJINFO=ocamlobjinfo
-TEMP=`getopt -o i:f: -n ocaml-find-provides.sh -- "$@"`
-if [ $? != 0 ]; then echo "ocaml-find-provides.sh: failed" >&2; exit 1; fi
-eval set -- "$TEMP"
-
-ignore_modules=nOTREAL
-
-while true; do
- case "$1" in
- -i) ignore_modules="$2 $ignore_modules"; shift 2;;
- -f) OCAMLOBJINFO="$2"; shift 2;;
- --) shift; break;;
- *) echo "ocaml-find-provides.sh: option error at $1"; exit 1;;
- esac
-done
-
-# Get the list of files.
-files=`sed "s/['\"]/\\\&/g"`
-
-# Get list of .cmi, .cmo and .cma files.
-files=`echo $files | tr [:blank:] '\n' | grep '\.cm[ioa]$'`
-
-if [ -z "$files" ]; then exit 0; fi
-
-# Get the list of modules exported by the files.
-modules=`$OCAMLOBJINFO $files |
- grep -E '(Unit|Module) name: ' |
- awk '{print $3}'`
-
-# Turn list of modules into a regexp that matches the module names.
-modules_re=`echo $modules | sed 's/ /|/g'`
-ignore_modules_re=`echo $ignore_modules | sed 's/ /|/g'`
-
-# Get a list of the modules these file(s) provide.
-$OCAMLOBJINFO $files |
-grep -Eo '[0-9a-f]{32}[[:space:]]+[A-Za-z0-9_]+' |
-grep -E '[0-9a-f]{32}[[:space:]]+'"($modules_re)\$" |
-while read md5sum module; do
- echo "ocaml($module) = $md5sum"
-done |
-grep -Ev "$ignore_modules_re" |
-sort -u
+++ /dev/null
-#!/bin/sh -
-# OCaml-specific "find-requires" for RPM.
-# By Richard W.M. Jones <rjones@redhat.com>
-# $Id: ocaml-find-requires.sh,v 1.5 2009/10/04 22:34:51 rjones Exp $
-
-#set -x
-
-# Usage:
-# (1) If you don't want the module to depend on the exact compiler
-# version then use ocaml-find-requires.sh -c, but this is not something
-# you should do normally.
-#
-# (2) For any modules which you want to ignore, use '-i Modulename'.
-
-OCAMLOBJINFO=ocamlobjinfo
-TEMP=`getopt -o ci:f: -n ocaml-find-requires.sh -- "$@"`
-if [ $? != 0 ]; then echo "ocaml-find-requires.sh: failed" >&2; exit 1; fi
-eval set -- "$TEMP"
-
-emit_compiler_version=yes
-ignore_modules=nOTREAL
-
-while true; do
- case "$1" in
- -c) emit_compiler_version=; shift;;
- -i) ignore_modules="$2 $ignore_modules"; shift 2;;
- -f) OCAMLOBJINFO="$2"; shift 2;;
- --) shift; break;;
- *) echo "ocaml-find-requires.sh: option error at $1"; exit 1;;
- esac
-done
-
-# Get the list of files.
-files=`sed "s/['\"]/\\\&/g"`
-
-# Use ordinary find-requires first.
-# echo $files | tr [:blank:] '\n' | /usr/lib/rpm/find-requires
-
-# Get list of .cmi, .cmo and .cma files.
-files=`echo $files | tr [:blank:] '\n' | grep '\.cm[ioa]$'`
-
-if [ -z "$files" ]; then exit 0; fi
-
-# Get the list of modules exported by the file(s).
-modules=`$OCAMLOBJINFO $files |
- grep -E '(Unit|Module) name: ' |
- awk '{print $3}'`
-
-# Turn list of modules into a regexp that matches the module names.
-modules_re=`echo $modules | sed 's/ /|/g'`
-ignore_modules_re=`echo $ignore_modules | sed 's/ /|/g'`
-
-# Get a list of the modules these file(s) depend on.
-$OCAMLOBJINFO $files |
-grep -Eo '[0-9a-f]{32}[[:space:]]+[A-Za-z0-9_]+' |
-grep -Ev '[0-9a-f]{32}[[:space:]]+'"($modules_re)\$" |
-while read md5sum module; do
- echo "ocaml($module) = $md5sum"
-done |
-grep -Ev "$ignore_modules_re" |
-grep -Ev "^ocaml\((Annot|Asttypes|Outcometree|Cmo_format|Parsetree)\) =" |
-sort -u
-
-if [ -n "$emit_compiler_version" ]; then
- # Every OCaml program depends on the version of the
- # runtime which was used to compile it.
- echo "ocaml(runtime) = `ocamlrun -version | awk '{print $NF}' | sed 's/\+.*//'`"
-fi
+++ /dev/null
-#!/usr/bin/perl
-#
-# osgideps.pl -- Analyze dependencies of OSGi bundles.
-#
-# Kyu Lee (initial idea)
-# Alphonse Van Assche <alcapcom@fedoraproject.org> (current maintainer)
-#
-# $Id: osgideps.pl,v 1.0 2009/06/08 12:12:12 mej Exp $
-
-use Getopt::Long;
-use File::Temp qw/ tempdir /;
-use threads;
-use Thread::Queue;
-
-$MANIFEST_NAME = "META-INF/MANIFEST.MF";
-
-# parse options
-my ( $show_provides, $show_requires, $show_system_bundles, $debug );
-my $result = GetOptions(
- "provides" => \$show_provides,
- "requires" => \$show_requires,
- "system" => \$show_system_bundles,
- "debug" => \$debug
-);
-exit(1) if ( not $result );
-
-# run selected function
-@allfiles = <STDIN>;
-if ($show_provides) {
- getProvides(@allfiles);
-}
-if ($show_requires) {
- getRequires(@allfiles);
-}
-if ($show_system_bundles) {
- getSystemBundles(@allfiles);
-}
-exit(0);
-
-# this function print provides of OSGi aware files
-sub getProvides {
-
- my $queue = Thread::Queue->new;
- foreach $file (@_) {
- $queue->enqueue($file);
- }
-
- my @workers;
- push @workers, threads->create('getProvidesWorker');
- push @workers, threads->create('getProvidesWorker');
- push @workers, threads->create('getProvidesWorker');
- push @workers, threads->create('getProvidesWorker');
-
- map { $_->join } @workers;
-
- sub getProvidesWorker {
- while ( my $file = $queue->dequeue_nb ) {
- chomp($file);
- # we don't follow symlinks for provides
- next if ( -f $file && -r _ && -l _ );
- $file =~ s/[^[:print:]]//g;
- if ( $file =~ m/$MANIFEST_NAME$/ || $file =~ m/\.jar$/ ) {
- if ( $file =~ m/\.jar$/ ) {
- if ( `zipinfo -1 $file 2> /dev/null | grep -e \^$MANIFEST_NAME` eq "$MANIFEST_NAME\n" ) {
- # extract MANIFEST.MF file from jar to temporary directory
- $tmpdir = tempdir( CLEANUP => 1 );
- `unzip -d $tmpdir -qqo $file $MANIFEST_NAME`;
- open( MANIFEST, "$tmpdir/$MANIFEST_NAME" );
- }
- } else {
- open( MANIFEST, "$file" );
- }
- my $bundleName = "";
- my $version = "";
- # parse Bundle-SymbolicName, Bundle-Version and Export-Package attributes
- while (<MANIFEST>) {
- # get rid of non-print chars (some manifest files contain weird chars)
- s/[^[:print]]//g;
- if ( m/(^(Bundle-SymbolicName): )(.*)$/ ) {
- $bundleName = "$3" . "\n";
- while (<MANIFEST>) {
- if ( m/^[[:upper:]][[:alpha:]]+-[[:upper:]][[:alpha:]]+: .*/ ) {
- $len = length $_;
- seek MANIFEST, $len * -1, 1;
- last;
- }
- $bundleName .= "$_";
- }
- $bundleName =~ s/\s+//g;
- $bundleName =~ s/;.*//g;
- }
- if ( m/(^Bundle-Version: )(.*)/ ) {
- $version = $2;
- }
- if ( m/(^(Export-Package): )(.*)$/ ) {
- my $bunlist = "$3" . "\n";
- while (<MANIFEST>) {
- if ( m/^[[:upper:]][[:alpha:]]+-[[:upper:]][[:alpha:]]+: .*/ ) {
- $len = length $_;
- seek MANIFEST, $len * -1, 1;
- last;
- }
- $bunlist .= "$_";
- }
- push @bundlelist, parsePkgString($bunlist, $file);
- }
- }
-
- # skip this jar if no bundle name exists
- if ( !$bundleName eq "" ) {
- if ( !$version eq "" ) {
- $version = parseVersion($version);
- push @bundlelist, { FILE => "$file", NAME => "$bundleName", VERSION => "$version" };
- } else {
- push @bundlelist, { FILE => "$file", NAME => "$bundleName", VERSION => "" };
- }
- }
- `rm -rf $tmpdir`;
- }
- }
- if ( !$debug ) { @bundlelist = prepareOSGiBundlesList(@bundlelist); }
- $list = "";
- for $bundle (@bundlelist) {
- if ( !$debug ) {
- $list .= "osgi(" . $bundle->{NAME} . ")" . $bundle->{VERSION} . "\n";
- } else {
- $list .= $bundle->{FILE} . " osgi(" . $bundle->{NAME} . ")" . $bundle->{VERSION} . "\n";
- }
- }
- print $list;
- }
-}
-
-# this function print requires of OSGi aware files
-sub getRequires {
-
- my $queue = Thread::Queue->new;
- foreach $file (@_) {
- $queue->enqueue($file);
- }
-
- my @workers;
- push @workers, threads->create('getRequiresWorker');
- push @workers, threads->create('getRequiresWorker');
- push @workers, threads->create('getRequiresWorker');
- push @workers, threads->create('getRequiresWorker');
-
- map { $_->join } @workers;
-
- sub getRequiresWorker {
- while ( my $file = $queue->dequeue_nb ) {
- next if ( -f $file && -r _ );
- $file =~ s/[^[:print:]]//g;
- if ( $file =~ m/$MANIFEST_NAME$/ || $file =~ m/\.jar$/ ) {
- # we explicitly requires symlinked jars
- # _that_reside_outside_the_package_
- if (-l $file) {
- $exist = 0;
- $lnksrc = `readlink -qen $file`;
- foreach $exfile ( @allfiles ) {
- $exfile =~ s/[^[:print:]]//g;
- if ( $lnksrc =~ m/$exfile$/ ) {
- $exist = 1;
- last;
- }
- }
- print "$lnksrc\n" if (!$exist);
- next;
- }
-
- if ( $file =~ m/\.jar$/ ) {
- if ( `zipinfo -1 $file 2> /dev/null | grep -e \^$MANIFEST_NAME` eq "$MANIFEST_NAME\n" ) {
- # extract MANIFEST.MF file from jar to temporary directory
- $tmpdir = tempdir( CLEANUP => 1 );
- `unzip -d $tmpdir -qqo $file $MANIFEST_NAME`;
- open( MANIFEST, "$tmpdir/$MANIFEST_NAME" );
- }
- } else {
- open( MANIFEST, "$file" );
- }
- while (<MANIFEST>) {
- if ( m/(^(Require-Bundle|Import-Package): )(.*)$/ ) {
- my $bunlist = "$3" . "\n";
- while (<MANIFEST>) {
- if (m/^[[:upper:]][[:alpha:]]+-[[:upper:]][[:alpha:]]+: .*/ ) {
- $len = length $_;
- seek MANIFEST, $len * -1, 1;
- last;
- }
- $bunlist .= "$_";
- }
- push @bundlelist, parsePkgString($bunlist, $file);
- }
- # we also explicitly require symlinked jars define by
- # Bundle-ClassPath attribut
- if ( m/(^(Bundle-ClassPath): )(.*)$/ ) {
- $bunclp = "$3" . "\n";
- while (<MANIFEST>) {
- if ( m/^[[:upper:]][[:alpha:]]+-[[:upper:]][[:alpha:]]+: .*/ ) {
- $len = length $_;
- seek MANIFEST, $len * -1, 1;
- last;
- }
- $bunclp .= "$_";
- }
- $bunclp =~ s/\ //g;
- $bunclp =~ s/\n//g;
- $bunclp =~ s/[^[:print:]]//g;
- $dir = `dirname $file`;
- $dir =~ s/\n//g;
- @jars = split /,/, $bunclp;
- for $jarfile (@jars) {
- $jarfile = "$dir\/\.\.\/$jarfile";
- $jarfile = readlink $jarfile;
- if ( !$jarfile eq "" ) {
- print "$jarfile" . "\n";
- }
- }
- }
- }
- `rm -rf $tmpdir`;
- }
- }
- if ( !$debug ) { @bundlelist = prepareOSGiBundlesList(@bundlelist); }
- $list = "";
- for $bundle (@bundlelist) {
- # replace '=' by '>=' because qualifiers are set on provides
- # but not on requires.
- $bundle->{VERSION} =~ s/\ =/\ >=/g;
- if ( !$debug ) {
- $list .= "osgi(" . $bundle->{NAME} . ")" . $bundle->{VERSION} . "\n";
- } else {
- $list .= $bundle->{FILE} . " osgi(" . $bundle->{NAME} . ")" . $bundle->{VERSION} . "\n";
- }
- }
- print $list;
- }
-}
-
-# this function print system bundles of OSGi profile files.
-sub getSystemBundles {
- foreach $file (@_) {
- if ( ! -f $file || ! -r _ ) {
- print "'$file' file not found or cannot be read!";
- next;
- } else {
- open( PROFILE, "$file" );
- while (<PROFILE>) {
- if ( $file =~ m/\.profile$/ ) {
- if (m/(^(org\.osgi\.framework\.system\.packages)[=|\ ]+)(.*)$/) {
- $syspkgs = "$3" . "\n";
- while (<PROFILE>) {
- if (m/^[a-z]/) {
- $len = length $_;
- seek MANIFEST, $len * -1, 1;
- last;
- }
- $syspkgs .= "$_";
- }
- $syspkgs =~ s/\s+//g;
- $syspkgs =~ s/\\//g;
- @bundles = split /,/, $syspkgs;
- foreach $bundle (@bundles) {
- print "osgi(" . $bundle . ")\n";
- }
- }
- }
- }
- }
- }
-}
-
-sub parsePkgString {
- my $bunstr = $_[0];
- my $file = $_[1];
- my @return;
- $bunstr =~ s/ //g;
- $bunstr =~ s/\n//g;
- $bunstr =~ s/[^[:print:]]//g;
- $bunstr =~ s/("[[:alnum:]|\-|\_|\.|\(|\)|\[|\]]+)(,)([[:alnum:]|\-|\_|\.|\(|\)|\[|\]]+")/$1 $3/g;
- # remove uses bundle from Export-Package attribute
- $bunstr =~ s/uses:="[[:alnum:]|\-|\_|\.|\(|\)|\[|\]|,]+"//g;
- # remove optional dependencies
- $bunstr =~ s/,.*;resolution:=optional//g;
- # remove x-friends
- $bunstr =~ s/;x-friends:="[[:alnum:]|\-|\_|\.|\(|\)|\[|\]|,]+"//g;
- # remove signatures
- $bunstr =~ s/Name:.*SHA1-Digest:.*//g;
- @reqcomp = split /,/, $bunstr;
- foreach $reqelement (@reqcomp) {
- @reqelementfrmnt = split /;/, $reqelement;
- $name = "";
- $version = "";
- $name = $reqelementfrmnt[0];
- $name =~ s/\"//g;
- # ignoring OSGi 'system.bundle'
- next if ( $name =~ m/^system\.bundle$/ );
- for $i ( 1 .. $#reqelementfrmnt ) {
- if ( $reqelementfrmnt[$i] =~ m/(^(bundle-|)version=")(.*)(")/ ) {
- $version = $3;
- last;
- }
- }
- $version = parseVersion($version);
- push @return, { FILE => "$file", NAME => "$name", VERSION => "$version" };
- }
- return @return;
-}
-
-sub parseVersion {
- my $ver = $_[0];
- if ( $ver eq "" ) { return ""; }
- if ( $ver =~ m/(^[\[|\(])(.+)\ (.+)([\]|\)]$)/ ) {
- if ( $1 eq "\[" ) {
- $ver = " >= $2";
- } else {
- $ver = " > $2";
- }
- } else {
- $ver = " = $ver";
- }
- # we always return a full OSGi version to be able to match 1.0
- # and 1.0.0 as equal in RPM.
- ( $major, $minor, $micro, $qualifier ) = split( '\.', $ver );
- if ( !defined($minor) || !$minor ) {
- $minor = 0;
- }
- if ( !defined($micro) || !$micro ) {
- $micro = 0;
- }
- if ( !defined($qualifier) || !$qualifier ) {
- $qualifier = "";
- } else {
- $qualifier = "." . $qualifier;
- }
- $ver = $major . "." . $minor . "." . $micro . $qualifier;
- return $ver;
-}
-
-# this function put the max version on each bundles to be able to remove
-# duplicate deps with 'sort -u' command.
-sub prepareOSGiBundlesList {
- foreach $bundle (@_) {
- foreach $cmp (@_) {
- if ( $bundle->{NAME} eq $cmp->{NAME} ) {
- $result = compareVersion( $bundle->{VERSION}, $cmp->{VERSION} );
- if ( $result < 0 ) {
- $bundle->{VERSION} = $cmp->{VERSION};
- }
- }
- }
- }
- return @_;
-}
-
-# this function returns a negative integer, zero, or a positive integer if
-# $ver1 is less than, equal to, or greater than $ver2.
-#
-# REMEMBER: we mimic org.osgi.framework.Version#compareTo method but
-# *at this time* we don't take care of the qualifier part of the version.
-sub compareVersion {
- my $ver1 = $_[0];
- my $ver2 = $_[1];
-
- $ver1 = "0.0.0" if ( $ver1 eq "" );
- $ver2 = "0.0.0" if ( $ver2 eq "" );
-
- $ver1 =~ m/([0-9]+)(\.)([0-9]+)(\.)([0-9]+)/;
- $major1 = $1;
- $minor1 = $3;
- $micro1 = $5;
-
- $ver2 =~ m/([0-9]+)(\.)([0-9]+)(\.)([0-9]+)/;
- $major2 = $1;
- $minor2 = $3;
- $micro2 = $5;
-
- $result = $major1 - $major2;
- return $result if ( $result != 0 );
-
- $result = $minor1 - $minor2;
- return $result if ( $result != 0 );
-
- $result = $micro1 - $micro2;
- return $result if ( $result != 0 );
-
- return $result;
-}
+++ /dev/null
-#!/usr/bin/perl
-
-# RPM (and it's source code) is covered under two separate licenses.
-
-# The entire code base may be distributed under the terms of the GNU
-# General Public License (GPL), which appears immediately below.
-# Alternatively, all of the source code in the lib subdirectory of the
-# RPM source code distribution as well as any code derived from that
-# code may instead be distributed under the GNU Library General Public
-# License (LGPL), at the choice of the distributor. The complete text
-# of the LGPL appears at the bottom of this file.
-
-# This alternative is allowed to enable applications to be linked
-# against the RPM library (commonly called librpm) without forcing
-# such applications to be distributed under the GPL.
-
-# Any questions regarding the licensing of RPM should be addressed to
-# Erik Troan <ewt@redhat.com>.
-
-# a simple script to print the proper name for perl libraries.
-
-# To save development time I do not parse the perl grammmar but
-# instead just lex it looking for what I want. I take special care to
-# ignore comments and pod's.
-
-# it would be much better if perl could tell us the proper name of a
-# given script.
-
-# The filenames to scan are either passed on the command line or if
-# that is empty they are passed via stdin.
-
-# If there are lines in the file which match the pattern
-# (m/^\s*\$VERSION\s*=\s+/)
-# then these are taken to be the version numbers of the modules.
-# Special care is taken with a few known idioms for specifying version
-# numbers of files under rcs/cvs control.
-
-# If there are strings in the file which match the pattern
-# m/^\s*\$RPM_Provides\s*=\s*["'](.*)['"]/i
-# then these are treated as additional names which are provided by the
-# file and are printed as well.
-
-# I plan to rewrite this in C so that perl is not required by RPM at
-# build time.
-
-# by Ken Estes Mail.com kestes@staff.mail.com
-
-if ("@ARGV") {
- foreach (@ARGV) {
- process_file($_);
- }
-} else {
-
- # notice we are passed a list of filenames NOT as common in unix the
- # contents of the file.
-
- foreach (<>) {
- process_file($_);
- }
-}
-
-
-foreach $module (sort keys %require) {
- if (length($require{$module}) == 0) {
- print "perl($module)\n";
- } else {
-
- # I am not using rpm3.0 so I do not want spaces arround my
- # operators. Also I will need to change the processing of the
- # $RPM_* variable when I upgrade.
-
- print "perl($module) = $require{$module}\n";
- }
-}
-
-exit 0;
-
-
-
-sub process_file {
-
- my ($file) = @_;
- chomp $file;
-
- if (!open(FILE, $file)) {
- warn("$0: Warning: Could not open file '$file' for reading: $!\n");
- return;
- }
-
- my ($package, $version, $incomment, $inover) = ();
-
- while (<FILE>) {
-
- # skip the documentation
-
- # we should not need to have item in this if statement (it
- # properly belongs in the over/back section) but people do not
- # read the perldoc.
-
- if (m/^=(head[1-4]|pod|for|item)/) {
- $incomment = 1;
- }
-
- if (m/^=(cut)/) {
- $incomment = 0;
- $inover = 0;
- }
-
- if (m/^=(over)/) {
- $inover = 1;
- }
-
- if (m/^=(back)/) {
- $inover = 0;
- }
-
- if ($incomment || $inover) {
- next;
- }
-
- # skip the data section
- if (m/^__(DATA|END)__$/) {
- last;
- }
-
- # not everyone puts the package name of the file as the first
- # package name so we report all namespaces except some common
- # false positives as if they were provided packages (really ugly).
-
- if (m/^\s*package\s+([_:a-zA-Z0-9]+)\s*;/) {
- $package = $1;
- undef $version;
- if ($package eq 'main') {
- undef $package;
- } else {
- # If $package already exists in the $require hash, it means
- # the package definition is broken up over multiple blocks.
- # In that case, don't stomp a previous $VERSION we might have
- # found. (See BZ#214496.)
- $require{$package} = undef unless (exists $require{$package});
- }
- }
-
- # after we found the package name take the first assignment to
- # $VERSION as the version number. Exporter requires that the
- # variable be called VERSION so we are safe.
-
- # here are examples of VERSION lines from the perl distribution
-
- #FindBin.pm:$VERSION = $VERSION = sprintf("%d.%02d", q$Revision: 1.9 $ =~ /(\d+)\.(\d+)/);
- #ExtUtils/Install.pm:$VERSION = substr q$Revision: 1.9 $, 10;
- #CGI/Apache.pm:$VERSION = (qw$Revision: 1.9 $)[1];
- #DynaLoader.pm:$VERSION = $VERSION = "1.03"; # avoid typo warning
- #General.pm:$Config::General::VERSION = 2.33;
- #
- # or with the new "our" pragma you could (read will) see:
- #
- # our $VERSION = '1.00'
- if ($package && m/^\s*(our\s+)?\$(\Q$package\E::)?VERSION\s*=\s+/) {
-
- # first see if the version string contains the string
- # '$Revision' this often causes bizzare strings and is the most
- # common method of non static numbering.
-
- if (m/(\$Revision: (\d+[.0-9]+))/) {
- $version = $2;
- } elsif (m/['"]?(\d+[.0-9]+)['"]?/) {
-
- # look for a static number hard coded in the script
-
- $version = $1;
- }
- $require{$package} = $version;
- }
-
- # Allow someone to have a variable that defines virtual packages
- # The variable is called $RPM_Provides. It must be scoped with
- # "our", but not "local" or "my" (just would not make sense).
- #
- # For instance:
- #
- # $RPM_Provides = "blah bleah"
- #
- # Will generate provides for "blah" and "bleah".
- #
- # Each keyword can appear multiple times. Don't
- # bother with datastructures to store these strings,
- # if we need to print it print it now.
-
- if (m/^\s*(our\s+)?\$RPM_Provides\s*=\s*["'](.*)['"]/i) {
- foreach $_ (split(/\s+/, $2)) {
- print "$_\n";
- }
- }
-
- }
-
- close(FILE) ||
- die("$0: Could not close file: '$file' : $!\n");
-
- return;
-}
+++ /dev/null
-#!/usr/bin/perl
-
-# RPM (and its source code) is covered under two separate licenses.
-
-# The entire code base may be distributed under the terms of the GNU
-# General Public License (GPL), which appears immediately below.
-# Alternatively, all of the source code in the lib subdirectory of the
-# RPM source code distribution as well as any code derived from that
-# code may instead be distributed under the GNU Library General Public
-# License (LGPL), at the choice of the distributor. The complete text
-# of the LGPL appears at the bottom of this file.
-
-# This alternatively is allowed to enable applications to be linked
-# against the RPM library (commonly called librpm) without forcing
-# such applications to be distributed under the GPL.
-
-# Any questions regarding the licensing of RPM should be addressed to
-# Erik Troan <ewt@redhat.com>.
-
-# a simple makedepend like script for perl.
-
-# To save development time I do not parse the perl grammar but
-# instead just lex it looking for what I want. I take special care to
-# ignore comments and pod's.
-
-# It would be much better if perl could tell us the dependencies of a
-# given script.
-
-# The filenames to scan are either passed on the command line or if
-# that is empty they are passed via stdin.
-
-# If there are strings in the file which match the pattern
-# m/^\s*\$RPM_Requires\s*=\s*["'](.*)['"]/i
-# then these are treated as additional names which are required by the
-# file and are printed as well.
-
-# I plan to rewrite this in C so that perl is not required by RPM at
-# build time.
-
-# by Ken Estes Mail.com kestes@staff.mail.com
-
-$HAVE_VERSION = 0;
-eval { require version; $HAVE_VERSION = 1; };
-
-
-if ("@ARGV") {
- foreach (@ARGV) {
- process_file($_);
- }
-} else {
-
- # notice we are passed a list of filenames NOT as common in unix the
- # contents of the file.
-
- foreach (<>) {
- process_file($_);
- }
-}
-
-
-foreach $perlver (sort keys %perlreq) {
- print "perl >= $perlver\n";
-}
-foreach $module (sort keys %require) {
- if (length($require{$module}) == 0) {
- print "perl($module)\n";
- } else {
-
- # I am not using rpm3.0 so I do not want spaces around my
- # operators. Also I will need to change the processing of the
- # $RPM_* variable when I upgrade.
-
- print "perl($module) >= $require{$module}\n";
- }
-}
-
-exit 0;
-
-
-
-sub add_require {
- my ($module, $newver) = @_;
- my $oldver = $require{$module};
- if ($oldver) {
- $require{$module} = $newver
- if ($HAVE_VERSION && $newver && version->new($oldver) < $newver);
- }
- else {
- $require{$module} = $newver;
- }
-}
-
-sub process_file {
-
- my ($file) = @_;
- chomp $file;
-
- if (!open(FILE, $file)) {
- warn("$0: Warning: Could not open file '$file' for reading: $!\n");
- return;
- }
-
- while (<FILE>) {
-
- # skip the "= <<" block
-
- if (m/^\s*\$(?:.*)\s*=\s*<<\s*(["'`])(.+?)\1/ ||
- m/^\s*\$(.*)\s*=\s*<<(\w+)\s*;/) {
- $tag = $2;
- while (<FILE>) {
- chomp;
- ( $_ eq $tag ) && last;
- }
- $_ = <FILE>;
- }
-
- # skip q{} quoted sections - just hope we don't have curly brackets
- # within the quote, nor an escaped hash mark that isn't a comment
- # marker, such as occurs right here. Draw the line somewhere.
- if ( m/^.*\Wq[qxwr]?\s*([{([#|\/])[^})\]#|\/]*$/ && ! m/^\s*(require|use)\s/ ) {
- $tag = $1;
- $tag =~ tr/{\(\[\#|\//})]#|\//;
- while (<FILE>) {
- ( $_ =~ m/\}/ ) && last;
- }
- }
-
- # skip the documentation
-
- # we should not need to have item in this if statement (it
- # properly belongs in the over/back section) but people do not
- # read the perldoc.
-
- if (/^=(head[1-4]|pod|for|item)/) {
- /^=cut/ && next while <FILE>;
- }
-
- if (/^=over/) {
- /^=back/ && next while <FILE>;
- }
-
- # skip the data section
- if (m/^__(DATA|END)__$/) {
- last;
- }
-
- # Each keyword can appear multiple times. Don't
- # bother with datastructures to store these strings,
- # if we need to print it print it now.
- #
- # Again allow for "our".
- if (m/^\s*(our\s+)?\$RPM_Requires\s*=\s*["'](.*)['"]/i) {
- foreach $_ (split(/\s+/, $2)) {
- print "$_\n";
- }
- }
-
- my $modver_re = qr/[.0-9]+/;
-
- if (
-
-# ouch could be in a eval, perhaps we do not want these since we catch
-# an exception they must not be required
-
-# eval { require Term::ReadLine } or die $@;
-# eval "require Term::Rendezvous;" or die $@;
-# eval { require Carp } if defined $^S; # If error/warning during compilation,
-
-
- (m/^(\s*) # we hope the inclusion starts the line
- (require|use)\s+(?!\{) # do not want 'do {' loops
- # quotes around name are always legal
- ['"]?([^; '"\t#]+)['"]?[\t; ]
- # the syntax for 'use' allows version requirements
- # the latter part is for "use base qw(Foo)" and friends special case
- \s*($modver_re|(qw\s*[(\/'"]\s*|['"])[^)\/"'\$]*?\s*[)\/"'])?
- /x)
- ) {
- my ($whitespace, $statement, $module, $version) = ($1, $2, $3, $4);
-
- # we only consider require statements that are flushed against
- # the left edge. any other require statements give too many
- # false positives, as they are usually inside of an if statement
- # as a fallback module or a rarely used option
-
- ($whitespace ne "" && $statement eq "require") && next;
-
- # if there is some interpolation of variables just skip this
- # dependency, we do not want
- # do "$ENV{LOGDIR}/$rcfile";
-
- ($module =~ m/\$/) && next;
-
- # skip if the phrase was "use of" -- shows up in gimp-perl, et al.
- next if $module eq 'of';
-
- # if the module ends in a comma we probably caught some
- # documentation of the form 'check stuff,\n do stuff, clean
- # stuff.' there are several of these in the perl distribution
-
- ($module =~ m/[,>]$/) && next;
-
- # if the module name starts in a dot it is not a module name.
- # Is this necessary? Please give me an example if you turn this
- # back on.
-
- # ($module =~ m/^\./) && next;
-
- # if the module starts with /, it is an absolute path to a file
- if ($module =~ m(^/)) {
- print "$module\n";
- next;
- }
-
- # sometimes people do use POSIX qw(foo), or use POSIX(qw(foo)) etc.
- # we can strip qw.*$, as well as (.*$:
- $module =~ s/qw.*$//;
- $module =~ s/\(.*$//;
-
- # if the module ends with .pm, strip it to leave only basename.
- $module =~ s/\.pm$//;
-
- # some perl programmers write 'require URI/URL;' when
- # they mean 'require URI::URL;'
-
- $module =~ s/\//::/;
-
- # trim off trailing parentheses if any. Sometimes people pass
- # the module an empty list.
-
- $module =~ s/\(\s*\)$//;
-
- if ( $module =~ m/^v?([0-9._]+)$/ ) {
- # if module is a number then both require and use interpret that
- # to mean that a particular version of perl is specified
-
- my $ver = $1;
- if ($ver =~ /5.00/) {
- $perlreq{"0:$ver"} = 1;
- next;
- }
- else {
- $perlreq{"1:$ver"} = 1;
- next;
- }
-
- };
-
- # ph files do not use the package name inside the file.
- # perlmodlib documentation says:
-
- # the .ph files made by h2ph will probably end up as
- # extension modules made by h2xs.
-
- # so do not expend much effort on these.
-
-
- # there is no easy way to find out if a file named systeminfo.ph
- # will be included with the name sys/systeminfo.ph so only use the
- # basename of *.ph files
-
- ($module =~ m/\.ph$/) && next;
-
- # use base qw(Foo) dependencies
- if ($statement eq "use" && $module eq "base") {
- add_require($module, undef);
- if ($version =~ /^qw\s*[(\/'"]\s*([^)\/"']+?)\s*[)\/"']/) {
- add_require($_, undef) for split(' ', $1);
- }
- elsif ($version =~ /(["'])([^"']+)\1/) {
- add_require($2, undef);
- }
- next;
- }
- $version = undef unless $version =~ /^$modver_re$/o;
-
- add_require($module, $version);
- }
-
- }
-
- close(FILE) ||
- die("$0: Could not close file: '$file' : $!\n");
-
- return;
-}
+++ /dev/null
-#!/usr/bin/perl -Tw
-#
-# perldeps.pl -- Analyze dependencies of Perl packages
-#
-# Michael Jennings
-# 7 November 2005
-#
-# $Id: perldeps.pl,v 1.6 2006/04/04 20:12:03 mej Exp $
-#
-
-use strict;
-use Config;
-use File::Basename;
-use File::Find;
-use Getopt::Long;
-use POSIX;
-
-############### Debugging stolen from Mezzanine::Util ###############
-my $DEBUG = 0;
-
-# Debugging output
-sub
-dprintf(@)
-{
- my ($f, $l, $s, $format);
- my @params = @_;
-
- return if (! $DEBUG);
- $format = shift @params;
- if (!scalar(@params)) {
- return dprint($format);
- }
- (undef, undef, undef, $s) = caller(1);
- if (!defined($s)) {
- $s = "MAIN";
- }
- (undef, $f, $l) = caller(0);
- $f =~ s/^.*\/([^\/]+)$/$1/;
- $s =~ s/^\w+:://g;
- $s .= "()" if ($s =~ /^\w+$/);
- $f = "" if (!defined($f));
- $l = "" if (!defined($l));
- $format = "" if (!defined($format));
- for (my $i = 0; $i < scalar(@params); $i++) {
- if (!defined($params[$i])) {
- $params[$i] = "<undef>";
- }
- }
- printf("[$f/$l/$s] $format", @params);
-}
-
-sub
-dprint(@)
-{
- my ($f, $l, $s);
- my @params = @_;
-
- return if (! $DEBUG);
- (undef, undef, undef, $s) = caller(1);
- if (!defined($s)) {
- $s = "MAIN";
- }
- (undef, $f, $l) = caller(0);
- $f =~ s/^.*\/([^\/]+)$/$1/;
- $s =~ s/\w+:://g;
- $s .= "()" if ($s =~ /^\w+$/);
- $f = "" if (!defined($f));
- $l = "" if (!defined($l));
- $s = "" if (!defined($s));
- for (my $i = 0; $i < scalar(@params); $i++) {
- if (!defined($params[$i])) {
- $params[$i] = "<undef>";
- }
- }
- print "[$f/$l/$s] ", @params;
-}
-
-############### Module::ScanDeps Code ###############
-use constant dl_ext => ".$Config{dlext}";
-use constant lib_ext => $Config{lib_ext};
-use constant is_insensitive_fs => (
- -s $0
- and (-s lc($0) || -1) == (-s uc($0) || -1)
- and (-s lc($0) || -1) == -s $0
-);
-
-my $CurrentPackage = '';
-my $SeenTk;
-
-# Pre-loaded module dependencies
-my %Preload = (
- 'AnyDBM_File.pm' => [qw( SDBM_File.pm )],
- 'Authen/SASL.pm' => 'sub',
- 'Bio/AlignIO.pm' => 'sub',
- 'Bio/Assembly/IO.pm' => 'sub',
- 'Bio/Biblio/IO.pm' => 'sub',
- 'Bio/ClusterIO.pm' => 'sub',
- 'Bio/CodonUsage/IO.pm' => 'sub',
- 'Bio/DB/Biblio.pm' => 'sub',
- 'Bio/DB/Flat.pm' => 'sub',
- 'Bio/DB/GFF.pm' => 'sub',
- 'Bio/DB/Taxonomy.pm' => 'sub',
- 'Bio/Graphics/Glyph.pm' => 'sub',
- 'Bio/MapIO.pm' => 'sub',
- 'Bio/Matrix/IO.pm' => 'sub',
- 'Bio/Matrix/PSM/IO.pm' => 'sub',
- 'Bio/OntologyIO.pm' => 'sub',
- 'Bio/PopGen/IO.pm' => 'sub',
- 'Bio/Restriction/IO.pm' => 'sub',
- 'Bio/Root/IO.pm' => 'sub',
- 'Bio/SearchIO.pm' => 'sub',
- 'Bio/SeqIO.pm' => 'sub',
- 'Bio/Structure/IO.pm' => 'sub',
- 'Bio/TreeIO.pm' => 'sub',
- 'Bio/LiveSeq/IO.pm' => 'sub',
- 'Bio/Variation/IO.pm' => 'sub',
- 'Crypt/Random.pm' => sub {
- _glob_in_inc('Crypt/Random/Provider', 1);
- },
- 'Crypt/Random/Generator.pm' => sub {
- _glob_in_inc('Crypt/Random/Provider', 1);
- },
- 'DBI.pm' => sub {
- grep !/\bProxy\b/, _glob_in_inc('DBD', 1);
- },
- 'DBIx/SearchBuilder.pm' => 'sub',
- 'DBIx/ReportBuilder.pm' => 'sub',
- 'Device/ParallelPort.pm' => 'sub',
- 'Device/SerialPort.pm' => [ qw(
- termios.ph asm/termios.ph sys/termiox.ph sys/termios.ph sys/ttycom.ph
- ) ],
- 'ExtUtils/MakeMaker.pm' => sub {
- grep /\bMM_/, _glob_in_inc('ExtUtils', 1);
- },
- 'File/Basename.pm' => [qw( re.pm )],
- 'File/Spec.pm' => sub {
- require File::Spec;
- map { my $name = $_; $name =~ s!::!/!g; "$name.pm" } @File::Spec::ISA;
- },
- 'HTTP/Message.pm' => [ qw(
- URI/URL.pm URI.pm
- ) ],
- 'IO.pm' => [ qw(
- IO/Handle.pm IO/Seekable.pm IO/File.pm
- IO/Pipe.pm IO/Socket.pm IO/Dir.pm
- ) ],
- 'IO/Socket.pm' => [qw( IO/Socket/UNIX.pm )],
- 'LWP/UserAgent.pm' => [ qw(
- URI/URL.pm URI/http.pm LWP/Protocol/http.pm
- LWP/Protocol/https.pm
- ), _glob_in_inc("LWP/Authen", 1) ],
- 'Locale/Maketext/Lexicon.pm' => 'sub',
- 'Locale/Maketext/GutsLoader.pm' => [qw( Locale/Maketext/Guts.pm )],
- 'Mail/Audit.pm' => 'sub',
- 'Math/BigInt.pm' => 'sub',
- 'Math/BigFloat.pm' => 'sub',
- 'Module/Build.pm' => 'sub',
- 'Module/Pluggable.pm' => sub {
- _glob_in_inc("$CurrentPackage/Plugin", 1);
- },
- 'MIME/Decoder.pm' => 'sub',
- 'Net/DNS/RR.pm' => 'sub',
- 'Net/FTP.pm' => 'sub',
- 'Net/SSH/Perl.pm' => 'sub',
- 'PDF/API2/Resource/Font.pm' => 'sub',
- 'PDF/API2/Basic/TTF/Font.pm' => sub {
- _glob_in_inc('PDF/API2/Basic/TTF', 1);
- },
- 'PDF/Writer.pm' => 'sub',
- 'POE' => [ qw(
- POE/Kernel.pm POE/Session.pm
- ) ],
- 'POE/Kernel.pm' => [
- map "POE/Resource/$_.pm", qw(
- Aliases Events Extrefs FileHandles
- SIDs Sessions Signals Statistics
- )
- ],
- 'Parse/AFP.pm' => 'sub',
- 'Parse/Binary.pm' => 'sub',
- 'Regexp/Common.pm' => 'sub',
- 'SOAP/Lite.pm' => sub {
- (($] >= 5.008 ? ('utf8.pm') : ()), _glob_in_inc('SOAP/Transport', 1));
- },
- 'SQL/Parser.pm' => sub {
- _glob_in_inc('SQL/Dialects', 1);
- },
- 'SVN/Core.pm' => sub {
- _glob_in_inc('SVN', 1),
- map "auto/SVN/$_->{name}", _glob_in_inc('auto/SVN'),
- },
- 'SVK/Command.pm' => sub {
- _glob_in_inc('SVK', 1);
- },
- 'SerialJunk.pm' => [ qw(
- termios.ph asm/termios.ph sys/termiox.ph sys/termios.ph sys/ttycom.ph
- ) ],
- 'Template.pm' => 'sub',
- 'Term/ReadLine.pm' => 'sub',
- 'Tk.pm' => sub {
- $SeenTk = 1;
- qw( Tk/FileSelect.pm Encode/Unicode.pm );
- },
- 'Tk/Balloon.pm' => [qw( Tk/balArrow.xbm )],
- 'Tk/BrowseEntry.pm' => [qw( Tk/cbxarrow.xbm Tk/arrowdownwin.xbm )],
- 'Tk/ColorEditor.pm' => [qw( Tk/ColorEdit.xpm )],
- 'Tk/FBox.pm' => [qw( Tk/folder.xpm Tk/file.xpm )],
- 'Tk/Toplevel.pm' => [qw( Tk/Wm.pm )],
- 'URI.pm' => sub {
- grep !/.\b[_A-Z]/, _glob_in_inc('URI', 1);
- },
- 'Win32/EventLog.pm' => [qw( Win32/IPC.pm )],
- 'Win32/Exe.pm' => 'sub',
- 'Win32/TieRegistry.pm' => [qw( Win32API/Registry.pm )],
- 'Win32/SystemInfo.pm' => [qw( Win32/cpuspd.dll )],
- 'XML/Parser.pm' => sub {
- _glob_in_inc('XML/Parser/Style', 1),
- _glob_in_inc('XML/Parser/Encodings', 1),
- },
- 'XML/Parser/Expat.pm' => sub {
- ($] >= 5.008) ? ('utf8.pm') : ();
- },
- 'XML/SAX.pm' => [qw( XML/SAX/ParserDetails.ini ) ],
- 'XMLRPC/Lite.pm' => sub {
- _glob_in_inc('XMLRPC/Transport', 1),;
- },
- 'diagnostics.pm' => sub {
- _find_in_inc('Pod/perldiag.pod')
- ? 'Pod/perldiag.pl'
- : 'pod/perldiag.pod';
- },
- 'utf8.pm' => [
- 'utf8_heavy.pl', do {
- my $dir = 'unicore';
- my @subdirs = qw( To );
- my @files = map "$dir/lib/$_->{name}", _glob_in_inc("$dir/lib");
-
- if (@files) {
- # 5.8.x
- push @files, (map "$dir/$_.pl", qw( Exact Canonical ));
- }
- else {
- # 5.6.x
- $dir = 'unicode';
- @files = map "$dir/Is/$_->{name}", _glob_in_inc("$dir/Is")
- or return;
- push @subdirs, 'In';
- }
-
- foreach my $subdir (@subdirs) {
- foreach (_glob_in_inc("$dir/$subdir")) {
- push @files, "$dir/$subdir/$_->{name}";
- }
- }
- @files;
- }
- ],
- 'charnames.pm' => [
- _find_in_inc('unicore/Name.pl') ? 'unicore/Name.pl' : 'unicode/Name.pl'
- ],
-);
-
-my $Keys = 'files|keys|recurse|rv|skip|first|execute|compile';
-sub scan_deps {
- my %args = (
- rv => {},
- (@_ and $_[0] =~ /^(?:$Keys)$/o) ? @_ : (files => [@_], recurse => 1)
- );
-
- scan_deps_static(\%args);
-
- if ($args{execute} or $args{compile}) {
- scan_deps_runtime(
- rv => $args{rv},
- files => $args{files},
- execute => $args{execute},
- compile => $args{compile},
- skip => $args{skip}
- );
- }
-
- return ($args{rv});
-}
-
-sub scan_deps_static {
- my ($args) = @_;
- my ($files, $keys, $recurse, $rv, $skip, $first, $execute, $compile) =
- @$args{qw( files keys recurse rv skip first execute compile )};
-
- $rv ||= {};
- $skip ||= {};
-
- foreach my $file (@{$files}) {
- my $key = shift @{$keys};
- next if $skip->{$file}++;
- next if is_insensitive_fs()
- and $file ne lc($file) and $skip->{lc($file)}++;
-
- local *FH;
- open FH, $file or die "Cannot open $file: $!";
-
- $SeenTk = 0;
-
- # Line-by-line scanning
- LINE:
- while (<FH>) {
- chomp(my $line = $_);
- foreach my $pm (scan_line($line)) {
- last LINE if $pm eq '__END__';
-
- if ($pm eq '__POD__') {
- while (<FH>) { last if (/^=cut/) }
- next LINE;
- }
-
- $pm = 'CGI/Apache.pm' if /^Apache(?:\.pm)$/;
-
- add_deps(
- used_by => $key,
- rv => $rv,
- modules => [$pm],
- skip => $skip
- );
-
- my $preload = $Preload{$pm} or next;
- if ($preload eq 'sub') {
- $pm =~ s/\.p[mh]$//i;
- $preload = [ _glob_in_inc($pm, 1) ];
- }
- elsif (UNIVERSAL::isa($preload, 'CODE')) {
- $preload = [ $preload->($pm) ];
- }
-
- add_deps(
- used_by => $key,
- rv => $rv,
- modules => $preload,
- skip => $skip
- );
- }
- }
- close FH;
-
- # }}}
- }
-
- # Top-level recursion handling {{{
- while ($recurse) {
- my $count = keys %$rv;
- my @files = sort grep -T $_->{file}, values %$rv;
- scan_deps_static({
- files => [ map $_->{file}, @files ],
- keys => [ map $_->{key}, @files ],
- rv => $rv,
- skip => $skip,
- recurse => 0,
- }) or ($args->{_deep} and return);
- last if $count == keys %$rv;
- }
-
- # }}}
-
- return $rv;
-}
-
-sub scan_deps_runtime {
- my %args = (
- perl => $^X,
- rv => {},
- (@_ and $_[0] =~ /^(?:$Keys)$/o) ? @_ : (files => [@_], recurse => 1)
- );
- my ($files, $rv, $execute, $compile, $skip, $perl) =
- @args{qw( files rv execute compile skip perl )};
-
- $files = (ref($files)) ? $files : [$files];
-
- my ($inchash, $incarray, $dl_shared_objects) = ({}, [], []);
- if ($compile) {
- my $file;
-
- foreach $file (@$files) {
- ($inchash, $dl_shared_objects, $incarray) = ({}, [], []);
- _compile($perl, $file, $inchash, $dl_shared_objects, $incarray);
-
- my $rv_sub = _make_rv($inchash, $dl_shared_objects, $incarray);
- _merge_rv($rv_sub, $rv);
- }
- }
- elsif ($execute) {
- my $excarray = (ref($execute)) ? $execute : [@$files];
- my $exc;
- my $first_flag = 1;
- foreach $exc (@$excarray) {
- ($inchash, $dl_shared_objects, $incarray) = ({}, [], []);
- _execute(
- $perl, $exc, $inchash, $dl_shared_objects, $incarray,
- $first_flag
- );
- $first_flag = 0;
- }
-
- my $rv_sub = _make_rv($inchash, $dl_shared_objects, $incarray);
- _merge_rv($rv_sub, $rv);
- }
-
- return ($rv);
-}
-
-sub scan_line {
- my $line = shift;
- my %found;
-
- return '__END__' if $line =~ /^__(?:END|DATA)__$/;
- return '__POD__' if $line =~ /^=\w/;
-
- $line =~ s/\s*#.*$//;
- $line =~ s/[\\\/]+/\//g;
-
- foreach (split(/;/, $line)) {
- if (/^\s*package\s+(\w+);/) {
- $CurrentPackage = $1;
- $CurrentPackage =~ s{::}{/}g;
- return;
- }
- return if /^\s*(use|require)\s+[\d\._]+/;
-
- if (my ($libs) = /\b(?:use\s+lib\s+|(?:unshift|push)\W+\@INC\W+)(.+)/)
- {
- my $archname =
- defined($Config{archname}) ? $Config{archname} : '';
- my $ver = defined($Config{version}) ? $Config{version} : '';
- foreach (grep(/\w/, split(/["';() ]/, $libs))) {
- unshift(@INC, "$_/$ver") if -d "$_/$ver";
- unshift(@INC, "$_/$archname") if -d "$_/$archname";
- unshift(@INC, "$_/$ver/$archname") if -d "$_/$ver/$archname";
- }
- next;
- }
-
- $found{$_}++ for scan_chunk($_);
- }
-
- return sort keys %found;
-}
-
-sub scan_chunk {
- my $chunk = shift;
-
- # Module name extraction heuristics {{{
- my $module = eval {
- $_ = $chunk;
-
- return [ 'base.pm',
- map { s{::}{/}g; "$_.pm" }
- grep { length and !/^q[qw]?$/ } split(/[^\w:]+/, $1) ]
- if /^\s* use \s+ base \s+ (.*)/sx;
-
- return [ 'Class/Autouse.pm',
- map { s{::}{/}g; "$_.pm" }
- grep { length and !/^:|^q[qw]?$/ } split(/[^\w:]+/, $1) ]
- if /^\s* use \s+ Class::Autouse \s+ (.*)/sx
- or /^\s* Class::Autouse \s* -> \s* autouse \s* (.*)/sx;
-
- return [ 'POE.pm',
- map { s{::}{/}g; "POE/$_.pm" }
- grep { length and !/^q[qw]?$/ } split(/[^\w:]+/, $1) ]
- if /^\s* use \s+ POE \s+ (.*)/sx;
-
- return [ 'encoding.pm',
- map { _find_encoding($_) }
- grep { length and !/^q[qw]?$/ } split(/[^\w:]+/, $1) ]
- if /^\s* use \s+ encoding \s+ (.*)/sx;
-
- return $1 if /(?:^|\s)(?:use|no|require)\s+([\w:\.\-\\\/\"\']+)/;
- return $1
- if /(?:^|\s)(?:use|no|require)\s+\(\s*([\w:\.\-\\\/\"\']+)\s*\)/;
-
- if ( s/(?:^|\s)eval\s+\"([^\"]+)\"/$1/
- or s/(?:^|\s)eval\s*\(\s*\"([^\"]+)\"\s*\)/$1/)
- {
- return $1 if /(?:^|\s)(?:use|no|require)\s+([\w:\.\-\\\/\"\']*)/;
- }
-
- return "File/Glob.pm" if /<[^>]*[^\$\w>][^>]*>/;
- return "DBD/$1.pm" if /\b[Dd][Bb][Ii]:(\w+):/;
- if (/(?:(:encoding)|\b(?:en|de)code)\(\s*['"]?([-\w]+)/) {
- my $mod = _find_encoding($2);
- return [ 'PerlIO.pm', $mod ] if $1 and $mod;
- return $mod if $mod;
- }
- return $1 if /(?:^|\s)(?:do|require)\s+[^"]*"(.*?)"/;
- return $1 if /(?:^|\s)(?:do|require)\s+[^']*'(.*?)'/;
- return $1 if /[^\$]\b([\w:]+)->\w/ and $1 ne 'Tk';
- return $1 if /\b(\w[\w:]*)::\w+\(/;
-
- if ($SeenTk) {
- my @modules;
- while (/->\s*([A-Z]\w+)/g) {
- push @modules, "Tk/$1.pm";
- }
- while (/->\s*Scrolled\W+([A-Z]\w+)/g) {
- push @modules, "Tk/$1.pm";
- push @modules, "Tk/Scrollbar.pm";
- }
- return \@modules;
- }
- return;
- };
-
- # }}}
-
- return unless defined($module);
- return wantarray ? @$module : $module->[0] if ref($module);
-
- $module =~ s/^['"]//;
- return unless $module =~ /^\w/;
-
- $module =~ s/\W+$//;
- $module =~ s/::/\//g;
- return if $module =~ /^(?:[\d\._]+|'.*[^']|".*[^"])$/;
-
- $module .= ".pm" unless $module =~ /\./;
- return $module;
-}
-
-sub _find_encoding {
- return unless $] >= 5.008 and eval { require Encode; %Encode::ExtModule };
-
- my $mod = $Encode::ExtModule{ Encode::find_encoding($_[0])->name }
- or return;
- $mod =~ s{::}{/}g;
- return "$mod.pm";
-}
-
-sub _add_info {
- my ($rv, $module, $file, $used_by, $type) = @_;
- return unless defined($module) and defined($file);
-
- $rv->{$module} ||= {
- file => $file,
- key => $module,
- type => $type,
- };
-
- push @{ $rv->{$module}{used_by} }, $used_by
- if defined($used_by)
- and $used_by ne $module
- and !grep { $_ eq $used_by } @{ $rv->{$module}{used_by} };
-}
-
-sub add_deps {
- my %args =
- ((@_ and $_[0] =~ /^(?:modules|rv|used_by)$/)
- ? @_
- : (rv => (ref($_[0]) ? shift(@_) : undef), modules => [@_]));
-
- my $rv = $args{rv} || {};
- my $skip = $args{skip} || {};
- my $used_by = $args{used_by};
-
- foreach my $module (@{ $args{modules} }) {
- next if exists $rv->{$module};
-
- my $file = _find_in_inc($module) or next;
- next if $skip->{$file};
- next if is_insensitive_fs() and $skip->{lc($file)};
-
- my $type = 'module';
- $type = 'data' unless $file =~ /\.p[mh]$/i;
- _add_info($rv, $module, $file, $used_by, $type);
-
- if ($module =~ /(.*?([^\/]*))\.p[mh]$/i) {
- my ($path, $basename) = ($1, $2);
-
- foreach (_glob_in_inc("auto/$path")) {
- next if $skip->{$_->{file}};
- next if is_insensitive_fs() and $skip->{lc($_->{file})};
- next if $_->{file} =~ m{\bauto/$path/.*/}; # weed out subdirs
- next if $_->{name} =~ m/(?:^|\/)\.(?:exists|packlist)$/;
- my $ext = lc($1) if $_->{name} =~ /(\.[^.]+)$/;
- next if $ext eq lc(lib_ext());
- my $type = 'shared' if $ext eq lc(dl_ext());
- $type = 'autoload' if $ext eq '.ix' or $ext eq '.al';
- $type ||= 'data';
-
- _add_info($rv, "auto/$path/$_->{name}", $_->{file}, $module,
- $type);
- }
- }
- }
-
- return $rv;
-}
-
-sub _find_in_inc {
- my $file = shift;
-
- # absolute file names
- return $file if -f $file;
-
- foreach my $dir (grep !/\bBSDPAN\b/, @INC) {
- return "$dir/$file" if -f "$dir/$file";
- }
- return;
-}
-
-sub _glob_in_inc {
- my $subdir = shift;
- my $pm_only = shift;
- my @files;
-
- require File::Find;
-
- foreach my $dir (map "$_/$subdir", grep !/\bBSDPAN\b/, @INC) {
- next unless -d $dir;
- File::Find::find({
- "wanted" => sub {
- my $name = $File::Find::name;
- $name =~ s!^\Q$dir\E/!!;
- return if $pm_only and lc($name) !~ /\.p[mh]$/i;
- push @files, $pm_only
- ? "$subdir/$name"
- : { file => $File::Find::name,
- name => $name,
- }
- if -f;
- },
- "untaint" => 1,
- "untaint_skip" => 1,
- "untaint_pattern" => qr|^([-+@\w./]+)$|
- }, $dir
- );
- }
-
- return @files;
-}
-
-# App::Packer compatibility functions
-
-sub new {
- my ($class, $self) = @_;
- return bless($self ||= {}, $class);
-}
-
-sub set_file {
- my $self = shift;
- foreach my $script (@_) {
- my $basename = $script;
- $basename =~ s/.*\///;
- $self->{main} = {
- key => $basename,
- file => $script,
- };
- }
-}
-
-sub set_options {
- my $self = shift;
- my %args = @_;
- foreach my $module (@{ $args{add_modules} }) {
- $module =~ s/::/\//g;
- $module .= '.pm' unless $module =~ /\.p[mh]$/i;
- my $file = _find_in_inc($module) or next;
- $self->{files}{$module} = $file;
- }
-}
-
-sub calculate_info {
- my $self = shift;
- my $rv = scan_deps(
- keys => [ $self->{main}{key}, sort keys %{ $self->{files} }, ],
- files => [ $self->{main}{file},
- map { $self->{files}{$_} } sort keys %{ $self->{files} },
- ],
- recurse => 1,
- );
-
- my $info = {
- main => { file => $self->{main}{file},
- store_as => $self->{main}{key},
- },
- };
-
- my %cache = ($self->{main}{key} => $info->{main});
- foreach my $key (sort keys %{ $self->{files} }) {
- my $file = $self->{files}{$key};
-
- $cache{$key} = $info->{modules}{$key} = {
- file => $file,
- store_as => $key,
- used_by => [ $self->{main}{key} ],
- };
- }
-
- foreach my $key (sort keys %{$rv}) {
- my $val = $rv->{$key};
- if ($cache{ $val->{key} }) {
- push @{ $info->{ $val->{type} }->{ $val->{key} }->{used_by} },
- @{ $val->{used_by} };
- }
- else {
- $cache{ $val->{key} } = $info->{ $val->{type} }->{ $val->{key} } =
- { file => $val->{file},
- store_as => $val->{key},
- used_by => $val->{used_by},
- };
- }
- }
-
- $self->{info} = { main => $info->{main} };
-
- foreach my $type (sort keys %{$info}) {
- next if $type eq 'main';
-
- my @val;
- if (UNIVERSAL::isa($info->{$type}, 'HASH')) {
- foreach my $val (sort values %{ $info->{$type} }) {
- @{ $val->{used_by} } = map $cache{$_} || "!!$_!!",
- @{ $val->{used_by} };
- push @val, $val;
- }
- }
-
- $type = 'modules' if $type eq 'module';
- $self->{info}{$type} = \@val;
- }
-}
-
-sub get_files {
- my $self = shift;
- return $self->{info};
-}
-
-# scan_deps_runtime utility functions
-
-sub _compile {
- my ($perl, $file, $inchash, $dl_shared_objects, $incarray) = @_;
-
- my $fname = File::Temp::mktemp("$file.XXXXXX");
- my $fhin = FileHandle->new($file) or die "Couldn't open $file\n";
- my $fhout = FileHandle->new("> $fname") or die "Couldn't open $fname\n";
-
- my $line = do { local $/; <$fhin> };
- $line =~ s/use Module::ScanDeps::DataFeed.*?\n//sg;
- $line =~ s/^(.*?)((?:[\r\n]+__(?:DATA|END)__[\r\n]+)|$)/
-use Module::ScanDeps::DataFeed '$fname.out';
-sub {
-$1
-}
-$2/s;
- $fhout->print($line);
- $fhout->close;
- $fhin->close;
-
- system($perl, $fname);
-
- _extract_info("$fname.out", $inchash, $dl_shared_objects, $incarray);
- unlink("$fname");
- unlink("$fname.out");
-}
-
-sub _execute {
- my ($perl, $file, $inchash, $dl_shared_objects, $incarray, $firstflag) = @_;
-
- $DB::single = $DB::single = 1;
-
- my $fname = _abs_path(File::Temp::mktemp("$file.XXXXXX"));
- my $fhin = FileHandle->new($file) or die "Couldn't open $file";
- my $fhout = FileHandle->new("> $fname") or die "Couldn't open $fname";
-
- my $line = do { local $/; <$fhin> };
- $line =~ s/use Module::ScanDeps::DataFeed.*?\n//sg;
- $line = "use Module::ScanDeps::DataFeed '$fname.out';\n" . $line;
- $fhout->print($line);
- $fhout->close;
- $fhin->close;
-
- File::Path::rmtree( ['_Inline'], 0, 1); # XXX hack
- system($perl, $fname) == 0 or die "SYSTEM ERROR in executing $file: $?";
-
- _extract_info("$fname.out", $inchash, $dl_shared_objects, $incarray);
- unlink("$fname");
- unlink("$fname.out");
-}
-
-sub _make_rv {
- my ($inchash, $dl_shared_objects, $inc_array) = @_;
-
- my $rv = {};
- my @newinc = map(quotemeta($_), @$inc_array);
- my $inc = join('|', sort { length($b) <=> length($a) } @newinc);
-
- require File::Spec;
-
- my $key;
- foreach $key (keys(%$inchash)) {
- my $newkey = $key;
- $newkey =~ s"^(?:(?:$inc)/?)""sg if File::Spec->file_name_is_absolute($newkey);
-
- $rv->{$newkey} = {
- 'used_by' => [],
- 'file' => $inchash->{$key},
- 'type' => _gettype($inchash->{$key}),
- 'key' => $key
- };
- }
-
- my $dl_file;
- foreach $dl_file (@$dl_shared_objects) {
- my $key = $dl_file;
- $key =~ s"^(?:(?:$inc)/?)""s;
-
- $rv->{$key} = {
- 'used_by' => [],
- 'file' => $dl_file,
- 'type' => 'shared',
- 'key' => $key
- };
- }
-
- return $rv;
-}
-
-sub _extract_info {
- my ($fname, $inchash, $dl_shared_objects, $incarray) = @_;
-
- use vars qw(%inchash @dl_shared_objects @incarray);
- my $fh = FileHandle->new($fname) or die "Couldn't open $fname";
- my $line = do { local $/; <$fh> };
- $fh->close;
-
- eval $line;
-
- $inchash->{$_} = $inchash{$_} for keys %inchash;
- @$dl_shared_objects = @dl_shared_objects;
- @$incarray = @incarray;
-}
-
-sub _gettype {
- my $name = shift;
- my $dlext = quotemeta(dl_ext());
-
- return 'autoload' if $name =~ /(?:\.ix|\.al|\.bs)$/i;
- return 'module' if $name =~ /\.p[mh]$/i;
- return 'shared' if $name =~ /\.$dlext$/i;
- return 'data';
-}
-
-sub _merge_rv {
- my ($rv_sub, $rv) = @_;
-
- my $key;
- foreach $key (keys(%$rv_sub)) {
- my %mark;
- if ($rv->{$key} and _not_dup($key, $rv, $rv_sub)) {
- warn "different modules for file: $key: were found" .
- "(using the version) after the '=>': ".
- "$rv->{$key}{file} => $rv_sub->{$key}{file}\n";
-
- $rv->{$key}{used_by} = [
- grep (!$mark{$_}++,
- @{ $rv->{$key}{used_by} },
- @{ $rv_sub->{$key}{used_by} })
- ];
- @{ $rv->{$key}{used_by} } = grep length, @{ $rv->{$key}{used_by} };
- $rv->{$key}{file} = $rv_sub->{$key}{file};
- }
- elsif ($rv->{$key}) {
- $rv->{$key}{used_by} = [
- grep (!$mark{$_}++,
- @{ $rv->{$key}{used_by} },
- @{ $rv_sub->{$key}{used_by} })
- ];
- @{ $rv->{$key}{used_by} } = grep length, @{ $rv->{$key}{used_by} };
- }
- else {
- $rv->{$key} = {
- used_by => [ @{ $rv_sub->{$key}{used_by} } ],
- file => $rv_sub->{$key}{file},
- key => $rv_sub->{$key}{key},
- type => $rv_sub->{$key}{type}
- };
-
- @{ $rv->{$key}{used_by} } = grep length, @{ $rv->{$key}{used_by} };
- }
- }
-}
-
-sub _not_dup {
- my ($key, $rv1, $rv2) = @_;
- (_abs_path($rv1->{$key}{file}) ne _abs_path($rv2->{$key}{file}));
-}
-
-sub _abs_path {
- return join(
- '/',
- Cwd::abs_path(File::Basename::dirname($_[0])),
- File::Basename::basename($_[0]),
- );
-}
-
-#####################################################
-### Actual perldeps.pl code starts here.
-
-# Print usage information
-sub
-print_usage_info($)
-{
- my $code = shift || 0;
- my ($leader, $underbar);
-
- print "\n";
- $leader = "$0 Usage Information";
- $underbar = $leader;
- $underbar =~ s/./-/g;
- print "$leader\n$underbar\n";
- print "\n";
- print " Syntax: $0 [ options ] [ path(s)/file(s) ]\n";
- print "\n";
- print " -h --help Show this usage information\n";
- print " -v --version Show version and copyright\n";
- print " -d --debug Turn on debugging\n";
- print " -p --provides Find things provided by path(s)/file(s)\n";
- print " -r --requires Find things required by path(s)/file(s)\n";
- #print " \n";
- print "\nNOTE: Path(s)/file(s) can also be specified on STDIN. Default is \@INC.\n\n";
- exit($code);
-}
-
-# Locate perl modules (*.pm) in given locations.
-sub
-find_perl_modules(@)
-{
- my @locations = @_;
- my %modules;
-
- foreach my $loc (@locations) {
- if (-f $loc) {
- # It's a file. Assume it's a Perl module.
- #print "Found module: $loc.\n";
- $modules{$loc} = 1;
- } elsif (-d $loc) {
- my @tmp;
-
- # Recurse the directory tree looking for all modules inside it.
- &File::Find::find({
- "wanted" => sub {
- if ((-s _) && (substr($File::Find::fullname, -3, 3) eq ".pm")) {
- push @tmp, $File::Find::fullname;
- }
- },
- "follow_fast" => 1,
- "no_chdir" => 1,
- "untaint" => 1,
- "untaint_skip" => 1,
- "untaint_pattern" => qr|^([-+@\w./]+)$|
- }, $loc);
-
- # @tmp is now a list with all non-empty *.pm files in and under $loc.
- # Untaint and save in %modules hash.
- foreach my $module (@tmp) {
- if ($module =~ /^([-+@\w.\/]+)$/) {
- $modules{$1} = 1;
- #print "Found module: $1\n";
- }
- }
- } else {
- # Something wicked this way comes.
- print STDERR "$0: Error: Don't know what to do with location \"$loc\"\n";
- }
- }
- return keys(%modules);
-}
-
-# Generate an RPM-style "Provides:" list for the given modules.
-sub
-find_provides(@)
-{
- my @modules = @_;
- my @prov;
-
- foreach my $mod (@modules) {
- my (@contents, @pkgs);
- my $mod_path;
- local *MOD;
-
- $mod_path = dirname($mod);
- if (!open(MOD, $mod)) {
- warn "Unable to read module $mod -- $!\n";
- next;
- }
- @contents = <MOD>;
- if (!close(MOD)) {
- warn "Unable to close module $mod -- $!\n";
- }
-
- if (!scalar(grep { $_ eq $mod_path } @INC)) {
- push @INC, $mod_path;
- }
- foreach my $line (grep { $_ =~ /^\s*package\s+/ } @contents) {
- if ($line =~ /^\s*package\s+([^\;\s]+)\s*\;/) {
- push @pkgs, $1;
- }
- }
-
- # Now we have a list of packages. Load up the modules and get their versions.
- foreach my $pkg (@pkgs) {
- my $ret;
- local ($SIG{"__WARN__"}, $SIG{"__DIE__"});
-
- # Make sure eval() can't display warnings/errors.
- $SIG{"__DIE__"} = $SIG{"__WARN__"} = sub {0;};
- $ret = eval("no strict ('vars', 'subs', 'refs'); use $pkg (); return $pkg->VERSION || 0.0;");
- if ($@) {
- dprint "Unable to parse version number from $pkg -- $@. Assuming 0.\n";
- $ret = 0;
- }
-
- if (! $ret) {
- $ret = 0;
- }
- push @prov, "perl($pkg) = $ret";
- }
- }
- printf("Provides: %s\n", join(", ", sort(@prov)));
-}
-
-# Generate an RPM-style "Requires:" list for the given modules.
-sub
-find_requires(@)
-{
- my @modules = @_;
- my @reqs;
- my $reqs;
-
- $reqs = &scan_deps("files" => \@modules, "recurse" => 0);
- foreach my $key (grep { $reqs->{$_}{"type"} eq "module" } sort(keys(%{$reqs}))) {
- if (substr($key, -3, 3) eq ".pm") {
- $key = substr($key, 0, -3);
- }
- $key =~ s!/!::!g;
- push @reqs, "perl($key)";
- }
- printf("Requires: %s\n", join(", ", @reqs));
-}
-
-sub
-main()
-{
- my $VERSION = '1.0';
- my (@locations, @modules);
- my %OPTION;
-
- # For taint checks
- delete @ENV{("IFS", "CDPATH", "ENV", "BASH_ENV")};
- $ENV{"PATH"} = "/bin:/usr/bin:/sbin:/usr/sbin:/etc:/usr/ucb";
- foreach my $shell ("/bin/bash", "/usr/bin/ksh", "/bin/ksh", "/bin/sh", "/sbin/sh") {
- if (-f $shell) {
- $ENV{"SHELL"} = $shell;
- last;
- }
- }
-
- $ENV{"LANG"} = "C" if (! $ENV{"LANG"});
- umask 022;
- select STDERR; $| = 1;
- select STDOUT; $| = 1;
-
- Getopt::Long::Configure("no_getopt_compat", "bundling", "no_ignore_case");
- Getopt::Long::GetOptions(\%OPTION, "debug|d!", "help|h", "version|v", "provides|p", "requires|r");
-
- # Post-parse the options stuff
- select STDOUT; $| = 1;
- if ($OPTION{"version"}) {
- # Do not edit this variable. It is updated automatically by CVS when you commit
- my $rcs_info = 'CVS Revision $Revision: 1.6 $ created on $Date: 2006/04/04 20:12:03 $ by $Author: mej $ ';
-
- $rcs_info =~ s/\$\s*Revision: (\S+) \$/$1/;
- $rcs_info =~ s/\$\s*Date: (\S+) (\S+) \$/$1 at $2/;
- $rcs_info =~ s/\$\s*Author: (\S+) \$ /$1/;
- print "\n";
- print "perldeps.pl $VERSION by Michael Jennings <mej\@eterm.org>\n";
- print "Copyright (c) 2005-2006, Michael Jennings\n";
- print " ($rcs_info)\n";
- print "\n";
- return 0;
- } elsif ($OPTION{"help"}) {
- &print_usage_info(0); # Never returns
- }
-
- push @locations, @ARGV;
- if (!scalar(@ARGV) && !(-t STDIN)) {
- @locations = <STDIN>;
- }
- if (!scalar(@locations)) {
- @locations = @INC;
- }
-
- if (!($OPTION{"provides"} || $OPTION{"requires"})) {
- &print_usage_info(-1); # Never returns
- }
-
- # Catch bogus warning messages like "A thread exited while 2 threads were running"
- $SIG{"__DIE__"} = $SIG{"__WARN__"} = sub {0;};
-
- @modules = &find_perl_modules(@locations);
- if ($OPTION{"provides"}) {
- &find_provides(@modules);
- }
- if ($OPTION{"requires"}) {
- &find_requires(@modules);
- }
- return 0;
-}
-
-exit &main();
+++ /dev/null
-#!/bin/bash
-
-pkgconfig=/usr/bin/pkg-config
-test -x $pkgconfig || {
- cat > /dev/null
- exit 0
-}
-
-[ $# -ge 1 ] || {
- cat > /dev/null
- exit 0
-}
-
-$pkgconfig --atleast-pkgconfig-version="0.24" || {
- cat > /dev/null
- exit 0
-}
-
-case $1 in
--P|--provides)
- while read filename ; do
- case "${filename}" in
- *.pc)
- # Query the dependencies of the package.
- DIR="`dirname ${filename}`"
- export PKG_CONFIG_PATH="$DIR:$DIR/../../share/pkgconfig"
- $pkgconfig --print-provides "$filename" 2> /dev/null | while read n r v ; do
- [ -n "$n" ] || continue
- # We have a dependency. Make a note that we need the pkgconfig
- # tool for this package.
- echo -n "pkgconfig($n) "
- [ -n "$r" ] && [ -n "$v" ] && echo -n "$r" "$v"
- echo
- done
- ;;
- esac
- done
- ;;
--R|--requires)
- while read filename ; do
- case "${filename}" in
- *.pc)
- i="`expr $i + 1`"
- [ $i -eq 1 ] && echo "$pkgconfig"
- DIR="`dirname ${filename}`"
- export PKG_CONFIG_PATH="$DIR:$DIR/../../share/pkgconfig"
- $pkgconfig --print-requires --print-requires-private "$filename" 2> /dev/null | while read n r v ; do
- [ -n "$n" ] || continue
- echo -n "pkgconfig($n) "
- [ -n "$r" ] && [ -n "$v" ] && echo -n "$r" "$v"
- echo
- done
- esac
- done
- ;;
-esac
-exit 0
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch i386
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-%optflags -O2 -g -march=athlon
-
-%__isa_name x86
-%__isa_bits 32
-%__isa %{__isa_name}-%{__isa_bits}
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch geode
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-%optflags -Os -g -m32 -march=geode
-
-%__isa_name x86
-%__isa_bits 32
-%__isa %{__isa_name}-%{__isa_bits}
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch i386
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-%optflags -g
-
-%__isa_name x86
-%__isa_bits 32
-%__isa %{__isa_name}-%{__isa_bits}
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch i386
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-%optflags -g
-
-%__isa_name x86
-%__isa_bits 32
-%__isa %{__isa_name}-%{__isa_bits}
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch i386
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-%optflags -g
-
-%__isa_name x86
-%__isa_bits 32
-%__isa %{__isa_name}-%{__isa_bits}
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch i386
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-%optflags -g
-
-%__isa_name x86
-%__isa_bits 32
-%__isa %{__isa_name}-%{__isa_bits}
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch noarch
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch i386
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-%optflags -O2 -g -march=pentium3
-
-%__isa_name x86
-%__isa_bits 32
-%__isa %{__isa_name}-%{__isa_bits}
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_arch i386
-%_vendor tizen
-%_os linux
-%_gnu -gnu
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}
-%optflags -O2 -g -march=pentium4
-
-%__isa_name x86
-%__isa_bits 32
-%__isa %{__isa_name}-%{__isa_bits}
-
-#==============================================================================
-# ---- configure macros.
-#
-%_prefix /usr
-%_exec_prefix %{_prefix}
-%_bindir %{_exec_prefix}/bin
-%_sbindir %{_exec_prefix}/sbin
-%_libexecdir %{_exec_prefix}/libexec
-%_datarootdir %{_prefix}/share
-%_datadir %{_datarootdir}
-%_sysconfdir /etc
-%_sharedstatedir /var/lib
-%_localstatedir /var
-%_lib lib
-%_libdir %{_prefix}/lib
-%_includedir %{_prefix}/include
-%_oldincludedir /usr/include
-%_infodir %{_datarootdir}/info
-%_mandir %{_datarootdir}/man
-%_initddir %{_sysconfdir}/rc.d/init.d
-# Deprecated misspelling, present for backwards compatibility.
-%_initrddir %{_initddir}
-
-%_defaultdocdir %{_datadir}/doc
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post %{nil}
-
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
-%{nil}
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-#---------------------------------------------------------------------
-# Expanded at end of %prep
-#
-%__id_u @__ID_U@
-%__chown_Rhf @__CHOWN_RHF@
-%__chgrp_Rhf @__CHGRP_RHF@
-%_fixperms %{__chmod} -Rf a+rX,u+w,g-w,o-w
-%__os_install_post \
- %{_rpmconfigdir}/brp-compress \
- %{_rpmconfigdir}/brp-strip %{__strip} \
- %{_rpmconfigdir}/brp-strip-static-archive %{__strip} \
- %{_rpmconfigdir}/brp-strip-comment-note %{__strip} %{__objdump} \
- %{_rpmconfigdir}/tizen/find-docs.sh %{buildroot}\
-%{nil}
-#---------------------------------------------------------------------
-# Always use %defattr(-,root,root) in %files (added in rpm-4.0.4)
-#
-#%files(n:f:) %%files%{?-f: -f %{-f*}}%{?-n: -n %{-n*}} %{?1}\
-#%defattr(-,root,root,-)\
-#%{nil}
-
-
-
+++ /dev/null
-#!/bin/bash
-
-[ $# -ge 1 ] || {
- cat > /dev/null
- exit 0
-}
-
-case $1 in
--P|--provides)
- shift
- # Match buildroot/payload paths of the form
- # /PATH/OF/BUILDROOT/usr/bin/pythonMAJOR.MINOR
- # generating a line of the form
- # python(abi) = MAJOR.MINOR
- # (Don't match against -config tools e.g. /usr/bin/python2.6-config)
- grep "/usr/bin/python.\..$" \
- | sed -e "s|.*/usr/bin/python\(.\..\)|python(abi) = \1|"
- ;;
--R|--requires)
- shift
- # Match buildroot paths of the form
- # /PATH/OF/BUILDROOT/usr/lib/pythonMAJOR.MINOR/ and
- # /PATH/OF/BUILDROOT/usr/lib64/pythonMAJOR.MINOR/
- # generating (uniqely) lines of the form:
- # python(abi) = MAJOR.MINOR
- grep "/usr/lib[^/]*/python.\../.*" \
- | sed -e "s|.*/usr/lib[^/]*/python\(.\..\)/.*|python(abi) = \1|g" \
- | sort | uniq
- ;;
-esac
-
-exit 0
+++ /dev/null
-#!/bin/sh
-
-tmpfile=`/bin/mktemp /var/log/rpmpkgs.XXXXXXXXX` || exit 1
-/bin/rpm -qa --qf '%{name}-%{version}-%{release}.%{arch}.rpm\n' 2>&1 \
- | /bin/sort > "$tmpfile"
-
-if [ ! -s "$tmpfile" ]; then
- rm -f "$tmpfile"
- exit 1
-fi
-
-/bin/mv "$tmpfile" /var/log/rpmpkgs
-/bin/chmod 0644 /var/log/rpmpkgs
+++ /dev/null
-/var/log/rpmpkgs {
- weekly
- notifempty
- missingok
-}
+++ /dev/null
-#!/bin/sh
-
-pkg=$1
-if [ "$pkg" = "" -o ! -e "$pkg" ]; then
- echo "no package supplied" 1>&2
- exit 1
-fi
-
-leadsize=96
-o=`expr $leadsize + 8`
-set `od -j $o -N 8 -t u1 $pkg`
-il=`expr 256 \* \( 256 \* \( 256 \* $2 + $3 \) + $4 \) + $5`
-dl=`expr 256 \* \( 256 \* \( 256 \* $6 + $7 \) + $8 \) + $9`
-# echo "sig il: $il dl: $dl"
-
-sigsize=`expr 8 + 16 \* $il + $dl`
-o=`expr $o + $sigsize + \( 8 - \( $sigsize \% 8 \) \) \% 8 + 8`
-set `od -j $o -N 8 -t u1 $pkg`
-il=`expr 256 \* \( 256 \* \( 256 \* $2 + $3 \) + $4 \) + $5`
-dl=`expr 256 \* \( 256 \* \( 256 \* $6 + $7 \) + $8 \) + $9`
-# echo "hdr il: $il dl: $dl"
-
-hdrsize=`expr 8 + 16 \* $il + $dl`
-o=`expr $o + $hdrsize`
-
-comp=`dd if="$pkg" ibs=$o skip=1 count=1 2>/dev/null \
- | dd bs=3 count=1 2>/dev/null`
-
-gz="`echo . | awk '{ printf("%c%c", 0x1f, 0x8b); }'`"
-lzma="`echo . | awk '{ printf("%cLZ", 0xff); }'`"
-case "$comp" in
- BZh) dd if="$pkg" ibs=$o skip=1 2>/dev/null | bunzip2 ;;
- "$gz"*) dd if="$pkg" ibs=$o skip=1 2>/dev/null | gunzip ;;
- "$lzma"*) dd if="$pkg" ibs=$o skip=1 2>/dev/null | unlzma ;;
- *) echo "Unrecognized rpm file: $pkg"; return 1 ;;
-esac
+++ /dev/null
-#/*! \page config_rpmpopt Default configuration: /usr/lib/rpm/rpmpopt-4.9.1
-# \verbatim
-#
-# This file *should not be modified*. Local customizations
-# belong in /etc/popt, not here. This file will be replaced
-# whenever a new version of RPM is installed.
-#
-# Note: Not all popt aliases are documented. This is a decision on my
-# part as to which are the more important aliases. Feel free to clip
-# a copy of the alias/exec here and place in /etc/popt or ~/.popt with
-# your own words added. It's easier than arguing about how many options
-# fit on the head of an executable :-)
-#
-
-rpm alias --scripts --qf '\
-%|PRETRANS?{pretrans scriptlet\
-%|PRETRANSPROG?{ (using %{PRETRANSPROG})}|:\n%{PRETRANS}\n}:\
-{%|PRETRANSPROG?{pretrans program: %{PRETRANSPROG}\n}|}|\
-\
-%|PREIN?{preinstall scriptlet\
-%|PREINPROG?{ (using %{PREINPROG})}|:\n%{PREIN}\n}:\
-{%|PREINPROG?{preinstall program: %{PREINPROG}\n}|}|\
-\
-%|POSTIN?{postinstall scriptlet\
-%|POSTINPROG?{ (using %{POSTINPROG})}|:\n%{POSTIN}\n}:\
-{%|POSTINPROG?{postinstall program: %{POSTINPROG}\n}|}|\
-\
-%|PREUN?{preuninstall scriptlet\
-%|PREUNPROG?{ (using %{PREUNPROG})}|:\n%{PREUN}\n}:\
-{%|PREUNPROG?{preuninstall program: %{PREUNPROG}\n}|}|\
-\
-%|POSTUN?{postuninstall scriptlet\
-%|POSTUNPROG?{ (using %{POSTUNPROG})}|:\n%{POSTUN}\n}:\
-{%|POSTUNPROG?{postuninstall program: %{POSTUNPROG}\n}|}|\
-\
-%|POSTTRANS?{posttrans scriptlet\
-%|POSTTRANSPROG?{ (using %{POSTTRANSPROG})}|:\n%{POSTTRANS}\n}:\
-{%|POSTTRANSPROG?{posttrans program: %{POSTTRANSPROG}\n}|}|\
-\
-%|VERIFYSCRIPT?{verify scriptlet:\n%{VERIFYSCRIPT}\n}|\
-' \
- --POPTdesc=$"list install/erase scriptlets from package(s)"
-
-rpm alias --setperms -q --qf '[\[ -L %{FILENAMES:shescape} \] || chmod %7.7{FILEMODES:octal} %{FILENAMES:shescape}\n]' \
- --pipe "grep -v \(none\) | grep '^. -L ' | sed 's/chmod .../chmod /' | sh" \
- --POPTdesc=$"set permissions of files in a package"
-
-rpm alias --setugids -q --qf \
- '[ch %{FILEUSERNAME:shescape} %{FILEGROUPNAME:shescape} %{FILENAMES:shescape}\n]' \
- --pipe "(echo 'ch() { chown -h -- \"$1\" \"$3\";chgrp -h -- \"$2\" \"$3\"; }';grep '^ch '|grep -v \(none\))|sh" \
- --POPTdesc=$"set user/group ownership of files in a package"
-
-rpm alias --conflicts --qf \
- "[%|VERBOSE?{%{CONFLICTFLAGS:deptype}: }:{}|%{CONFLICTNAME} %{CONFLICTFLAGS:depflags} %{CONFLICTVERSION}\n]" \
- --POPTdesc=$"list capabilities this package conflicts with"
-rpm alias --obsoletes --qf \
- "[%|VERBOSE?{%{OBSOLETEFLAGS:deptype}: }:{}|%{OBSOLETENAME} %|OBSOLETEFLAGS?{%{OBSOLETEFLAGS:depflags} %{OBSOLETEVERSION}}:{}|\n]" \
- --POPTdesc=$"list other packages removed by installing this package"
-rpm alias --provides --qf \
- "[%|VERBOSE?{%{PROVIDEFLAGS:deptype}: }:{}|%{PROVIDENAME} %|PROVIDEFLAGS?{%{PROVIDEFLAGS:depflags} %{PROVIDEVERSION}}:{}|\n]" \
- --POPTdesc=$"list capabilities that this package provides"
-
-rpm alias --requires --qf \
- "[%|VERBOSE?{%{REQUIREFLAGS:deptype}: }:{}|%{REQUIRENAME} %{REQUIREFLAGS:depflags} %{REQUIREVERSION}\n]" \
- --POPTdesc=$"list capabilities required by package(s)"
-rpm alias -R --requires
-
-rpm alias --info --qf '\
-Name : %{NAME}\n\
-%|EPOCH?{Epoch : %{EPOCH}\n}|\
-Version : %{VERSION}\n\
-Release : %{RELEASE}\n\
-Architecture: %{ARCH}\n\
-Install Date: %|INSTALLTIME?{%{INSTALLTIME:date}}:{(not installed)}|\n\
-Group : %{GROUP}\n\
-Size : %{LONGSIZE}\n\
-%|LICENSE?{License : %{LICENSE}}|\n\
-Signature : %|DSAHEADER?{%{DSAHEADER:pgpsig}}:{%|RSAHEADER?{%{RSAHEADER:pgpsig}}:{%|SIGGPG?{%{SIGGPG:pgpsig}}:{%|SIGPGP?{%{SIGPGP:pgpsig}}:{(none)}|}|}|}|\n\
-Source RPM : %{SOURCERPM}\n\
-Build Date : %{BUILDTIME:date}\n\
-Build Host : %{BUILDHOST}\n\
-Relocations : %|PREFIXES?{[%{PREFIXES} ]}:{(not relocatable)}|\n\
-%|PACKAGER?{Packager : %{PACKAGER}\n}|\
-%|VENDOR?{Vendor : %{VENDOR}\n}|\
-%|URL?{URL : %{URL}\n}|\
-%|BUGURL?{Bug URL : %{BUGURL}\n}|\
-Summary : %{SUMMARY}\n\
-Description :\n%{DESCRIPTION}\n' \
- --POPTdesc=$"list descriptive information from package(s)"
-
-rpm alias --changelog --qf '[* %{CHANGELOGTIME:day} %{CHANGELOGNAME}\n%{CHANGELOGTEXT}\n\n]' \
- --POPTdesc=$"list change logs for this package"
-
-rpm alias --xml --qf '[%{*:xml}\n]' \
- --POPTdesc=$"list metadata in xml"
-
-rpm alias --triggerscripts --qf '\
-[trigger%{TRIGGERTYPE} scriptlet (using %{TRIGGERSCRIPTPROG}) -- %{TRIGGERCONDS}\n\
-%{TRIGGERSCRIPTS}\n]'
-rpm alias --triggers --triggerscripts \
- --POPTdesc=$"list trigger scriptlets from package(s)"
-
-rpm alias --last --qf '%|INSTALLTIME?{%{INSTALLTIME}}:{000000000}| %{NAME}-%{VERSION}-%{RELEASE} %|INSTALLTIME?{%{INSTALLTIME:date}}:{(not installed)}|\n' \
- --pipe "sort -r -n | sed 's,^[0-9]\+ ,,' | awk '{printf(\"%-45s %-s\n\", $1, substr($0,length($1)+2))}' " \
- --POPTdesc=$"list package(s) by install time, most recent first"
-
-rpm alias --dupes --qf '%|SOURCERPM?{%{name}.%{arch}}:{%|ARCH?{%{name}}:{%{name}-%{version}}|}|\n' --pipe "sort | uniq -d" \
- --POPTdesc=$"list duplicated packages"
-
-rpm alias --filesbypkg --qf '[%-25{=NAME} %{FILENAMES}\n]' \
- --POPTdesc=$"list all files from each package"
-
-rpm alias --fileclass --qf '[%{FILENAMES}\t%{FILECLASS}\n]' \
- --POPTdesc=$"list file names with classes"
-
-rpm alias --filecolor --qf '[%{FILENAMES}\t%{FILECOLORS}\n]' \
- --POPTdesc=$"list file names with colors"
-
-rpm alias --fscontext --qf '[%{FILENAMES}\n]' \
- --pipe "xargs ls --scontext | awk '{printf(\"%s %s\n\", $2, $1)}'" \
- --POPTdesc=$"list file names with security context from file system"
-
-rpm alias --fileprovide --qf '[%{FILENAMES}\t%{FILEPROVIDE}\n]' \
- --POPTdesc=$"list file names with provides"
-
-rpm alias --filerequire --qf '[%{FILENAMES}\t%{FILEREQUIRE}\n]' \
- --POPTdesc=$"list file names with requires"
-
-rpm alias --filecaps --qf '[%{FILENAMES}\t%|FILECAPS?{%{FILECAPS}}|\n]' \
- --POPTdesc=$"list file names with POSIX1.e capabilities"
-
-# colon separated i18n domains to use as PO catalogue lookaside for
-# retrieving header group/description/summary.
-rpm alias --i18ndomains --define '_i18ndomains !#:+'
-
-#==============================================================================
-# [--ftpport <port>] "port number of ftp server (or proxy)"
-rpm alias --ftpport --define '_httpport !#:+'
-# [--ftpproxy <host>] "hostname or IP of ftp proxy"
-rpm alias --ftpproxy --define '_httpproxy !#:+'
-# [--httpport <port>] "port number of http server (or proxy)"
-rpm alias --httpport --define '_httpport !#:+'
-# [--httpproxy <host>] "hostname or IP of http proxy"
-rpm alias --httpproxy --define '_httpproxy !#:+'
-
-# Minimally preserve commonly used switches from cli split-up
-rpm exec --addsign rpmsign --addsign
-rpm exec --delsign rpmsign --delsign
-rpm exec --resign rpmsign --resign
-rpm exec --checksig rpmkeys --checksig
-rpm exec -K rpmkeys --checksig
-rpm exec --import rpmkeys --import
-rpm exec --initdb rpmdb --initdb
-rpm exec --rebuilddb rpmdb --rebuilddb
-rpm exec --verifydb rpmdb --verifydb
-rpm exec --specfile rpmspec -q
-
-#==============================================================================
-rpmbuild alias --ftpport --define '_httpport !#:+'
-rpmbuild alias --ftpproxy --define '_httpproxy !#:+'
-rpmbuild alias --httpport --define '_httpport !#:+'
-rpmbuild alias --httpproxy --define '_httpproxy !#:+'
-rpmbuild alias --with --define "_with_!#:+ --with-!#:+" \
- --POPTdesc=$"enable configure <option> for build" \
- --POPTargs=$"<option>"
-rpmbuild alias --without --define "_without_!#:+ --without-!#:+" \
- --POPTdesc=$"disable configure <option> for build" \
- --POPTargs=$"<option>"
-# Build policies enabled from command line. Last policy applies.
-rpmbuild alias --buildpolicy --define '__os_install_post %{_rpmconfigdir}/brp-!#:+' \
- --POPTdesc=$"set buildroot <policy> (e.g. compress man pages)" \
- --POPTargs=$"<policy>"
-# Minimally preserve rpmbuild's --sign functionality
-rpmbuild alias --sign \
- --pipe "grep '.*: .*\.rpm$'|cut -d: -f2|xargs rpm --addsign" \
- --POPTdesc=$"generate GPG signature"
-
-rpmsign alias --key-id --define '_gpg_name !#:+' \
- --POPTdesc=$"key id/name to sign with" \
- --POPTargs=$"<id>"
-rpmsign alias --digest-algo --define '_gpg_digest_algo !#:+' \
- --POPTdesc=$"override default digest algorithm (eg sha1/sha256)" \
- --POPTargs=$"<algorithm>"
-
-rpmspec alias --conflicts --qf \
- "[%|VERBOSE?{%{CONFLICTFLAGS:deptype}: }:{}|%{CONFLICTNAME} %{CONFLICTFLAGS:depflags} %{CONFLICTVERSION}\n]" \
- --POPTdesc=$"list capabilities this package conflicts with"
-rpmspec alias --obsoletes --qf \
- "[%|VERBOSE?{%{OBSOLETEFLAGS:deptype}: }:{}|%{OBSOLETENAME} %|OBSOLETEFLAGS?{%{OBSOLETEFLAGS:depflags} %{OBSOLETEVERSION}}:{}|\n]" \
- --POPTdesc=$"list other packages removed by installing this package"
-rpmspec alias --provides --qf \
- "[%|VERBOSE?{%{PROVIDEFLAGS:deptype}: }:{}|%{PROVIDENAME} %|PROVIDEFLAGS?{%{PROVIDEFLAGS:depflags} %{PROVIDEVERSION}}:{}|\n]" \
- --POPTdesc=$"list capabilities that this package provides"
-rpmspec alias --requires --qf \
- "[%|VERBOSE?{%{REQUIREFLAGS:deptype}: }:{}|%{REQUIRENAME} %{REQUIREFLAGS:depflags} %{REQUIREVERSION}\n]" \
- --POPTdesc=$"list capabilities required by package(s)"
-rpmspec alias --buildconflicts --srpm --conflicts \
- --POPTdesc=$"list capabilities conflicting with build of this package"
-rpmspec alias --buildrequires --srpm --requires \
- --POPTdesc=$"list capabilities required to build this package"
-# \endverbatim
-#*/
+++ /dev/null
-#/*! \page config_rpmrc Default configuration: /usr/lib/rpm/rpmrc
-# \verbatim
-#
-# This is a global RPM configuration file. All changes made here will
-# be lost when the rpm package is upgraded. Any per-system configuration
-# should be added to /etc/rpmrc, while per-user configuration should
-# be added to ~/.rpmrc.
-#
-#############################################################
-# Values for RPM_OPT_FLAGS for various platforms
-
-# "fat" binary with both archs, for Darwin
-optflags: fat -O2 -g -arch i386 -arch ppc
-
-Optflags: i386 %{__global_cflags} -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables
-Optflags: i486 %{__global_cflags} -m32 -march=i486 -fasynchronous-unwind-tables
-Optflags: i586 %{__global_cflags} -m32 -march=core2 -mssse3 -mtune=atom -mfpmath=sse -fasynchronous-unwind-tables -fno-omit-frame-pointer
-Optflags: i686 %{__global_cflags} -m32 -march=core2 -mssse3 -mtune=atom -mfpmath=sse -fasynchronous-unwind-tables -fno-omit-frame-pointer
-optflags: pentium3 -O2 -g -march=pentium3
-optflags: pentium4 -O2 -g -march=pentium4
-optflags: athlon -O2 -g -march=athlon
-optflags: geode -Os -g -m32 -march=geode
-optflags: ia64 -O2 -g
-optflags: x86_64 -O2 -g
-optflags: amd64 -O2 -g
-optflags: ia32e -O2 -g
-
-optflags: alpha -O2 -g -mieee
-optflags: alphaev5 -O2 -g -mieee -mtune=ev5
-optflags: alphaev56 -O2 -g -mieee -mtune=ev56
-optflags: alphapca56 -O2 -g -mieee -mtune=pca56
-optflags: alphaev6 -O2 -g -mieee -mtune=ev6
-optflags: alphaev67 -O2 -g -mieee -mtune=ev67
-
-optflags: sparc -O2 -g -m32 -mtune=ultrasparc
-optflags: sparcv8 -O2 -g -m32 -mtune=ultrasparc -mv8
-optflags: sparcv9 -O2 -g -m32 -mtune=ultrasparc
-optflags: sparcv9v -O2 -g -m32 -mtune=niagara
-optflags: sparc64 -O2 -g -m64 -mtune=ultrasparc
-optflags: sparc64v -O2 -g -m64 -mtune=niagara
-
-optflags: m68k -O2 -g -fomit-frame-pointer
-
-optflags: ppc -O2 -g -fsigned-char
-optflags: ppc8260 -O2 -g -fsigned-char
-optflags: ppc8560 -O2 -g -fsigned-char
-optflags: ppc32dy4 -O2 -g -fsigned-char
-optflags: ppciseries -O2 -g -fsigned-char
-optflags: ppcpseries -O2 -g -fsigned-char
-optflags: ppc64 -O2 -g -fsigned-char
-
-optflags: parisc -O2 -g -mpa-risc-1-0
-optflags: hppa1.0 -O2 -g -mpa-risc-1-0
-optflags: hppa1.1 -O2 -g -mpa-risc-1-0
-optflags: hppa1.2 -O2 -g -mpa-risc-1-0
-optflags: hppa2.0 -O2 -g -mpa-risc-1-0
-
-optflags: mips -O2 -g
-optflags: mipsel -O2 -g
-
-optflags: armv3l %{__global_cflags} -fsigned-char -march=armv3
-optflags: armv4b %{__global_cflags} -fsigned-char -march=armv4
-optflags: armv4l %{__global_cflags} -fsigned-char -march=armv4
-optflags: armv4tl %{__global_cflags} -march=armv4t
-optflags: armv5tejl %{__global_cflags} -march=armv5te
-Optflags: armv5tel %{__global_cflags} -fmessage-length=0 -march=armv5te -mlittle-endian
-Optflags: armv6l %{__global_cflags} -fmessage-length=0 -march=armv6 -mlittle-endian -mfpu=vfp -mfloat-abi=softfp -D__SOFTFP__
-Optflags: armv7l %{__global_cflags} -fmessage-length=0 -march=armv7-a -mtune=cortex-a8 -mlittle-endian -mfpu=vfpv3 -mfloat-abi=softfp -D__SOFTFP__
-optflags: armv7hl %{__global_cflags} -fmessage-length=0 -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -mno-thumb
-optflags: armv7nhl %{__global_cflags} -fmessage-length=0 -march=armv7-a -mfloat-abi=hard -mfpu=neon -mno-thumb
-optflags: armv7thl %{__global_cflags} -fmessage-length=0 -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16 -mthumb
-optflags: armv7tnhl %{__global_cflags} -fmessage-length=0 -march=armv7-a -mfloat-abi=hard -mfpu=neon -mthumb
-
-
-optflags: atarist -O2 -g -fomit-frame-pointer
-optflags: atariste -O2 -g -fomit-frame-pointer
-optflags: ataritt -O2 -g -fomit-frame-pointer
-optflags: falcon -O2 -g -fomit-frame-pointer
-optflags: atariclone -O2 -g -fomit-frame-pointer
-optflags: milan -O2 -g -fomit-frame-pointer
-optflags: hades -O2 -g -fomit-frame-pointer
-
-optflags: s390 -O2 -g
-optflags: s390x -O2 -g
-
-optflags: sh3 -O2 -g
-optflags: sh4 -O2 -g -mieee
-optflags: sh4a -O2 -g -mieee
-
-#############################################################
-# Canonical arch names and numbers
-
-arch_canon: athlon: athlon 1
-arch_canon: geode: geode 1
-arch_canon: pentium4: pentium4 1
-arch_canon: pentium3: pentium3 1
-arch_canon: i686: i686 1
-arch_canon: i586: i586 1
-arch_canon: i486: i486 1
-arch_canon: i386: i386 1
-arch_canon: x86_64: x86_64 1
-arch_canon: amd64: amd64 1
-arch_canon: ia32e: ia32e 1
-
-arch_canon: alpha: alpha 2
-arch_canon: alphaev5: alphaev5 2
-arch_canon: alphaev56: alphaev56 2
-arch_canon: alphapca56:alphapca56 2
-arch_canon: alphaev6: alphaev6 2
-arch_canon: alphaev67: alphaev67 2
-# We always want to prefer sparc to sparc64.
-arch_canon: sparc64:sparc64 2
-arch_canon: sun4u: sparc64 2
-arch_canon: sparc64v: sparc64v 2
-
-arch_canon: sparc: sparc 3
-arch_canon: sun4: sparc 3
-arch_canon: sun4m: sparc 3
-arch_canon: sun4c: sparc 3
-arch_canon: sun4d: sparc 3
-arch_canon: sparcv8: sparcv8 3
-arch_canon: sparcv9: sparcv9 3
-arch_canon: sparcv9v: sparcv9v 3
-# This is really a place holder for MIPS.
-arch_canon: mips: mips 4
-
-arch_canon: ppc: ppc 5
-arch_canon: ppc8260: ppc8260 5
-arch_canon: ppc8560: ppc8560 5
-arch_canon: ppc32dy4: ppc32dy4 5
-arch_canon: ppciseries: ppciseries 5
-arch_canon: ppcpseries: ppcpseries 5
-
-arch_canon: m68k: m68k 6
-arch_canon: IP: sgi 7
-arch_canon: rs6000: rs6000 8
-arch_canon: ia64: ia64 9
-
-arch_canon: mipsel: mipsel 11
-
-arch_canon: armv3l: armv3l 12
-arch_canon: armv4b: armv4b 12
-arch_canon: armv4l: armv4l 12
-arch_canon: armv5tel: armv5tel 12
-arch_canon: armv5tejl: armv5tejl 12
-arch_canon: armv6l: armv6l 12
-arch_canon: armv7l: armv7l 12
-arch_canon: armv7hl: armv7hl 12
-arch_canon: armv7nhl: armv7nhl 12
-arch_canon: armv7thl: armv7thl 12
-arch_canon: armv7tnhl: armv7tnhl 12
-
-
-arch_canon: m68kmint: m68kmint 13
-arch_canon: atarist: m68kmint 13
-arch_canon: atariste: m68kmint 13
-arch_canon: ataritt: m68kmint 13
-arch_canon: falcon: m68kmint 13
-arch_canon: atariclone: m68kmint 13
-arch_canon: milan: m68kmint 13
-arch_canon: hades: m68kmint 13
-
-arch_canon: s390: s390 14
-arch_canon: i370: i370 14
-arch_canon: s390x: s390x 15
-
-arch_canon: ppc64: ppc64 16
-arch_canon: ppc64pseries: ppc64pseries 16
-arch_canon: ppc64iseries: ppc64iseries 16
-
-arch_canon: sh: sh 17
-arch_canon: sh3: sh3 17
-arch_canon: sh4: sh4 17
-arch_canon: sh4a: sh4a 17
-arch_canon: xtensa: xtensa 18
-
-#############################################################
-# Canonical OS names and numbers
-
-os_canon: Linux: Linux 1
-os_canon: IRIX: Irix 2
-# This is wrong
-os_canon: SunOS5: solaris 3
-os_canon: SunOS4: SunOS 4
-
-os_canon: AmigaOS: AmigaOS 5
-os_canon: AIX: AIX 5
-os_canon: HP-UX: hpux10 6
-os_canon: OSF1: osf1 7
-os_canon: osf4.0: osf1 7
-os_canon: osf3.2: osf1 7
-os_canon: FreeBSD: FreeBSD 8
-os_canon: SCO_SV: SCO_SV3.2v5.0.2 9
-os_canon: IRIX64: Irix64 10
-os_canon: NEXTSTEP: NextStep 11
-os_canon: BSD_OS: bsdi 12
-os_canon: machten: machten 13
-os_canon: CYGWIN32_NT: cygwin32 14
-os_canon: CYGWIN32_95: cygwin32 15
-os_canon: UNIX_SV: MP_RAS: 16
-os_canon: MiNT: FreeMiNT 17
-os_canon: OS/390: OS/390 18
-os_canon: VM/ESA: VM/ESA 19
-os_canon: Linux/390: OS/390 20
-os_canon: Linux/ESA: VM/ESA 20
-
-os_canon: Darwin: darwin 21
-os_canon: MacOSX: macosx 21
-
-#############################################################
-# For a given uname().machine, the default build arch
-
-buildarchtranslate: osfmach3_i686: i586
-buildarchtranslate: osfmach3_i586: i586
-buildarchtranslate: osfmach3_i486: i386
-buildarchtranslate: osfmach3_i386: i386
-
-buildarchtranslate: athlon: i586
-buildarchtranslate: geode: i586
-buildarchtranslate: pentium4: i586
-buildarchtranslate: pentium3: i586
-buildarchtranslate: i686: i586
-buildarchtranslate: i586: i586
-buildarchtranslate: i486: i386
-buildarchtranslate: i386: i386
-
-buildarchtranslate: alphaev5: alpha
-buildarchtranslate: alphaev56: alpha
-buildarchtranslate: alphapca56: alpha
-buildarchtranslate: alphaev6: alpha
-buildarchtranslate: alphaev67: alpha
-
-buildarchtranslate: sun4c: sparc
-buildarchtranslate: sun4d: sparc
-buildarchtranslate: sun4m: sparc
-buildarchtranslate: sparcv8: sparc
-buildarchtranslate: sparcv9: sparc
-buildarchtranslate: sparcv9v: sparc
-buildarchtranslate: sun4u: sparc64
-buildarchtranslate: sparc64v: sparc64
-
-buildarchtranslate: osfmach3_ppc: ppc
-buildarchtranslate: powerpc: ppc
-buildarchtranslate: powerppc: ppc
-buildarchtranslate: ppc8260: ppc
-buildarchtranslate: ppc8560: ppc
-buildarchtranslate: ppc32dy4: ppc
-buildarchtranslate: ppciseries: ppc
-buildarchtranslate: ppcpseries: ppc
-buildarchtranslate: ppc64iseries: ppc64
-buildarchtranslate: ppc64pseries: ppc64
-
-buildarchtranslate: armv3l: armv3l
-buildarchtranslate: armv4b: armv4b
-buildarchtranslate: armv4l: armv4l
-buildarchtranslate: armv4tl: armv4tl
-buildarchtranslate: armv5tel: armv5tel
-buildarchtranslate: armv5tejl: armv5tejl
-buildarchtranslate: armv6l: armv6l
-buildarchtranslate: armv7l: armv7l
-buildarchtranslate: armv7hl: armv7hl
-buildarchtranslate: armv7nhl: armv7nhl
-buildarchtranslate: armv7thl: armv7thl
-buildarchtranslate: armv7tnhl: armv7tnhl
-
-buildarchtranslate: atarist: m68kmint
-buildarchtranslate: atariste: m68kmint
-buildarchtranslate: ataritt: m68kmint
-buildarchtranslate: falcon: m68kmint
-buildarchtranslate: atariclone: m68kmint
-buildarchtranslate: milan: m68kmint
-buildarchtranslate: hades: m68kmint
-
-buildarchtranslate: s390: s390
-buildarchtranslate: s390x: s390x
-
-buildarchtranslate: ia64: ia64
-
-buildarchtranslate: x86_64: x86_64
-buildarchtranslate: amd64: x86_64
-buildarchtranslate: ia32e: x86_64
-
-buildarchtranslate: sh3: sh3
-buildarchtranslate: sh4: sh4
-buildarchtranslate: sh4a: sh4
-
-#############################################################
-# Architecture compatibility
-
-arch_compat: alphaev67: alphaev6
-arch_compat: alphaev6: alphapca56
-arch_compat: alphapca56: alphaev56
-arch_compat: alphaev56: alphaev5
-arch_compat: alphaev5: alpha
-arch_compat: alpha: axp noarch
-
-arch_compat: athlon: i686
-arch_compat: geode: i586
-arch_compat: pentium4: pentium3
-arch_compat: pentium3: i686
-arch_compat: i686: i586
-arch_compat: i586: i486
-arch_compat: i486: i386
-arch_compat: i386: noarch fat
-
-arch_compat: osfmach3_i686: i686 osfmach3_i586
-arch_compat: osfmach3_i586: i586 osfmach3_i486
-arch_compat: osfmach3_i486: i486 osfmach3_i386
-arch_compat: osfmach3_i386: i486
-
-arch_compat: osfmach3_ppc: ppc
-arch_compat: powerpc: ppc
-arch_compat: powerppc: ppc
-arch_compat: ppc8260: ppc
-arch_compat: ppc8560: ppc
-arch_compat: ppc32dy4: ppc
-arch_compat: ppciseries: ppc
-arch_compat: ppcpseries: ppc
-arch_compat: ppc64: ppc
-arch_compat: ppc: rs6000
-arch_compat: rs6000: noarch fat
-arch_compat: ppc64pseries: ppc64
-arch_compat: ppc64iseries: ppc64
-
-arch_compat: sun4c: sparc
-arch_compat: sun4d: sparc
-arch_compat: sun4m: sparc
-arch_compat: sun4u: sparc64
-arch_compat: sparc64v: sparc64
-arch_compat: sparc64: sparcv9
-arch_compat: sparcv9v: sparcv9
-arch_compat: sparcv9: sparcv8
-arch_compat: sparcv8: sparc
-arch_compat: sparc: noarch
-
-arch_compat: mips: noarch
-arch_compat: mipsel: noarch
-
-arch_compat: hppa2.0: hppa1.2
-arch_compat: hppa1.2: hppa1.1
-arch_compat: hppa1.1: hppa1.0
-arch_compat: hppa1.0: parisc
-arch_compat: parisc: noarch
-
-arch_compat: armv4b: noarch
-arch_compat: armv7l: armv6l
-arch_compat: armv6l: armv5tejl
-arch_compat: armv5tejl: armv5tel
-arch_compat: armv5tel: armv4tl
-arch_compat: armv4tl: armv4l
-arch_compat: armv4l: armv3l
-arch_compat: armv3l: noarch
-arch_compat: armv7tnhl: armv7nhl armv7thl
-arch_compat: armv7nhl: armv7hl
-arch_compat: armv7thl: armv7hl
-arch_compat: armv7hl: noarch
-
-arch_compat: atarist: m68kmint noarch
-arch_compat: atariste: m68kmint noarch
-arch_compat: ataritt: m68kmint noarch
-arch_compat: falcon: m68kmint noarch
-arch_compat: atariclone: m68kmint noarch
-arch_compat: milan: m68kmint noarch
-arch_compat: hades: m68kmint noarch
-
-arch_compat: i370: noarch
-arch_compat: s390: noarch
-arch_compat: s390x: s390 noarch
-
-arch_compat: ia64: noarch
-
-arch_compat: x86_64: amd64 athlon noarch
-arch_compat: amd64: x86_64 athlon noarch
-arch_compat: ia32e: x86_64 athlon noarch
-
-arch_compat: sh3: noarch
-arch_compat: sh4: noarch
-arch_compat: sh4a: sh4
-
-os_compat: IRIX64: IRIX
-os_compat: solaris2.7: solaris2.3 solaris2.4 solaris2.5 solaris2.6
-os_compat: solaris2.6: solaris2.3 solaris2.4 solaris2.5
-os_compat: solaris2.5: solaris2.3 solaris2.4
-os_compat: solaris2.4: solaris2.3
-
-os_compat: hpux11.00: hpux10.30
-os_compat: hpux10.30: hpux10.20
-os_compat: hpux10.20: hpux10.10
-os_compat: hpux10.10: hpux10.01
-os_compat: hpux10.01: hpux10.00
-os_compat: hpux10.00: hpux9.07
-os_compat: hpux9.07: hpux9.05
-os_compat: hpux9.05: hpux9.04
-
-os_compat: osf4.0: osf3.2 osf1
-
-os_compat: ncr-sysv4.3: ncr-sysv4.2
-
-os_compat: FreeMiNT: mint MiNT TOS
-os_compat: MiNT: FreeMiNT mint TOS
-os_compat: mint: FreeMiNT MiNT TOS
-os_compat: TOS: FreeMiNT MiNT mint
-
-os_compat: BSD_OS: bsdi
-os_compat: bsdi4.0: bsdi
-
-os_compat: Darwin: MacOSX
-
-buildarch_compat: ia64: noarch
-
-buildarch_compat: athlon: i686
-buildarch_compat: geode: i586
-buildarch_compat: pentium4: pentium3
-buildarch_compat: pentium3: i686
-buildarch_compat: i686: i586
-buildarch_compat: i586: i486
-buildarch_compat: i486: i386
-buildarch_compat: i386: noarch fat
-
-buildarch_compat: sun4c: noarch
-buildarch_compat: sun4d: noarch
-buildarch_compat: sun4m: noarch
-buildarch_compat: sun4u: noarch
-buildarch_compat: sparc64v: sparc64
-buildarch_compat: sparc64: sparcv9v
-buildarch_compat: sparcv9v: sparcv9
-buildarch_compat: sparcv9: sparcv8
-buildarch_compat: sparcv8: sparc
-buildarch_compat: sparc: noarch
-
-buildarch_compat: alphaev67: alphaev6
-buildarch_compat: alphaev6: alphapca56
-buildarch_compat: alphapca56: alphaev56
-buildarch_compat: alphaev56: alphaev5
-buildarch_compat: alphaev5: alpha
-buildarch_compat: alpha: noarch
-
-buildarch_compat: m68k: noarch
-
-buildarch_compat: ppc8260: noarch
-buildarch_compat: ppc8560: noarch
-buildarch_compat: ppc32dy4: noarch
-buildarch_compat: ppciseries: noarch
-buildarch_compat: ppcpseries: noarch
-buildarch_compat: ppc: noarch fat
-buildarch_compat: ppc64: noarch fat
-buildarch_compat: ppc64pseries: ppc64
-buildarch_compat: ppc64iseries: ppc64
-
-buildarch_compat: mips: noarch
-buildarch_compat: mipsel: noarch
-
-buildarch_compat: armv4b: noarch
-buildarch_compat: armv7l: armv6l
-buildarch_compat: armv6l: armv5tejl
-buildarch_compat: armv5tejl: armv5tel
-buildarch_compat: armv5tel: armv4tl
-buildarch_compat: armv4tl: armv4l
-buildarch_compat: armv4l: armv3l
-buildarch_compat: armv3l: noarch
-
-buildarch_compat: armv7tnhl: armv7nhl armv7thl
-buildarch_compat: armv7nhl: armv7hl
-buildarch_compat: armv7thl: armv7hl
-buildarch_compat: armv7hl: noarch
-
-buildarch_compat: hppa2.0: hppa1.2
-buildarch_compat: hppa1.2: hppa1.1
-buildarch_compat: hppa1.1: hppa1.0
-buildarch_compat: hppa1.0: parisc
-buildarch_compat: parisc: noarch
-
-buildarch_compat: atarist: m68kmint noarch
-buildarch_compat: atariste: m68kmint noarch
-buildarch_compat: ataritt: m68kmint noarch
-buildarch_compat: falcon: m68kmint noarch
-buildarch_compat: atariclone: m68kmint noarch
-buildarch_compat: milan: m68kmint noarch
-buildarch_compat: hades: m68kmint noarch
-
-buildarch_compat: s390: noarch
-buildarch_compat: s390x: noarch
-
-buildarch_compat: ia64: noarch
-
-buildarch_compat: x86_64: noarch
-buildarch_compat: amd64: x86_64
-buildarch_compat: ia32e: x86_64
-
-buildarch_compat: sh3: noarch
-buildarch_compat: sh4: noarch
-buildarch_compat: sh4a: sh4
-
-# \endverbatim
-#*/
+++ /dev/null
-#!/bin/sh
-
-# TODO: handle "#!/usr/bin/env foo" somehow
-while read filename; do
- # common cases
- sed -n -e '1s:^#![[:space:]]*\(/[^[:space:]]\{1,\}\).*:\1:p' "$filename"
- #!/usr/bin/env /foo/bar
- sed -n -e '1s:^#![[:space:]]*[^[:space:]]*/bin/env[[:space:]]\{1,\}\(/[^[:space:]]\{1,\}\):\1:p' "$filename"
-done
+++ /dev/null
-#!/usr/bin/perl
-
-# tcl.req - a simple makedepends like script for tcl.
-
-# I plan to rewrite this in C so that perl is not required by RPM at
-# build time.
-
-# by Ken Estes Mail.com kestes@staff.mail.com
-
-use File::Basename;
-
-if ("@ARGV") {
- foreach (@ARGV) {
- process_file($_);
- }
-} else {
-
- # notice we are passed a list of filenames NOT as common in unix the
- # contents of the file.
-
- foreach (<>) {
- process_file($_);
- }
-}
-
-
-foreach $module (sort keys %require) {
- print "tcl($module)\n";
-}
-
-exit 0;
-
-
-
-sub process_file {
-
- my ($file) = @_;
- chomp $file;
-
- open(FILE, "<$file")||
- die("$0: Could not open file: '$file' : $!\n");
-
- while (<FILE>) {
-
- # Each keyword can appear multiple times. Don't
- # bother with datastructures to store these strings,
- # if we need to print it print it now.
-
- if ( m/^\s*\$RPM_Requires\s*=\s*["'](.*)['"]/i) {
- foreach $_ (spit(/\s+/, $1)) {
- print "$_\n";
- }
- }
-
- s/\#.*//;
-
- # Each keyword can appear multiple times. Don't
- # bother with datastructures to store these strings,
- # if we need to print it print it now.
-
- if ( m/^\s*\$RPM_Requires\s*=\s*["'](.*)['"]/i) {
- foreach $_ (spit(/\s+/, $1))
- print "$_\n";
- }
-
-
-# we wish to capture these source statements:
-
-# source "$PATH/lib/util.tcl"
-# source "comconf.tcl"
-# if {[catch {source $env(CONTROL_PANEL_LIB_DIR)/bindings.tcl}] != 0} {
-
- # quick check to see if the complex regexps could possibly match.
- # This should speed things up.
-
- (m/source/) || next;
-
- # note we include parethesis and '$' and '\' in the pattern
-
- if (
- (m!source\s+([\'\"])?([0-9A-Za-z/._\-\\\(\)\$]+)!)
- ) {
-
- my ($module) = $2;
-
- # If there is some interpolation of variables,
- # see if taking the basename will give us the filename.
-
- ($module =~ m/\$/) &&
- ($module = basename($module));
-
- ($module =~ m/\$/) ||
- ($require{$module}=1);
- }
- }
-
- close(FILE)||
- die("$0: Could not close file: '$file' : $!\n");
-
- return ;
-}
+++ /dev/null
-#!/bin/sh
-
-
-for pkg in $*
-do
- if [ "$pkg" = "" -o ! -e "$pkg" ]; then
- echo "no package supplied" 1>&2
- exit 1
- fi
-
- plaintext=`mktemp ${TMPDIR:-/tmp}/tgpg-$$.XXXXXX`
- detached=`mktemp ${TMPDIR:-/tmp}/tgpg-$$.XXXXXX`
-
-# --- Extract detached signature
- rpm -qp -vv --qf '%{siggpg:armor}' $pkg > $detached
-
-# --- Figger the offset of header+payload in the package
- leadsize=96
- o=`expr $leadsize + 8`
-
- set `od -j $o -N 8 -t u1 $pkg`
- il=`expr 256 \* \( 256 \* \( 256 \* $2 + $3 \) + $4 \) + $5`
- dl=`expr 256 \* \( 256 \* \( 256 \* $6 + $7 \) + $8 \) + $9`
-
- sigsize=`expr 8 + 16 \* $il + $dl`
- o=`expr $o + $sigsize + \( 8 - \( $sigsize \% 8 \) \) \% 8`
-
-# --- Extract header+payload
- dd if=$pkg ibs=$o skip=1 2>/dev/null > $plaintext
-
-# --- Verify DSA signature using gpg
- gpg --batch -vv --debug 0xfc02 --verify $detached $plaintext
-
-# --- Clean up
- rm -f $detached $plaintext
-done
+++ /dev/null
-#!/bin/sh
-
-usage () {
-cat << EOF
-Usage: $0 TOP_DIR
-
-EOF
-exit 1
-}
-
-if [ -z "$1" ] ; then usage
-elif [ $1 = / ] ; then echo $0: expects non-/ argument for '$1' 1>&2
-elif [ ! -d $1 ] ; then
- echo $0: $1: no such directory
- exit 1
-else TOP_DIR="`echo $1|sed -e 's:/$::'`"
-fi
-shift
-
-DOC_NAME=documentation.list
-touch $DOC_NAME
-
-find $TOP_DIR -type f -o -type l | sed '
-s:'"$TOP_DIR"'::
-s:\(.*/man/man./.*\.[0-9]\):%doc \1:
-s:\(.*/gtk-doc/html/.*\):%doc \1:
-s:\(.*/info/.*\info.*\):%doc \1:
-s:^\([^%].*\)::
-/^$/d' >> $DOC_NAME
-
-
-exit 0
+++ /dev/null
-# Per-platform rpm configuration file.
-
-#==============================================================================
-# ---- per-platform macros.
-#
-%_vendor tizen
-%_os linux
-%_target_platform %{_target_cpu}-%{_vendor}-%{_target_os}%{?_gnu}
-
-###_enable_debug_packages 1
-
-# Default fuzz level for %patch in spec file.
-%_default_patch_fuzz 2
-%_enable_debug_packages 1
-
-#==============================================================================
-# ---- configure and makeinstall.
-#
-%configure \
- CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; \
- CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; \
- FFLAGS="${FFLAGS:-%optflags -I%_fmoddir}" ; export FFLAGS ; \
- ./configure --build=%{_build} --host=%{_host} \\\
- --target=%{_target_platform} \\\
- --program-prefix=%{?_program_prefix} \\\
- --prefix=%{_prefix} \\\
- --exec-prefix=%{_exec_prefix} \\\
- --bindir=%{_bindir} \\\
- --sbindir=%{_sbindir} \\\
- --sysconfdir=%{_sysconfdir} \\\
- --datadir=%{_datadir} \\\
- --includedir=%{_includedir} \\\
- --libdir=%{_libdir} \\\
- --libexecdir=%{_libexecdir} \\\
- --localstatedir=%{_localstatedir} \\\
- --sharedstatedir=%{_sharedstatedir} \\\
- --mandir=%{_mandir} \\\
- --infodir=%{_infodir}
-
-
-%reconfigure \
- CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; \
- CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; \
- FFLAGS="${FFLAGS:-%optflags -I%_fmoddir}" ; export FFLAGS ; \
- autoreconf -v --install --force || exit 1 \
- ./configure --build=%{_build} --host=%{_host} \\\
- --target=%{_target_platform} \\\
- --program-prefix=%{?_program_prefix} \\\
- --prefix=%{_prefix} \\\
- --exec-prefix=%{_exec_prefix} \\\
- --bindir=%{_bindir} \\\
- --sbindir=%{_sbindir} \\\
- --sysconfdir=%{_sysconfdir} \\\
- --datadir=%{_datadir} \\\
- --includedir=%{_includedir} \\\
- --libdir=%{_libdir} \\\
- --libexecdir=%{_libexecdir} \\\
- --localstatedir=%{_localstatedir} \\\
- --sharedstatedir=%{_sharedstatedir} \\\
- --mandir=%{_mandir} \\\
- --infodir=%{_infodir}
-
-%autogen \
- CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS ; \
- CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; \
- FFLAGS="${FFLAGS:-%optflags -I%_fmoddir}" ; export FFLAGS ; \
- ./autogen.sh --build=%{_build} --host=%{_host} \\\
- --target=%{_target_platform} \\\
- --program-prefix=%{?_program_prefix} \\\
- --prefix=%{_prefix} \\\
- --exec-prefix=%{_exec_prefix} \\\
- --bindir=%{_bindir} \\\
- --sbindir=%{_sbindir} \\\
- --sysconfdir=%{_sysconfdir} \\\
- --datadir=%{_datadir} \\\
- --includedir=%{_includedir} \\\
- --libdir=%{_libdir} \\\
- --libexecdir=%{_libexecdir} \\\
- --localstatedir=%{_localstatedir} \\\
- --sharedstatedir=%{_sharedstatedir} \\\
- --mandir=%{_mandir} \\\
- --infodir=%{_infodir}
-
-
-%makeinstall \
- %{__make} \\\
- prefix=%{?buildroot:%{buildroot}}%{_prefix} \\\
- exec_prefix=%{?buildroot:%{buildroot}}%{_exec_prefix} \\\
- bindir=%{?buildroot:%{buildroot}}%{_bindir} \\\
- sbindir=%{?buildroot:%{buildroot}}%{_sbindir} \\\
- sysconfdir=%{?buildroot:%{buildroot}}%{_sysconfdir} \\\
- datadir=%{?buildroot:%{buildroot}}%{_datadir} \\\
- includedir=%{?buildroot:%{buildroot}}%{_includedir} \\\
- libdir=%{?buildroot:%{buildroot}}%{_libdir} \\\
- libexecdir=%{?buildroot:%{buildroot}}%{_libexecdir} \\\
- localstatedir=%{?buildroot:%{buildroot}}%{_localstatedir} \\\
- sharedstatedir=%{?buildroot:%{buildroot}}%{_sharedstatedir} \\\
- mandir=%{?buildroot:%{buildroot}}%{_mandir} \\\
- infodir=%{?buildroot:%{buildroot}}%{_infodir} \\\
- install
-
-%make_install \
- %{__make} \\\
- DESTDIR=%{?buildroot:%{buildroot}} \\\
- INSTALL_ROOT=%{?buildroot:%{buildroot}} \\\
- install \
- rm -f %{?buildroot:%{buildroot}}%{_infodir}/dir \
- find %{?buildroot:%{buildroot}} -regex ".*\\.la$" | xargs rm -f -- \
- %{!?keepstatic:find %{?buildroot:%{buildroot}} -regex ".*\\.a$" | xargs rm -f --}
-
-%_smp_mflags %([ -z "$RPM_BUILD_NCPUS" ] \\\
- && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
- [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-j$RPM_BUILD_NCPUS")
-
-
-%install_info(:-:) \
- ALL_ARGS=(%{**}) \
- NUM_ARGS=${#ALL_ARGS[@]} \
- if test -x sbin/install-info ; then \
- if test -e "${ALL_ARGS[$((NUM_ARGS-1))]}" ; then \
- sbin/install-info "${ALL_ARGS[@]}" \
- fi \
- fi ;
-
-%install_info_delete(:-:) \
- ALL_ARGS=(%{**}) \
- NUM_ARGS=${#ALL_ARGS[@]} \
- if test -x sbin/install-info ; then \
- if ! test -e "${ALL_ARGS[$((NUM_ARGS-1))]}" ; then \
- sbin/install-info --quiet --delete "${ALL_ARGS[@]}" \
- fi ; \
- fi ;
-
-#==============================================================================
-# ---- Build policy macros.
-#
-#---------------------------------------------------------------------
-# Expanded at end of %install scriptlet.
-#
-
-%__arch_install_post /usr/lib/rpm/check-buildroot
-
-%__os_install_post \
- /usr/lib/rpm//brp-compress \
- %{!?__debug_package:/usr/lib/rpm/brp-strip %{__strip}} \
- /usr/lib/rpm/brp-strip-static-archive %{__strip} \
- /usr/lib/rpm/brp-strip-comment-note %{__strip} %{__objdump} \
- /usr/lib/rpm/brp-python-bytecompile \
- /usr/lib/rpm/brp-python-hardlink \
- %{!?disable_docs_package:/usr/lib/rpm/tizen/find-docs.sh %{buildroot}} \
-%{nil}
-
-# /usr/lib/rpm/tizen/brp-implant-ident-static
-
-%__spec_install_post\
- %{?__debug_package:%{__debug_install_post}}\
- %{__arch_install_post}\
- %{__os_install_post}\
-%{nil}
-
-
-%lang_package \
-%package locale \
-Summary: Translations and Locale for package %{name}\
-Group: Translations\
-AutoReqProv: 0\
-%description locale\
-This package provides translations for package %{name}.\
-%files locale -f %{name}.lang\
-%defattr(-,root,root,-)\
-%{nil}
-
-
-%docs_package \
-%package docs \
-Summary: Documentation for package %{name}\
-Group: Documentation\
-AutoReqProv: 0\
-%description docs\
-This package provides documentation for package %{name}.\
-%files docs -f documentation.list\
-%defattr(-,root,root,-)\
-%{nil}
-
-
-
-# Bad hack to set $LANG to C during all RPM builds
-%prep \
-%%prep\
-LANG=C\
-export LANG\
-unset DISPLAY\
-%{nil}
-
-%build %%build\
-LANG=C\
-export LANG\
-unset DISPLAY\
-CFLAGS="%optflags" ; export CFLAGS ; \
-CXXFLAGS="${CXXFLAGS:-%optflags}" ; export CXXFLAGS ; \
-FFLAGS="${FFLAGS:-%optflags -I%_fmoddir}" ; export FFLAGS ; \
-LD_AS_NEEDED=1; export LD_AS_NEEDED ; \
-%{nil}
-
-%install %{?_enable_debug_packages:%{?buildsubdir:%{debug_package}}}\
-%%install\
-LANG=C\
-export LANG\
-unset DISPLAY\
-rm -rf %{?buildroot:%{buildroot}} \
-mkdir -p %{?buildroot:%{buildroot}} \
-%{nil}
-
-%check %%check\
-unset DISPLAY\
-%{nil}
-
-%clean %%clean\
-rm -rf %{?buildroot:%{buildroot}} \
-%{nil}
-
-%find_lang /usr/lib/rpm/find-lang.sh %{buildroot}
-%find_docs /usr/lib/rpm/tizen/find-docs.sh %{buildroot}
-
-#
-# use internal dep generator?
-%_use_internal_dependency_generator 1
-
-#
-# Should missing %doc files terminate a build?
-%_missing_doc_files_terminate_build 1
-#
-# Should missing buildids terminate a build?
-%_missing_build_ids_terminate_build 1
-
-#
-# Should unpackaged files in a build root terminate a build?
-%_unpackaged_files_terminate_build 1
-
-%__global_cflags -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security
-
-# Disable lookups
-%_hkp_keyserver %{nil}
-
-
-#==============================================================================
-# ---- default icons directories as per the icon theme freedesktop spec
-
-%_iconstheme hicolor
-%_iconsbasedir %{_datadir}/icons/%{_iconstheme}
-
-#
-# The following is a bit heavy and will be removed
-#
-%_icons16dir %{_iconsbasedir}/16x16/apps
-%_icons22dir %{_iconsbasedir}/22x22/apps
-%_icons48dir %{_iconsbasedir}/48x48/apps
-%_icons64dir %{_iconsbasedir}/64x64/apps
-%_icons96dir %{_iconsbasedir}/96x96/apps
-%_icons192dir %{_iconsbasedir}/192x192/apps
-%_iconsscaldir %{_iconsbasedir}/scalable/apps
-
-
-#
-# Tizen icons
-#
-# %1 the name of the icon (typically the name of the package). RedHat
-# requires 3 icons sizes (48, 32, 16), all should be present.
-%tizen_icons() \
-install -D -m 644 %1-48.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/%{name}.png\
-install -D -m 644 %1-32.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/%{name}.png\
-install -D -m 644 %1-16.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png\
-%{nil}
-
-
-#==============================================================================
-# ---- default .desktop directories per the desktop-entry freedesktop.org spec
-
-%_desktopdir %{_datadir}/applications
-
-#==============================================================================
-# ---- Generic auto req/prov filtering macros
-#
-# http://fedoraproject.org/wiki/PackagingDrafts/AutoProvidesAndRequiresFiltering
-
-# prevent anything matching from being scanned for provides
-%filter_provides_in(P) %{expand: \
-%global __filter_prov_cmd %{?__filter_prov_cmd} %{__grep} -v %{-P} '%*' | \
-}
-
-# prevent anything matching from being scanned for requires
-%filter_requires_in(P) %{expand: \
-%global __filter_req_cmd %{?__filter_req_cmd} %{__grep} -v %{-P} '%*' | \
-}
-
-# filter anything matching out of the provides stream
-%filter_from_provides() %{expand: \
-%global __filter_from_prov %{?__filter_from_prov} | %{__sed} -e '%*' \
-}
-
-# filter anything matching out of the requires stream
-%filter_from_requires() %{expand: \
-%global __filter_from_req %{?__filter_from_req} | %{__sed} -e '%*' \
-}
-
-# actually set up the filtering bits
-%filter_setup %{expand: \
-%global _use_internal_dependency_generator 0 \
-%global __deploop() while read FILE; do /usr/lib/rpm/rpmdeps -%{1} ${FILE}; done | /bin/sort -u \
-%global __find_provides /bin/sh -c "%{?__filter_prov_cmd} %{__deploop P} %{?__filter_from_prov}" \
-%global __find_requires /bin/sh -c "%{?__filter_req_cmd} %{__deploop R} %{?__filter_from_req}" \
-}
+++ /dev/null
-RPM and it's source code are covered under two separate licenses.
-
-The entire code base may be distributed under the terms of the GNU General
-Public License (GPL), which appears immediately below. Alternatively,
-all of the source code in the lib subdirectory of the RPM source code
-distribution as well as any code derived from that code may instead be
-distributed under the GNU Library General Public License (LGPL), at the
-choice of the distributor. The complete text of the LGPL appears
-at the bottom of this file.
-
-This alternatively is allowed to enable applications to be linked against
-the RPM library (commonly called librpm) without forcing such applications
-to be distributed under the GPL.
-
-Any questions regarding the licensing of RPM should be addressed to
-marc@redhat.com and ewt@redhat.com.
-
----------------------------------------------------------------------------
-
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 675 Mass Ave, Cambridge, MA 02139, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-\f
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-\f
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-\f
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-\f
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-\f
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) 19yy <name of author>
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19yy name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
-
----------------------------------------------------------------------------
-
- GNU LIBRARY GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1991 Free Software Foundation, Inc.
- 675 Mass Ave, Cambridge, MA 02139, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the library GPL. It is
- numbered 2 because it goes with version 2 of the ordinary GPL.]
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
- This license, the Library General Public License, applies to some
-specially designated Free Software Foundation software, and to any
-other libraries whose authors decide to use it. You can use it for
-your libraries, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if
-you distribute copies of the library, or if you modify it.
-
- For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you. You must make sure that they, too, receive or can get the source
-code. If you link a program with the library, you must provide
-complete object files to the recipients so that they can relink them
-with the library, after making changes to the library and recompiling
-it. And you must show them these terms so they know their rights.
-
- Our method of protecting your rights has two steps: (1) copyright
-the library, and (2) offer you this license which gives you legal
-permission to copy, distribute and/or modify the library.
-
- Also, for each distributor's protection, we want to make certain
-that everyone understands that there is no warranty for this free
-library. If the library is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original
-version, so that any problems introduced by others will not reflect on
-the original authors' reputations.
-\f
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that companies distributing free
-software will individually obtain patent licenses, thus in effect
-transforming the program into proprietary software. To prevent this,
-we have made it clear that any patent must be licensed for everyone's
-free use or not licensed at all.
-
- Most GNU software, including some libraries, is covered by the ordinary
-GNU General Public License, which was designed for utility programs. This
-license, the GNU Library General Public License, applies to certain
-designated libraries. This license is quite different from the ordinary
-one; be sure to read it in full, and don't assume that anything in it is
-the same as in the ordinary license.
-
- The reason we have a separate public license for some libraries is that
-they blur the distinction we usually make between modifying or adding to a
-program and simply using it. Linking a program with a library, without
-changing the library, is in some sense simply using the library, and is
-analogous to running a utility program or application program. However, in
-a textual and legal sense, the linked executable is a combined work, a
-derivative of the original library, and the ordinary General Public License
-treats it as such.
-
- Because of this blurred distinction, using the ordinary General
-Public License for libraries did not effectively promote software
-sharing, because most developers did not use the libraries. We
-concluded that weaker conditions might promote sharing better.
-
- However, unrestricted linking of non-free programs would deprive the
-users of those programs of all benefit from the free status of the
-libraries themselves. This Library General Public License is intended to
-permit developers of non-free programs to use free libraries, while
-preserving your freedom as a user of such programs to change the free
-libraries that are incorporated in them. (We have not seen how to achieve
-this as regards changes in header files, but we have achieved it as regards
-changes in the actual functions of the Library.) The hope is that this
-will lead to faster development of free libraries.
-
- The precise terms and conditions for copying, distribution and
-modification follow. Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library". The
-former contains code derived from the library, while the latter only
-works together with the library.
-
- Note that it is possible for a library to be covered by the ordinary
-General Public License rather than by this special one.
-\f
- GNU LIBRARY GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License Agreement applies to any software library which
-contains a notice placed by the copyright holder or other authorized
-party saying it may be distributed under the terms of this Library
-General Public License (also called "this License"). Each licensee is
-addressed as "you".
-
- A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
- The "Library", below, refers to any such software library or work
-which has been distributed under these terms. A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language. (Hereinafter, translation is
-included without limitation in the term "modification".)
-
- "Source code" for a work means the preferred form of the work for
-making modifications to it. For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
-and installation of the library.
-
- Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it). Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-
- 1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
- You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-\f
- 2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) The modified work must itself be a software library.
-
- b) You must cause the files modified to carry prominent notices
- stating that you changed the files and the date of any change.
-
- c) You must cause the whole of the work to be licensed at no
- charge to all third parties under the terms of this License.
-
- d) If a facility in the modified Library refers to a function or a
- table of data to be supplied by an application program that uses
- the facility, other than as an argument passed when the facility
- is invoked, then you must make a good faith effort to ensure that,
- in the event an application does not supply such function or
- table, the facility still operates, and performs whatever part of
- its purpose remains meaningful.
-
- (For example, a function in a library to compute square roots has
- a purpose that is entirely well-defined independent of the
- application. Therefore, Subsection 2d requires that any
- application-supplied function or table used by this function must
- be optional: if the application does not supply it, the square
- root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library. To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License. (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.) Do not make any other change in
-these notices.
-\f
- Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
- This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
- 4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
- If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library". Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
- However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library". The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
- When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library. The
-threshold for this to be true is not precisely defined by law.
-
- If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work. (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
- Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-\f
- 6. As an exception to the Sections above, you may also compile or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
- You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License. You must supply a copy of this License. If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License. Also, you must do one
-of these things:
-
- a) Accompany the work with the complete corresponding
- machine-readable source code for the Library including whatever
- changes were used in the work (which must be distributed under
- Sections 1 and 2 above); and, if the work is an executable linked
- with the Library, with the complete machine-readable "work that
- uses the Library", as object code and/or source code, so that the
- user can modify the Library and then relink to produce a modified
- executable containing the modified Library. (It is understood
- that the user who changes the contents of definitions files in the
- Library will not necessarily be able to recompile the application
- to use the modified definitions.)
-
- b) Accompany the work with a written offer, valid for at
- least three years, to give the same user the materials
- specified in Subsection 6a, above, for a charge no more
- than the cost of performing this distribution.
-
- c) If distribution of the work is made by offering access to copy
- from a designated place, offer equivalent access to copy the above
- specified materials from the same place.
-
- d) Verify that the user has already received a copy of these
- materials or that you have already sent this user a copy.
-
- For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it. However, as a special exception,
-the source code distributed need not include anything that is normally
-distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
- It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system. Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-\f
- 7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
- a) Accompany the combined library with a copy of the same work
- based on the Library, uncombined with any other library
- facilities. This must be distributed under the terms of the
- Sections above.
-
- b) Give prominent notice with the combined library of the fact
- that part of it is a work based on the Library, and explaining
- where to find the accompanying uncombined form of the same work.
-
- 8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License. Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License. However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
- 9. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Library or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
- 10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-\f
- 11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all. For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded. In such case, this License incorporates the limitation as if
-written in the body of this License.
-
- 13. The Free Software Foundation may publish revised and/or new
-versions of the Library General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation. If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-\f
- 14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission. For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this. Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
- NO WARRANTY
-
- 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
- END OF TERMS AND CONDITIONS
-\f
- Appendix: How to Apply These Terms to Your New Libraries
-
- If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change. You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms of the
-ordinary General Public License).
-
- To apply these terms, attach the following notices to the library. It is
-safest to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.
-
- <one line to give the library's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public
- License as published by the Free Software Foundation; either
- version 2 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with this library; if not, write to the Free
- Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the library, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the
- library `Frob' (a library for tweaking knobs) written by James Random Hacker.
-
- <signature of Ty Coon>, 1 April 1990
- Ty Coon, President of Vice
-
-That's all there is to it!
+++ /dev/null
-Work on RPM was done primarily by:
-
- Erik Troan
- Marc Ewing
-
-Significant code, ideas, or porting help have been contributed by:
-
- Stuart Anderson
- Ed Bailey
- Donnie Barnes
- Nikita Borisov
- Till Bubeck
- Kit Cosper
- Kristof Depraetere
- Alex deVries
- Karl Eichwalder
- Fred Fish
- David Fox
- Joseph L. Hartmann, Jr
- Jeff Johnson
- Michael K. Johnson
- Eugene Kanter
- Toshio Kuratomi
- Hermann Lauer
- Elliot Lee
- Benedict Lofstedt
- Jared Mauch
- Nigel Metheringham
- Horacio Rodriguez Montero
- Tim Mooney
- Eric Mumpower
- Michael Nyquisk
- Steve Sanbeg
- Tyson Sawyer
- Christopher Seawood
- Johnie Stafford
- Gary Thomas
- Bob Tanner
- Karsten Weiss
+++ /dev/null
-Amusements/Games
-Amusements/Graphics
-Applications/Archiving
-Applications/Communications
-Applications/Databases
-Applications/Editors
-Applications/Emulators
-Applications/Engineering
-Applications/File
-Applications/Internet
-Applications/Multimedia
-Applications/Productivity
-Applications/Publishing
-Applications/System
-Applications/Text
-Development/Debuggers
-Development/Languages
-Development/Libraries
-Development/System
-Development/Tools
-Documentation
-System Environment/Base
-System Environment/Daemons
-System Environment/Kernel
-System Environment/Libraries
-System Environment/Shells
-User Interface/Desktops
-User Interface/X
-User Interface/X Hardware Support