Author: kensmith
Date: Wed Oct 22 18:25:13 2008
New Revision: 184174
URL: http://svn.freebsd.org/changeset/base/184174

Log:
  MFS r184137 and r184166 from stable/7
  
  Net effect is to add support for building DVD images when the MAKE_DVD
  knob is enabled, and enable it for amd64 and i386 architectures.
  
  Approved by:  re (kib)

Modified:
  stable/6/release/   (props changed)
  stable/6/release/Makefile
  stable/6/release/scripts/src-install.sh   (props changed)

Modified: stable/6/release/Makefile
==============================================================================
--- stable/6/release/Makefile   Wed Oct 22 18:20:45 2008        (r184173)
+++ stable/6/release/Makefile   Wed Oct 22 18:25:13 2008        (r184174)
@@ -192,6 +192,7 @@ MNT=                        /mnt
 .undef MAKE_FLOPPIES
 .if ${TARGET_ARCH} == "i386"
 MAKE_FLOPPIES=         true
+MAKE_DVD=
 .if ${TARGET} == "pc98"
 SMALLFLOPPYSIZE=       1200
 SMALLFLOPPYSPLITSIZE=  1152
@@ -230,6 +231,7 @@ MFSLABEL=           auto
 SEPARATE_LIVEFS=
 .elif ${TARGET_ARCH} == "amd64"
 MAKE_FLOPPIES=         true
+MAKE_DVD=
 FLOPPYSIZE=            1440
 FLOPPYSPLITSIZE=       1392
 FLOPPYINODE=           40000
@@ -269,6 +271,9 @@ CD_BOOT=            ${CD}/bootonly
 CD_DISC1=              ${CD}/disc1
 CD_DISC2=              ${CD}/disc2
 CD_DISC3=              ${CD}/disc3
+.if defined(MAKE_DVD)
+CD_DVD1=               ${CD}/dvd1
+.endif
 .if !defined(NODOC)
 CD_DOCS=               ${CD}/docs
 .endif
@@ -488,6 +493,7 @@ release rerelease:
        KERNELS \
        KERNELS_BASE \
        KERNEL_FLAGS \
+       MAKE_DVD \
        MAKE_FLOPPIES \
        MAKE_ISOS \
        NOCDROM \
@@ -941,6 +947,18 @@ cdrom.1:
                            find . -depth -print | cpio -dumpl ${CD_LIVEFS} ) ; 
\
                fi \
        done
+.if defined(MAKE_DVD)
+       @echo "Building DVD filesystem image as well as CDROM"
+       @mkdir -p ${CD_DVD1}/${BUILDNAME}
+       @for i in ${DISTRIBUTIONS} ; \
+       do \
+               if [ -d ${RD}/trees/$${i} ] ; then \
+                       chflags -R noschg ${RD}/trees/$${i} || true ; \
+                       ( cd ${RD}/trees/$${i} && \
+                           find . -depth -print | cpio -dumpl ${CD_DVD1} ) ; \
+               fi \
+       done
+.endif
        @echo "Copy GENERIC kernel to boot area"
        @cp -Rp ${RD}/kernels/GENERIC/ ${CD_LIVEFS}/boot/kernel
        @rm -f ${CD_LIVEFS}/.profile
@@ -958,6 +976,23 @@ cdrom.1:
        @cp ${RD}/trees/base/boot/device.hints ${CD_LIVEFS}/boot/device.hints
 .endif
        @echo "CD_VERSION = ${BUILDNAME}" > ${CD_LIVEFS}/cdrom.inf
