Gentoo Archives: gentoo-commits

From: "Ryan Hill (dirtyepic)" <dirtyepic@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in dev-libs/ppl/files: ppl-0.10.2-gmp-5-fix.patch
Date: Sat, 29 May 2010 07:01:33
Message-Id: 20100529055236.481182CF37@corvid.gentoo.org
1 dirtyepic 10/05/29 05:52:36
2
3 Added: ppl-0.10.2-gmp-5-fix.patch
4 Log:
5 Fix configure failure with GMP 5.0. (bug #318845 by Mat)
6 (Portage version: 2.2_rc67/cvs/Linux x86_64)
7
8 Revision Changes Path
9 1.1 dev-libs/ppl/files/ppl-0.10.2-gmp-5-fix.patch
10
11 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/ppl/files/ppl-0.10.2-gmp-5-fix.patch?rev=1.1&view=markup
12 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-libs/ppl/files/ppl-0.10.2-gmp-5-fix.patch?rev=1.1&content-type=text/plain
13
14 Index: ppl-0.10.2-gmp-5-fix.patch
15 ===================================================================
16 https://bugs.gentoo.org/318845
17 https://www.cs.unipr.it/mantis/view.php?id=102
18
19 --- ppl-0.10.2.orig/m4/ac_check_gmp.m4
20 +++ ppl-0.10.2/m4/ac_check_gmp.m4
21 @@ -1,5 +1,5 @@
22 dnl A function to check for the existence and usability of GMP.
23 -dnl Copyright (C) 2001-2009 Roberto Bagnara <bagnara@××××××××.it>
24 +dnl Copyright (C) 2001-2010 Roberto Bagnara <bagnara@××××××××.it>
25 dnl
26 dnl This file is part of the Parma Polyhedra Library (PPL).
27 dnl
28 @@ -32,6 +32,23 @@
29 fi
30 fi
31
32 +AC_ARG_WITH(gmp-build,
33 + AS_HELP_STRING([--with-gmp-build=DIR],
34 + [use a non-installed build of GMP in DIR]),
35 + gmp_build_dir=$with_gmp_build
36 + if test -z "$with_libgmp_prefix"
37 + then
38 + CPPFLAGS="$CPPFLAGS -I$gmp_build_dir -I$gmp_build_dir/tune"
39 + LDFLAGS="$LDFLAGS -L$gmp_build_dir -L$gmp_build_dir/.libs"
40 + LDFLAGS="$LDFLAGS -L$gmp_build_dir/tune"
41 + else
42 + AC_MSG_ERROR([cannot use --with-gmp-build and --with-gmp-prefix together])
43 + fi)
44 +
45 +dnl Both libgmp and libbmpxx come from the gmp package.
46 +AC_LIB_FROMPACKAGE([gmp], [gmp])
47 +AC_LIB_FROMPACKAGE([gmpxx], [gmp])
48 +
49 dnl Check how to link with libgmp.
50 AC_LIB_LINKFLAGS([gmp])
51
52 @@ -54,6 +71,10 @@
53 #GMP version 4.1.3 or higher is required
54 #endif
55
56 +#ifndef BITS_PER_MP_LIMB
57 +#define BITS_PER_MP_LIMB GMP_LIMB_BITS
58 +#endif
59 +
60 int
61 main() {
62 std::string header_version;
63 @@ -80,11 +101,11 @@
64 return 1;
65 }
66
67 - if (sizeof(mp_limb_t)*CHAR_BIT != GMP_LIMB_BITS
68 - || GMP_LIMB_BITS != mp_bits_per_limb) {
69 + if (sizeof(mp_limb_t)*CHAR_BIT != BITS_PER_MP_LIMB
70 + || BITS_PER_MP_LIMB != mp_bits_per_limb) {
71 std::cerr
72 << "GMP header (gmp.h) and library (ligmp.*) bits-per-limb mismatch:\n"
73 - << "header gives " << __GMP_BITS_PER_MP_LIMB << ";\n"
74 + << "header gives " << BITS_PER_MP_LIMB << ";\n"
75 << "library gives " << mp_bits_per_limb << ".\n"
76 << "This probably means you are on a bi-arch system and\n"
77 << "you are compiling with the wrong header or linking with\n"
78 @@ -180,3 +201,4 @@
79 dnl We use libtool, therefore we take $LTLIBGMPXX, not $LIBGMPXX.
80 gmp_library_option="$LTLIBGMPXX"
81 ])
82 +
83 --- ppl-0.10.2.orig/m4/lib-ld.m4
84 +++ ppl-0.10.2/m4/lib-ld.m4
85 @@ -1,5 +1,5 @@
86 -# lib-ld.m4 serial 3 (gettext-0.13)
87 -dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
88 +# lib-ld.m4 serial 4 (gettext-0.18)
89 +dnl Copyright (C) 1996-2003, 2009 Free Software Foundation, Inc.
90 dnl This file is free software; the Free Software Foundation
91 dnl gives unlimited permission to copy and/or distribute it,
92 dnl with or without modifications, as long as this notice is preserved.
93 @@ -10,7 +10,7 @@
94
95 dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
96 AC_DEFUN([AC_LIB_PROG_LD_GNU],
97 -[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
98 +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], [acl_cv_prog_gnu_ld],
99 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
100 case `$LD -v 2>&1 </dev/null` in
101 *GNU* | *'with BFD'*)
102 @@ -23,7 +23,7 @@
103
104 dnl From libtool-1.4. Sets the variable LD.
105 AC_DEFUN([AC_LIB_PROG_LD],
106 -[AC_ARG_WITH(gnu-ld,
107 +[AC_ARG_WITH([gnu-ld],
108 [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
109 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
110 AC_REQUIRE([AC_PROG_CC])dnl
111 @@ -77,7 +77,7 @@
112 else
113 AC_MSG_CHECKING([for non-GNU ld])
114 fi
115 -AC_CACHE_VAL(acl_cv_path_LD,
116 +AC_CACHE_VAL([acl_cv_path_LD],
117 [if test -z "$LD"; then
118 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
119 for ac_dir in $PATH; do
120 @@ -101,10 +101,11 @@
121 fi])
122 LD="$acl_cv_path_LD"
123 if test -n "$LD"; then
124 - AC_MSG_RESULT($LD)
125 + AC_MSG_RESULT([$LD])
126 else
127 - AC_MSG_RESULT(no)
128 + AC_MSG_RESULT([no])
129 fi
130 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
131 AC_LIB_PROG_LD_GNU
132 ])
133 +
134 --- ppl-0.10.2.orig/m4/lib-link.m4
135 +++ ppl-0.10.2/m4/lib-link.m4
136 @@ -1,58 +1,66 @@
137 -# lib-link.m4 serial 6 (gettext-0.14.3)
138 -dnl Copyright (C) 2001-2005 Free Software Foundation, Inc.
139 +# lib-link.m4 serial 20 (gettext-0.18)
140 +dnl Copyright (C) 2001-2009 Free Software Foundation, Inc.
141 dnl This file is free software; the Free Software Foundation
142 dnl gives unlimited permission to copy and/or distribute it,
143 dnl with or without modifications, as long as this notice is preserved.
144
145 dnl From Bruno Haible.
146
147 -AC_PREREQ(2.50)
148 +AC_PREREQ([2.54])
149
150 dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
151 dnl the libraries corresponding to explicit and implicit dependencies.
152 dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
153 dnl augments the CPPFLAGS variable.
154 +dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
155 +dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
156 AC_DEFUN([AC_LIB_LINKFLAGS],
157 [
158 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
159 AC_REQUIRE([AC_LIB_RPATH])
160 - define([Name],[translit([$1],[./-], [___])])
161 - define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
162 - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
163 + pushdef([Name],[translit([$1],[./-], [___])])
164 + pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
165 + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
166 AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
167 AC_LIB_LINKFLAGS_BODY([$1], [$2])
168 ac_cv_lib[]Name[]_libs="$LIB[]NAME"
169 ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
170 ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
171 + ac_cv_lib[]Name[]_prefix="$LIB[]NAME[]_PREFIX"
172 ])
173 LIB[]NAME="$ac_cv_lib[]Name[]_libs"
174 LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
175 INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
176 + LIB[]NAME[]_PREFIX="$ac_cv_lib[]Name[]_prefix"
177 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
178 AC_SUBST([LIB]NAME)
179 AC_SUBST([LTLIB]NAME)
180 + AC_SUBST([LIB]NAME[_PREFIX])
181 dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
182 dnl results of this search when this library appears as a dependency.
183 HAVE_LIB[]NAME=yes
184 - undefine([Name])
185 - undefine([NAME])
186 + popdef([NAME])
187 + popdef([Name])
188 ])
189
190 -dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode)
191 +dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode, [missing-message])
192 dnl searches for libname and the libraries corresponding to explicit and
193 dnl implicit dependencies, together with the specified include files and
194 -dnl the ability to compile and link the specified testcode. If found, it
195 -dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
196 -dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
197 +dnl the ability to compile and link the specified testcode. The missing-message
198 +dnl defaults to 'no' and may contain additional hints for the user.
199 +dnl If found, it sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME}
200 +dnl and LTLIB${NAME} variables and augments the CPPFLAGS variable, and
201 dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
202 dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
203 +dnl Sets and AC_SUBSTs the LIB${NAME}_PREFIX variable to nonempty if libname
204 +dnl was found in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
205 AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
206 [
207 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
208 AC_REQUIRE([AC_LIB_RPATH])
209 - define([Name],[translit([$1],[./-], [___])])
210 - define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
211 - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
212 + pushdef([Name],[translit([$1],[./-], [___])])
213 + pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
214 + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
215
216 dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
217 dnl accordingly.
218 @@ -67,12 +75,14 @@
219 AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
220 ac_save_LIBS="$LIBS"
221 LIBS="$LIBS $LIB[]NAME"
222 - AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no])
223 + AC_TRY_LINK([$3], [$4],
224 + [ac_cv_lib[]Name=yes],
225 + [ac_cv_lib[]Name='m4_if([$5], [], [no], [[$5]])'])
226 LIBS="$ac_save_LIBS"
227 ])
228 if test "$ac_cv_lib[]Name" = yes; then
229 HAVE_LIB[]NAME=yes
230 - AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.])
231 + AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the lib][$1 library.])
232 AC_MSG_CHECKING([how to link with lib[]$1])
233 AC_MSG_RESULT([$LIB[]NAME])
234 else
235 @@ -82,17 +92,23 @@
236 CPPFLAGS="$ac_save_CPPFLAGS"
237 LIB[]NAME=
238 LTLIB[]NAME=
239 + LIB[]NAME[]_PREFIX=
240 fi
241 AC_SUBST([HAVE_LIB]NAME)
242 AC_SUBST([LIB]NAME)
243 AC_SUBST([LTLIB]NAME)
244 - undefine([Name])
245 - undefine([NAME])
246 + AC_SUBST([LIB]NAME[_PREFIX])
247 + popdef([NAME])
248 + popdef([Name])
249 ])
250
251 dnl Determine the platform dependent parameters needed to use rpath:
252 -dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
253 -dnl hardcode_direct, hardcode_minus_L.
254 +dnl acl_libext,
255 +dnl acl_shlibext,
256 +dnl acl_hardcode_libdir_flag_spec,
257 +dnl acl_hardcode_libdir_separator,
258 +dnl acl_hardcode_direct,
259 +dnl acl_hardcode_minus_L.
260 AC_DEFUN([AC_LIB_RPATH],
261 [
262 dnl Tell automake >= 1.10 to complain if config.rpath is missing.
263 @@ -101,7 +117,7 @@
264 AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld
265 AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
266 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
267 - AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [
268 + AC_CACHE_CHECK([for shared library run path origin], [acl_cv_rpath], [
269 CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
270 ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
271 . ./conftest.sh
272 @@ -109,34 +125,66 @@
273 acl_cv_rpath=done
274 ])
275 wl="$acl_cv_wl"
276 - libext="$acl_cv_libext"
277 - shlibext="$acl_cv_shlibext"
278 - hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
279 - hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
280 - hardcode_direct="$acl_cv_hardcode_direct"
281 - hardcode_minus_L="$acl_cv_hardcode_minus_L"
282 + acl_libext="$acl_cv_libext"
283 + acl_shlibext="$acl_cv_shlibext"
284 + acl_libname_spec="$acl_cv_libname_spec"
285 + acl_library_names_spec="$acl_cv_library_names_spec"
286 + acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
287 + acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
288 + acl_hardcode_direct="$acl_cv_hardcode_direct"
289 + acl_hardcode_minus_L="$acl_cv_hardcode_minus_L"
290 dnl Determine whether the user wants rpath handling at all.
291 - AC_ARG_ENABLE(rpath,
292 + AC_ARG_ENABLE([rpath],
293 [ --disable-rpath do not hardcode runtime library paths],
294 :, enable_rpath=yes)
295 ])
296
297 +dnl AC_LIB_FROMPACKAGE(name, package)
298 +dnl declares that libname comes from the given package. The configure file
299 +dnl will then not have a --with-libname-prefix option but a
300 +dnl --with-package-prefix option. Several libraries can come from the same
301 +dnl package. This declaration must occur before an AC_LIB_LINKFLAGS or similar
302 +dnl macro call that searches for libname.
303 +AC_DEFUN([AC_LIB_FROMPACKAGE],
304 +[
305 + pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
306 + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
307 + define([acl_frompackage_]NAME, [$2])
308 + popdef([NAME])
309 + pushdef([PACK],[$2])
310 + pushdef([PACKUP],[translit(PACK,[abcdefghijklmnopqrstuvwxyz./-],
311 + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
312 + define([acl_libsinpackage_]PACKUP,
313 + m4_ifdef([acl_libsinpackage_]PACKUP, [acl_libsinpackage_]PACKUP[[, ]],)[lib$1])
314 + popdef([PACKUP])
315 + popdef([PACK])
316 +])
317 +
318 dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
319 dnl the libraries corresponding to explicit and implicit dependencies.
320 dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
321 +dnl Also, sets the LIB${NAME}_PREFIX variable to nonempty if libname was found
322 +dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem.
323 AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
324 [
325 - define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
326 - [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
327 + AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
328 + pushdef([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
329 + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
330 + pushdef([PACK],[m4_ifdef([acl_frompackage_]NAME, [acl_frompackage_]NAME, lib[$1])])
331 + pushdef([PACKUP],[translit(PACK,[abcdefghijklmnopqrstuvwxyz./-],
332 + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
333 + pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PACKUP, lib[$1])])
334 + dnl Autoconf >= 2.61 supports dots in --with options.
335 + pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[translit(PACK,[.],[_])],PACK)])
336 dnl By default, look in $includedir and $libdir.
337 use_additional=yes
338 AC_LIB_WITH_FINAL_PREFIX([
339 eval additional_includedir=\"$includedir\"
340 eval additional_libdir=\"$libdir\"
341 ])
342 - AC_LIB_ARG_WITH([lib$1-prefix],
343 -[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
344 - --without-lib$1-prefix don't search for lib$1 in includedir and libdir],
345 + AC_ARG_WITH(P_A_C_K[-prefix],
346 +[[ --with-]]P_A_C_K[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib
347 + --without-]]P_A_C_K[[-prefix don't search for ]PACKLIBS[ in includedir and libdir]],
348 [
349 if test "X$withval" = "Xno"; then
350 use_additional=no
351 @@ -148,7 +196,11 @@
352 ])
353 else
354 additional_includedir="$withval/include"
355 - additional_libdir="$withval/lib"
356 + additional_libdir="$withval/$acl_libdirstem"
357 + if test "$acl_libdirstem2" != "$acl_libdirstem" \
358 + && ! test -d "$withval/$acl_libdirstem"; then
359 + additional_libdir="$withval/$acl_libdirstem2"
360 + fi
361 fi
362 fi
363 ])
364 @@ -157,6 +209,10 @@
365 LIB[]NAME=
366 LTLIB[]NAME=
367 INC[]NAME=
368 + LIB[]NAME[]_PREFIX=
369 + dnl HAVE_LIB${NAME} is an indicator that LIB${NAME}, LTLIB${NAME} have been
370 + dnl computed. So it has to be reset here.
371 + HAVE_LIB[]NAME=
372 rpathdirs=
373 ltrpathdirs=
374 names_already_handled=
375 @@ -196,22 +252,55 @@
376 found_la=
377 found_so=
378 found_a=
379 + eval libname=\"$acl_libname_spec\" # typically: libname=lib$name
380 + if test -n "$acl_shlibext"; then
381 + shrext=".$acl_shlibext" # typically: shrext=.so
382 + else
383 + shrext=
384 + fi
385 if test $use_additional = yes; then
386 - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
387 - found_dir="$additional_libdir"
388 - found_so="$additional_libdir/lib$name.$shlibext"
389 - if test -f "$additional_libdir/lib$name.la"; then
390 - found_la="$additional_libdir/lib$name.la"
391 - fi
392 - else
393 - if test -f "$additional_libdir/lib$name.$libext"; then
394 - found_dir="$additional_libdir"
395 - found_a="$additional_libdir/lib$name.$libext"
396 - if test -f "$additional_libdir/lib$name.la"; then
397 - found_la="$additional_libdir/lib$name.la"
398 + dir="$additional_libdir"
399 + dnl The same code as in the loop below:
400 + dnl First look for a shared library.
401 + if test -n "$acl_shlibext"; then
402 + if test -f "$dir/$libname$shrext"; then
403 + found_dir="$dir"
404 + found_so="$dir/$libname$shrext"
405 + else
406 + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
407 + ver=`(cd "$dir" && \
408 + for f in "$libname$shrext".*; do echo "$f"; done \
409 + | sed -e "s,^$libname$shrext\\\\.,," \
410 + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
411 + | sed 1q ) 2>/dev/null`
412 + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
413 + found_dir="$dir"
414 + found_so="$dir/$libname$shrext.$ver"
415 + fi
416 + else
417 + eval library_names=\"$acl_library_names_spec\"
418 + for f in $library_names; do
419 + if test -f "$dir/$f"; then
420 + found_dir="$dir"
421 + found_so="$dir/$f"
422 + break
423 + fi
424 + done
425 fi
426 fi
427 fi
428 + dnl Then look for a static library.
429 + if test "X$found_dir" = "X"; then
430 + if test -f "$dir/$libname.$acl_libext"; then
431 + found_dir="$dir"
432 + found_a="$dir/$libname.$acl_libext"
433 + fi
434 + fi
435 + if test "X$found_dir" != "X"; then
436 + if test -f "$dir/$libname.la"; then
437 + found_la="$dir/$libname.la"
438 + fi
439 + fi
440 fi
441 if test "X$found_dir" = "X"; then
442 for x in $LDFLAGS $LTLIB[]NAME; do
443 @@ -219,21 +308,46 @@
444 case "$x" in
445 -L*)
446 dir=`echo "X$x" | sed -e 's/^X-L//'`
447 - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
448 - found_dir="$dir"
449 - found_so="$dir/lib$name.$shlibext"
450 - if test -f "$dir/lib$name.la"; then
451 - found_la="$dir/lib$name.la"
452 - fi
453 - else
454 - if test -f "$dir/lib$name.$libext"; then
455 + dnl First look for a shared library.
456 + if test -n "$acl_shlibext"; then
457 + if test -f "$dir/$libname$shrext"; then
458 found_dir="$dir"
459 - found_a="$dir/lib$name.$libext"
460 - if test -f "$dir/lib$name.la"; then
461 - found_la="$dir/lib$name.la"
462 + found_so="$dir/$libname$shrext"
463 + else
464 + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then
465 + ver=`(cd "$dir" && \
466 + for f in "$libname$shrext".*; do echo "$f"; done \
467 + | sed -e "s,^$libname$shrext\\\\.,," \
468 + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \
469 + | sed 1q ) 2>/dev/null`
470 + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then
471 + found_dir="$dir"
472 + found_so="$dir/$libname$shrext.$ver"
473 + fi
474 + else
475 + eval library_names=\"$acl_library_names_spec\"
476 + for f in $library_names; do
477 + if test -f "$dir/$f"; then
478 + found_dir="$dir"
479 + found_so="$dir/$f"
480 + break
481 + fi
482 + done
483 fi
484 fi
485 fi
486 + dnl Then look for a static library.
487 + if test "X$found_dir" = "X"; then
488 + if test -f "$dir/$libname.$acl_libext"; then
489 + found_dir="$dir"
490 + found_a="$dir/$libname.$acl_libext"
491 + fi
492 + fi
493 + if test "X$found_dir" != "X"; then
494 + if test -f "$dir/$libname.la"; then
495 + found_la="$dir/$libname.la"
496 + fi
497 + fi
498 ;;
499 esac
500 if test "X$found_dir" != "X"; then
501 @@ -248,7 +362,9 @@
502 dnl Linking with a shared library. We attempt to hardcode its
503 dnl directory into the executable's runpath, unless it's the
504 dnl standard /usr/lib.
505 - if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
506 + if test "$enable_rpath" = no \
507 + || test "X$found_dir" = "X/usr/$acl_libdirstem" \
508 + || test "X$found_dir" = "X/usr/$acl_libdirstem2"; then
509 dnl No hardcoding is needed.
510 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
511 else
512 @@ -267,12 +383,12 @@
513 ltrpathdirs="$ltrpathdirs $found_dir"
514 fi
515 dnl The hardcoding into $LIBNAME is system dependent.
516 - if test "$hardcode_direct" = yes; then
517 + if test "$acl_hardcode_direct" = yes; then
518 dnl Using DIR/libNAME.so during linking hardcodes DIR into the
519 dnl resulting binary.
520 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
521 else
522 - if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
523 + if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
524 dnl Use an explicit option to hardcode DIR into the resulting
525 dnl binary.
526 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
527 @@ -303,13 +419,13 @@
528 if test -z "$haveit"; then
529 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
530 fi
531 - if test "$hardcode_minus_L" != no; then
532 + if test "$acl_hardcode_minus_L" != no; then
533 dnl FIXME: Not sure whether we should use
534 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
535 dnl here.
536 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
537 else
538 - dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
539 + dnl We cannot use $acl_hardcode_runpath_var and LD_RUN_PATH
540 dnl here, because this doesn't fit in flags passed to the
541 dnl compiler. So give up. No hardcoding. This affects only
542 dnl very old systems.
543 @@ -334,8 +450,18 @@
544 dnl Assume the include files are nearby.
545 additional_includedir=
546 case "$found_dir" in
547 - */lib | */lib/)
548 - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
549 + */$acl_libdirstem | */$acl_libdirstem/)
550 + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'`
551 + if test "$name" = '$1'; then
552 + LIB[]NAME[]_PREFIX="$basedir"
553 + fi
554 + additional_includedir="$basedir/include"
555 + ;;
556 + */$acl_libdirstem2 | */$acl_libdirstem2/)
557 + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'`
558 + if test "$name" = '$1'; then
559 + LIB[]NAME[]_PREFIX="$basedir"
560 + fi
561 additional_includedir="$basedir/include"
562 ;;
563 esac
564 @@ -396,9 +522,11 @@
565 dnl 3. if it's already present in $LDFLAGS or the already
566 dnl constructed $LIBNAME,
567 dnl 4. if it doesn't exist as a directory.
568 - if test "X$additional_libdir" != "X/usr/lib"; then
569 + if test "X$additional_libdir" != "X/usr/$acl_libdirstem" \
570 + && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then
571 haveit=
572 - if test "X$additional_libdir" = "X/usr/local/lib"; then
573 + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \
574 + || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then
575 if test -n "$GCC"; then
576 case $host_os in
577 linux* | gnu* | k*bsd*-gnu) haveit=yes;;
578 @@ -497,18 +625,18 @@
579 done
580 done
581 if test "X$rpathdirs" != "X"; then
582 - if test -n "$hardcode_libdir_separator"; then
583 + if test -n "$acl_hardcode_libdir_separator"; then
584 dnl Weird platform: only the last -rpath option counts, the user must
585 dnl pass all path elements in one option. We can arrange that for a
586 dnl single library, but not when more than one $LIBNAMEs are used.
587 alldirs=
588 for found_dir in $rpathdirs; do
589 - alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
590 + alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir"
591 done
592 - dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
593 + dnl Note: acl_hardcode_libdir_flag_spec uses $libdir and $wl.
594 acl_save_libdir="$libdir"
595 libdir="$alldirs"
596 - eval flag=\"$hardcode_libdir_flag_spec\"
597 + eval flag=\"$acl_hardcode_libdir_flag_spec\"
598 libdir="$acl_save_libdir"
599 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
600 else
601 @@ -516,7 +644,7 @@
602 for found_dir in $rpathdirs; do
603 acl_save_libdir="$libdir"
604 libdir="$found_dir"
605 - eval flag=\"$hardcode_libdir_flag_spec\"
606 + eval flag=\"$acl_hardcode_libdir_flag_spec\"
607 libdir="$acl_save_libdir"
608 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
609 done
610 @@ -529,6 +657,11 @@
611 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
612 done
613 fi
614 + popdef([P_A_C_K])
615 + popdef([PACKLIBS])
616 + popdef([PACKUP])
617 + popdef([PACK])
618 + popdef([NAME])
619 ])
620
621 dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
622 @@ -551,3 +684,82 @@
623 fi
624 done
625 ])
626 +
627 +dnl For those cases where a variable contains several -L and -l options
628 +dnl referring to unknown libraries and directories, this macro determines the
629 +dnl necessary additional linker options for the runtime path.
630 +dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL])
631 +dnl sets LDADDVAR to linker options needed together with LIBSVALUE.
632 +dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed,
633 +dnl otherwise linking without libtool is assumed.
634 +AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS],
635 +[
636 + AC_REQUIRE([AC_LIB_RPATH])
637 + AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
638 + $1=
639 + if test "$enable_rpath" != no; then
640 + if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then
641 + dnl Use an explicit option to hardcode directories into the resulting
642 + dnl binary.
643 + rpathdirs=
644 + next=
645 + for opt in $2; do
646 + if test -n "$next"; then
647 + dir="$next"
648 + dnl No need to hardcode the standard /usr/lib.
649 + if test "X$dir" != "X/usr/$acl_libdirstem" \
650 + && test "X$dir" != "X/usr/$acl_libdirstem2"; then
651 + rpathdirs="$rpathdirs $dir"
652 + fi
653 + next=
654 + else
655 + case $opt in
656 + -L) next=yes ;;
657 + -L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'`
658 + dnl No need to hardcode the standard /usr/lib.
659 + if test "X$dir" != "X/usr/$acl_libdirstem" \
660 + && test "X$dir" != "X/usr/$acl_libdirstem2"; then
661 + rpathdirs="$rpathdirs $dir"
662 + fi
663 + next= ;;
664 + *) next= ;;
665 + esac
666 + fi
667 + done
668 + if test "X$rpathdirs" != "X"; then
669 + if test -n ""$3""; then
670 + dnl libtool is used for linking. Use -R options.
671 + for dir in $rpathdirs; do
672 + $1="${$1}${$1:+ }-R$dir"
673 + done
674 + else
675 + dnl The linker is used for linking directly.
676 + if test -n "$acl_hardcode_libdir_separator"; then
677 + dnl Weird platform: only the last -rpath option counts, the user
678 + dnl must pass all path elements in one option.
679 + alldirs=
680 + for dir in $rpathdirs; do
681 + alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$dir"
682 + done
683 + acl_save_libdir="$libdir"
684 + libdir="$alldirs"
685 + eval flag=\"$acl_hardcode_libdir_flag_spec\"
686 + libdir="$acl_save_libdir"
687 + $1="$flag"
688 + else
689 + dnl The -rpath options are cumulative.
690 + for dir in $rpathdirs; do
691 + acl_save_libdir="$libdir"
692 + libdir="$dir"
693 + eval flag=\"$acl_hardcode_libdir_flag_spec\"
694 + libdir="$acl_save_libdir"
695 + $1="${$1}${$1:+ }$flag"
696 + done
697 + fi
698 + fi
699 + fi
700 + fi
701 + fi
702 + AC_SUBST([$1])
703 +])
704 +
705 --- ppl-0.10.2.orig/m4/lib-prefix.m4
706 +++ ppl-0.10.2/m4/lib-prefix.m4
707 @@ -1,5 +1,5 @@
708 -# lib-prefix.m4 serial 4 (gettext-0.14.2)
709 -dnl Copyright (C) 2001-2005 Free Software Foundation, Inc.
710 +# lib-prefix.m4 serial 7 (gettext-0.18)
711 +dnl Copyright (C) 2001-2005, 2008-2009 Free Software Foundation, Inc.
712 dnl This file is free software; the Free Software Foundation
713 dnl gives unlimited permission to copy and/or distribute it,
714 dnl with or without modifications, as long as this notice is preserved.
715 @@ -24,6 +24,7 @@
716 AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
717 AC_REQUIRE([AC_PROG_CC])
718 AC_REQUIRE([AC_CANONICAL_HOST])
719 + AC_REQUIRE([AC_LIB_PREPARE_MULTILIB])
720 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
721 dnl By default, look in $includedir and $libdir.
722 use_additional=yes
723 @@ -45,7 +46,7 @@
724 ])
725 else
726 additional_includedir="$withval/include"
727 - additional_libdir="$withval/lib"
728 + additional_libdir="$withval/$acl_libdirstem"
729 fi
730 fi
731 ])
732 @@ -87,7 +88,7 @@
733 dnl 2. if it's already present in $LDFLAGS,
734 dnl 3. if it's /usr/local/lib and we are using GCC on Linux,
735 dnl 4. if it doesn't exist as a directory.
736 - if test "X$additional_libdir" != "X/usr/lib"; then
737 + if test "X$additional_libdir" != "X/usr/$acl_libdirstem"; then
738 haveit=
739 for x in $LDFLAGS; do
740 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
741 @@ -97,7 +98,7 @@
742 fi
743 done
744 if test -z "$haveit"; then
745 - if test "X$additional_libdir" = "X/usr/local/lib"; then
746 + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem"; then
747 if test -n "$GCC"; then
748 case $host_os in
749 linux*) haveit=yes;;
750 @@ -151,3 +152,74 @@
751 exec_prefix="$acl_save_exec_prefix"
752 prefix="$acl_save_prefix"
753 ])
754 +
755 +dnl AC_LIB_PREPARE_MULTILIB creates
756 +dnl - a variable acl_libdirstem, containing the basename of the libdir, either
757 +dnl "lib" or "lib64" or "lib/64",
758 +dnl - a variable acl_libdirstem2, as a secondary possible value for
759 +dnl acl_libdirstem, either the same as acl_libdirstem or "lib/sparcv9" or
760 +dnl "lib/amd64".
761 +AC_DEFUN([AC_LIB_PREPARE_MULTILIB],
762 +[
763 + dnl There is no formal standard regarding lib and lib64.
764 + dnl On glibc systems, the current practice is that on a system supporting
765 + dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under
766 + dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. We determine
767 + dnl the compiler's default mode by looking at the compiler's library search
768 + dnl path. If at least one of its elements ends in /lib64 or points to a
769 + dnl directory whose absolute pathname ends in /lib64, we assume a 64-bit ABI.
770 + dnl Otherwise we use the default, namely "lib".
771 + dnl On Solaris systems, the current practice is that on a system supporting
772 + dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under
773 + dnl $prefix/lib/64 (which is a symlink to either $prefix/lib/sparcv9 or
774 + dnl $prefix/lib/amd64) and 32-bit libraries go under $prefix/lib.
775 + AC_REQUIRE([AC_CANONICAL_HOST])
776 + acl_libdirstem=lib
777 + acl_libdirstem2=
778 + case "$host_os" in
779 + solaris*)
780 + dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment
781 + dnl <http://docs.sun.com/app/docs/doc/816-5138/dev-env?l=en&a=view>.
782 + dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link."
783 + dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the
784 + dnl symlink is missing, so we set acl_libdirstem2 too.
785 + AC_CACHE_CHECK([for 64-bit host], [gl_cv_solaris_64bit],
786 + [AC_EGREP_CPP([sixtyfour bits], [
787 +#ifdef _LP64
788 +sixtyfour bits
789 +#endif
790 + ], [gl_cv_solaris_64bit=yes], [gl_cv_solaris_64bit=no])
791 + ])
792 + if test $gl_cv_solaris_64bit = yes; then
793 + acl_libdirstem=lib/64
794 + case "$host_cpu" in
795 + sparc*) acl_libdirstem2=lib/sparcv9 ;;
796 + i*86 | x86_64) acl_libdirstem2=lib/amd64 ;;
797 + esac
798 + fi
799 + ;;
800 + *)
801 + searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'`
802 + if test -n "$searchpath"; then
803 + acl_save_IFS="${IFS= }"; IFS=":"
804 + for searchdir in $searchpath; do
805 + if test -d "$searchdir"; then
806 + case "$searchdir" in
807 + */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
808 + */../ | */.. )
809 + # Better ignore directories of this form. They are misleading.
810 + ;;
811 + *) searchdir=`cd "$searchdir" && pwd`
812 + case "$searchdir" in
813 + */lib64 ) acl_libdirstem=lib64 ;;
814 + esac ;;
815 + esac
816 + fi
817 + done
818 + IFS="$acl_save_IFS"
819 + fi
820 + ;;
821 + esac
822 + test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem"
823 +])
824 +