Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 906368
Collapse All | Expand All

(-)a/bin/estrip (-2 / +33 lines)
Lines 15-22 exp_tf() { Link Here
15
		eval ${var}_${flag}=$(tf has ${flag} ${!var})
15
		eval ${var}_${flag}=$(tf has ${flag} ${!var})
16
	done
16
	done
17
}
17
}
18
exp_tf FEATURES compressdebug installsources nostrip splitdebug xattr
18
exp_tf FEATURES compressdebug dedupdebug installsources nostrip splitdebug xattr
19
exp_tf PORTAGE_RESTRICT binchecks installsources splitdebug strip
19
exp_tf PORTAGE_RESTRICT binchecks dedupdebug installsources splitdebug strip
20
20
21
if ! ___eapi_has_prefix_variables; then
21
if ! ___eapi_has_prefix_variables; then
22
	EPREFIX= ED=${D}
22
	EPREFIX= ED=${D}
Lines 201-206 fi Link Here
201
[[ ${debugedit} ]] && debugedit_found=true || debugedit_found=false
201
[[ ${debugedit} ]] && debugedit_found=true || debugedit_found=false
202
debugedit_warned=false
202
debugedit_warned=false
203
203
204
dwz=$(type -P dwz)
205
[[ ${dwz} ]] && dwz_found=true || dwz_found=false
206
dwz_warned=false
207
204
__multijob_init
208
__multijob_init
205
209
206
# Setup ${T} filesystem layout that we care about.
210
# Setup ${T} filesystem layout that we care about.
Lines 248-253 __try_symlink() { Link Here
248
		die "failed to create symlink '${name}'"
252
		die "failed to create symlink '${name}'"
249
}
253
}
250
254
255
# Usage: dedup_elf_debug <src> <inode_dedupdebug>
256
dedup_elf_debug() {
257
	${FEATURES_dedupdebug} || return 0
258
	${PORTAGE_RESTRICT_dedupdebug} && return 0
259
260
	debug-print-function "${FUNCNAME}" "$@"
261
262
	if ! ${dwz_found} ; then
263
		if ! ${dwz_warned} ; then
264
			dwz_warned=true
265
			ewarn "FEATURES=dedupdebug is enabled but the dwz binary could not be"
266
			ewarn "found. This feature will not work unless dwz is installed!"
267
		fi
268
		return 0
269
	fi
270
271
	local src=$1              # File to dedup debug symbols
272
	local inode_dedupdebug=$2 # Temp path for hard link tracking
273
274
	# We already dedupdebug-ed this inode.
275
	[[ -L ${inode_dedupdebug} ]] && return 0
276
277
	"${dwz}" -- "${src}"
278
	touch "${inode_dedupdebug}"
279
}
280
251
# Usage: save_elf_debug <src> <inode_debug> [splitdebug]
281
# Usage: save_elf_debug <src> <inode_debug> [splitdebug]
252
save_elf_debug() {
282
save_elf_debug() {
253
	${FEATURES_splitdebug} || return 0
283
	${FEATURES_splitdebug} || return 0
Lines 355-360 process_elf() { Link Here
355
			xt_data=$(dump_xattrs "${x}")
385
			xt_data=$(dump_xattrs "${x}")
356
		fi
386
		fi
357
		save_elf_sources "${x}"
387
		save_elf_sources "${x}"
388
		dedup_elf_debug "${x}" "${inode_link}_dedupdebug"
358
	fi
389
	fi
359
390
360
	if ${strip_this} ; then
391
	if ${strip_this} ; then
(-)a/lib/_emerge/EbuildPhase.py (+1 lines)
Lines 67-72 class EbuildPhase(CompositeTask): Link Here
67
    _features_display = (
67
    _features_display = (
68
        "ccache",
68
        "ccache",
69
        "compressdebug",
69
        "compressdebug",
70
        "dedupdebug",
70
        "distcc",
71
        "distcc",
71
        "fakeroot",
72
        "fakeroot",
72
        "installsources",
73
        "installsources",
(-)a/lib/portage/const.py (+1 lines)
Lines 176-181 SUPPORTED_FEATURES = frozenset( Link Here
176
        "compressdebug",
176
        "compressdebug",
177
        "compress-index",
177
        "compress-index",
178
        "config-protect-if-modified",
178
        "config-protect-if-modified",
179
        "dedupdebug",
179
        "digest",
180
        "digest",
180
        "distcc",
181
        "distcc",
181
        "distlocks",
182
        "distlocks",

Return to bug 906368