summaryrefslogtreecommitdiffstats
path: root/hwloc-1.2.1/config/distscript.csh
diff options
context:
space:
mode:
Diffstat (limited to 'hwloc-1.2.1/config/distscript.csh')
-rwxr-xr-xhwloc-1.2.1/config/distscript.csh240
1 files changed, 240 insertions, 0 deletions
diff --git a/hwloc-1.2.1/config/distscript.csh b/hwloc-1.2.1/config/distscript.csh
new file mode 100755
index 00000000..ed4578b4
--- /dev/null
+++ b/hwloc-1.2.1/config/distscript.csh
@@ -0,0 +1,240 @@
+#! /bin/csh -f
+#
+# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
+# University Research and Technology
+# Corporation. All rights reserved.
+# Copyright (c) 2004-2005 The University of Tennessee and The University
+# of Tennessee Research Foundation. All rights
+# reserved.
+# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
+# University of Stuttgart. All rights reserved.
+# Copyright (c) 2004-2005 The Regents of the University of California.
+# All rights reserved.
+# Copyright © 2010 INRIA. All rights reserved.
+# Copyright © 2009-2011 Cisco Systems, Inc. All rights reserved.
+# $COPYRIGHT$
+#
+# Additional copyrights may follow
+#
+# $HEADER$
+#
+
+set builddir="`pwd`"
+
+set srcdir="$1"
+cd "$srcdir"
+set srcdir=`pwd`
+cd "$builddir"
+
+set distdir="$builddir/$2"
+set HWLOC_VERSION="$3"
+set HWLOC_REPO_REV="$4"
+
+if ("$distdir" == "") then
+ echo "Must supply relative distdir as argv[2] -- aborting"
+ exit 1
+elif ("$HWLOC_VERSION" == "") then
+ echo "Must supply version as argv[1] -- aborting"
+ exit 1
+endif
+
+#========================================================================
+
+if ("$srcdir" != "$builddir") then
+ set vpath=1
+ set vpath_msg=yes
+else
+ set vpath=0
+ set vpath_msg=no
+endif
+
+# We can catch some hard (but possible) to do mistakes by looking at
+# our tree's revision number, but only if we are in the source tree.
+# Otherwise, use what configure told us, at the cost of allowing one
+# or two corner cases in (but otherwise VPATH builds won't work).
+set repo_rev=$HWLOC_REPO_REV
+if (-d .svn) then
+ set repo_rev="r`svnversion .`"
+endif
+
+set start=`date`
+cat <<EOF
+
+Creating hwloc distribution
+In directory: `pwd`
+Srcdir: $srcdir
+Builddir: $builddir
+VPATH: $vpath_msg
+Version: $HWLOC_VERSION
+Started: $start
+
+EOF
+
+umask 022
+
+if (! -d "$distdir") then
+ echo "*** ERROR: dist dir does not exist"
+ echo "*** ERROR: $distdir"
+ exit 1
+endif
+
+#
+# See if we need to update the version file with the current repo
+# revision number. Do this *before* entering the distribution tree to
+# solve a whole host of problems with VPATH (since srcdir may be
+# relative or absolute)
+#
+set cur_repo_rev="`grep '^repo_rev' ${distdir}/VERSION | cut -d= -f2`"
+if ("$cur_repo_rev" == "-1") then
+ sed -e 's/^repo_rev=.*/repo_rev='$repo_rev'/' "${distdir}/VERSION" > "${distdir}/version.new"
+ cp "${distdir}/version.new" "${distdir}/VERSION"
+ rm -f "${distdir}/version.new"
+ # need to reset the timestamp to not annoy AM dependencies
+ touch -r "${srcdir}/VERSION" "${distdir}/VERSION"
+ echo "*** Updated VERSION file with repo rev number: $repo_rev"
+else
+ echo "*** Did NOT update VERSION file with repo rev number"
+endif
+
+#
+# VPATH builds only work if the srcdir has valid docs already built.
+# If we're VPATH and the srcdir doesn't have valid docs, then fail.
+#
+
+if ($vpath == 1 && ! -d $srcdir/doc/doxygen-doc) then
+ echo "*** This is a VPATH 'make dist', but the srcdir does not already"
+ echo "*** have a doxygen-doc tree built. hwloc's config/distscript.csh"
+ echo "*** requores the docs to be built in the srcdir before executing"
+ echo "*** 'make dist' in a VPATH build."
+ exit 1
+endif
+
+#
+# If we're not VPATH, force the generation of new doxygen documentation
+#
+
+if ($vpath == 0) then
+ # Not VPATH
+ echo "*** Making new doxygen documentation (doxygen-doc tree)"
+ echo "*** Directory: srcdir: $srcdir, distdir: $distdir, pwd: `pwd`"
+ cd doc
+ # We're still in the src tree, so kill any previous doxygen-docs
+ # tree and make a new one.
+ chmod -R a=rwx doxygen-doc
+ rm -rf doxygen-doc
+ make
+ if ($status != 0) then
+ echo ERROR: generating doxygen docs failed
+ echo ERROR: cannot continue
+ exit 1
+ endif
+
+ # Make new README file
+ echo "*** Making new README"
+ make readme
+ if ($status != 0) then
+ echo ERROR: generating new README failed
+ echo ERROR: cannot continue
+ exit 1
+ endif
+else
+ echo "*** This is a VPATH build; assuming that the doxygen docs and REAME"
+ echo "*** are current in the srcdir (i.e., we'll just copy those)"
+endif
+
+echo "*** Copying doxygen-doc tree to dist..."
+echo "*** Directory: srcdir: $srcdir, distdir: $distdir, pwd: `pwd`"
+chmod -R a=rwx $distdir/doc/doxygen-doc
+echo rm -rf $distdir/doc/doxygen-doc
+rm -rf $distdir/doc/doxygen-doc
+echo cp -rpf $srcdir/doc/doxygen-doc $distdir/doc
+cp -rpf $srcdir/doc/doxygen-doc $distdir/doc
+
+echo "*** Copying new README"
+ls -lf $distdir/README
+cp -pf $srcdir/README $distdir
+
+#########################################################
+# VERY IMPORTANT: Now go into the new distribution tree #
+#########################################################
+cd "$distdir"
+echo "*** Now in distdir: $distdir"
+
+#
+# Remove all the latex source files from the distribution tree (the
+# PDFs are still there; we're just removing the latex source because
+# some of the filenames get really, really long...).
+#
+
+echo "*** Removing latex source from dist tree"
+rm -rf doc/doxygen-doc/latex
+
+#
+# Get the latest config.guess and config.sub from ftp.gnu.org
+#
+
+echo "*** Downloading latest config.sub/config.guess from ftp.gnu.org..."
+cd config
+set configdir="`pwd`"
+mkdir tmp.$$
+cd tmp.$$
+# Official HTTP git mirrors for config.guess / config.sub
+wget -t 1 -T 10 -O config.guess 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=master'
+wget -t 1 -T 10 -O config.sub 'http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=master'
+chmod +x config.guess config.sub
+
+# Recently, ftp.gnu.org has had zero-legnth config.guess / config.sub
+# files, which causes the automated nightly SVN snapshot tarball to
+# fail to be made correctly. This is a primitive attempt to fix that.
+# If we got zero-length files from wget, use a config.guess /
+# config.sub from a known location that is more recent than what ships
+# in the current generation of auto* tools. Also check to ensure that
+# the resulting scripts are runnable (Jan 2009: there are un-runnable
+# scripts available right now because of some git vulnerability).
+
+# Before you complain about this too loudly, remember that we're using
+# unreleased software...
+
+set happy=0
+if (! -f config.guess || ! -s config.guess) then
+ echo " - WARNING: Got bad config.guess from ftp.gnu.org (non-existent or empty)"
+else
+ ./config.guess >& /dev/null
+ if ($status != 0) then
+ echo " - WARNING: Got bad config.guess from ftp.gnu.org (not executable)"
+ else
+ if (! -f config.sub || ! -s config.sub) then
+ echo " - WARNING: Got bad config.sub from ftp.gnu.org (non-existent or empty)"
+ else
+ ./config.sub `./config.guess` >& /dev/null
+ if ($status != 0) then
+ echo " - WARNING: Got bad config.sub from ftp.gnu.org (not executable)"
+ else
+ echo " - Got good config.guess and config.sub from ftp.gnu.org"
+ chmod +w ../config.sub ../config.guess
+ cp config.sub config.guess ..
+ set happy=1
+ endif
+ endif
+ endif
+endif
+
+if ("$happy" == "0") then
+ echo " - WARNING: using included versions for both config.sub and config.guess"
+endif
+cd ..
+rm -rf tmp.$$
+cd ..
+
+#
+# All done
+#
+
+cat <<EOF
+*** hwloc version $HWLOC_VERSION distribution created
+
+Started: $start
+Ended: `date`
+
+EOF
+