1# 2# This Makefile helps create the directory structure on ftp-master, 3# making staging builds a bit more sane. 4# 5# You probably do not want to use this. Really. 6# You have been warned. 7# 8# Seriously. 9# 10# Don't use this unless you know why you're using it. 11# 12# 13 14.include "${.CURDIR}/Makefile" 15 16RELEASEDIR?= /R 17FTPDIR?= ${RELEASEDIR}/ftp-stage 18.if exists(${RELEASEDIR}) 19STAGE_TARGETS?= iso-images-stage 20.endif 21 22.if (defined(EMBEDDED_TARGET) && !empty(EMBEDDED_TARGET)) || (defined(EMBEDDEDBUILD) && !empty(EMBEDDEDBUILD)) 23. if ${TARGET:Marm*} != "" || ${EMBEDDED_TARGET:Marm*} != "" || ${TARGET:Mriscv*} != "" 24EMBEDDED= 1 25. endif 26.endif 27 28# snapshot 29.if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" || ${BRANCH} == "PRERELEASE" || ${BRANCH:MALPHA*} != "" 30SNAPSHOT= 1 31TLD?= ${FTPDIR}/snapshots 32.if !defined(BUILDDATE) || empty(BUILDDATE) 33BUILDDATE!= date +%Y%m%d 34.endif 35_SNAP_SUFFIX:= ${BUILDDATE}-${GITREV}-${GITCOUNT} 36.else 37# release 38SNAPSHOT= 39TLD?= ${FTPDIR}/releases 40.endif 41 42.if defined(EMBEDDED) && !empty(EMBEDDED) 43. if ${TARGET:Marm*} != "" && (${TARGET_ARCH:Marm*} != "" || ${TARGET_ARCH} == "aarch64") || ${TARGET:Mriscv*} != "" 44. if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" || ${BRANCH} == "PRERELEASE" || ${BRANCH:MALPHA*} != "" 45SNAPSHOT= 1 46. endif 47IMAGES:= img 48. endif # arm/armv6 49.endif # embedded 50 51.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES) 52STAGE_TARGETS+= vm-images-stage 53VM_DIR= ${TLD}/VM-IMAGES/${REVISION}-${BRANCH}/${TARGET_ARCH} 54.endif 55 56.if defined(WITH_CLOUDWARE) && !empty(WITH_CLOUDWARE) 57STAGE_TARGETS+= ci-images-stage 58CI_DIR= ${TLD}/CI-IMAGES/${REVISION}-${BRANCH}/${TARGET_ARCH} 59.endif 60 61.if defined(WITH_OCIIMAGES) && !empty(WITH_OCIIMAGES) 62STAGE_TARGETS+= oci-images-stage 63OCI_DIR= ${TLD}/OCI-IMAGES/${REVISION}-${BRANCH}/${TARGET_ARCH} 64.endif 65 66.if !defined(EMBEDDED) || empty(EMBEDDED) 67.if !defined(NOPKGBASE) || empty(NOPKGBASE) 68STAGE_TARGETS+= pkgbase-repo-stage 69PKGBASE_DIR= ${TLD}/PKGBASE-REPOS/${REVISION}-${BRANCH}/${TARGET_ARCH} 70.endif 71.endif 72 73CLEANFILES+= ${STAGE_TARGETS} 74CHECKSUM_FILES?= SHA512 SHA256 75SNAP_SUFFIX!= echo ${_SNAP_SUFFIX:S,^-,,1} | tr -d ' ' 76ISO_DIR= ${TLD}/${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION} 77FTP_DIR= ${TLD}/${TARGET}/${TARGET_ARCH}/${REVISION}-${BRANCH} 78 79remove-old-bits: 80 rm -rf ${FTPDIR} 81 82iso-images-stage: 83 mkdir -p ${ISO_DIR} 84 mkdir -p ${TLD}/ISO-IMAGES/${REVISION} 85.if defined(SNAPSHOT) && !empty(SNAPSHOT) 86 cd ${RELEASEDIR} && rm -f CHECKSUM.* 87. for IMAGE in ${IMAGES} 88. if defined(EMBEDDED) && !empty(EMBEDDED) 89 cd ${RELEASEDIR} && \ 90 mv ${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz \ 91 ${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz 92 cp -p ${RELEASEDIR}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz \ 93 ${ISO_DIR}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz 94 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 95 ln -s \ 96 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz 97. endif # not embedded 98. if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}) 99 cd ${RELEASEDIR} && \ 100 mv ${OSRELEASE}-${IMAGE} \ 101 ${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} 102 cp -p ${RELEASEDIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} \ 103 ${ISO_DIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} 104 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 105 ln -s \ 106 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} 107. endif 108. if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz) 109 cd ${RELEASEDIR} && \ 110 mv ${OSRELEASE}-${IMAGE}.xz \ 111 ${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz 112 cp -p ${RELEASEDIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz \ 113 ${ISO_DIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz 114 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 115 ln -s \ 116 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz 117. endif 118. endfor # images loop 119 cd ${RELEASEDIR} && rm -f CHECKSUM.* 120. for CHECKSUM in ${CHECKSUM_FILES} 121. if defined(EMBEDDED) && !empty(EMBEDDED) 122 cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \ 123 CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} 124 cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} \ 125 ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} 126 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 127 ln -s \ 128 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} 129. else # not embedded 130 cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \ 131 CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} 132 cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} \ 133 ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} 134 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 135 ln -s \ 136 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} 137. endif # 138. endfor # checksum files 139.else # not snapshot 140. for IMAGE in ${IMAGES} 141. if defined(EMBEDDED) && !empty(EMBEDDED) 142 cp -p ${RELEASEDIR}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz \ 143 ${ISO_DIR}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz 144 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 145 ln -s \ 146 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz 147. endif # not embedded 148. if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}) 149 cd ${RELEASEDIR} && \ 150 cp -p ${RELEASEDIR}/${OSRELEASE}-${IMAGE} \ 151 ${ISO_DIR}/${OSRELEASE}-${IMAGE} 152 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 153 ln -s \ 154 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${IMAGE} 155. endif 156. if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz) 157 cp -p ${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz \ 158 ${ISO_DIR}/${OSRELEASE}-${IMAGE}.xz 159 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 160 ln -s \ 161 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${IMAGE}.xz 162. endif 163. endfor # images loop 164 cd ${RELEASEDIR} && rm -f CHECKSUM.* 165. for CHECKSUM in ${CHECKSUM_FILES} 166. if defined(EMBEDDED) && !empty(EMBEDDED) 167 cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \ 168 CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} 169 cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} \ 170 ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} 171 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 172 ln -s \ 173 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} 174. else # not embedded 175 cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \ 176 CHECKSUM.${CHECKSUM}-${OSRELEASE} 177 cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE} \ 178 ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE} 179 cd ${TLD}/ISO-IMAGES/${REVISION} && \ 180 ln -s \ 181 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE} 182. endif 183. endfor # checksum files 184.endif # release 185.if exists(${RELEASEDIR}/ftp) 186 mkdir -p ${FTP_DIR} 187 cp -p ${RELEASEDIR}/ftp/*.txz ${RELEASEDIR}/ftp/MANIFEST ${FTP_DIR} 188 echo ${BUILDDATE} > ${FTP_DIR}/BUILDDATE 189 echo ${GITBRANCH} > ${FTP_DIR}/GITBRANCH 190 echo ${GITREV} > ${FTP_DIR}/REVISION 191 cd ${TLD}/${TARGET} && \ 192 ln -s ${TARGET_ARCH}/${REVISION}-${BRANCH} \ 193 ${REVISION}-${BRANCH} 194.endif 195 196vm-images-stage: 197 mkdir -p ${VM_DIR} 198.if defined(SNAPSHOT) && !empty(SNAPSHOT) 199. if exists(${VM_DIR}/Latest) 200 rm -rf ${VM_DIR}/Latest 201. endif 202 mkdir -p ${VM_DIR}/Latest 203 mkdir -p ${VM_DIR}/${BUILDDATE} 204. for VMFORMAT in ${VMFORMATS} 205. for FS in ${VMFSLIST} 206 cd ${RELEASEDIR}/vmimages && \ 207 mv ${OSRELEASE}-${FS}.${VMFORMAT}.xz \ 208 ${OSRELEASE}-${FS}-${SNAP_SUFFIX}.${VMFORMAT}.xz 209 cp -p ${RELEASEDIR}/vmimages/${OSRELEASE}-${FS}-${SNAP_SUFFIX}.${VMFORMAT}.xz \ 210 ${VM_DIR}/${BUILDDATE}/${OSRELEASE}-${FS}-${SNAP_SUFFIX}.${VMFORMAT}.xz 211 cd ${VM_DIR}/Latest && \ 212 ln -s ../${BUILDDATE}/${OSRELEASE}-${FS}-${SNAP_SUFFIX}.${VMFORMAT}.xz \ 213 ${OSRELEASE}-${FS}.${VMFORMAT}.xz 214. endfor 215. endfor 216. if defined(WITH_CLOUDWARE) && !empty(WITH_CLOUDWARE) 217. for CW in ${CLOUDWARE} 218. if ${CW} == BASIC-CLOUDINIT 219. for VMFORMAT in ${${CW}_FORMAT} 220. for FS in ${${CW}_FSLIST} 221 cd ${RELEASEDIR}/vmimages && \ 222 mv ${OSRELEASE}-${CW}-${FS}.${VMFORMAT}.xz \ 223 ${OSRELEASE}-${CW}-${SNAP_SUFFIX}-${FS}.${VMFORMAT}.xz 224 cp -p ${RELEASEDIR}/vmimages/${OSRELEASE}-${CW}-${SNAP_SUFFIX}-${FS}.${VMFORMAT}.xz \ 225 ${VM_DIR}/${BUILDDATE}/${OSRELEASE}-${CW}-${SNAP_SUFFIX}-${FS}.${VMFORMAT}.xz 226 cd ${VM_DIR}/Latest && \ 227 ln -s ../${BUILDDATE}/${OSRELEASE}-${CW}-${SNAP_SUFFIX}-${FS}.${VMFORMAT}.xz \ 228 ${OSRELEASE}-${CW}-${FS}.${VMFORMAT}.xz 229. endfor 230. endfor 231. endif 232. endfor 233. endif 234 cd ${RELEASEDIR}/vmimages && rm -f CHECKSUM.* 235. for CHECKSUM in ${CHECKSUM_FILES} 236 cd ${RELEASEDIR}/vmimages && \ 237 ${CHECKSUM:tl} ${OSRELEASE}* > CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 238 cp -p ${RELEASEDIR}/vmimages/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 239 ${VM_DIR}/${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 240 cd ${VM_DIR}/Latest && \ 241 ln -s ../${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 242 CHECKSUM.${CHECKSUM} 243. endfor 244.else # not snapshot 245. if exists(${VM_DIR}/Latest) 246 rm -rf ${VM_DIR}/Latest 247. endif 248 mkdir -p ${VM_DIR}/Latest 249. for VMFORMAT in ${VMFORMATS} 250. for FS in ${VMFSLIST} 251 cp -p ${RELEASEDIR}/vmimages/${OSRELEASE}-${FS}.${VMFORMAT}.xz \ 252 ${VM_DIR}/Latest/${OSRELEASE}-${FS}.${VMFORMAT}.xz 253. endfor 254. endfor 255. if defined(WITH_CLOUDWARE) && !empty(WITH_CLOUDWARE) 256. for CW in ${CLOUDWARE} 257. if ${CW} == BASIC-CLOUDINIT 258. for VMFORMAT in ${${CW}_FORMAT} 259. for FS in ${${CW}_FSLIST} 260 cp -p ${RELEASEDIR}/vmimages/${OSRELEASE}-${CW}-${FS}.${VMFORMAT}.xz \ 261 ${VM_DIR}/Latest/${OSRELEASE}-${CW}-${FS}.${VMFORMAT}.xz 262. endfor 263. endfor 264. endif 265. endfor 266. endif 267. for CHECKSUM in ${CHECKSUM_FILES} 268 cp -p ${RELEASEDIR}/vmimages/CHECKSUM.${CHECKSUM} \ 269 ${VM_DIR}/Latest/CHECKSUM.${CHECKSUM} 270. endfor 271.endif 272 273ci-images-stage: 274 mkdir -p ${CI_DIR} 275.if defined(SNAPSHOT) && !empty(SNAPSHOT) 276. if exists(${CI_DIR}/Latest) 277 rm -rf ${CI_DIR}/Latest 278. endif 279 mkdir -p ${CI_DIR}/Latest 280 mkdir -p ${CI_DIR}/${BUILDDATE} 281. for CW in ${CLOUDWARE} 282. if ${CW} == BASIC-CI 283. for VMFORMAT in ${${CW}_FORMAT} 284. for FS in ${${CW}_FSLIST} 285 cd ${RELEASEDIR}/ciimages && \ 286 mv ${OSRELEASE}-${CW}-${FS}.${VMFORMAT}.xz \ 287 ${OSRELEASE}-${CW}-${SNAP_SUFFIX}-${FS}.${VMFORMAT}.xz 288 cp -p ${RELEASEDIR}/ciimages/${OSRELEASE}-${CW}-${SNAP_SUFFIX}-${FS}.${VMFORMAT}.xz \ 289 ${CI_DIR}/${BUILDDATE}/${OSRELEASE}-${CW}-${SNAP_SUFFIX}-${FS}.${VMFORMAT}.xz 290 cd ${CI_DIR}/Latest && \ 291 ln -s ../${BUILDDATE}/${OSRELEASE}-${CW}-${SNAP_SUFFIX}-${FS}.${VMFORMAT}.xz \ 292 ${OSRELEASE}-${CW}-${FS}.${VMFORMAT}.xz 293. endfor 294. endfor 295. endif 296. endfor 297 cd ${RELEASEDIR}/ciimages && rm -f CHECKSUM.* 298. for CHECKSUM in ${CHECKSUM_FILES} 299 cd ${RELEASEDIR}/ciimages && \ 300 ${CHECKSUM:tl} ${OSRELEASE}* > CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 301 cp -p ${RELEASEDIR}/ciimages/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 302 ${CI_DIR}/${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 303 cd ${CI_DIR}/Latest && \ 304 ln -s ../${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 305 CHECKSUM.${CHECKSUM} 306. endfor 307.else # not snapshot 308. if exists(${CI_DIR}/Latest) 309 rm -rf ${CI_DIR}/Latest 310. endif 311 mkdir -p ${CI_DIR}/Latest 312. for CW in ${CLOUDWARE} 313. if ${CW} == BASIC-CI 314. for VMFORMAT in ${${CW}_FORMAT} 315. for FS in ${${CW}_FSLIST} 316 cp -p ${RELEASEDIR}/ciimages/${OSRELEASE}-${CW}-${FS}.${VMFORMAT}.xz \ 317 ${CI_DIR}/Latest/${OSRELEASE}-${CW}-${FS}.${VMFORMAT}.xz 318. endfor 319. endfor 320. endif 321. endfor 322. for CHECKSUM in ${CHECKSUM_FILES} 323 cp -p ${RELEASEDIR}/ciimages/CHECKSUM.${CHECKSUM} \ 324 ${CI_DIR}/Latest/CHECKSUM.${CHECKSUM} 325. endfor 326.endif 327 328oci-images-stage: 329 mkdir -p ${OCI_DIR} 330.if defined(SNAPSHOT) && !empty(SNAPSHOT) 331. if exists(${OCI_DIR}/Latest) 332 rm -rf ${OCI_DIR}/Latest 333. endif 334 mkdir -p ${OCI_DIR}/Latest 335 mkdir -p ${OCI_DIR}/${BUILDDATE} 336. for _IMG in ${OCI_IMAGES} 337 cd ${RELEASEDIR}/ociimages && \ 338 mv container-image-${_IMG}.txz \ 339 ${OSRELEASE}-container-image-${SNAP_SUFFIX}-${_IMG}.txz 340 cp ${RELEASEDIR}/ociimages/${OSRELEASE}-container-image-${SNAP_SUFFIX}-${_IMG}.txz \ 341 ${OCI_DIR}/${BUILDDATE}/${OSRELEASE}-container-image-${SNAP_SUFFIX}-${_IMG}.txz 342 cd ${OCI_DIR}/Latest && \ 343 ln -s ../${BUILDDATE}/${OSRELEASE}-container-image-${SNAP_SUFFIX}-${_IMG}.txz \ 344 ${OSRELEASE}-container-image-${_IMG}.txz 345. endfor 346 cd ${RELEASEDIR}/ociimages && rm -f CHECKSUM.* 347. for CHECKSUM in ${CHECKSUM_FILES} 348 cd ${RELEASEDIR}/ociimages && \ 349 ${CHECKSUM:tl} ${OSRELEASE}* > CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 350 cp -p ${RELEASEDIR}/ociimages/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 351 ${OCI_DIR}/${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 352 cd ${OCI_DIR}/Latest && \ 353 ln -s ../${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 354 CHECKSUM.${CHECKSUM} 355. endfor 356.else # not snapshot 357. if exists(${OCI_DIR}/Latest) 358 rm -rf ${OCI_DIR}/Latest 359. endif 360 mkdir -p ${OCI_DIR}/Latest 361. for _IMG in ${OCI_IMAGES} 362 cd ${RELEASEDIR}/ociimages && \ 363 mv container-image-${_IMG}.txz \ 364 ${OSRELEASE}-container-image-${_IMG}.txz 365 cp ${RELEASEDIR}/ociimages/${OSRELEASE}-container-image-${_IMG}.txz \ 366 ${OCI_DIR}/Latest/${OSRELEASE}-container-image-${_IMG}.txz 367. endfor 368. for CHECKSUM in ${CHECKSUM_FILES} 369 cd ${RELEASEDIR}/ociimages && \ 370 ${CHECKSUM:tl} ${OSRELEASE}* > CHECKSUM.${CHECKSUM} 371 cp -p ${RELEASEDIR}/ociimages/CHECKSUM.${CHECKSUM} \ 372 ${OCI_DIR}/Latest/CHECKSUM.${CHECKSUM} 373. endfor 374.endif 375 376pkgbase-repo-stage: 377 mkdir -p ${PKGBASE_DIR} 378.if defined(SNAPSHOT) && !empty(SNAPSHOT) 379. if exists(${PKGBASE_DIR}/Latest) 380 rm -rf ${PKGBASE_DIR}/Latest 381. endif 382 mkdir -p ${PKGBASE_DIR}/Latest 383 mkdir -p ${PKGBASE_DIR}/${BUILDDATE} 384 cd ${RELEASEDIR}/pkgbase && \ 385 mv pkgbase-repo.tar ${OSRELEASE}-pkgbase-repo-${SNAP_SUFFIX}.tar 386 cp -p ${RELEASEDIR}/pkgbase/${OSRELEASE}-pkgbase-repo-${SNAP_SUFFIX}.tar \ 387 ${PKGBASE_DIR}/${BUILDDATE}/${OSRELEASE}-pkgbase-repo-${SNAP_SUFFIX}.tar 388 cd ${PKGBASE_DIR}/Latest && \ 389 ln -s ../${BUILDDATE}/${OSRELEASE}-pkgbase-repo-${SNAP_SUFFIX}.tar \ 390 ${OSRELEASE}-pkgbase-repo.tar 391 cd ${RELEASEDIR}/pkgbase && rm -f CHECKSUM.* 392. for CHECKSUM in ${CHECKSUM_FILES} 393 cd ${RELEASEDIR}/pkgbase && \ 394 ${CHECKSUM:tl} ${OSRELEASE}-pkgbase-repo-*.tar > CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 395 cp -p ${RELEASEDIR}/pkgbase/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 396 ${PKGBASE_DIR}/${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 397 cd ${PKGBASE_DIR}/Latest && \ 398 ln -s ../${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 399 CHECKSUM.${CHECKSUM} 400. endfor 401.else # not snapshot 402. if exists(${PKGBASE_DIR}/Latest) 403 rm -rf ${PKGBASE_DIR}/Latest 404. endif 405 mkdir -p ${PKGBASE_DIR}/Latest 406 cd ${RELEASEDIR}/pkgbase && \ 407 mv pkgbase-repo.tar ${OSRELEASE}-pkgbase-repo.tar 408 cp -p ${RELEASEDIR}/pkgbase/${OSRELEASE}-pkgbase-repo.tar \ 409 ${PKGBASE_DIR}/Latest/${OSRELEASE}-pkgbase-repo.tar 410. for CHECKSUM in ${CHECKSUM_FILES} 411 cd ${RELEASEDIR}/pkgbase && \ 412 ${CHECKSUM:tl} ${OSRELEASE}-pkgbase-repo.tar > CHECKSUM.${CHECKSUM} 413 cp -p ${RELEASEDIR}/pkgbase/CHECKSUM.${CHECKSUM} \ 414 ${PKGBASE_DIR}/Latest/CHECKSUM.${CHECKSUM} 415. endfor 416.endif 417 418ftp-stage: remove-old-bits ${STAGE_TARGETS} 419 420