mirror of https://github.com/CGAL/cgal
81 lines
2.6 KiB
Bash
Executable File
81 lines
2.6 KiB
Bash
Executable File
#!/bin/zsh
|
|
|
|
setopt -o glob
|
|
setopt -o extended_glob
|
|
|
|
if [ -z "$1" ]; then
|
|
printf "Usage:\n prepare_release <internal_release_public_dir>\n"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
RELEASE_CANDIDATES_DIR=/var/CGAL/www/Members/release-candidates
|
|
MANUAL_TESTS_DIR=/var/CGAL/www/Members/Manual_test
|
|
|
|
PUBLIC_RELEASE_DIR="$1"
|
|
|
|
INTERNAL_RELEASE=`basename ${PUBLIC_RELEASE_DIR/-public/}`
|
|
|
|
PUBLIC_RELEASE_NAME=`basename ${~${ZIP_TARBALL::="$PUBLIC_RELEASE_DIR"/*.zip}}`
|
|
PUBLIC_RELEASE_NAME=${PUBLIC_RELEASE_NAME/.zip/}
|
|
DEST_DIR="${RELEASE_CANDIDATES_DIR}/$PUBLIC_RELEASE_NAME"
|
|
|
|
if [ -z "$PUBLIC_RELEASE_NAME" ]; then
|
|
echo The first argument must be a public release directory, like CGAL-3.7-I-167-public.
|
|
exit 1
|
|
fi
|
|
|
|
printf "Preparing %s in %s...\n" "$PUBLIC_RELEASE_NAME" "$DEST_DIR"
|
|
sleep 2
|
|
|
|
printf "Copy documentation...\n"
|
|
|
|
[ -d "$DEST_DIR" ] || mkdir "$DEST_DIR"
|
|
[ -d "$DEST_DIR/doc_html" ] || mkdir "$DEST_DIR/doc_html"
|
|
|
|
cp "$PUBLIC_RELEASE_DIR"/*(.) "${RELEASE_CANDIDATES_DIR}/$PUBLIC_RELEASE_NAME"
|
|
cp -a "$MANUAL_TESTS_DIR/$INTERNAL_RELEASE"/{cgal_manual,Developers_manual,installation_manual} "$DEST_DIR/doc_html"
|
|
cp -a "$MANUAL_TESTS_DIR/$INTERNAL_RELEASE"/cgal_manual.pdf "$DEST_DIR"
|
|
rm "$DEST_DIR"/doc_html/*/comments.xml
|
|
|
|
printf "Create doc_html tarball...\n"
|
|
tar cf "$DEST_DIR/${PUBLIC_RELEASE_NAME}-doc_html.tar" -C "$DEST_DIR" doc_html
|
|
|
|
printf "Create doc_html zip...\n"
|
|
tar xf "$DEST_DIR/${PUBLIC_RELEASE_NAME}-doc_html.tar" -O | zip -q > "$DEST_DIR/${PUBLIC_RELEASE_NAME}-doc_html.zip"
|
|
|
|
printf "xz doc_html tarball...\n"
|
|
xz --best < "$DEST_DIR/${PUBLIC_RELEASE_NAME}-doc_html.tar" > "$DEST_DIR/${PUBLIC_RELEASE_NAME}-doc_html.tar.xz"
|
|
|
|
printf "gzip doc_html tarball...\n"
|
|
gzip -f --best "$DEST_DIR/${PUBLIC_RELEASE_NAME}-doc_html.tar"
|
|
|
|
printf "Create the internal_release file\n"
|
|
printf "%s\n" "${INTERNAL_RELEASE}" > "$DEST_DIR/internal_release"
|
|
|
|
printf "Create cgal_manual.zip for the Windows installer..."
|
|
pushd "$DEST_DIR/doc_html"
|
|
zip -r ../cgal_manual.zip cgal_manual
|
|
popd
|
|
|
|
printf "Untar examples/ and include/ for rsync to the server\n"
|
|
tar xf "$DEST_DIR/${PUBLIC_RELEASE_NAME}.tar.gz" --strip-components 1 "${PUBLIC_RELEASE_NAME}"/examples "${PUBLIC_RELEASE_NAME}"/include -C "$DEST_DIR"
|
|
|
|
pushd "${DEST_DIR}"
|
|
printf "Compute md5sum.txt..."
|
|
md5sum *.^txt > md5sum.txt
|
|
popd
|
|
|
|
printf "Now use:\n"
|
|
printf " cd ${DEST_DIR}\n"
|
|
printf " mv cgal_manual.zip /var/CGAL/www/%s/Manual/\n" "${PUBLIC_RELEASE_NAME#CGAL-}"
|
|
printf " rsync --compress -av doc_html examples include %s:www.cgal.org/Manual/%s\n" \
|
|
cgal@contact.mpi-inf.mpg.de \
|
|
"${PUBLIC_RELEASE_NAME#CGAL-}"
|
|
|
|
printf "DONE!\n"
|
|
|
|
pushd "$DEST_DIR"
|
|
ls -l
|
|
popd
|