svn commit: r268111 - in head: . release
Glen Barber
gjb at FreeBSD.org
Tue Jul 1 19:04:05 UTC 2014
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 at 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}
More information about the svn-src-all
mailing list