1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 ifneq ($(strip ${DIST_SUBDIR}),)
5 FULLDISTDIR?
= ${DISTDIR}/${DIST_SUBDIR}
7 FULLDISTDIR?
= ${DISTDIR}
10 FULLDISTFILES
= $(patsubst %,${FULLDISTDIR}/%,${DISTFILES})
18 ifneq ($(filter auto
,${FETCH_STYLE}),)
19 ${MAKE} ${FULLDISTFILES}
26 -rm -f
${FULLDISTFILES}
30 _CHECKSUM_COOKIE?
= ${WRKDIR}/.checksum_done
31 checksum
: ${_CHECKSUM_COOKIE}
32 ifeq ($(strip ${NO_CHECKSUM}),)
33 ${_CHECKSUM_COOKIE}: ${FULLDISTFILES}
36 (md5sum
${FULLDISTFILES}; echo exit
) | while read sum name
; do \
37 if
[[ $$sum = exit
]]; then \
38 [[ $$OK = n
]] && echo
>&2 "==> No distfile found!" ||
:; \
39 [[ $$OK = 1 ]] || exit
1; \
42 if
[[ $$sum = "$(strip ${PKG_MD5SUM})" ]]; then \
43 [[ $$OK = 0 ]] || OK
=1; \
46 echo
>&2 "==> Checksum mismatch for $${name##*/} (MD5)"; \
47 echo
>&2 ":---> should be '$(strip ${PKG_MD5SUM})'"; \
48 echo
>&2 ":---> really is '$$sum'"; \
52 touch
${_CHECKSUM_COOKIE}
55 # GNU make's poor excuse for loops
59 subname
=$$$${fullname
##$${DISTDIR}/}; \
60 filename
=$$$${fullname
##*/}; \
61 i
='$${LOCAL_DISTDIR}'; \
62 if
[[ -n
$$$$i && -e
$$$$i/$$$$subname ]]; then \
64 echo pax
-rw
"$$$$subname" '$${DISTDIR}/'; \
65 exec pax
-rw
"$$$$subname" '$${DISTDIR}/'; \
67 mkdir
-p
"$$$${fullname%%/$$$$filename}"; \
68 cd
"$$$${fullname%%/$$$$filename}"; \
69 for site in
$${PKG_SITES} $${MASTER_SITE_BACKUP}; do \
70 : echo
"$${FETCH_CMD} $$$$site$$$$filename"; \
71 rm -f
"$$$$filename"; \
72 if
$${FETCH_CMD} $$$$site$$$$filename; then \
73 : check the size here
; \
74 [[ ! -e
$$$$filename ]] || exit
0; \
80 $(foreach distfile
,${FULLDISTFILES},$(eval
$(call FETCH_template
,$(distfile
))))