3 ###########################################################
4 # Maemo-efl building script
5 # Repository functions definitions
7 # Note: helper-functions.sh and var-definitions.sh needed.
8 ###########################################################
10 git_clone_repository() {
13 $__git_clone $repo.git >> $__output_file 2>&1
17 git_update_repository() {
21 if [ ! -d $repo ]; then
22 error " Trying to update invalid repository"
26 $__git_pull >> $__output_file 2>&1 || return 1
32 git_clean_repository() {
36 if [ ! -d $repo ]; then
37 error " Trying to clean invalid repository"
41 $__git_reset >> $__output_file 2>&1 || return 1
42 $__git_clean >> $__output_file 2>&1 || return 1
48 svn_checkout_repository() {
54 if [ -n "$rev" ]; then
57 $__svn_checkout $repo $rev >> $__output_file 2>&1
61 svn_update_repository() {
67 if [ -n "$rev" ]; then
71 if [ ! -d $repo ]; then
72 error " Trying to update invalid repository"
76 $__svn_update $repo $rev>> $__output_file 2>&1 || return 1
83 __svn_latest_rev=`$__svn info $__svn_repo | $__grep "Last Changed Rev:" | cut -d" " -f4`
95 modules=`echo $1|$__sed -e 's/:/ /g'`
98 for module in $modules; do
100 if [ ! -d $module ]; then
101 error "Directory $module does not exist."
106 pkg_version=`$__dpkg_parsechangelog | $__grep Version: | cut -d" " -f2`
107 svn_rev=`echo $pkg_version | $__sed -nr 's/.*svn([0-9]+).*/\1/p'`
108 git=`echo $repo|$__grep "git://"`
110 if [ -n "$svn_rev" ]; then
111 svn_rev_str="(rev: $svn_rev)"
116 if [ $__force_remove -eq 1 ]; then
117 if [ -d $module ]; then
122 if [ -n "$git" ]; then
123 if [ -d $module/.git ]; then
124 if [ ! $__update_repositories -eq 0 ]; then
125 log_to_file "Updating existing repository at $PWD/$module"
127 msg_begin " Updating $module repository"
128 git_update_repository $module
131 log_to_file "Skipping update of $module repository"
133 elif [ -d $module ]; then
134 log_to_file "Removing invalid repository at $PWD/$module"
138 if [ ! -d $module ]; then
139 msg_begin " Cloning $repo/$module.git"
140 git_clone_repository $repo/$module
144 if [ -d $module/.svn ]; then
145 rep_rev=`$__svn info $module | $__sed -nr 's/Revision: ([0-9]*)/\1/p'`
146 if [ ! $__update_repositories -eq 0 -a "x$rep_rev" != "x$svn_rev" ]; then
147 log_to_file "Updating existing repository at $PWD/$module"
148 msg_begin " Updating $module repository $svn_rev_str"
149 svn_update_repository $module $svn_rev
151 rep_rev=`$__svn info $module | $__sed -nr 's/Revision: ([0-9]*)/\1/p'`
152 if [ "x$rep_rev" != "x$svn_rev" ]; then
153 warn "Unable to update the repository to rev. $svn_rev"
156 log_to_file "Skipping update of $module repository"
158 elif [ -d $module ]; then
159 log_to_file "Removing invalid repository at $PWD/$module"
163 if [ ! -d $module ]; then
164 msg_begin " Checking out $repo$module $svn_rev_str"
165 svn_checkout_repository $repo$module $svn_rev
166 if [ $? -ne 0 ]; then
167 warn "Unable to checkput the repository to rev. $svn_rev"
180 # Download e17 modules
181 if [ ! -z $__lib_modules ];then
182 msg "Downloading e17 modules"
183 get_sources $__lib_modules $__svn_repo
186 # Download python modules under proto/python/efl
187 if [ ! -z $__python_modules ];then
188 msg "Downloading python modules"
189 get_sources $__python_modules $__svn_repo$__e17_python_efl
192 # Download python-efl-utils module$
193 if [ ! -z $__python_efl_utils_module ];then
194 get_sources $__python_efl_utils_module $__git_repo$__e17_python_efl_utils
197 # Download python-dispatcher module
198 #get_sources $__python_dispatcher_module $__git_repo$__e17_python_dispatcher
202 msg_begin "Cleaning up modules directories"
203 for module in `echo $__all_modules|$__sed -e 's/:/ /g'`; do
204 if [ -d $module/$module ]; then
205 rm -rf $module/$module