@ -21,12 +21,67 @@ ifeq ($(strip $(LOCAL_HTTP_FILENAME)),)
$( error LOCAL_HTTP_FILENAME not defined.)
e n d i f
i f e q ( $( strip $ ( LOCAL_HTTP_MD 5SUM ) ) , )
$( error LOCAL_HTTP_MD5SUM not defined.)
e n d i f
PREBUILT_MODULE_ARCHIVE := vendor/cm/prebuilt/archive/$( LOCAL_MODULE)
PREBUILT_MODULE_FILE := $( PREBUILT_MODULE_ARCHIVE) /$( LOCAL_HTTP_FILENAME)
PREBUILT_MODULE_MD5SUM := $( PREBUILT_MODULE_ARCHIVE) /md5sum
HTTP_FILE_URL := $( LOCAL_HTTP_PATH) /$( LOCAL_HTTP_FILENAME)
HTTP_FILE_MD5_URL := $( LOCAL_HTTP_PATH) /$( LOCAL_HTTP_MD5SUM)
LOCAL_PREBUILT_MODULE_FILE := $( call intermediates-dir-for,$( LOCAL_MODULE_CLASS) ,$( LOCAL_MODULE) ,,COMMON) /$( LOCAL_HTTP_FILENAME)
$(LOCAL_PREBUILT_MODULE_FILE) : filename := $( LOCAL_HTTP_FILENAME )
$(LOCAL_PREBUILT_MODULE_FILE) : checksum := $( PREBUILT_MODULE_MD 5SUM )
$(LOCAL_PREBUILT_MODULE_FILE) : filepath := $( PREBUILT_MODULE_FILE )
$(LOCAL_PREBUILT_MODULE_FILE) : version := $( LOCAL_HTTP_FILE_VERSION )
d e f i n e c u r l - c h e c k s u m
@echo " Pulling comparison md5sum for $( filename) "
$( call download-prebuilt-module, $( HTTP_FILE_MD5_URL) ,$( checksum) )
e n d e f
d e f i n e a u d i t - c h e c k s u m
@echo " Downloading: $( filename) (version $( version) ) " -> $( filepath) ;
$( hide) if [ ! -f $( filepath) ] ; then \
$( call download-prebuilt-module, $( HTTP_FILE_URL) ,$( filepath) ) \
else \
if [ " $( shell echo $( md5sum $( filepath) ) ) " != " $( shell cat $( checksum) | cut -d ' ' -f1) " ] ; then \
rm -rf $( filepath) ; \
$( call download-prebuilt-module, $( HTTP_FILE_URL) ,$( filepath) ) \
fi ; \
fi ; \
rm -f $( checksum) ;
e n d e f
# $(1) url
# $(2) file output
d e f i n e d o w n l o a d - p r e b u i l t - m o d u l e
./vendor/cm/build/tasks/http_curl_prebuilt.sh $( 1) $( 2) ;
e n d e f
d e f i n e c l e a n u p
@echo " Copying: $( filename) -> $( dir $@ ) "
$( hide) mkdir -p $( dir $@ )
$( hide) cp $( filepath) $( dir $@ ) /$( filename)
e n d e f
$(LOCAL_PREBUILT_MODULE_FILE) :
$( hide) curl -L $( LOCAL_HTTP_PATH) --create-dirs -o $( dir $@ ) /$( filename) --compressed -H "Accept-Encoding: gzip,deflate,sdch"
@echo " Download: $@ "
$( call curl-checksum)
$( call audit-checksum)
$( call cleanup)
i n c l u d e $( BUILD_PREBUILT )
# the "fetchprebuilts" target will go through and pre-download all of the maven dependencies in the tree
fetchprebuilts : $( LOCAL_PREBUILT_MODULE_FILE )
# the "nukeprebuilts" target will evict all archived artifacts
nukeprebuilts :
@echo " Removing artifact for $( LOCAL_HTTP_FILENAME) "
$( hide) rm -rf $( PREBUILT_MODULE_ARCHIVE)