diff options
author | Markus Knauer | 2014-03-07 17:02:43 +0000 |
---|---|---|
committer | Markus Knauer | 2014-03-07 17:02:43 +0000 |
commit | d237984161d39db3ee24ab5438f08194b7426aed (patch) | |
tree | e069d6cb87306dfd035c2c72d70f0937144cfd68 /releng | |
parent | cbd6e7605513c868252e4030ba24447cb5f7633f (diff) | |
download | org.eclipse.epp.packages-d237984161d39db3ee24ab5438f08194b7426aed.tar.gz org.eclipse.epp.packages-d237984161d39db3ee24ab5438f08194b7426aed.tar.xz org.eclipse.epp.packages-d237984161d39db3ee24ab5438f08194b7426aed.zip |
Solve symbolic link issue for RCP/RAP package (draft)
This first implementation uses a shell script for creating the zip/tar
archives instead of the built-in Tycho product build version that is not
able to create simple symbolic links. The Bash shell script uses
internally the native (Unix/Linux) implementations of zip and tar.
With this addition we loose the ability to run the EPP build on systems
without Bash, zip, tar, gzip.
This is a commit in an early development stage to see if the approach
works on the eclipse.org build servers. More clean-up and the change of
the other packages is required.
See bug 424769: symbolic link missing from "Mac packages"
https://bugs.eclipse.org/bugs/show_bug.cgi?id=424769
Change-Id: I8a4cb60e92492455970ebd0e2d1a99e85e7cf731
Signed-off-by: Markus Knauer <mknauer@eclipsesource.com>
Diffstat (limited to 'releng')
-rw-r--r-- | releng/org.eclipse.epp.config/parent/pom.xml | 3 | ||||
-rwxr-xr-x | releng/org.eclipse.epp.config/tools/createArchives.sh | 44 |
2 files changed, 47 insertions, 0 deletions
diff --git a/releng/org.eclipse.epp.config/parent/pom.xml b/releng/org.eclipse.epp.config/parent/pom.xml index 3c66a3a3..9bdd9595 100644 --- a/releng/org.eclipse.epp.config/parent/pom.xml +++ b/releng/org.eclipse.epp.config/parent/pom.xml @@ -28,6 +28,9 @@ <cbi.version>1.0.5</cbi.version> <maven.resources.version>2.6</maven.resources.version> <maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format> + <!-- The location that is used to assemble the single EPP configuration p2 repository --> + <eclipse.epp.archiveDirectory>${basedir}/../../archive/</eclipse.epp.archiveDirectory> + <!-- The location that is used to assemble the single EPP configuration p2 repository --> <eclipse.epp.targetRepository>${basedir}/../../repository/</eclipse.epp.targetRepository> <!-- ID used to generate the filename of the packages --> <eclipse.simultaneous.release.id>luna-M6</eclipse.simultaneous.release.id> diff --git a/releng/org.eclipse.epp.config/tools/createArchives.sh b/releng/org.eclipse.epp.config/tools/createArchives.sh new file mode 100755 index 00000000..9aa14e60 --- /dev/null +++ b/releng/org.eclipse.epp.config/tools/createArchives.sh @@ -0,0 +1,44 @@ +#!/bin/bash + +if [[ "$#" -ne 3 ]]; then + echo "Illegal number of parameters" + exit 1 +fi + +TARGET_DIR="${1}" +SOURCE_DIR="${2}" +BASENAME="${3}" + +if [[ ! -d "${TARGET_DIR}" ]]; then + echo "Creating target directory ${TARGET_DIR}" + mkdir -p ${TARGET_DIR} +fi + +if [[ ! -d "${SOURCE_DIR}" ]]; then + echo "Source directory ${SOURCE_DIR} does not exist" + exit 1 +fi + +# definition of OS, WS, ARCH, FORMAT combinations - DO NOT FORGET to adjust the for loop +OSes=( win32 win32 linux linux macosx macosx ) +WSes=( win32 win32 gtk gtk cocoa cocoa ) +ARCHes=( x86 x86_64 x86 x86_64 x86 x86_64 ) +FORMAT=( zip zip tar.gz tar.gz tar.gz tar.gz ) + +for index in 0 1 2 3 4 5; +do + echo -n "...EPP building ${BASENAME} for ${OSes[$index]} ${WSes[$index]} ${ARCHes[$index]} " + EXTENSION="${OSes[$index]}.${WSes[$index]}.${ARCHes[$index]}" + PACKAGE_DIR="${SOURCE_DIR}/${OSes[$index]}/${WSes[$index]}/${ARCHes[$index]}" + # TODO check existence of directory + cd "${PACKAGE_DIR}" + if [[ ${OSes[$index]} = "win32" ]]; then + PACKAGEFILE="${BASENAME}-${EXTENSION}.zip" + zip -r -o -q ${TARGET_DIR}/${PACKAGEFILE} eclipse + else + PACKAGEFILE="${BASENAME}-${EXTENSION}.tar.gz" + tar zc --owner=100 --group=100 -f ${TARGET_DIR}/${PACKAGEFILE} eclipse + fi + echo "...successfully finished ${OSes[$index]} ${WSes[$index]} ${ARCHes[$index]} package build: ${PACKAGEFILE}" +done + |