Makefile.mirrors revision 283672
118334Speter# 290075Sobrien# This Makefile helps create the directory structure on ftp-master, 3189824Sdas# making staging builds a bit more sane. 418334Speter# 590075Sobrien# You probably do not want to use this. Really. 618334Speter# You have been warned. 790075Sobrien# 890075Sobrien# Seriously. 990075Sobrien# 1090075Sobrien# Don't use this unless you know why you're using it. 1118334Speter# 1290075Sobrien# $FreeBSD: stable/10/release/Makefile.mirrors 283672 2015-05-29 00:46:14Z gjb $ 1390075Sobrien# 1490075Sobrien 1590075Sobrien.include "${.CURDIR}/Makefile" 1618334Speter 1718334SpeterRELEASEDIR?= /R 1890075SobrienFTPDIR?= ${RELEASEDIR}/ftp-stage 19169699Skan.if exists(${RELEASEDIR}) 20169699SkanSTAGE_TARGETS?= iso-images-stage 2118334Speter.endif 2296549Sobrien 23189824Sdas.if (defined(EMBEDDED_TARGET) && !empty(EMBEDDED_TARGET)) || (defined(EMBEDDEDBUILD) && !empty(EMBEDDEDBUILD)) 24189824Sdas. if ${TARGET} == "arm" || ${EMBEDDED_TARGET} == "arm" 25189824SdasEMBEDDED= 1 2696549Sobrien. endif 2718334Speter.endif 2818334Speter 2918334Speter# snapshot 3018334Speter.if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" 3118334SpeterSNAPSHOT= 1 3218334SpeterTLD?= ${FTPDIR}/snapshots 3318334Speter. if !defined(SVNREVISION) || empty(SVNREVISION) 3418334Speter. for _D in /usr/bin /usr/local/bin 3550397Sobrien. for _S in svnversion svnliteversion 36132730Skan. if exists(${_D}/${_S}) 37169699SkanSVNVERSION?= ${_D}/${_S} 38132730Skan. endif 3990075Sobrien. endfor 4018334Speter. endfor 4190075Sobrien. if exists(${SVNVERSION}) && !empty(SVNVERSION) 4290075SobrienSVNREVISION!= ${SVNVERSION} ${WORLDDIR}/Makefile 4318334Speter. endif 4490075Sobrien. endif # !defined(SVNREVISION) 4518334Speter. if !defined(BUILDDATE) || empty(BUILDDATE) 4690075Sobrien. if exists(${.CURDIR}/${.OBJDIR}/dist/base/bin/sh) 4718334SpeterBUILDDATE!= cd ${.CURDIR} && date -j -f '%s' $$(stat -f "%c" ${.OBJDIR}/dist/base/bin/sh) +%Y%m%d 4850397Sobrien. else 4990075SobrienBUILDDATE!= date +%Y%m%d 5090075Sobrien. endif 5150397Sobrien. endif 5290075Sobrien_SNAP_SUFFIX:= ${BUILDDATE}-r${SVNREVISION} 5390075Sobrien.else 54132730Skan# release 5590075SobrienSNAPSHOT= 5690075SobrienTLD?= ${FTPDIR}/releases 5796263Sobrien.endif 58169699Skan 59169699Skan.if defined(EMBEDDED) && !empty(EMBEDDED) 60169699Skan. if ${TARGET} == "arm" && ${TARGET_ARCH} == "armv6" 61169699Skan. if !defined(BOARDNAME) && empty(BOARDNAME) 62169699SkanBOARDNAME:= ${KERNCONF} 63132730Skan. else 64132730SkanOLDNAME:= ${KERNCONF} 65117421Skan. endif 66117421Skan. if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" 67132730SkanSNAPSHOT= 1 68169699Skan. endif 6950397SobrienIMAGES:= img 7018334Speter. endif # arm/armv6 7118334Speter.endif # embedded 7218334Speter 7318334Speter.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES) 74261188SpfgSTAGE_TARGETS+= vm-images-stage 75261188SpfgVM_DIR= ${TLD}/VM-IMAGES/${REVISION}-${BRANCH}/${TARGET_ARCH} 7618334Speter.endif 7718334Speter 7818334SpeterCLEANFILES+= ${STAGE_TARGETS} 7918334SpeterCHECKSUM_FILES?= SHA256 MD5 8018334SpeterSNAP_SUFFIX!= echo ${_SNAP_SUFFIX:S,^-,,1} | tr -d ' ' 8118334SpeterISO_DIR= ${TLD}/${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION} 8218334SpeterFTP_DIR= ${TLD}/${TARGET}/${TARGET_ARCH}/${REVISION}-${BRANCH} 83169699Skan 8418334Speterremove-old-bits: 8518334Speter rm -rf ${FTPDIR} 86132730Skan 8718334Speteriso-images-stage: 88169699Skan mkdir -p ${ISO_DIR} 89169699Skan mkdir -p ${TLD}/ISO-IMAGES/${REVISION} 90169699Skan.if defined(SNAPSHOT) && !empty(SNAPSHOT) 9118334Speter cd ${RELEASEDIR} && rm -f CHECKSUM.* 9218334Speter. for IMAGE in ${IMAGES} 9318334Speter. if defined(EMBEDDED) && !empty(EMBEDDED) 9418334Speter. if defined(OLDNAME) && !empty(OLDNAME) 9518334Speter @# arm/armv6 IMX6 -> WANDBOARD, for example. 9618334Speter cd ${RELEASEDIR} && \ 9718334Speter mv ${OSRELEASE}-${OLDNAME}.${IMAGE}.xz \ 9818334Speter ${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz 9918334Speter. endif 10018334Speter cd ${RELEASEDIR} && \ 10118334Speter mv ${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz \ 10218334Speter ${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz 103169699Skan cp -p ${RELEASEDIR}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz \ 104169699Skan ${ISO_DIR}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz 105169699Skan cd ${TLD}/ISO-IMAGES/${REVISION} && \ 10618334Speter ln -s \ 107169699Skan ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz 10818334Speter. endif # not embedded 109169699Skan. if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}) 11018334Speter cd ${RELEASEDIR} && \ 111169699Skan mv ${OSRELEASE}-${IMAGE} \ 11218334Speter ${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} 113169699Skan cp -p ${RELEASEDIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} \ 114132730Skan ${ISO_DIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} 115169699Skan cd ${TLD}/ISO-IMAGES/${REVISION} && \ 116132730Skan ln -s \ 117169699Skan ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} 118169699Skan. endif 11918334Speter. if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz) 120169699Skan cd ${RELEASEDIR} && \ 12118334Speter mv ${OSRELEASE}-${IMAGE}.xz \ 122169699Skan ${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz 123169699Skan cp -p ${RELEASEDIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz \ 124169699Skan ${ISO_DIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz 125169699Skan cd ${TLD}/ISO-IMAGES/${REVISION} && \ 126132730Skan ln -s \ 12790075Sobrien ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz 12890075Sobrien. endif 129117421Skan. endfor # images loop 13090075Sobrien cd ${RELEASEDIR} && rm -f CHECKSUM.* 131132730Skan. for CHECKSUM in ${CHECKSUM_FILES} 132169699Skan. if defined(EMBEDDED) && !empty(EMBEDDED) 133169699Skan cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \ 13418334Speter CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} 135169699Skan cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} \ 136169699Skan ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} 137169699Skan cd ${TLD}/ISO-IMAGES/${REVISION} && \ 13818334Speter ln -s \ 139169699Skan ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} 14018334Speter. else # not embedded 141169699Skan cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \ 142169699Skan CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} 14318334Speter cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} \ 14418334Speter ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} 14518334Speter cd ${TLD}/ISO-IMAGES/${REVISION} && \ 14618334Speter ln -s \ 14718334Speter ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} 14818334Speter. endif # 14918334Speter. endfor # checksum files 15018334Speter.else # not snapshot 15118334Speter. for IMAGE in ${IMAGES} 15218334Speter. if defined(EMBEDDED) && !empty(EMBEDDED) 15318334Speter. if defined(OLDNAME) && !empty(OLDNAME) 15496263Sobrien @# arm/armv6 IMX6 -> WANDBOARD, for example. 15596263Sobrien cd ${RELEASEDIR} && \ 15696263Sobrien mv ${OSRELEASE}-${OLDNAME}.${IMAGE}.xz \ 15796263Sobrien ${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz 15896263Sobrien. endif 15918334Speter cp -p ${RELEASEDIR}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz \ 16018334Speter ${ISO_DIR}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz 16118334Speter cd ${TLD}/ISO-IMAGES/${REVISION} && \ 16218334Speter ln -s \ 16318334Speter ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz 164169699Skan. endif # not embedded 165169699Skan. if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}) 166169699Skan cd ${RELEASEDIR} && \ 167169699Skan cp -p ${RELEASEDIR}/${OSRELEASE}-${IMAGE} \ 168169699Skan ${ISO_DIR}/${OSRELEASE}-${IMAGE} 169169699Skan cd ${TLD}/ISO-IMAGES/${REVISION} && \ 170169699Skan ln -s \ 171169699Skan ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${IMAGE} 172169699Skan. endif 17318334Speter. if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz) 174169699Skan cp -p ${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz \ 175169699Skan ${ISO_DIR}/${OSRELEASE}-${IMAGE}.xz 176169699Skan cd ${TLD}/ISO-IMAGES/${REVISION} && \ 177169699Skan ln -s \ 178169699Skan ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${IMAGE}.xz 179169699Skan. endif 18018334Speter. endfor # images loop 181169699Skan cd ${RELEASEDIR} && rm -f CHECKSUM.* 182169699Skan. for CHECKSUM in ${CHECKSUM_FILES} 183169699Skan. if defined(EMBEDDED) && !empty(EMBEDDED) 184169699Skan cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \ 185169699Skan CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} 186169699Skan cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} \ 187169699Skan ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} 188169699Skan cd ${TLD}/ISO-IMAGES/${REVISION} && \ 189169699Skan ln -s \ 190169699Skan ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} 191169699Skan. else # not embedded 192169699Skan cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \ 193169699Skan CHECKSUM.${CHECKSUM}-${OSRELEASE} 194169699Skan cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE} \ 195169699Skan ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE} 196169699Skan cd ${TLD}/ISO-IMAGES/${REVISION} && \ 197169699Skan ln -s \ 198169699Skan ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE} 199169699Skan. endif 200169699Skan. endfor # checksum files 201169699Skan.endif # release 202169699Skan.if exists(${RELEASEDIR}/ftp) 203169699Skan mkdir -p ${FTP_DIR} 204169699Skan cp -p ${RELEASEDIR}/ftp/*.txz ${RELEASEDIR}/ftp/MANIFEST ${FTP_DIR} 205169699Skan cd ${TLD}/${TARGET} && \ 206169699Skan ln -s ${TARGET_ARCH}/${REVISION}-${BRANCH} \ 207169699Skan ${REVISION}-${BRANCH} 208169699Skan.endif 209169699Skan 210169699Skanvm-images-stage: 211169699Skan mkdir -p ${VM_DIR} 212169699Skan.if defined(SNAPSHOT) && !empty(SNAPSHOT) 213169699Skan. if exists(${VM_DIR}/Latest) 214169699Skan rm -rf ${VM_DIR}/Latest 215169699Skan. endif 216169699Skan mkdir -p ${VM_DIR}/Latest 217169699Skan mkdir -p ${VM_DIR}/${BUILDDATE} 218169699Skan. for VMFORMAT in ${VMFORMATS} 219169699Skan cd ${RELEASEDIR}/vmimages && \ 220169699Skan mv ${OSRELEASE}.${VMFORMAT}.xz \ 221169699Skan ${OSRELEASE}-${SNAP_SUFFIX}.${VMFORMAT}.xz 222169699Skan cp -p ${RELEASEDIR}/vmimages/${OSRELEASE}-${SNAP_SUFFIX}.${VMFORMAT}.xz \ 223169699Skan ${VM_DIR}/${BUILDDATE}/${OSRELEASE}-${SNAP_SUFFIX}.${VMFORMAT}.xz 224169699Skan cd ${VM_DIR}/Latest && \ 225169699Skan ln -s ../${BUILDDATE}/${OSRELEASE}-${SNAP_SUFFIX}.${VMFORMAT}.xz \ 226169699Skan ${OSRELEASE}.${VMFORMAT}.xz 227169699Skan. endfor 228169699Skan cd ${RELEASEDIR}/vmimages && rm -f CHECKSUM.* 229169699Skan. for CHECKSUM in ${CHECKSUM_FILES} 230169699Skan cd ${RELEASEDIR}/vmimages && \ 231169699Skan ${CHECKSUM:tl} ${OSRELEASE}* > CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 232169699Skan cp -p ${RELEASEDIR}/vmimages/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 233169699Skan ${VM_DIR}/${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} 234169699Skan cd ${VM_DIR}/Latest && \ 235169699Skan ln -s ../${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \ 236169699Skan CHECKSUM.${CHECKSUM} 237169699Skan. endfor 238169699Skan.else # not snapshot 239169699Skan. if exists(${VM_DIR}/Latest) 240169699Skan rm -rf ${VM_DIR}/Latest 241169699Skan. endif 242169699Skan mkdir -p ${VM_DIR}/Latest 243169699Skan. for VMFORMAT in ${VMFORMATS} 244169699Skan cp -p ${RELEASEDIR}/vmimages/${OSRELEASE}.${VMFORMAT}.xz \ 245169699Skan ${VM_DIR}/Latest/${OSRELEASE}.${VMFORMAT}.xz 246169699Skan. endfor 247169699Skan. for CHECKSUM in ${CHECKSUM_FILES} 248169699Skan cp -p ${RELEASEDIR}/vmimages/CHECKSUM.${CHECKSUM} \ 249169699Skan ${VM_DIR}/Latest/CHECKSUM.${CHECKSUM} 250169699Skan. endfor 251169699Skan.endif 252169699Skan 253169699Skanftp-stage: remove-old-bits ${STAGE_TARGETS} 254169699Skan 255169699Skan