+.if defined(MAKE_DVD)
+       @cp -Rp ${RD}/kernels/GENERIC/ ${CD_DVD1}/boot/kernel
+       @rm -f ${CD_DVD1}/boot/kernel/*.symbols
+       @rm -f ${CD_DVD1}/.profile
+       @cp ${.CURDIR}/fixit.profile ${CD_DVD1}/.profile
+       @ln -sf /rescue ${CD_DVD1}/stand
+       @echo "CD_VERSION = ${BUILDNAME}" > ${CD_DVD1}/cdrom.inf
+       @rm -f ${CD_DVD1}/boot/loader.conf
+       @cp ${RD}/mfsroot/mfsroot.gz ${CD_DVD1}/boot/mfsroot.gz
+       @echo 'mfsroot_load="YES"' > ${CD_DVD1}/boot/loader.conf
+       @echo 'mfsroot_type="mfs_root"' >> ${CD_DVD1}/boot/loader.conf
+       @echo 'mfsroot_name="/boot/mfsroot"' >> ${CD_DVD1}/boot/loader.conf
+.if exists(${RD}/trees/base/boot/device.hints)
+       @rm -f ${CD_DVD1}/boot/device.hints
+       @cp ${RD}/trees/base/boot/device.hints ${CD_DVD1}/boot/device.hints
+.endif
+.endif
        touch ${.TARGET}
 
 # Build disc1, disc2 and disc3 cdrom images
@@ -998,11 +1033,37 @@ cdrom.2:
        @mkdir -p ${CD_DISC3}
        @echo "CD_VERSION = ${BUILDNAME}" > ${CD_DISC3}/cdrom.inf
        @echo "CD_VOLUME = 3" >> ${CD_DISC3}/cdrom.inf
+.if defined(MAKE_DVD)
+.if defined(MAKE_FLOPPIES)
+       @cd ${RD} && find floppies -print | cpio -dumpl ${CD_DVD1}
+.endif
+       @cd ${RD}/dists && find . -print | cpio -dumpl ${CD_DVD1}/${BUILDNAME}
+.if !defined(NODOC)
+       @for i in ${DIST_DOCS_ARCH_INDEP}; do \
+         cp ${RND}/${RELNOTES_LANG}/$$i/article.txt \
+             ${CD_DVD1}/`echo $${i} | tr 'a-z' 'A-Z'`.TXT; \
+         cp ${RND}/${RELNOTES_LANG}/$$i/article.html \
+             ${CD_DVD1}/`echo $${i} | tr 'a-z' 'A-Z'`.HTM; \
+       done
+       @for i in ${DIST_DOCS_ARCH_DEP}; do \
+         cp ${RND}/${RELNOTES_LANG}/$$i/${TARGET}/article.txt \
+             ${CD_DVD1}/`echo $${i} | tr 'a-z' 'A-Z'`.TXT; \
+         cp ${RND}/${RELNOTES_LANG}/$$i/${TARGET}/article.html \
+             ${CD_DVD1}/`echo $${i} | tr 'a-z' 'A-Z'`.HTM; \
+       done
+       @cp ${RND}/${RELNOTES_LANG}/readme/docbook.css ${CD_DVD1}
+.endif
+       @echo "CD_VERSION = ${BUILDNAME}" > ${CD_DVD1}/cdrom.inf
+       @echo "CD_VOLUME = 1" >> ${CD_DVD1}/cdrom.inf
+.endif
 .if !defined(NODOC)
        @echo "Building CDROM docs filesystem image"
        @mkdir -p ${CD_DOCS}
        @echo "CD_VERSION = ${BUILDNAME}" > ${CD_DOCS}/cdrom.inf
        @mkdir -p ${CD_DOCS}/usr/share/doc
+.if defined(MAKE_DVD)
+       @mkdir -p ${CD_DVD1}/usr/share/doc
+.endif
        @for i in `ls ${CD_LIVEFS}/usr/share/doc`; do \
                if [ -L ${CD_LIVEFS}/usr/share/doc/$$i -o \
                    -d /usr/doc/$$i ]; then \
@@ -1010,6 +1071,10 @@ cdrom.2:
                            ${CD_DOCS}/usr/share/doc; \
                fi \
        done
+.if defined(MAKE_DVD)
+       @cd ${CD_DOCS}/usr/share/doc && find . -print | \
+           cpio -dumpl ${CD_DVD1}/usr/share/doc
+.endif
 .endif
        touch ${.TARGET}
 
@@ -1043,6 +1108,9 @@ CD_DISC2_PKGS=    ${CD_PACKAGE_TREE}/disc2
 .if exists(${CD_PACKAGE_TREE}/disc3)
 CD_DISC3_PKGS= ${CD_PACKAGE_TREE}/disc3
 .endif
+.if exists(${CD_PACKAGE_TREE}/dvd1)
+CD_DVD_PKGS=   ${CD_PACKAGE_TREE}/dvd1
+.endif
 .endif
 .endif
 
@@ -1066,6 +1134,12 @@ iso.1:
            FreeBSD_Packages_2 \
            ${CD}/${BUILDNAME}-${TARGET}-disc3.iso ${CD_DISC3} \
            ${CD_DISC3_PKGS}
+.if defined(MAKE_DVD)
+       @sh ${.CURDIR}/${TARGET_ARCH}/mkisoimages.sh ${BOOTABLE} \
+           FreeBSD_Install \
+           ${CD}/${BUILDNAME}-${TARGET}-dvd1.iso ${CD_DVD1} \
+           ${CD_DVD1_PKGS}
+.endif
 .if !defined(NODOC)
        @sh ${.CURDIR}/${TARGET_ARCH}/mkisoimages.sh \
            FreeBSD_Documentation \
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to