Author: gjb
Date: Tue Jul  1 19:04:04 2014
New Revision: 268111
URL: http://svnweb.freebsd.org/changeset/base/268111

Log:
  Merge ^/projects/release-debugdist into ^/head:
  r262491, r262493, r262516, r267345, r267397:
  
  r262491:
    Add DEBUG_DISTRIBUTIONS, and set it to include base and
    EXTRA_DISTRIBUTIONS, excluding 'doc', since the documentation
    distribution does not have corresponding debug information.
  
    Use DEBUG_DISTRIBUTIONS in the 'distributeworld installworld'
    and 'packageworld' targets, to reduce the number of occurances
    of excluding distributions that do not have .debug files.
  
  r262493:
    In release/Makefile, explicitly set WITHOUT_DEBUG_FILES=1
    for dvdrom and cdrom targets.  (Later reverted.)
  
    Exclude the *.debug.txz distributions from dvdrom and
    cdrom images, but include them for ftp distribution.
  
  r262516:
    Rename ${dist}.debug.txz to ${dist}-dbg.txz to prevent the
    following output:
        eval: ${base....}: Bad substitution
        eval: ${doc....}: Bad substitution
        eval: ${games....}: Bad substitution
        eval: ${lib32....}: Bad substitution
  
    This also follows other naming conventions seen in the
    wild.
  
  r267345:
    Explicitly set MK_DEBUG_FILES=no, which overrides the
    WITH_DEBUG_FILES=1 and WITHOUT_DEBUG_FILES=1 collisions
    previously experienced.
  
    This change allows us to create the {base,kernel}_debug.txz
    distributions without accidentally installing the *.debug
    files on the medium itself.
  
  r267397:
    Remove evaluations of MK_DEBUG_FILES where not needed.
    If DEBUG_DISTRIBUTIONS is empty, which is true if
    MK_DEBUG_FILES evaluates to 'no' above, the loop does
    nothing.
  
  MFC after:    1 month
  Tested on:    head@r267801
  Reviewed by:  brooks [1], emaste, imp [1]
                [1] earlier version
  Sponsored by: The FreeBSD Foundation

Modified:
  head/Makefile.inc1
  head/release/Makefile

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1  Tue Jul  1 18:26:30 2014        (r268110)
+++ head/Makefile.inc1  Tue Jul  1 19:04:04 2014        (r268111)
@@ -782,6 +782,11 @@ EXTRA_DISTRIBUTIONS+=      lib32
 EXTRA_DISTRIBUTIONS+=  tests
 .endif
 
+DEBUG_DISTRIBUTIONS=
+.if ${MK_DEBUG_FILES} != "no"
+DEBUG_DISTRIBUTIONS+=  base ${EXTRA_DISTRIBUTIONS:S,doc,,}
+.endif
+
 MTREE_MAGIC?=  mtree 2.0
 
 distributeworld installworld: _installcheck_world
@@ -858,8 +863,7 @@ distributeworld installworld: _installch
        awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / 
type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \
        ${DESTDIR}/${DISTDIR}/${dist}.meta
 .endfor
-.if ${MK_DEBUG_FILES} != "no"
-. for dist in base ${EXTRA_DISTRIBUTIONS}
+.for dist in ${DEBUG_DISTRIBUTIONS}
        @# For each file that exists in this dist, print the corresponding
        @# line from the METALOG.  This relies on the fact that
        @# a line containing only the filename will sort immediatly before
@@ -868,8 +872,7 @@ distributeworld installworld: _installch
        find ./${dist}/usr/lib/debug | sort -u ${METALOG} - | \
        awk 'BEGIN { print "#${MTREE_MAGIC}" } !/ type=/ { file = $$1 } / 
type=/ { if ($$1 == file) { sub(/^\.\/${dist}\//, "./"); print } }' > \
        ${DESTDIR}/${DISTDIR}/${dist}.debug.meta
-. endfor
-.endif
+.endfor
 .endif
 .endif
 
@@ -887,19 +890,17 @@ packageworld:
 .endif
 .endfor
 
-.if ${MK_DEBUG_FILES} != "no"
-. for dist in base ${EXTRA_DISTRIBUTIONS}
-.  if defined(NO_ROOT)
+.for dist in ${DEBUG_DISTRIBUTIONS}
+. if defined(NO_ROOT)
        ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \
-           tar cvJf ${DESTDIR}/${DISTDIR}/${dist}.debug.txz \
+           tar cvJf ${DESTDIR}/${DISTDIR}/${dist}-dbg.txz \
            @${DESTDIR}/${DISTDIR}/${dist}.debug.meta
-.  else
+. else
        ${_+_}cd ${DESTDIR}/${DISTDIR}/${dist}; \
-           tar cvJfL ${DESTDIR}/${DISTDIR}/${dist}.debug.txz \
+           tar cvJfL ${DESTDIR}/${DISTDIR}/${dist}-dbg.txz \
            usr/lib/debug
-.  endif
-. endfor
-.endif
+. endif
+.endfor
 
 #
 # reinstall

Modified: head/release/Makefile
==============================================================================
--- head/release/Makefile       Tue Jul  1 18:26:30 2014        (r268110)
+++ head/release/Makefile       Tue Jul  1 19:04:04 2014        (r268111)
@@ -155,10 +155,13 @@ system: packagesystem
        mkdir -p release
        cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
                DESTDIR=${.OBJDIR}/release MK_RESCUE=no MK_KERNEL_SYMBOLS=no \
-               MK_PROFILE=no MK_SENDMAIL=no MK_TESTS=no MK_LIB32=no
+               MK_PROFILE=no MK_SENDMAIL=no MK_TESTS=no MK_LIB32=no \
+               MK_DEBUG_FILES=no
 # Copy distfiles
        mkdir -p release/usr/freebsd-dist
-       cp *.txz MANIFEST release/usr/freebsd-dist
+       for dist in MANIFEST $$(ls *.txz | grep -v -- '-dbg'); \
+           do cp $${dist} release/usr/freebsd-dist; \
+       done
 # Copy documentation, if generated
 .if !defined(NODOC)
        cp reldoc/* release
@@ -180,7 +183,7 @@ bootonly: packagesystem
            MK_INSTALLLIB=no MK_LIB32=no MK_MAIL=no \
            MK_NCP=no MK_TOOLCHAIN=no MK_PROFILE=no \
            MK_INSTALLIB=no MK_RESCUE=no MK_DICT=no \
-           MK_KERNEL_SYMBOLS=no MK_TESTS=no
+           MK_KERNEL_SYMBOLS=no MK_TESTS=no MK_DEBUG_FILES=no
 # Copy manifest only (no distfiles) to get checksums
        mkdir -p bootonly/usr/freebsd-dist
        cp MANIFEST bootonly/usr/freebsd-dist
@@ -200,10 +203,12 @@ dvd:
        mkdir -p ${.TARGET}
        cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
                DESTDIR=${.OBJDIR}/${.TARGET} MK_RESCUE=no MK_KERNEL_SYMBOLS=no 
\
-               MK_TESTS=no
+               MK_TESTS=no MK_DEBUG_FILES=no
 # Copy distfiles
        mkdir -p ${.TARGET}/usr/freebsd-dist
-       cp *.txz MANIFEST ${.TARGET}/usr/freebsd-dist
+       for dist in MANIFEST $$(ls *.txz | grep -v -- '-dbg'); \
+           do cp $${dist} ${.TARGET}/usr/freebsd-dist; \
+       done
 # Copy documentation, if generated
 .if !defined(NODOC)
        cp reldoc/* ${.TARGET}
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to