4 ###############################################################
6 ## Please modify parameter value.
8 ###############################################################
10 build_id=telephony_build
11 build_path="`pwd`/../build_result"
13 ###############################################################
17 ###############################################################
18 build_result_directory=${build_type}.${build_id}
19 builder_path="$start_path/builder"
20 equinox_launcher=`echo org.eclipse.equinox.launcher_*.jar`
21 pde_build=`echo org.eclipse.pde.build_*`
22 metadata_path=$start_path/builder
27 Usage : build_ide.sh PLATFORM_NAME TARGET_ECLIPSE_PATH
29 PLATFORM_NAME You can set \"linux\" or \"windows\"
30 TARGET_ECLIPSE_PATH Set target eclipse path.
31 For example, $HOME/git/fresh-ide-pde
39 Usage : build_ide.sh $1 TARGET_ECLIPSE_PATH
40 TARGET_ECLIPSE_PATH Set target eclipse path.
41 For example, $HOME/git/fresh-ide-pde
46 build_result_path="$build_path/$build_result_directory"
51 parent_path_of_based_eclipse=${based_eclipse_path}/..
56 archive_platform_name=linux
60 archive_platform_name=win32
64 echo "${platform} is not support yet."
69 result_archive_file=${build_id}-${archive_platform_name}.${windowing}.${architecture}.zip
73 echo "Build result directory : [$build_path]"
75 echo "Make build result directory [$build_path]"
79 echo "Remove legacy build files..."
80 if [ -d ${build_result_path}/${archive_platform_name}.${windowing}.${architecture} ]
82 rm -rf ${build_result_path}/${archive_platform_name}.${windowing}.${architecture}
84 if [ -e ${build_result_path}/${result_archive_file} ]
86 rm -rf ${build_result_path}/${result_archive_file}
89 if [ -d $build_path/plugins ]
91 echo "plugins directory recreate..."
92 rm -rf $build_path/plugins
93 mkdir $build_path/plugins
95 echo "Make plugins directory..."
96 mkdir $build_path/plugins
98 if [ -d $build_path/features/ ]
100 echo "features directory recreate..."
101 rm -rf $build_path/features
102 mkdir $build_path/features
104 echo "Make features directory..."
105 mkdir $build_path/features
108 echo "Copy features from $start_path to $build_path/features"
109 cp -r $start_path/*.feature $build_path/features
111 echo "Copy plugins from $start_path to $build_path/plugins"
112 cp -r $start_path/* $build_path/plugins
113 rm -rf $build_path/plugins/*.feature
115 echo "Copy fresh ide plugins..."
116 if [ -d ${fresh_ide_path} ]
118 cp -rf ${fresh_ide_path}/${archive_platform_name}.${windowing}.${architecture}/IDE/features/* ${build_path}/features
119 cp -rf ${fresh_ide_path}/${archive_platform_name}.${windowing}.${architecture}/IDE/plugins/* ${build_path}/plugins
121 echo "ERROR : Fresh IDE does not exist..."
125 echo "Copy event injector plugin..."
126 if [ -d ${eventinjector_path} ]
128 cp -rf ${eventinjector_path}/${archive_platform_name}.${windowing}.${architecture}/eventinjector/features/* ${build_path}/features
129 cp -rf ${eventinjector_path}/${archive_platform_name}.${windowing}.${architecture}/eventinjector/plugins/* ${build_path}/plugins
131 echo "ERROR : Event Injector does not exist..."
135 echo "Make build.properties file..."
136 if [ ! -e $builder_path/build.properties.clean ] ; then
137 echo "ERROR : \"build.properties.clean\" file does not exist..."
140 cp $builder_path/build.properties.clean $build_path
141 cp $builder_path/customTargets.xml $build_path
143 if [ -d $based_eclipse_path ]
145 sed -e "s;\(^buildDirectory=\).*;\1${build_path};g" -e "s;\(^base=\).*;\1${parent_path_of_based_eclipse};g" -e "s;\(^baseLocation=\).*;\1${based_eclipse_path};g" -e "s;\(^configs=\).*;\1${archive_platform_name},${windowing},${architecture};g" -e "s;\(^buildType=\).*;\1${build_type};g" -e "s;\(^buildId=\).*;\1${build_id};g" < $build_path/build.properties.clean > $build_path/build.properties
147 echo "ERROR : target eclipse is not exist."
151 echo "Execute Product Ant Builder..."
152 java -server -XX:+UseParNewGC -jar ${based_eclipse_path}/plugins/$equinox_launcher -application org.eclipse.ant.core.antRunner -buildfile ${based_eclipse_path}/plugins/$pde_build/scripts/productBuild/productBuild.xml -Dbuilder=$build_path 2>&1
156 echo "Build failed..."
160 echo "unzip to $build_result_path"
161 unzip -a $build_result_path/${result_archive_file} -d $build_result_path/${archive_platform_name}.${windowing}.${architecture}
163 #echo "Delete temp files..."
164 #rm -rf $build_path/features
165 #rm -rf $build_path/plugins
166 #rm $build_path/*.xml
167 #rm $build_path/*.properties
168 #rm $build_path/*.properties.clean
170 echo "Build SUCCESS. You will find SDK IDE in \"${build_result_path}\"."