--- a/Admin/CHECKLIST Thu Jul 05 13:35:46 2012 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,81 +0,0 @@
-Checklist for official releases
-===============================
-
-- test polyml-5.4.1, polyml-5.4.0, polyml-5.3.0, smlnj;
-
-- test Proof General 4.1, 3.7.1.1;
-
-- check HTML header of library;
-
-- check CTRL-C, SIGINT in tty (also for external processes);
-
-- check persistent sessions with PG and Poly/ML 5.x;
-
-- check file positions within logic images (hyperlinks etc.);
-
-- Admin/update-keywords;
-
-- check ANNOUNCE, README, NEWS, COPYRIGHT, CONTRIBUTORS;
-
-- check Admin/contributed_components;
-
-- check funny base directory, e.g. "Test 中国";
-
-- diff NEWS wrt. last official release, which is read-only;
-
-- update https://isabelle.in.tum.de/repos/website;
-
-- maintain Docs:
- doc-src: make all
- doc-src/Dirs
- doc/Contents
-
-- maintain Logics:
- build
- etc/components
- lib/html/library_index_content.template
-
-- test separate compilation of Isabelle/Scala PIDE sources:
- Admin/build jars_test
-
-- test Isabelle/jEdit:
- print buffer
-
-- test contrib components:
- x86_64-linux without 32bit C/C++ libraries
- Mac OS X Leopard
-
-
-Packaging
-=========
-
-- makedist -j jedit_build-XXXX -r DISTNAME
-
-- makebin (multiplatform);
-
-- makebundle (multiplatform);
-
-- Mac OS X: hdiutil create -srcfolder DIR DMG;
-
-- Windows: cat 7zsd_All.sfx sfx.txt Isabelle.7z > Isabelle.exe
-
-- makebin -l on fast machine, based on renamed bundle with deleted heaps;
-
-
-Final release stage
-===================
-
-- makedist: REPOS_NAME="isabelle-release"
-
-- various .hg/hgrc files:
- default = /home/isabelle-repository/repos/isabelle-release
-
-- isatest@macbroy28:hg-isabelle/.hg/hgrc
-- isatest@macbroy28:devel-page/content/index.content
-
-
-Post-release
-============
-
-- update /home/isabelle and /home/isabelle/html-data
-
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Admin/Release/CHECKLIST Thu Jul 05 14:13:14 2012 +0200
@@ -0,0 +1,81 @@
+Checklist for official releases
+===============================
+
+- test polyml-5.4.1, polyml-5.4.0, polyml-5.3.0, smlnj;
+
+- test Proof General 4.1, 3.7.1.1;
+
+- check HTML header of library;
+
+- check CTRL-C, SIGINT in tty (also for external processes);
+
+- check persistent sessions with PG and Poly/ML 5.x;
+
+- check file positions within logic images (hyperlinks etc.);
+
+- Admin/update-keywords;
+
+- check ANNOUNCE, README, NEWS, COPYRIGHT, CONTRIBUTORS;
+
+- check Admin/components;
+
+- check funny base directory, e.g. "Test 中国";
+
+- diff NEWS wrt. last official release, which is read-only;
+
+- update https://isabelle.in.tum.de/repos/website;
+
+- maintain Docs:
+ doc-src: make all
+ doc-src/Dirs
+ doc/Contents
+
+- maintain Logics:
+ build
+ etc/components
+ lib/html/library_index_content.template
+
+- test separate compilation of Isabelle/Scala PIDE sources:
+ Admin/build jars_test
+
+- test Isabelle/jEdit:
+ print buffer
+
+- test contrib components:
+ x86_64-linux without 32bit C/C++ libraries
+ Mac OS X Leopard
+
+
+Packaging
+=========
+
+- makedist -j jedit_build-XXXX -r DISTNAME
+
+- makebin (multiplatform);
+
+- makebundle (multiplatform);
+
+- Mac OS X: hdiutil create -srcfolder DIR DMG;
+
+- Windows: cat 7zsd_All.sfx sfx.txt Isabelle.7z > Isabelle.exe
+
+- makebin -l on fast machine, based on renamed bundle with deleted heaps;
+
+
+Final release stage
+===================
+
+- makedist: REPOS_NAME="isabelle-release"
+
+- various .hg/hgrc files:
+ default = /home/isabelle-repository/repos/isabelle-release
+
+- isatest@macbroy28:hg-isabelle/.hg/hgrc
+- isatest@macbroy28:devel-page/content/index.content
+
+
+Post-release
+============
+
+- update /home/isabelle and /home/isabelle/html-data
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Admin/Release/isasync Thu Jul 05 14:13:14 2012 +0200
@@ -0,0 +1,129 @@
+#!/usr/bin/env bash
+#
+# mirror script for Isabelle distribution or website
+
+
+## diagnostics
+
+PRG=`basename "$0"`
+
+usage()
+{
+ echo
+ echo "Usage: $PRG [OPTIONS] DEST"
+ echo
+ echo " Options are:"
+ echo " -h print help message"
+ echo " -n dry run, don't do anything, just report what would happen"
+ echo " -w (ignored for backward compatibility)"
+ echo " -d delete files that are not on the server (BEWARE!)"
+ echo
+ exit 1
+}
+
+fail()
+{
+ echo "$1" >&2
+ exit 2
+}
+
+
+## process command line
+
+# options
+
+HELP=""
+ARGS=""
+SRC="isabelle-website"
+
+while getopts "hnwd" OPT
+do
+ case "$OPT" in
+ h)
+ HELP=true
+ ;;
+ n)
+ ARGS="$ARGS -n"
+ ;;
+ w)
+ echo "option -w ignored"
+ ;;
+ d)
+ ARGS="$ARGS --delete"
+ ;;
+ \?)
+ usage
+ ;;
+ esac
+done
+
+shift `expr $OPTIND - 1`
+
+
+# help
+
+if [ -n "$HELP" ]; then
+ cat <<EOF
+
+Mirroring the Isabelle distribution or website
+==============================================
+
+The Munich site maintains an rsync server for the Isabelle
+distribution or website.
+
+The rsync tool is very smart and efficient in mirroring large
+directory hierarchies. See http://rsync.samba.org/ for more
+information. The $PRG script provides a simple front-end
+for easy access to the Isabelle distribution.
+
+The script can be either run in conservative or clean-sweep mode.
+
+1) Basic mirroring works like this:
+
+ $PRG /foo/bar
+
+where /foo/bar refers to your local copy of the Isabelle distribution
+(the base directory has to exist already). This operation is
+conservative in the sense that files are never deleted, thus garbage
+may accumulate over time as our master copy is changed.
+
+Avoiding garbage in your local copy requires some care. Rsync
+provides a way to delete all additional local files that are absent in
+the master copy. This provides an efficient way to purge large
+directory hierarchies, even unwillingly in case that a wrong
+destination is given!
+
+2a) This will invoke a safe dry-run of clean-sweep mirroring:
+
+ $PRG -dn /foo/bar
+
+where additions and deletions will be printed without any actual
+changes performed so far.
+
+2b) Exact mirroring with actual deletion of garbage may be performed
+like this:
+
+ $PRG -d /foo/bar
+
+
+After gaining some confidence in the workings of $PRG one
+would usually set up some automatic mirror scheme, e.g. a daily cron
+job run by the 'nobody' user.
+
+Add -w to the option list in order to mirror the whole Isabelle website
+
+EOF
+ exit 0
+fi
+
+
+# arguments
+
+[ $# -ne 1 ] && { echo "Bad arguments: $*"; usage; }
+
+DEST="$1"; shift;
+
+
+## main
+
+exec rsync -va $ARGS "rsync://isabelle.in.tum.de/$SRC" "$DEST/"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Admin/Release/makebin Thu Jul 05 14:13:14 2012 +0200
@@ -0,0 +1,118 @@
+#!/usr/bin/env bash
+#
+# makebin -- make Isabelle logic images for current platform
+
+
+## global settings
+
+TMP="/var/tmp/isabelle-makebin$$"
+
+
+## diagnostics
+
+PRG=$(basename "$0")
+
+function usage()
+{
+ echo
+ echo "Usage: $PRG [OPTIONS] ARCHIVE"
+ echo
+ echo " Options are:"
+ echo " -l produce library"
+ echo
+ echo " Precompile Isabelle for the current platform."
+ echo
+ exit 1
+}
+
+function fail()
+{
+ echo "$1" >&2
+ exit 2
+}
+
+
+## process command line
+
+# options
+
+DO_LIBRARY=""
+
+while getopts "l" OPT
+do
+ case "$OPT" in
+ l)
+ DO_LIBRARY=true
+ ;;
+ \?)
+ usage
+ ;;
+ esac
+done
+
+shift $(($OPTIND - 1))
+
+
+# args
+
+[ "$#" -gt 1 ] && usage
+
+ARCHIVE="$1"; shift
+
+
+## main
+
+[ ! -f "$ARCHIVE" ] && fail "Bad archive file $ARCHIVE"
+ARCHIVE_BASE="$(basename "$ARCHIVE")"
+ARCHIVE_DIR="$(cd $(dirname "$ARCHIVE"); echo "$PWD")"
+ARCHIVE_FULL="$ARCHIVE_DIR/$ARCHIVE_BASE"
+
+ISABELLE_NAME="$(basename "$ARCHIVE_BASE" .tar.gz)"
+ISABELLE_HOME="$TMP/$ISABELLE_NAME"
+
+
+# build logics
+
+mkdir "$TMP" || fail "Cannot create directory $TMP"
+
+cd "$TMP"
+tar xzf "$ARCHIVE_FULL"
+cd "$ISABELLE_NAME"
+
+perl -pi \
+ -e 's:^ISABELLE_USEDIR_OPTIONS=.*$:ISABELLE_USEDIR_OPTIONS="-M 1":;' \
+ etc/settings
+
+if [ -n "$DO_LIBRARY" ]; then
+ perl -pi -e 's:^ISABELLE_USEDIR_OPTIONS=.*$:ISABELLE_USEDIR_OPTIONS="-M 1 -i true -d pdf -V outline=/proof,/ML":;' \
+ etc/settings
+fi
+
+ISABELLE_HOME_USER=$(./bin/isabelle getenv -b ISABELLE_HOME_USER)
+
+COMPILER=$(./bin/isabelle getenv -b ML_IDENTIFIER)
+PLATFORM=$(./bin/isabelle getenv -b ML_PLATFORM)
+
+if [ -n "$DO_LIBRARY" ]; then
+ ./build -bait -m all
+else
+ ./build -b HOL
+fi
+
+
+# prepare result
+
+cd "$TMP"
+
+chmod -R g=o "$TMP"
+chgrp -R isabelle "$TMP"
+
+if [ -n "$DO_LIBRARY" ]; then
+ tar -c -z -f "$ARCHIVE_DIR/${ISABELLE_NAME}_library.tar.gz" "$ISABELLE_NAME/browser_info"
+else
+ tar -c -z -f "$ARCHIVE_DIR/${ISABELLE_NAME}_heaps_${PLATFORM}.tar.gz" "$ISABELLE_NAME/heaps"
+fi
+
+
+# clean up
+rm -rf "$TMP"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Admin/Release/makebundle Thu Jul 05 14:13:14 2012 +0200
@@ -0,0 +1,147 @@
+#!/usr/bin/env bash
+#
+# makebundle -- re-package with add-on components
+
+## diagnostics
+
+PRG=$(basename "$0")
+
+function usage()
+{
+ echo
+ echo "Usage: $PRG ARCHIVE PLATFORM"
+ echo
+ echo " Re-package Isabelle source distribution with add-on components"
+ echo " and heap images"
+ echo
+ exit 1
+}
+
+function fail()
+{
+ echo "$1" >&2
+ exit 2
+}
+
+
+## implicit and explicit arguments
+
+TMP="/var/tmp/isabelle-makebundle$$"
+mkdir "$TMP" || fail "Cannot create directory $TMP"
+
+[ "$#" -ne 2 ] && usage
+
+ARCHIVE="$1"; shift
+PLATFORM="$1"; shift
+
+[ -f "$ARCHIVE" ] || fail "Bad source archive: $ARCHIVE"
+
+
+## main
+
+ARCHIVE_DIR="$(cd $(dirname "$ARCHIVE"); echo "$PWD")"
+ISABELLE_NAME="$(basename "$ARCHIVE" .tar.gz)"
+ISABELLE_HOME="$TMP/$ISABELLE_NAME"
+
+tar -C "$TMP" -x -z -f "$ARCHIVE"
+
+
+echo "#bundled components" >> "$ISABELLE_HOME/etc/components"
+
+for CONTRIB in "$ARCHIVE_DIR/contrib/"*.tar.gz "$ARCHIVE_DIR/contrib/$PLATFORM"/*.tar.gz
+do
+ if [ -f "$CONTRIB" ]; then
+ tar -C "$ISABELLE_HOME/contrib" -x -z -f "$CONTRIB"
+ NAME="$(basename "$CONTRIB" .tar.gz)"
+ [ -d "$ISABELLE_HOME/contrib/$NAME" ] || fail "Bad archive content $CONTRIB"
+
+ if [ -e "$ISABELLE_HOME/contrib/$NAME/etc/settings" ]; then
+ echo "component $NAME"
+ if [ "$PLATFORM" != x86-cygwin -a "$NAME" = ProofGeneral-3.7.1.1 ]; then
+ echo "#contrib/$NAME" >> "$ISABELLE_HOME/etc/components"
+ elif [ "$PLATFORM" = x86-cygwin -a "$NAME" = ProofGeneral-4.1 ]; then
+ echo "#contrib/$NAME" >> "$ISABELLE_HOME/etc/components"
+ else
+ echo "contrib/$NAME" >> "$ISABELLE_HOME/etc/components"
+ fi
+ else
+ echo "package $NAME"
+ fi
+ fi
+done
+
+if [ "$PLATFORM" = x86-cygwin ]; then
+ TAR="$ARCHIVE_DIR/contrib/x86-cygwin/Isabelle.tar"
+ [ -e "$TAR" ] || fail "Missing $TAR"
+ rm -f "$ISABELLE_HOME/Isabelle"
+ tar -C "$ISABELLE_HOME" -xv -f "$TAR"
+
+ (
+ cd "$ISABELLE_HOME"
+ for DIR in $(find contrib -name x86-linux -o -name x86_64-linux -o -name x86-darwin -o -name x86_64-darwin | sort)
+ do
+ echo "removing $DIR"
+ rm -rf "$DIR"
+ done
+ )
+
+ mv "$ISABELLE_HOME/contrib"/polyml* "$ISABELLE_HOME/contrib/cygwin-1.7.9/usr/local/"
+ (
+ cd "$ISABELLE_HOME/contrib/cygwin-1.7.9"
+ find usr/local/polyml-*/x86-cygwin | gzip > etc/setup/polyml.lst.gz
+ )
+
+ for NAME in ANNOUNCE README NEWS COPYRIGHT CONTRIBUTORS contrib/README
+ do
+ FILE="$ISABELLE_HOME/$NAME"
+ {
+ echo '<?xml version="1.0" encoding="utf-8" ?>'
+ echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'
+ echo '<html xmlns="http://www.w3.org/1999/xhtml">'
+ echo '<head>'
+ echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>'
+ echo "<title>${NAME}</title>"
+ echo '</head>'
+ echo '<body>'
+ echo '<pre>'
+ perl -w -p -e "s/&/&/g; s/</</g; s/>/>/g; s/'/'/g; s/\"/"/g;" "$FILE"
+ echo '</pre>'
+ echo '</body>'
+ } > "${FILE}.html"
+ done
+fi
+
+
+HEAPS_ARCHIVE="$ARCHIVE_DIR/${ISABELLE_NAME}_heaps_${PLATFORM}.tar.gz"
+[ -f "$HEAPS_ARCHIVE" ] || fail "Bad heaps archive: $HEAPS_ARCHIVE"
+echo "heaps"
+tar -C "$TMP" -x -z -f "$HEAPS_ARCHIVE"
+
+case "$PLATFORM" in
+ x86_64-linux)
+ perl -pi -e 's,^ML_PLATFORM=.*$,ML_PLATFORM="\$ISABELLE_PLATFORM64",g;' "$TMP/$ISABELLE_NAME/etc/settings"
+ perl -pi -e "s,^ML_OPTIONS=.*$,ML_OPTIONS=\"-H 400\",g;" "$TMP/$ISABELLE_NAME/etc/settings"
+ ;;
+ *-darwin)
+ perl -pi -e "s,lookAndFeel=.*,lookAndFeel=com.apple.laf.AquaLookAndFeel,g;" \
+ -e "s,delete-line.shortcut=.*,delete-line.shortcut=C+d,g;" \
+ -e "s,delete.shortcut2=.*,delete.shortcut2=A+d,g;" \
+ "$TMP/$ISABELLE_NAME/src/Tools/jEdit/dist/properties/jEdit.props"
+ ;;
+ *-cygwin)
+ perl -pi -e "s,lookAndFeel=.*,lookAndFeel=com.sun.java.swing.plaf.windows.WindowsLookAndFeel,g;" \
+ "$TMP/$ISABELLE_NAME/src/Tools/jEdit/dist/properties/jEdit.props"
+ ;;
+ *)
+ ;;
+esac
+
+BUNDLE_ARCHIVE="${ARCHIVE_DIR}/${ISABELLE_NAME}_bundle_${PLATFORM}.tar.gz"
+
+echo "$(basename "$BUNDLE_ARCHIVE")"
+tar -C "$TMP" -c -z -f "$BUNDLE_ARCHIVE" "$ISABELLE_NAME"
+
+
+# clean up
+cd /tmp
+rm -rf "$TMP"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Admin/Release/makedist Thu Jul 05 14:13:14 2012 +0200
@@ -0,0 +1,235 @@
+#!/usr/bin/env bash
+#
+# makedist -- make Isabelle source distribution
+
+## global settings
+
+REPOS_NAME="isabelle"
+REPOS="${REPOS:-http://isabelle.in.tum.de/repos/${REPOS_NAME}}"
+DISTPREFIX="${DISTPREFIX:-$HOME/tmp/isadist}"
+
+umask 022
+
+
+## diagnostics
+
+PRG="$(basename "$0")"
+THIS="$(cd $(dirname "$0"); pwd)"
+
+function usage()
+{
+ cat <<EOF
+
+Usage: $PRG [OPTIONS] [VERSION]
+
+ Options are:
+ -j JEDIT_BUILD build Isabelle/jEdit via given jedit_build component
+ -r RELEASE proper release with name"
+
+ Make Isabelle distribution from the main Mercurial repository at TUM.
+
+ VERSION identifies the snapshot, using usual Mercurial terminology;
+ the default is RELEASE if given, otherwise "tip".
+
+EOF
+ exit 1
+}
+
+function fail()
+{
+ echo "$1" >&2
+ exit 2
+}
+
+
+## process command line
+
+# options
+
+RELEASE=""
+ISABELLE_JEDIT_BUILD_HOME=""
+
+while getopts "j:r:" OPT
+do
+ case "$OPT" in
+ j)
+ ISABELLE_JEDIT_BUILD_HOME="$OPTARG"
+ ;;
+ r)
+ RELEASE="$OPTARG"
+ ;;
+ \?)
+ usage
+ ;;
+ esac
+done
+
+shift $(($OPTIND - 1))
+
+
+# args
+
+VERSION=""
+[ "$#" -gt 0 ] && { VERSION="$1"; shift; }
+[ -z "$VERSION" ] && VERSION="$RELEASE"
+[ -z "$VERSION" ] && VERSION="tip"
+
+[ "$#" -gt 0 ] && usage
+
+
+## main
+
+# tmp
+
+TMP="tmp-$USER$$"
+function purge_tmp () { rm -rf "$DISTPREFIX/$TMP"; }
+
+
+# retrieve archive and resolve version identifier
+
+mkdir "$DISTPREFIX/$TMP" || fail "Failed to create fresh directory"
+cd "$DISTPREFIX/$TMP"
+
+echo "###"
+echo "### Retrieving Mercurial repository $VERSION"
+echo "###"
+
+if expr match "$REPOS" "https\?://" > /dev/null
+then
+ { wget -q "$REPOS/archive/${VERSION}.tar.gz" -O- | tar -xzf -; } || \
+ fail "Failed to retrieve $VERSION"
+else
+ { hg --repository "$REPOS" archive --type tgz - | tar -xzf -; } || \
+ fail "Failed to retrieve $VERSION"
+fi
+
+IDENT=$(echo * | sed "s/${REPOS_NAME}-//")
+
+rm -f "${REPOS_NAME}-${IDENT}/.hg_archival.txt"
+rm -f "${REPOS_NAME}-${IDENT}/.hgtags"
+rm -f "${REPOS_NAME}-${IDENT}/.hgignore"
+rm -f "${REPOS_NAME}-${IDENT}/README_REPOSITORY"
+
+
+# dist name
+
+DATE=$(env LC_ALL=C date "+%d-%b-%Y")
+DISTDATE=$(env LC_ALL=C date "+%B %Y")
+
+if [ -z "$RELEASE" ]; then
+ DISTNAME="Isabelle_$DATE"
+ DISTVERSION="Isabelle repository snapshot $IDENT $DATE"
+else
+ DISTNAME="$RELEASE"
+ DISTVERSION="$DISTNAME: $DISTDATE"
+fi
+
+DISTBASE="$DISTPREFIX/dist-$DISTNAME"
+mkdir -p "$DISTBASE" || { purge_tmp; fail "Unable to create distribution base dir $DISTBASE!"; }
+[ -e "$DISTBASE/$DISTNAME" ] && { purge_tmp; fail "$DISTBASE/$DISTNAME already exists!"; }
+
+cd "$DISTBASE"
+mv "$DISTPREFIX/$TMP/${REPOS_NAME}-${IDENT}" "$DISTNAME"
+purge_tmp
+
+cd "$DISTNAME" || fail "No dist directory: $DISTBASE/$DISTNAME"
+
+
+# prepare dist for release
+
+echo "###"
+echo "### Preparing distribution $DISTNAME"
+echo "###"
+
+rm -f .hgignore
+find . "(" -name \*.thy -o -name \*.ML -o -name \*.scala ")" -perm +111 -print | xargs chmod -f -x
+find . -print | xargs chmod -f u+rw
+
+perl -pi -e 's/^(ISABELLE_SCALA_BUILD_OPTIONS=")/$1-optimise /,' etc/settings
+
+./Admin/build all || fail "Failed to build distribution"
+
+if [ -n "$ISABELLE_JEDIT_BUILD_HOME" ]; then
+ [ -d "$ISABELLE_JEDIT_BUILD_HOME" ] || fail "Bad jedit_build component directory: \"$ISABELLE_JEDIT_BUILD_HOME\""
+ eval "$(fgrep ISABELLE_JEDIT_BUILD_VERSION "$ISABELLE_JEDIT_BUILD_HOME/etc/settings")"
+ [ -n "$ISABELLE_JEDIT_BUILD_VERSION" ] || fail "Bad ISABELLE_JEDIT_BUILD_VERSION"
+ export ISABELLE_JEDIT_BUILD_HOME ISABELLE_JEDIT_BUILD_VERSION
+ ./bin/isabelle jedit -b || fail "Failed to build Isabelle/jEdit"
+fi
+
+rm -rf Admin
+
+MOVE=$(find doc-src \( -type f -a -not -type l -a -not -name isabelle_isar.pdf -a -not -name pghead.pdf -a \( -name \*.dvi -o -name \*.eps -o -name \*.ps -o -name \*.pdf \) -a -print \) | grep -v 'gfx/.*pdf')
+mv -f $MOVE doc
+rm doc/Isa-logics.eps
+rm doc/adaptation.dvi doc/adaptation.pdf doc/architecture.dvi doc/architecture.pdf
+rm -rf doc-src
+
+mkdir -p contrib
+cat >contrib/README <<EOF
+This directory contains add-on components that contribute to the main
+Isabelle distribution. Separate licensing conditions apply, see each
+directory individually.
+EOF
+
+cp doc/isabelle*.eps lib/logo
+
+if [ -z "$RELEASE" ]; then
+ {
+ echo
+ echo "IMPORTANT NOTE"
+ echo "=============="
+ echo
+ echo "This is an unofficial snapshot of Isabelle, created by $LOGNAME $DATE."
+ echo "See $REPOS/log/$IDENT for details."
+ echo
+ } >ANNOUNCE
+else
+ perl -pi -e "s,val is_official = false,val is_official = true,g" src/Pure/ROOT.ML
+fi
+
+perl -pi -e "s,val changelog = \"\",val changelog = \"$REPOS/log/$IDENT\",g" src/Pure/ROOT.ML
+perl -pi -e "s,ISABELLE_ID=\"\",ISABELLE_ID=\"$IDENT\",g" lib/scripts/getsettings
+perl -pi -e "s,ISABELLE_IDENTIFIER=\"\",ISABELLE_IDENTIFIER=\"$DISTNAME\",g" lib/scripts/getsettings
+perl -pi -e "s,{ISABELLE},$DISTNAME,g" lib/html/library_index_header.template
+perl -pi -e "s,unidentified repository version,$DISTVERSION,g" src/Pure/ROOT.ML lib/Tools/version
+perl -pi -e "s,some unidentified repository version of Isabelle,$DISTVERSION,g" README
+
+
+# create archive
+
+echo "###"
+echo "### Creating archive ..."
+echo "###"
+
+cd "$DISTBASE"
+
+echo "$DISTBASE/$DISTNAME.tar.gz" > ../ISABELLE_DIST
+echo "$IDENT" >../ISABELLE_IDENT
+
+chown -R "$LOGNAME" "$DISTNAME"
+chmod -R u+w "$DISTNAME"
+chmod -R g=o "$DISTNAME"
+chgrp -R isabelle "$DISTNAME"
+
+echo "$DISTNAME.tar.gz"
+tar -czf "$DISTNAME.tar.gz" "$DISTNAME"
+
+
+# cleanup dist
+
+mv "$DISTNAME" "${DISTNAME}-old"
+mkdir "$DISTNAME"
+
+mv "${DISTNAME}-old/README" "${DISTNAME}-old/NEWS" "${DISTNAME}-old/ANNOUNCE" \
+ "${DISTNAME}-old/COPYRIGHT" "${DISTNAME}-old/CONTRIBUTORS" "$DISTNAME"
+mkdir "$DISTNAME/doc"
+mv "${DISTNAME}-old/doc/"*.pdf "${DISTNAME}-old/doc/Contents" "$DISTNAME/doc"
+
+rm -f Isabelle && ln -sf "$DISTNAME" Isabelle
+
+chgrp -R isabelle "$DISTNAME"
+
+rm -rf "${DISTNAME}-old"
+
+echo "DONE"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Admin/Release/mirror-website Thu Jul 05 14:13:14 2012 +0200
@@ -0,0 +1,21 @@
+#!/usr/bin/env bash
+#
+# mirrors the Isabelle website
+
+HOST=$(hostname)
+
+case ${HOST} in
+ sunbroy* | atbroy* | macbroy*)
+ DEST=/home/html/isabelle/html-data
+ ;;
+ *.cl.cam.ac.uk)
+ USER=paulson
+ DEST=/anfs/www/html/research/hvg/Isabelle
+ ;;
+ *)
+ echo "Unknown destination directory for ${HOST}"
+ exit 2
+ ;;
+esac
+
+exec $(dirname $0)/isasync $DEST
--- a/Admin/isasync Thu Jul 05 13:35:46 2012 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,129 +0,0 @@
-#!/usr/bin/env bash
-#
-# mirror script for Isabelle distribution or website
-
-
-## diagnostics
-
-PRG=`basename "$0"`
-
-usage()
-{
- echo
- echo "Usage: $PRG [OPTIONS] DEST"
- echo
- echo " Options are:"
- echo " -h print help message"
- echo " -n dry run, don't do anything, just report what would happen"
- echo " -w (ignored for backward compatibility)"
- echo " -d delete files that are not on the server (BEWARE!)"
- echo
- exit 1
-}
-
-fail()
-{
- echo "$1" >&2
- exit 2
-}
-
-
-## process command line
-
-# options
-
-HELP=""
-ARGS=""
-SRC="isabelle-website"
-
-while getopts "hnwd" OPT
-do
- case "$OPT" in
- h)
- HELP=true
- ;;
- n)
- ARGS="$ARGS -n"
- ;;
- w)
- echo "option -w ignored"
- ;;
- d)
- ARGS="$ARGS --delete"
- ;;
- \?)
- usage
- ;;
- esac
-done
-
-shift `expr $OPTIND - 1`
-
-
-# help
-
-if [ -n "$HELP" ]; then
- cat <<EOF
-
-Mirroring the Isabelle distribution or website
-==============================================
-
-The Munich site maintains an rsync server for the Isabelle
-distribution or website.
-
-The rsync tool is very smart and efficient in mirroring large
-directory hierarchies. See http://rsync.samba.org/ for more
-information. The $PRG script provides a simple front-end
-for easy access to the Isabelle distribution.
-
-The script can be either run in conservative or clean-sweep mode.
-
-1) Basic mirroring works like this:
-
- $PRG /foo/bar
-
-where /foo/bar refers to your local copy of the Isabelle distribution
-(the base directory has to exist already). This operation is
-conservative in the sense that files are never deleted, thus garbage
-may accumulate over time as our master copy is changed.
-
-Avoiding garbage in your local copy requires some care. Rsync
-provides a way to delete all additional local files that are absent in
-the master copy. This provides an efficient way to purge large
-directory hierarchies, even unwillingly in case that a wrong
-destination is given!
-
-2a) This will invoke a safe dry-run of clean-sweep mirroring:
-
- $PRG -dn /foo/bar
-
-where additions and deletions will be printed without any actual
-changes performed so far.
-
-2b) Exact mirroring with actual deletion of garbage may be performed
-like this:
-
- $PRG -d /foo/bar
-
-
-After gaining some confidence in the workings of $PRG one
-would usually set up some automatic mirror scheme, e.g. a daily cron
-job run by the 'nobody' user.
-
-Add -w to the option list in order to mirror the whole Isabelle website
-
-EOF
- exit 0
-fi
-
-
-# arguments
-
-[ $# -ne 1 ] && { echo "Bad arguments: $*"; usage; }
-
-DEST="$1"; shift;
-
-
-## main
-
-exec rsync -va $ARGS "rsync://isabelle.in.tum.de/$SRC" "$DEST/"
--- a/Admin/makebin Thu Jul 05 13:35:46 2012 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,118 +0,0 @@
-#!/usr/bin/env bash
-#
-# makebin -- make Isabelle logic images for current platform
-
-
-## global settings
-
-TMP="/var/tmp/isabelle-makebin$$"
-
-
-## diagnostics
-
-PRG=$(basename "$0")
-
-function usage()
-{
- echo
- echo "Usage: $PRG [OPTIONS] ARCHIVE"
- echo
- echo " Options are:"
- echo " -l produce library"
- echo
- echo " Precompile Isabelle for the current platform."
- echo
- exit 1
-}
-
-function fail()
-{
- echo "$1" >&2
- exit 2
-}
-
-
-## process command line
-
-# options
-
-DO_LIBRARY=""
-
-while getopts "l" OPT
-do
- case "$OPT" in
- l)
- DO_LIBRARY=true
- ;;
- \?)
- usage
- ;;
- esac
-done
-
-shift $(($OPTIND - 1))
-
-
-# args
-
-[ "$#" -gt 1 ] && usage
-
-ARCHIVE="$1"; shift
-
-
-## main
-
-[ ! -f "$ARCHIVE" ] && fail "Bad archive file $ARCHIVE"
-ARCHIVE_BASE="$(basename "$ARCHIVE")"
-ARCHIVE_DIR="$(cd $(dirname "$ARCHIVE"); echo "$PWD")"
-ARCHIVE_FULL="$ARCHIVE_DIR/$ARCHIVE_BASE"
-
-ISABELLE_NAME="$(basename "$ARCHIVE_BASE" .tar.gz)"
-ISABELLE_HOME="$TMP/$ISABELLE_NAME"
-
-
-# build logics
-
-mkdir "$TMP" || fail "Cannot create directory $TMP"
-
-cd "$TMP"
-tar xzf "$ARCHIVE_FULL"
-cd "$ISABELLE_NAME"
-
-perl -pi \
- -e 's:^ISABELLE_USEDIR_OPTIONS=.*$:ISABELLE_USEDIR_OPTIONS="-M 1":;' \
- etc/settings
-
-if [ -n "$DO_LIBRARY" ]; then
- perl -pi -e 's:^ISABELLE_USEDIR_OPTIONS=.*$:ISABELLE_USEDIR_OPTIONS="-M 1 -i true -d pdf -V outline=/proof,/ML":;' \
- etc/settings
-fi
-
-ISABELLE_HOME_USER=$(./bin/isabelle getenv -b ISABELLE_HOME_USER)
-
-COMPILER=$(./bin/isabelle getenv -b ML_IDENTIFIER)
-PLATFORM=$(./bin/isabelle getenv -b ML_PLATFORM)
-
-if [ -n "$DO_LIBRARY" ]; then
- ./build -bait -m all
-else
- ./build -b HOL
-fi
-
-
-# prepare result
-
-cd "$TMP"
-
-chmod -R g=o "$TMP"
-chgrp -R isabelle "$TMP"
-
-if [ -n "$DO_LIBRARY" ]; then
- tar -c -z -f "$ARCHIVE_DIR/${ISABELLE_NAME}_library.tar.gz" "$ISABELLE_NAME/browser_info"
-else
- tar -c -z -f "$ARCHIVE_DIR/${ISABELLE_NAME}_heaps_${PLATFORM}.tar.gz" "$ISABELLE_NAME/heaps"
-fi
-
-
-# clean up
-rm -rf "$TMP"
--- a/Admin/makebundle Thu Jul 05 13:35:46 2012 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,147 +0,0 @@
-#!/usr/bin/env bash
-#
-# makebundle -- re-package with add-on components
-
-## diagnostics
-
-PRG=$(basename "$0")
-
-function usage()
-{
- echo
- echo "Usage: $PRG ARCHIVE PLATFORM"
- echo
- echo " Re-package Isabelle source distribution with add-on components"
- echo " and heap images"
- echo
- exit 1
-}
-
-function fail()
-{
- echo "$1" >&2
- exit 2
-}
-
-
-## implicit and explicit arguments
-
-TMP="/var/tmp/isabelle-makebundle$$"
-mkdir "$TMP" || fail "Cannot create directory $TMP"
-
-[ "$#" -ne 2 ] && usage
-
-ARCHIVE="$1"; shift
-PLATFORM="$1"; shift
-
-[ -f "$ARCHIVE" ] || fail "Bad source archive: $ARCHIVE"
-
-
-## main
-
-ARCHIVE_DIR="$(cd $(dirname "$ARCHIVE"); echo "$PWD")"
-ISABELLE_NAME="$(basename "$ARCHIVE" .tar.gz)"
-ISABELLE_HOME="$TMP/$ISABELLE_NAME"
-
-tar -C "$TMP" -x -z -f "$ARCHIVE"
-
-
-echo "#bundled components" >> "$ISABELLE_HOME/etc/components"
-
-for CONTRIB in "$ARCHIVE_DIR/contrib/"*.tar.gz "$ARCHIVE_DIR/contrib/$PLATFORM"/*.tar.gz
-do
- if [ -f "$CONTRIB" ]; then
- tar -C "$ISABELLE_HOME/contrib" -x -z -f "$CONTRIB"
- NAME="$(basename "$CONTRIB" .tar.gz)"
- [ -d "$ISABELLE_HOME/contrib/$NAME" ] || fail "Bad archive content $CONTRIB"
-
- if [ -e "$ISABELLE_HOME/contrib/$NAME/etc/settings" ]; then
- echo "component $NAME"
- if [ "$PLATFORM" != x86-cygwin -a "$NAME" = ProofGeneral-3.7.1.1 ]; then
- echo "#contrib/$NAME" >> "$ISABELLE_HOME/etc/components"
- elif [ "$PLATFORM" = x86-cygwin -a "$NAME" = ProofGeneral-4.1 ]; then
- echo "#contrib/$NAME" >> "$ISABELLE_HOME/etc/components"
- else
- echo "contrib/$NAME" >> "$ISABELLE_HOME/etc/components"
- fi
- else
- echo "package $NAME"
- fi
- fi
-done
-
-if [ "$PLATFORM" = x86-cygwin ]; then
- TAR="$ARCHIVE_DIR/contrib/x86-cygwin/Isabelle.tar"
- [ -e "$TAR" ] || fail "Missing $TAR"
- rm -f "$ISABELLE_HOME/Isabelle"
- tar -C "$ISABELLE_HOME" -xv -f "$TAR"
-
- (
- cd "$ISABELLE_HOME"
- for DIR in $(find contrib -name x86-linux -o -name x86_64-linux -o -name x86-darwin -o -name x86_64-darwin | sort)
- do
- echo "removing $DIR"
- rm -rf "$DIR"
- done
- )
-
- mv "$ISABELLE_HOME/contrib"/polyml* "$ISABELLE_HOME/contrib/cygwin-1.7.9/usr/local/"
- (
- cd "$ISABELLE_HOME/contrib/cygwin-1.7.9"
- find usr/local/polyml-*/x86-cygwin | gzip > etc/setup/polyml.lst.gz
- )
-
- for NAME in ANNOUNCE README NEWS COPYRIGHT CONTRIBUTORS contrib/README
- do
- FILE="$ISABELLE_HOME/$NAME"
- {
- echo '<?xml version="1.0" encoding="utf-8" ?>'
- echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'
- echo '<html xmlns="http://www.w3.org/1999/xhtml">'
- echo '<head>'
- echo '<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>'
- echo "<title>${NAME}</title>"
- echo '</head>'
- echo '<body>'
- echo '<pre>'
- perl -w -p -e "s/&/&/g; s/</</g; s/>/>/g; s/'/'/g; s/\"/"/g;" "$FILE"
- echo '</pre>'
- echo '</body>'
- } > "${FILE}.html"
- done
-fi
-
-
-HEAPS_ARCHIVE="$ARCHIVE_DIR/${ISABELLE_NAME}_heaps_${PLATFORM}.tar.gz"
-[ -f "$HEAPS_ARCHIVE" ] || fail "Bad heaps archive: $HEAPS_ARCHIVE"
-echo "heaps"
-tar -C "$TMP" -x -z -f "$HEAPS_ARCHIVE"
-
-case "$PLATFORM" in
- x86_64-linux)
- perl -pi -e 's,^ML_PLATFORM=.*$,ML_PLATFORM="\$ISABELLE_PLATFORM64",g;' "$TMP/$ISABELLE_NAME/etc/settings"
- perl -pi -e "s,^ML_OPTIONS=.*$,ML_OPTIONS=\"-H 400\",g;" "$TMP/$ISABELLE_NAME/etc/settings"
- ;;
- *-darwin)
- perl -pi -e "s,lookAndFeel=.*,lookAndFeel=com.apple.laf.AquaLookAndFeel,g;" \
- -e "s,delete-line.shortcut=.*,delete-line.shortcut=C+d,g;" \
- -e "s,delete.shortcut2=.*,delete.shortcut2=A+d,g;" \
- "$TMP/$ISABELLE_NAME/src/Tools/jEdit/dist/properties/jEdit.props"
- ;;
- *-cygwin)
- perl -pi -e "s,lookAndFeel=.*,lookAndFeel=com.sun.java.swing.plaf.windows.WindowsLookAndFeel,g;" \
- "$TMP/$ISABELLE_NAME/src/Tools/jEdit/dist/properties/jEdit.props"
- ;;
- *)
- ;;
-esac
-
-BUNDLE_ARCHIVE="${ARCHIVE_DIR}/${ISABELLE_NAME}_bundle_${PLATFORM}.tar.gz"
-
-echo "$(basename "$BUNDLE_ARCHIVE")"
-tar -C "$TMP" -c -z -f "$BUNDLE_ARCHIVE" "$ISABELLE_NAME"
-
-
-# clean up
-cd /tmp
-rm -rf "$TMP"
--- a/Admin/makedist Thu Jul 05 13:35:46 2012 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,235 +0,0 @@
-#!/usr/bin/env bash
-#
-# makedist -- make Isabelle source distribution
-
-## global settings
-
-REPOS_NAME="isabelle"
-REPOS="${REPOS:-http://isabelle.in.tum.de/repos/${REPOS_NAME}}"
-DISTPREFIX="${DISTPREFIX:-$HOME/tmp/isadist}"
-
-umask 022
-
-
-## diagnostics
-
-PRG="$(basename "$0")"
-THIS="$(cd $(dirname "$0"); pwd)"
-
-function usage()
-{
- cat <<EOF
-
-Usage: $PRG [OPTIONS] [VERSION]
-
- Options are:
- -j JEDIT_BUILD build Isabelle/jEdit via given jedit_build component
- -r RELEASE proper release with name"
-
- Make Isabelle distribution from the main Mercurial repository at TUM.
-
- VERSION identifies the snapshot, using usual Mercurial terminology;
- the default is RELEASE if given, otherwise "tip".
-
-EOF
- exit 1
-}
-
-function fail()
-{
- echo "$1" >&2
- exit 2
-}
-
-
-## process command line
-
-# options
-
-RELEASE=""
-ISABELLE_JEDIT_BUILD_HOME=""
-
-while getopts "j:r:" OPT
-do
- case "$OPT" in
- j)
- ISABELLE_JEDIT_BUILD_HOME="$OPTARG"
- ;;
- r)
- RELEASE="$OPTARG"
- ;;
- \?)
- usage
- ;;
- esac
-done
-
-shift $(($OPTIND - 1))
-
-
-# args
-
-VERSION=""
-[ "$#" -gt 0 ] && { VERSION="$1"; shift; }
-[ -z "$VERSION" ] && VERSION="$RELEASE"
-[ -z "$VERSION" ] && VERSION="tip"
-
-[ "$#" -gt 0 ] && usage
-
-
-## main
-
-# tmp
-
-TMP="tmp-$USER$$"
-function purge_tmp () { rm -rf "$DISTPREFIX/$TMP"; }
-
-
-# retrieve archive and resolve version identifier
-
-mkdir "$DISTPREFIX/$TMP" || fail "Failed to create fresh directory"
-cd "$DISTPREFIX/$TMP"
-
-echo "###"
-echo "### Retrieving Mercurial repository $VERSION"
-echo "###"
-
-if expr match "$REPOS" "https\?://" > /dev/null
-then
- { wget -q "$REPOS/archive/${VERSION}.tar.gz" -O- | tar -xzf -; } || \
- fail "Failed to retrieve $VERSION"
-else
- { hg --repository "$REPOS" archive --type tgz - | tar -xzf -; } || \
- fail "Failed to retrieve $VERSION"
-fi
-
-IDENT=$(echo * | sed "s/${REPOS_NAME}-//")
-
-rm -f "${REPOS_NAME}-${IDENT}/.hg_archival.txt"
-rm -f "${REPOS_NAME}-${IDENT}/.hgtags"
-rm -f "${REPOS_NAME}-${IDENT}/.hgignore"
-rm -f "${REPOS_NAME}-${IDENT}/README_REPOSITORY"
-
-
-# dist name
-
-DATE=$(env LC_ALL=C date "+%d-%b-%Y")
-DISTDATE=$(env LC_ALL=C date "+%B %Y")
-
-if [ -z "$RELEASE" ]; then
- DISTNAME="Isabelle_$DATE"
- DISTVERSION="Isabelle repository snapshot $IDENT $DATE"
-else
- DISTNAME="$RELEASE"
- DISTVERSION="$DISTNAME: $DISTDATE"
-fi
-
-DISTBASE="$DISTPREFIX/dist-$DISTNAME"
-mkdir -p "$DISTBASE" || { purge_tmp; fail "Unable to create distribution base dir $DISTBASE!"; }
-[ -e "$DISTBASE/$DISTNAME" ] && { purge_tmp; fail "$DISTBASE/$DISTNAME already exists!"; }
-
-cd "$DISTBASE"
-mv "$DISTPREFIX/$TMP/${REPOS_NAME}-${IDENT}" "$DISTNAME"
-purge_tmp
-
-cd "$DISTNAME" || fail "No dist directory: $DISTBASE/$DISTNAME"
-
-
-# prepare dist for release
-
-echo "###"
-echo "### Preparing distribution $DISTNAME"
-echo "###"
-
-rm -f .hgignore
-find . "(" -name \*.thy -o -name \*.ML -o -name \*.scala ")" -perm +111 -print | xargs chmod -f -x
-find . -print | xargs chmod -f u+rw
-
-perl -pi -e 's/^(ISABELLE_SCALA_BUILD_OPTIONS=")/$1-optimise /,' etc/settings
-
-./Admin/build all || fail "Failed to build distribution"
-
-if [ -n "$ISABELLE_JEDIT_BUILD_HOME" ]; then
- [ -d "$ISABELLE_JEDIT_BUILD_HOME" ] || fail "Bad jedit_build component directory: \"$ISABELLE_JEDIT_BUILD_HOME\""
- eval "$(fgrep ISABELLE_JEDIT_BUILD_VERSION "$ISABELLE_JEDIT_BUILD_HOME/etc/settings")"
- [ -n "$ISABELLE_JEDIT_BUILD_VERSION" ] || fail "Bad ISABELLE_JEDIT_BUILD_VERSION"
- export ISABELLE_JEDIT_BUILD_HOME ISABELLE_JEDIT_BUILD_VERSION
- ./bin/isabelle jedit -b || fail "Failed to build Isabelle/jEdit"
-fi
-
-rm -rf Admin
-
-MOVE=$(find doc-src \( -type f -a -not -type l -a -not -name isabelle_isar.pdf -a -not -name pghead.pdf -a \( -name \*.dvi -o -name \*.eps -o -name \*.ps -o -name \*.pdf \) -a -print \) | grep -v 'gfx/.*pdf')
-mv -f $MOVE doc
-rm doc/Isa-logics.eps
-rm doc/adaptation.dvi doc/adaptation.pdf doc/architecture.dvi doc/architecture.pdf
-rm -rf doc-src
-
-mkdir -p contrib
-cat >contrib/README <<EOF
-This directory contains add-on components that contribute to the main
-Isabelle distribution. Separate licensing conditions apply, see each
-directory individually.
-EOF
-
-cp doc/isabelle*.eps lib/logo
-
-if [ -z "$RELEASE" ]; then
- {
- echo
- echo "IMPORTANT NOTE"
- echo "=============="
- echo
- echo "This is an unofficial snapshot of Isabelle, created by $LOGNAME $DATE."
- echo "See $REPOS/log/$IDENT for details."
- echo
- } >ANNOUNCE
-else
- perl -pi -e "s,val is_official = false,val is_official = true,g" src/Pure/ROOT.ML
-fi
-
-perl -pi -e "s,val changelog = \"\",val changelog = \"$REPOS/log/$IDENT\",g" src/Pure/ROOT.ML
-perl -pi -e "s,ISABELLE_ID=\"\",ISABELLE_ID=\"$IDENT\",g" lib/scripts/getsettings
-perl -pi -e "s,ISABELLE_IDENTIFIER=\"\",ISABELLE_IDENTIFIER=\"$DISTNAME\",g" lib/scripts/getsettings
-perl -pi -e "s,{ISABELLE},$DISTNAME,g" lib/html/library_index_header.template
-perl -pi -e "s,unidentified repository version,$DISTVERSION,g" src/Pure/ROOT.ML lib/Tools/version
-perl -pi -e "s,some unidentified repository version of Isabelle,$DISTVERSION,g" README
-
-
-# create archive
-
-echo "###"
-echo "### Creating archive ..."
-echo "###"
-
-cd "$DISTBASE"
-
-echo "$DISTBASE/$DISTNAME.tar.gz" > ../ISABELLE_DIST
-echo "$IDENT" >../ISABELLE_IDENT
-
-chown -R "$LOGNAME" "$DISTNAME"
-chmod -R u+w "$DISTNAME"
-chmod -R g=o "$DISTNAME"
-chgrp -R isabelle "$DISTNAME"
-
-echo "$DISTNAME.tar.gz"
-tar -czf "$DISTNAME.tar.gz" "$DISTNAME"
-
-
-# cleanup dist
-
-mv "$DISTNAME" "${DISTNAME}-old"
-mkdir "$DISTNAME"
-
-mv "${DISTNAME}-old/README" "${DISTNAME}-old/NEWS" "${DISTNAME}-old/ANNOUNCE" \
- "${DISTNAME}-old/COPYRIGHT" "${DISTNAME}-old/CONTRIBUTORS" "$DISTNAME"
-mkdir "$DISTNAME/doc"
-mv "${DISTNAME}-old/doc/"*.pdf "${DISTNAME}-old/doc/Contents" "$DISTNAME/doc"
-
-rm -f Isabelle && ln -sf "$DISTNAME" Isabelle
-
-chgrp -R isabelle "$DISTNAME"
-
-rm -rf "${DISTNAME}-old"
-
-echo "DONE"
--- a/Admin/mira.py Thu Jul 05 13:35:46 2012 +0200
+++ b/Admin/mira.py Thu Jul 05 14:13:14 2012 +0200
@@ -313,7 +313,7 @@
"""Build of distribution"""
## FIXME This is rudimentary; study Admin/CHECKLIST to complete this configuration accordingly
isabelle_home = paths[0]
- (return_code, log) = env.run_process(path.join(isabelle_home, 'Admin', 'makedist'),
+ (return_code, log) = env.run_process(path.join(isabelle_home, 'Admin', 'Release', 'makedist'),
REPOS = repositories.get(Isabelle).local_path, DISTPREFIX = os.getcwd())
return (return_code == 0, '', ## FIXME might add summary here
{}, {'log': log}, None) ## FIXME might add proper result here
--- a/Admin/mirror-website Thu Jul 05 13:35:46 2012 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-#!/usr/bin/env bash
-#
-# mirrors the Isabelle website
-
-HOST=$(hostname)
-
-case ${HOST} in
- sunbroy* | atbroy* | macbroy*)
- DEST=/home/html/isabelle/html-data
- ;;
- *.cl.cam.ac.uk)
- USER=paulson
- DEST=/anfs/www/html/research/hvg/Isabelle
- ;;
- *)
- echo "Unknown destination directory for ${HOST}"
- exit 2
- ;;
-esac
-
-exec $(dirname $0)/isasync $DEST