7
7
# ------------------------------------------------------------------------------
8
8
9
9
# Modules
10
- MODULES=$MODULES
10
+ MODULES=
11
11
12
12
# Resolve Python path
13
13
PYTHON=" $( which python2.7) "
@@ -358,6 +358,26 @@ function in_array() {
358
358
}
359
359
360
360
function run_source_modules() {
361
+ # preprocess version modules
362
+ needed=($MODULES )
363
+ while [ ${# needed[*]} -ne 0 ]; do
364
+
365
+ # pop module from the needed list
366
+ module=${needed[0]}
367
+ unset needed[0]
368
+ needed=( ${needed[@]} )
369
+
370
+ # is a version is specified ?
371
+ items=( ${module// ==/ } )
372
+ module=${items[0]}
373
+ version=${items[1]}
374
+ if [ ! -z " $version " ]; then
375
+ info " Specific version detected for $module : $version "
376
+ eval " VERSION_$module =$version "
377
+ fi
378
+ done
379
+
380
+
361
381
needed=($MODULES )
362
382
declare -a processed
363
383
@@ -374,6 +394,11 @@ function run_source_modules() {
374
394
unset needed[0]
375
395
needed=( ${needed[@]} )
376
396
397
+ # split the version if exist
398
+ items=( ${module// ==/ } )
399
+ module=${items[0]}
400
+ version=${items[1]}
401
+
377
402
# check if the module have already been declared
378
403
in_array $module " ${processed[@]} "
379
404
if [ $? -ne 255 ]; then
@@ -393,6 +418,13 @@ function run_source_modules() {
393
418
fi
394
419
source $RECIPES_PATH /$module /recipe.sh
395
420
421
+ # if a version has been specified by the user, the md5 will not
422
+ # correspond at all. so deactivate it.
423
+ if [ ! -z " $version " ]; then
424
+ debug " Deactivate MD5 test for $module , due to specific version"
425
+ eval " MD5_$module ="
426
+ fi
427
+
396
428
# append current module deps to the needed
397
429
deps=$( echo \$ " {DEPS_$module [@]}" )
398
430
eval deps=($deps )
0 commit comments