java-1.8.0-openjdk/generate_source_tarball.sh
2015-02-12 15:40:20 +01:00

73 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# Generates the 'source tarball' for JDK 8 projects.
#
# Usage: generate_source_tarball.sh project_name repo_name tag
#
# Examples:
# sh generate_source_tarball.sh jdk8u jdk8u40 jdk8u40-b25
# ./generate_source_tarball.sh jdk8 jdk8 jdk8-b79
# ./generate_source_tarball.sh jdk8u jdk8u jdk8u5-b13
# ./generate_source_tarball.sh aarch64-port jdk8 aarch64-${DATE}
#
# This script creates a single source tarball out of the repository
# based on the given tag and removes code not allowed in fedora. For
# consistency, the source tarball will always contain 'jdk8' as the top
# level folder.
set -e
PROJECT_NAME="$1"
REPO_NAME="$2"
VERSION="$3"
OPENJDK_URL=http://hg.openjdk.java.net
if [[ "${PROJECT_NAME}" = "" ]] ; then
echo "No repository specified."
exit -1
fi
if [[ "${REPO_NAME}" = "" ]] ; then
echo "No repository specified."
exit -1
fi
if [[ "${VERSION}" = "" ]]; then
echo "No version/tag specified."
exit -1;
fi
mkdir "${REPO_NAME}"
pushd "${REPO_NAME}"
REPO_ROOT="${OPENJDK_URL}/${PROJECT_NAME}/${REPO_NAME}"
wget "${REPO_ROOT}/archive/${VERSION}.tar.gz"
tar xf "${VERSION}.tar.gz"
rm "${VERSION}.tar.gz"
mv "${REPO_NAME}-${VERSION}" jdk8
pushd jdk8
repos="corba hotspot jdk jaxws jaxp langtools nashorn"
if [ aarch64-port = $PROJECT_NAME ] ; then
repos="hotspot"
fi;
for subrepo in $repos
do
wget "${REPO_ROOT}/${subrepo}/archive/${VERSION}.tar.gz"
tar xf "${VERSION}.tar.gz"
rm "${VERSION}.tar.gz"
mv "${subrepo}-${VERSION}" "${subrepo}"
done
if [ -e jdk ] ; then
rm -vr jdk/src/share/native/sun/security/ec/impl
fi
popd
tar cJf ${REPO_NAME}-${VERSION}.tar.xz jdk8
popd
mv "${REPO_NAME}/${REPO_NAME}-${VERSION}.tar.xz" .