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

(-)file_not_specified_in_diff (-3 / +75 lines)
Line  Link Here
0
-- libtool.eclass
0
++ libtool.eclass
Lines 122-127 Link Here
122
	local do_reversedeps="no"
122
	local do_reversedeps="no"
123
	local do_only_patches="no"
123
	local do_only_patches="no"
124
	local do_uclibc="yes"
124
	local do_uclibc="yes"
125
	local do_force="no"
125
	local deptoremove=
126
	local deptoremove=
126
	local my_dirlist=
127
	local my_dirlist=
127
	local elt_patches="install-sh ltmain portage relink max_cmd_len sed test tmp cross as-needed"
128
	local elt_patches="install-sh ltmain portage relink max_cmd_len sed test tmp cross as-needed"
Lines 165-170 Link Here
165
			"--no-uclibc")
166
			"--no-uclibc")
166
				do_uclibc="no"
167
				do_uclibc="no"
167
				;;
168
				;;
169
			"--force")
170
				do_force="yes"
171
				;;
168
			*)
172
			*)
169
				eerror "Invalid elibtoolize option: ${x}"
173
				eerror "Invalid elibtoolize option: ${x}"
170
				die "elibtoolize called with ${x} ??"
174
				die "elibtoolize called with ${x} ??"
Lines 177-191 Link Here
177
	[[ ${CHOST} == *"-freebsd"* ]] && \
181
	[[ ${CHOST} == *"-freebsd"* ]] && \
178
		elt_patches="${elt_patches} fbsd-conf fbsd-ltconf"
182
		elt_patches="${elt_patches} fbsd-conf fbsd-ltconf"
179
183
184
	# Hardcoding library path does not work with DESTDIR installs.
185
	#
186
	# Affects any platform with 'hardcode_direct=yes' or 'hardcode_minus_L=yes'.
187
	# According to libtool.m4 (as of libtool-1.5.26), these are:
188
	#    *-aix*
189
	#    *-hpux9
190
	#    hppa-hpux* (not hppa64 or ia64)
191
	#    *-netbsd
192
	#    *-openbsd
193
	#    *-freebsd
194
	#    *-dragonfly
195
	#    *-newsos6
196
	#    *-os2
197
	#    *-amigaos
198
	#    *-sunos4
199
	#    *-sysv4
200
	# It definitely is required for aix (to support DESTDIR),
201
	# although it should help for others too...
202
	[[ ${CHOST} == *"-aix"* ]] &&
203
		elt_patches="${elt_patches} hardcode aixrtl"
204
180
	[[ ${CHOST} == *"-darwin"* ]] && \
205
	[[ ${CHOST} == *"-darwin"* ]] && \
181
		elt_patches="${elt_patches} darwin-ltconf darwin-ltmain"
206
		elt_patches="${elt_patches} darwin-ltconf darwin-ltmain darwin-conf"
207
208
	[[ ${CHOST} == *"-mint"* ]] && \
209
		elt_patches="${elt_patches} mint-conf"
210
211
	# Need help from binutils-config (>=toolchain-prefix-wrapper-0.3.1655)
212
	# to create correct shared libraries and executables on hppa-hpux via
213
	# libtool in combination with DESTDIR to avoid $D getting encoded.
214
	[[ ${CHOST} == *"-hpux"* ]] && \
215
		elt_patches="${elt_patches} hpux-conf deplibs hc-flag-ld hardcode hardcode-relink relink-prog no-lc"
182
216
183
	for x in ${my_dirlist} ; do
217
	for x in ${my_dirlist} ; do
184
		local tmp=$(echo "${x}" | sed -e "s|${WORKDIR}||")
218
		local tmp=$(echo "${x}" | sed -e "s|${WORKDIR}||")
185
		export ELT_APPLIED_PATCHES=
219
		export ELT_APPLIED_PATCHES=
186
		export ELT_LTMAIN_SH="${x}/ltmain.sh"
220
		export ELT_LTMAIN_SH="${x}/ltmain.sh"
187
221
188
		[[ -f ${x}/.elibtoolized ]] && continue
222
		[[ ${do_force} == no && -f ${x}/.elibtoolized ]] && continue
189
223
190
		cd ${x}
224
		cd ${x}
191
		einfo "Running elibtoolize in: $(echo "/${tmp}" | sed -e 's|//|/|g; s|^/||')"
225
		einfo "Running elibtoolize in: $(echo "/${tmp}" | sed -e 's|//|/|g; s|^/||')"
Lines 260-265 Link Here
260
						ret=$?
294
						ret=$?
261
					fi
295
					fi
262
					;;
296
					;;
297
				"darwin-conf")
298
					if [[ -e ${x}/configure && \
299
					      -n $(grep '&& echo \.so ||' "${x}/configure") ]] ; then
300
						ELT_walk_patches "${x}/configure" "${y}"
301
						ret=$?
302
					# ltmain.sh and co might be in a subdirectory ...
303
					elif [[ ! -e ${x}/configure && -e ${x}/../configure && \
304
					        -n $(grep '&& echo \.so ||' "${x}/../configure") ]] ; then
305
						ELT_walk_patches "${x}/../configure" "${y}"
306
						ret=$?
307
					fi
308
					;;
263
				"darwin-ltconf")
309
				"darwin-ltconf")
264
					# Newer libtoolize clears ltconfig, as not used anymore
310
					# Newer libtoolize clears ltconfig, as not used anymore
265
					if [[ -s ${x}/ltconfig ]] ; then
311
					if [[ -s ${x}/ltconfig ]] ; then
Lines 267-272 Link Here
267
						ret=$?
313
						ret=$?
268
					fi
314
					fi
269
					;;
315
					;;
316
				"darwin-ltmain")
317
					# special case to avoid false positives (failing to apply
318
					# ltmain.sh path message), newer libtools have this patch
319
					# built in, so not much to patch around then
320
					if [[ -e ${x}/ltmain.sh && \
321
					      -z $(grep 'verstring="-compatibility_version' "${x}/ltmain.sh") ]] ; then
322
						ELT_walk_patches "${x}/ltmain.sh" "${y}"
323
						ret=$?
324
					fi
325
					;;
326
				"aixrtl" | "hpux-conf" | "mint-conf" )
327
					ret=1
328
					local subret=1
329
					if [[ -e ${x}/configure ]]; then
330
						ELT_walk_patches "${x}/configure" "${y}"
331
						subret=$?
332
					# ltmain.sh and co might be in a subdirectory ...
333
					elif [[ ! -e ${x}/configure && -e ${x}/../configure ]] ; then
334
						ELT_walk_patches "${x}/../configure" "${y}"
335
						subret=$?
336
					fi
337
					if [[ $subret -eq 0 ]]; then
338
						# have at least one patch succeeded.
339
						ret=0
340
					fi
341
					;;
270
				"install-sh")
342
				"install-sh")
271
					ELT_walk_patches "${x}/install-sh" "${y}"
343
					ELT_walk_patches "${x}/install-sh" "${y}"
272
					ret=$?
344
					ret=$?

Return to bug 301190