diff options
Diffstat (limited to 'cpp/qpid-autotools-install')
-rwxr-xr-x | cpp/qpid-autotools-install | 224 |
1 files changed, 0 insertions, 224 deletions
diff --git a/cpp/qpid-autotools-install b/cpp/qpid-autotools-install deleted file mode 100755 index dcd1c93902..0000000000 --- a/cpp/qpid-autotools-install +++ /dev/null @@ -1,224 +0,0 @@ -#!/bin/sh -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -# Written by Jim Meyering - -VERSION='2007-07-10 09:09' # UTC - -prog_name=`basename $0` -die () { echo "$prog_name: $*" >&2; exit 1; } - -tarballs=' - http://pkgconfig.freedesktop.org/releases/pkg-config-0.21.tar.gz - ftp://ftp.gnu.org/gnu/m4/m4-1.4.10.tar.gz - ftp://ftp.gnu.org/gnu/automake/automake-1.10.tar.gz - ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.61.tar.gz - ftp://ftp.gnu.org/gnu/libtool/libtool-1.5.24.tar.gz -' - -usage() { - echo >&2 "\ -Usage: $0 [OPTION]... -Download, build, and install some tools. - -Options: - --prefix=PREFIX install tools under specified directory - --skip-check do not run "make check" (this can save 50+ min) - --help display this help and exit - -For example, to install programs into \$HOME/qpid-tools/bin, run this command: - - $prog_name --prefix=\$HOME/qpid-tools - -If you've already verified that your system/environment can build working -versions of these tools, you can make this script complete in just a -minute or two (rather than about an hour if you let all "make check" -tests run) by invoking it like this: - - $prog_name --prefix=\$HOME/qpid-tools --skip-check - -" -} - -# Get the listed tarballs into the current directory. -get_sources() -{ - case `wget --help` in - *'--no-cache'*) - WGET_COMMAND='wget -nv --no-cache';; - *'--cache=on/off'*) - WGET_COMMAND='wget -nv --cache=off';; - *'--non-verbose'*) - WGET_COMMAND='wget -nv';; - *) - die 'no wget program found; please install it and try again';; - esac - - # Download the each tar-ball along with its signature, if there is one. - pkgs= - for t in $(echo $tarballs); do - base=$(basename $t) - pkgs="$pkgs $base" - test -f $base || $WGET_COMMAND $t - - # pkg-config has no .sig file. - case $base in pkg-config*) continue;; esac - - test -f $base.sig || $WGET_COMMAND $t.sig - # Verify each signature. - gpg --quiet --verify --trust-model=always \ - --trusted-key=32419B785D0CDCFC \ - --trusted-key=3859C03B2E236E47 \ - --trusted-key=B93F60C6B5C4CE13 \ - --trusted-key=F382AE19F4850180 \ - $base.sig > /dev/null 2>&1 \ - || echo "info: not verifying GPG signature for $base" 1>&2 - done - - printf 'verifying package SHA1 checksums...' 1>&2 - sha1sum -c --warn --status <<EOF || die "checksum mismatch" -69f37c509a4757d747b6f4c091d209ab3984d62f autoconf-2.61.tar.gz -69dc02b083b9a609b28fc4db129fef6a83ed2339 automake-1.10.tar.gz -b4c994f1bf4a76d2b0c1d0a6f54d16598c15f3db libtool-1.5.24.tar.gz -26d47c893722d683308f5d9fc172a11d5b2ad8a9 m4-1.4.10.tar.gz -b2508ba8404cad46ec42f6f58cbca43ae59d715f pkg-config-0.21.tar.gz -EOF - printf 'ok\n' 1>&2 - echo $pkgs -} - -################################################################# -set -e - -# Parse options. - -make_check=yes -prefix= - -for option -do - case $option in - --help) usage; exit;; - --skip-check) make_check=no;; - --prefix=*) prefix=`expr "$option" : '--prefix=\(.*\)'`;; - *) die "$option: unknown option";; - esac -done - -test -n "$prefix" \ - || die "you must specify a --prefix" - -case $prefix in - /*) ;; - *) die 'invalid prefix: '"$prefix"': it must be an absolute name';; -esac - -# Don't run as root. -# Make sure id -u succeeds. -my_uid=`id -u` -test $? = 0 || { - echo "$0: cannot run \`id -u'" 1>&2 - (exit 1); exit 1 -} -test $my_uid = 0 && die "please don't run this program as root" - -# Ensure that prefix is not /usr/bin or /bin, /sbin, etc. -case $prefix in - /bin|/sbin|/usr/bin|/usr/sbin) - die "don't set PREFIX to a system directory";; - *) ;; -esac - -# Create a build directory, then cd into it for the rest.... -tmpdir=.build-auto-tools -mkdir -p $tmpdir -cd $tmpdir - -pkgs=$(get_sources) - -for pkg in $pkgs; do - echo building/installing $pkg... - dir=$(basename $pkg .tar.gz) - rm -rf dir - gzip -dc $pkg|tar xf - - cd $dir - ./configure CFLAGS=-O2 LDFLAGS=-s --prefix=$prefix > makerr-config 2>&1 - make -j1 > makerr-build 2>&1 - if test "$make_check" = yes; then - case $pkg in - automake*) expected_duration_minutes=40;; - autoconf*) expected_duration_minutes=15;; - # libtool*) expected_duration_minutes=3;; - *);; - esac - test -n "$expected_duration_minutes" \ - && echo "running 'make check' for $pkg; NB: this can take over" \ - "$expected_duration_minutes minutes" - case $pkg in - # In this package, the check-requires-private test fails. - # Change the Makefile so it skips that test. - pkg-config-0.21.tar.gz) - perl -pi.bak -e 's/check-requires-private //' check/Makefile;; - - esac - make -j1 check > makerr-check 2>&1 - fi - make -j1 install > makerr-install 2>&1 - echo done at $(date +%Y-%m-%d.%T) - cd .. -done - -# Without checks (and with existing tarballs), it takes just one minute. -# Including all checks, it takes nearly an hour on an AMD64/3400+ - -case $PKG_CONFIG_PATH in - $prefix/lib/pkgconfig:/usr/lib/pkgconfig) - echo 'Good! your PKG_CONFIG_PATH envvar is already set';; - *) cat <<EOF;; -************************************************************************** -Be sure that PKG_CONFIG_PATH is set in your environment, e.g., -PKG_CONFIG_PATH=$prefix/lib/pkgconfig:/usr/lib/pkgconfig -************************************************************************** -EOF -esac - -case $PATH in - "$prefix/bin:"*) echo 'Good! your PATH is fine';; - *) cat <<EOF;; -************************************************************************** -Be sure that "$prefix/bin" is earlier in your PATH than /bin, /usr/bin, etc. -************************************************************************** -EOF -esac - -cat <<EOF -************************************************************************** -You may want to remove the tool build directory: -rm -rf $tmpdir -************************************************************************** -EOF - -## Local Variables: -## eval: (add-hook 'write-file-hooks 'time-stamp) -## time-stamp-start: "VERSION='" -## time-stamp-format: "%:y-%02m-%02d %02H:%02M" -## time-stamp-time-zone: "UTC" -## time-stamp-end: "' # UTC" -## End: |