]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - release/Makefile.mirrors
Implement pci_enable_msi() and pci_disable_msi() in the LinuxKPI.
[FreeBSD/FreeBSD.git] / release / Makefile.mirrors
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 # $FreeBSD$
13 #
14
15 .include "${.CURDIR}/Makefile"
16
17 RELEASEDIR?=            /R
18 FTPDIR?=                ${RELEASEDIR}/ftp-stage
19 .if exists(${RELEASEDIR})
20 STAGE_TARGETS?=         iso-images-stage
21 .endif
22 SRCBRANCH!=             ${SVN_CMD} info --show-item relative-url ${WORLDDIR}
23
24 .if (defined(EMBEDDED_TARGET) && !empty(EMBEDDED_TARGET)) || (defined(EMBEDDEDBUILD) && !empty(EMBEDDEDBUILD))
25 . if ${TARGET:Marm*} != "" || ${EMBEDDED_TARGET:Marm*} != ""
26 EMBEDDED=               1
27 . endif
28 .endif
29
30 # snapshot
31 .if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" || ${BRANCH} == "PRERELEASE" || ${BRANCH:MALPHA*} != ""
32 SNAPSHOT=               1
33 TLD?=                   ${FTPDIR}/snapshots
34 . if !defined(SVNREVISION) || empty(SVNREVISION)
35 .  for _D in /usr/bin /usr/local/bin
36 .   for _S in svnversion svnliteversion
37 .    if exists(${_D}/${_S})
38 SVNVERSION?=            ${_D}/${_S}
39 .    endif
40 .   endfor
41 .  endfor
42 .  if exists(${SVNVERSION}) && !empty(SVNVERSION)
43 SVNREVISION!=           ${SVNVERSION} ${WORLDDIR}/Makefile
44 .  endif
45 . endif # !defined(SVNREVISION)
46 . if !defined(BUILDDATE) || empty(BUILDDATE)
47 .  if exists(${.CURDIR}/${.OBJDIR}/dist/base/bin/sh)
48 BUILDDATE!=             cd ${.CURDIR} && date -j -f '%s' $$(stat -f "%c" ${.OBJDIR}/dist/base/bin/sh) +%Y%m%d
49 .  else
50 BUILDDATE!=             date +%Y%m%d
51 .  endif
52 . endif
53 _SNAP_SUFFIX:=          ${BUILDDATE}-r${SVNREVISION}
54 .else
55 # release
56 SNAPSHOT=
57 TLD?=                   ${FTPDIR}/releases
58 .endif
59
60 .if defined(EMBEDDED) && !empty(EMBEDDED)
61 . if ${TARGET:Marm*} != "" && (${TARGET_ARCH:Marm*} != "" || ${TARGET_ARCH} == "aarch64")
62 .  if ${BRANCH} == "STABLE" || ${BRANCH} == "CURRENT" || ${BRANCH} == "PRERELEASE" || ${BRANCH:MALPHA*} != ""
63 SNAPSHOT=               1
64 .  endif
65 IMAGES:=                img
66 . endif # arm/armv6
67 .endif # embedded
68
69 .if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES)
70 STAGE_TARGETS+=         vm-images-stage
71 VM_DIR=                 ${TLD}/VM-IMAGES/${REVISION}-${BRANCH}/${TARGET_ARCH}
72 .endif
73
74 CLEANFILES+=            ${STAGE_TARGETS}
75 CHECKSUM_FILES?=        SHA512 SHA256
76 SNAP_SUFFIX!=           echo ${_SNAP_SUFFIX:S,^-,,1} | tr -d ' '
77 ISO_DIR=                ${TLD}/${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}
78 FTP_DIR=                ${TLD}/${TARGET}/${TARGET_ARCH}/${REVISION}-${BRANCH}
79
80 remove-old-bits:
81         rm -rf ${FTPDIR}
82
83 iso-images-stage:
84         mkdir -p ${ISO_DIR}
85         mkdir -p ${TLD}/ISO-IMAGES/${REVISION}
86 .if defined(SNAPSHOT) && !empty(SNAPSHOT)
87         cd ${RELEASEDIR} && rm -f CHECKSUM.*
88 . for IMAGE in ${IMAGES}
89 .  if defined(EMBEDDED) && !empty(EMBEDDED)
90         cd ${RELEASEDIR} && \
91                 mv ${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz \
92                 ${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz
93         cp -p ${RELEASEDIR}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz \
94                 ${ISO_DIR}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz
95         cd ${TLD}/ISO-IMAGES/${REVISION} && \
96                 ln -s \
97                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}.${IMAGE}.xz
98 .  endif # not embedded
99 .   if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE})
100         cd ${RELEASEDIR} && \
101                 mv ${OSRELEASE}-${IMAGE} \
102                 ${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}
103         cp -p ${RELEASEDIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE} \
104                 ${ISO_DIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}
105         cd ${TLD}/ISO-IMAGES/${REVISION} && \
106                 ln -s \
107                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}
108 .   endif
109 .   if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz)
110         cd ${RELEASEDIR} && \
111                 mv ${OSRELEASE}-${IMAGE}.xz \
112                 ${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz
113         cp -p ${RELEASEDIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz \
114                 ${ISO_DIR}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz
115         cd ${TLD}/ISO-IMAGES/${REVISION} && \
116                 ln -s \
117                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${SNAP_SUFFIX}-${IMAGE}.xz
118 .   endif
119 . endfor # images loop
120         cd ${RELEASEDIR} && rm -f CHECKSUM.*
121 . for CHECKSUM in ${CHECKSUM_FILES}
122 .  if defined(EMBEDDED) && !empty(EMBEDDED)
123         cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \
124                 CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}
125         cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX} \
126                 ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}
127         cd ${TLD}/ISO-IMAGES/${REVISION} && \
128                 ln -s \
129                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}-${SNAP_SUFFIX}
130 .  else # not embedded
131         cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \
132                 CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX}
133         cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX} \
134                 ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX}
135         cd ${TLD}/ISO-IMAGES/${REVISION} && \
136                 ln -s \
137                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${SNAP_SUFFIX}
138 .  endif #
139 . endfor # checksum files
140 .else # not snapshot
141 . for IMAGE in ${IMAGES}
142 .  if defined(EMBEDDED) && !empty(EMBEDDED)
143         cp -p ${RELEASEDIR}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz \
144                 ${ISO_DIR}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz
145         cd ${TLD}/ISO-IMAGES/${REVISION} && \
146                 ln -s \
147                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${BOARDNAME}.${IMAGE}.xz
148 .  endif # not embedded
149 .   if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE})
150         cd ${RELEASEDIR} && \
151         cp -p ${RELEASEDIR}/${OSRELEASE}-${IMAGE} \
152                 ${ISO_DIR}/${OSRELEASE}-${IMAGE}
153         cd ${TLD}/ISO-IMAGES/${REVISION} && \
154                 ln -s \
155                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${IMAGE}
156 .   endif
157 .   if exists(${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz)
158         cp -p ${RELEASEDIR}/${OSRELEASE}-${IMAGE}.xz \
159                 ${ISO_DIR}/${OSRELEASE}-${IMAGE}.xz
160         cd ${TLD}/ISO-IMAGES/${REVISION} && \
161                 ln -s \
162                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/${OSRELEASE}-${IMAGE}.xz
163 .   endif
164 . endfor # images loop
165         cd ${RELEASEDIR} && rm -f CHECKSUM.*
166 . for CHECKSUM in ${CHECKSUM_FILES}
167 .  if defined(EMBEDDED) && !empty(EMBEDDED)
168         cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \
169                 CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}
170         cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME} \
171                 ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}
172         cd ${TLD}/ISO-IMAGES/${REVISION} && \
173                 ln -s \
174                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}-${BOARDNAME}
175 .  else # not embedded
176         cd ${RELEASEDIR} && ${CHECKSUM:tl} ${OSRELEASE}* > \
177                 CHECKSUM.${CHECKSUM}-${OSRELEASE}
178         cp -p ${RELEASEDIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE} \
179                 ${ISO_DIR}/CHECKSUM.${CHECKSUM}-${OSRELEASE}
180         cd ${TLD}/ISO-IMAGES/${REVISION} && \
181                 ln -s \
182                 ../../${TARGET}/${TARGET_ARCH}/ISO-IMAGES/${REVISION}/CHECKSUM.${CHECKSUM}-${OSRELEASE}
183 .  endif
184 . endfor # checksum files
185 .endif # release
186 .if exists(${RELEASEDIR}/ftp)
187         mkdir -p ${FTP_DIR}
188         cp -p ${RELEASEDIR}/ftp/*.txz ${RELEASEDIR}/ftp/MANIFEST ${FTP_DIR}
189         echo ${BUILDDATE} > ${FTP_DIR}/BUILDDATE
190         echo ${SRCBRANCH} > ${FTP_DIR}/SRCBRANCH
191         echo r${SVNREVISION} > ${FTP_DIR}/REVISION
192         cd ${TLD}/${TARGET} && \
193                 ln -s ${TARGET_ARCH}/${REVISION}-${BRANCH} \
194                         ${REVISION}-${BRANCH}
195 .endif
196
197 vm-images-stage:
198         mkdir -p ${VM_DIR}
199 .if defined(SNAPSHOT) && !empty(SNAPSHOT)
200 . if exists(${VM_DIR}/Latest)
201         rm -rf ${VM_DIR}/Latest
202 . endif
203         mkdir -p ${VM_DIR}/Latest
204         mkdir -p ${VM_DIR}/${BUILDDATE}
205 . for VMFORMAT in ${VMFORMATS}
206         cd ${RELEASEDIR}/vmimages && \
207                 mv ${OSRELEASE}.${VMFORMAT}.xz \
208                 ${OSRELEASE}-${SNAP_SUFFIX}.${VMFORMAT}.xz
209         cp -p ${RELEASEDIR}/vmimages/${OSRELEASE}-${SNAP_SUFFIX}.${VMFORMAT}.xz \
210                 ${VM_DIR}/${BUILDDATE}/${OSRELEASE}-${SNAP_SUFFIX}.${VMFORMAT}.xz
211         cd ${VM_DIR}/Latest && \
212                 ln -s ../${BUILDDATE}/${OSRELEASE}-${SNAP_SUFFIX}.${VMFORMAT}.xz \
213                 ${OSRELEASE}.${VMFORMAT}.xz
214 . endfor
215         cd ${RELEASEDIR}/vmimages && rm -f CHECKSUM.*
216 . for CHECKSUM in ${CHECKSUM_FILES}
217         cd ${RELEASEDIR}/vmimages && \
218                 ${CHECKSUM:tl} ${OSRELEASE}* > CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX}
219         cp -p ${RELEASEDIR}/vmimages/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \
220                 ${VM_DIR}/${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX}
221         cd ${VM_DIR}/Latest && \
222                 ln -s ../${BUILDDATE}/CHECKSUM.${CHECKSUM}-${SNAP_SUFFIX} \
223                 CHECKSUM.${CHECKSUM}
224 . endfor
225 .else # not snapshot
226 . if exists(${VM_DIR}/Latest)
227         rm -rf ${VM_DIR}/Latest
228 . endif
229         mkdir -p ${VM_DIR}/Latest
230 . for VMFORMAT in ${VMFORMATS}
231         cp -p ${RELEASEDIR}/vmimages/${OSRELEASE}.${VMFORMAT}.xz \
232                 ${VM_DIR}/Latest/${OSRELEASE}.${VMFORMAT}.xz
233 . endfor
234 . for CHECKSUM in ${CHECKSUM_FILES}
235         cp -p ${RELEASEDIR}/vmimages/CHECKSUM.${CHECKSUM} \
236                 ${VM_DIR}/Latest/CHECKSUM.${CHECKSUM}
237 . endfor
238 .endif
239
240 ftp-stage:      remove-old-bits ${STAGE_TARGETS}
241