~nathwill-deactivatedaccount-deactivatedaccount/ubuntu/precise/pam/lp-110287

332 by kukuk
Relevant BUGIDs: none
1
#! /bin/sh
2
# Output a system dependent set of variables, describing how to set the
3
# run time search path of shared libraries in an executable.
4
#
620 by kukuk
Relevant BUGIDs:
5
#   Copyright 1996-2006 Free Software Foundation, Inc.
332 by kukuk
Relevant BUGIDs: none
6
#   Taken from GNU libtool, 2001
7
#   Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
8
#
9
#   This file is free software; the Free Software Foundation gives
10
#   unlimited permission to copy and/or distribute it, with or without
11
#   modifications, as long as this notice is preserved.
12
#
13
# The first argument passed to this file is the canonical host specification,
14
#    CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
15
# or
16
#    CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
17
# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld
18
# should be set by the caller.
19
#
20
# The set of defined variables is at the end of this script.
21
22
# Known limitations:
23
# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer
24
#   than 256 bytes, otherwise the compiler driver will dump core. The only
25
#   known workaround is to choose shorter directory names for the build
26
#   directory and/or the installation directory.
27
620 by kukuk
Relevant BUGIDs:
28
# All known linkers require a `.a' archive for static linking (except MSVC,
332 by kukuk
Relevant BUGIDs: none
29
# which needs '.lib').
30
libext=a
31
shrext=.so
32
33
host="$1"
34
host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
35
host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
36
host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
37
620 by kukuk
Relevant BUGIDs:
38
# Code taken from libtool.m4's _LT_CC_BASENAME.
39
40
for cc_temp in $CC""; do
41
  case $cc_temp in
42
    compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
43
    distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
44
    \-*) ;;
45
    *) break;;
46
  esac
47
done
48
cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
332 by kukuk
Relevant BUGIDs: none
49
50
# Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC.
51
52
wl=
53
if test "$GCC" = yes; then
54
  wl='-Wl,'
55
else
56
  case "$host_os" in
57
    aix*)
58
      wl='-Wl,'
59
      ;;
60
    darwin*)
620 by kukuk
Relevant BUGIDs:
61
      case $cc_basename in
332 by kukuk
Relevant BUGIDs: none
62
        xlc*)
63
          wl='-Wl,'
64
          ;;
65
      esac
66
      ;;
67
    mingw* | pw32* | os2*)
68
      ;;
69
    hpux9* | hpux10* | hpux11*)
70
      wl='-Wl,'
71
      ;;
72
    irix5* | irix6* | nonstopux*)
73
      wl='-Wl,'
74
      ;;
75
    newsos6)
76
      ;;
77
    linux*)
78
      case $cc_basename in
79
        icc* | ecc*)
80
          wl='-Wl,'
81
          ;;
82
        pgcc | pgf77 | pgf90)
83
          wl='-Wl,'
84
          ;;
85
        ccc*)
86
          wl='-Wl,'
87
          ;;
88
        como)
89
          wl='-lopt='
90
          ;;
620 by kukuk
Relevant BUGIDs:
91
        *)
92
          case `$CC -V 2>&1 | sed 5q` in
93
            *Sun\ C*)
94
              wl='-Wl,'
95
              ;;
96
          esac
97
          ;;
332 by kukuk
Relevant BUGIDs: none
98
      esac
99
      ;;
100
    osf3* | osf4* | osf5*)
101
      wl='-Wl,'
102
      ;;
103
    sco3.2v5*)
104
      ;;
105
    solaris*)
106
      wl='-Wl,'
107
      ;;
108
    sunos4*)
109
      wl='-Qoption ld '
110
      ;;
111
    sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
112
      wl='-Wl,'
113
      ;;
114
    sysv4*MP*)
115
      ;;
116
    unicos*)
117
      wl='-Wl,'
118
      ;;
119
    uts4*)
120
      ;;
121
  esac
122
fi
123
124
# Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS.
125
126
hardcode_libdir_flag_spec=
127
hardcode_libdir_separator=
128
hardcode_direct=no
129
hardcode_minus_L=no
130
131
case "$host_os" in
132
  cygwin* | mingw* | pw32*)
133
    # FIXME: the MSVC++ port hasn't been tested in a loooong time
134
    # When not using gcc, we currently assume that we are using
135
    # Microsoft Visual C++.
136
    if test "$GCC" != yes; then
137
      with_gnu_ld=no
138
    fi
139
    ;;
620 by kukuk
Relevant BUGIDs:
140
  interix*)
141
    # we just hope/assume this is gcc and not c89 (= MSVC++)
142
    with_gnu_ld=yes
143
    ;;
332 by kukuk
Relevant BUGIDs: none
144
  openbsd*)
145
    with_gnu_ld=no
146
    ;;
147
esac
148
149
ld_shlibs=yes
150
if test "$with_gnu_ld" = yes; then
620 by kukuk
Relevant BUGIDs:
151
  # Set some defaults for GNU ld with shared library support. These
152
  # are reset later if shared libraries are not supported. Putting them
153
  # here allows them to be overridden if necessary.
154
  # Unlike libtool, we use -rpath here, not --rpath, since the documented
155
  # option of GNU ld is called -rpath, not --rpath.
156
  hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
332 by kukuk
Relevant BUGIDs: none
157
  case "$host_os" in
158
    aix3* | aix4* | aix5*)
159
      # On AIX/PPC, the GNU linker is very broken
160
      if test "$host_cpu" != ia64; then
161
        ld_shlibs=no
162
      fi
163
      ;;
164
    amigaos*)
165
      hardcode_libdir_flag_spec='-L$libdir'
166
      hardcode_minus_L=yes
167
      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
168
      # that the semantics of dynamic libraries on AmigaOS, at least up
169
      # to version 4, is to share data among multiple programs linked
170
      # with the same dynamic library.  Since this doesn't match the
171
      # behavior of shared libraries on other platforms, we cannot use
172
      # them.
173
      ld_shlibs=no
174
      ;;
175
    beos*)
176
      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
177
        :
178
      else
179
        ld_shlibs=no
180
      fi
181
      ;;
182
    cygwin* | mingw* | pw32*)
183
      # hardcode_libdir_flag_spec is actually meaningless, as there is
184
      # no search path for DLLs.
185
      hardcode_libdir_flag_spec='-L$libdir'
186
      if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
187
        :
188
      else
189
        ld_shlibs=no
190
      fi
191
      ;;
620 by kukuk
Relevant BUGIDs:
192
    interix3*)
193
      hardcode_direct=no
194
      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
195
      ;;
196
    linux*)
197
      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
198
        :
199
      else
200
        ld_shlibs=no
201
      fi
202
      ;;
332 by kukuk
Relevant BUGIDs: none
203
    netbsd*)
204
      ;;
620 by kukuk
Relevant BUGIDs:
205
    solaris*)
332 by kukuk
Relevant BUGIDs: none
206
      if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
207
        ld_shlibs=no
208
      elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
209
        :
210
      else
211
        ld_shlibs=no
212
      fi
213
      ;;
620 by kukuk
Relevant BUGIDs:
214
    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
215
      case `$LD -v 2>&1` in
216
        *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
217
          ld_shlibs=no
218
          ;;
219
        *)
220
          if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
221
            hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
222
          else
223
            ld_shlibs=no
224
          fi
225
          ;;
226
      esac
227
      ;;
332 by kukuk
Relevant BUGIDs: none
228
    sunos4*)
229
      hardcode_direct=yes
230
      ;;
231
    *)
232
      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
233
        :
234
      else
235
        ld_shlibs=no
236
      fi
237
      ;;
238
  esac
620 by kukuk
Relevant BUGIDs:
239
  if test "$ld_shlibs" = no; then
240
    hardcode_libdir_flag_spec=
332 by kukuk
Relevant BUGIDs: none
241
  fi
242
else
243
  case "$host_os" in
244
    aix3*)
245
      # Note: this linker hardcodes the directories in LIBPATH if there
246
      # are no directories specified by -L.
247
      hardcode_minus_L=yes
248
      if test "$GCC" = yes; then
249
        # Neither direct hardcoding nor static linking is supported with a
250
        # broken collect2.
251
        hardcode_direct=unsupported
252
      fi
253
      ;;
254
    aix4* | aix5*)
255
      if test "$host_cpu" = ia64; then
256
        # On IA64, the linker does run time linking by default, so we don't
257
        # have to do anything special.
258
        aix_use_runtimelinking=no
259
      else
260
        aix_use_runtimelinking=no
261
        # Test if we are trying to use run time linking or normal
262
        # AIX style linking. If -brtl is somewhere in LDFLAGS, we
263
        # need to do runtime linking.
264
        case $host_os in aix4.[23]|aix4.[23].*|aix5*)
265
          for ld_flag in $LDFLAGS; do
266
            if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
267
              aix_use_runtimelinking=yes
268
              break
269
            fi
270
          done
620 by kukuk
Relevant BUGIDs:
271
          ;;
332 by kukuk
Relevant BUGIDs: none
272
        esac
273
      fi
274
      hardcode_direct=yes
275
      hardcode_libdir_separator=':'
276
      if test "$GCC" = yes; then
277
        case $host_os in aix4.[012]|aix4.[012].*)
278
          collect2name=`${CC} -print-prog-name=collect2`
279
          if test -f "$collect2name" && \
280
            strings "$collect2name" | grep resolve_lib_name >/dev/null
281
          then
282
            # We have reworked collect2
283
            hardcode_direct=yes
284
          else
285
            # We have old collect2
286
            hardcode_direct=unsupported
287
            hardcode_minus_L=yes
288
            hardcode_libdir_flag_spec='-L$libdir'
289
            hardcode_libdir_separator=
290
          fi
620 by kukuk
Relevant BUGIDs:
291
          ;;
332 by kukuk
Relevant BUGIDs: none
292
        esac
293
      fi
294
      # Begin _LT_AC_SYS_LIBPATH_AIX.
295
      echo 'int main () { return 0; }' > conftest.c
296
      ${CC} ${LDFLAGS} conftest.c -o conftest
297
      aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
298
}'`
299
      if test -z "$aix_libpath"; then
300
        aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
301
}'`
302
      fi
303
      if test -z "$aix_libpath"; then
304
        aix_libpath="/usr/lib:/lib"
305
      fi
306
      rm -f conftest.c conftest
307
      # End _LT_AC_SYS_LIBPATH_AIX.
308
      if test "$aix_use_runtimelinking" = yes; then
309
        hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
310
      else
311
        if test "$host_cpu" = ia64; then
312
          hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
313
        else
314
          hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath"
315
        fi
316
      fi
317
      ;;
318
    amigaos*)
319
      hardcode_libdir_flag_spec='-L$libdir'
320
      hardcode_minus_L=yes
321
      # see comment about different semantics on the GNU ld section
322
      ld_shlibs=no
323
      ;;
324
    bsdi[45]*)
325
      ;;
326
    cygwin* | mingw* | pw32*)
327
      # When not using gcc, we currently assume that we are using
328
      # Microsoft Visual C++.
329
      # hardcode_libdir_flag_spec is actually meaningless, as there is
330
      # no search path for DLLs.
331
      hardcode_libdir_flag_spec=' '
332
      libext=lib
333
      ;;
334
    darwin* | rhapsody*)
335
      hardcode_direct=no
336
      if test "$GCC" = yes ; then
337
        :
338
      else
620 by kukuk
Relevant BUGIDs:
339
        case $cc_basename in
332 by kukuk
Relevant BUGIDs: none
340
          xlc*)
341
            ;;
342
          *)
343
            ld_shlibs=no
344
            ;;
345
        esac
346
      fi
347
      ;;
348
    dgux*)
349
      hardcode_libdir_flag_spec='-L$libdir'
350
      ;;
351
    freebsd1*)
352
      ld_shlibs=no
353
      ;;
354
    freebsd2.2*)
355
      hardcode_libdir_flag_spec='-R$libdir'
356
      hardcode_direct=yes
357
      ;;
358
    freebsd2*)
359
      hardcode_direct=yes
360
      hardcode_minus_L=yes
361
      ;;
362
    freebsd* | kfreebsd*-gnu | dragonfly*)
363
      hardcode_libdir_flag_spec='-R$libdir'
364
      hardcode_direct=yes
365
      ;;
366
    hpux9*)
367
      hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
368
      hardcode_libdir_separator=:
369
      hardcode_direct=yes
370
      # hardcode_minus_L: Not really in the search PATH,
371
      # but as the default location of the library.
372
      hardcode_minus_L=yes
373
      ;;
620 by kukuk
Relevant BUGIDs:
374
    hpux10*)
375
      if test "$with_gnu_ld" = no; then
376
        hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
377
        hardcode_libdir_separator=:
378
        hardcode_direct=yes
379
        # hardcode_minus_L: Not really in the search PATH,
380
        # but as the default location of the library.
381
        hardcode_minus_L=yes
382
      fi
383
      ;;
384
    hpux11*)
385
      if test "$with_gnu_ld" = no; then
386
        hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
387
        hardcode_libdir_separator=:
388
        case $host_cpu in
389
          hppa*64*|ia64*)
390
            hardcode_direct=no
332 by kukuk
Relevant BUGIDs: none
391
            ;;
392
          *)
393
            hardcode_direct=yes
394
            # hardcode_minus_L: Not really in the search PATH,
395
            # but as the default location of the library.
396
            hardcode_minus_L=yes
397
            ;;
398
        esac
399
      fi
400
      ;;
401
    irix5* | irix6* | nonstopux*)
402
      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
403
      hardcode_libdir_separator=:
404
      ;;
405
    netbsd*)
406
      hardcode_libdir_flag_spec='-R$libdir'
407
      hardcode_direct=yes
408
      ;;
409
    newsos6)
410
      hardcode_direct=yes
411
      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
412
      hardcode_libdir_separator=:
413
      ;;
414
    openbsd*)
415
      hardcode_direct=yes
416
      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
417
        hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
418
      else
419
        case "$host_os" in
420
          openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
421
            hardcode_libdir_flag_spec='-R$libdir'
422
            ;;
423
          *)
424
            hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
425
            ;;
426
        esac
427
      fi
428
      ;;
429
    os2*)
430
      hardcode_libdir_flag_spec='-L$libdir'
431
      hardcode_minus_L=yes
432
      ;;
433
    osf3*)
434
      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
435
      hardcode_libdir_separator=:
436
      ;;
437
    osf4* | osf5*)
438
      if test "$GCC" = yes; then
439
        hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
440
      else
441
        # Both cc and cxx compiler support -rpath directly
442
        hardcode_libdir_flag_spec='-rpath $libdir'
443
      fi
444
      hardcode_libdir_separator=:
445
      ;;
446
    solaris*)
447
      hardcode_libdir_flag_spec='-R$libdir'
448
      ;;
449
    sunos4*)
450
      hardcode_libdir_flag_spec='-L$libdir'
451
      hardcode_direct=yes
452
      hardcode_minus_L=yes
453
      ;;
454
    sysv4)
455
      case $host_vendor in
456
        sni)
457
          hardcode_direct=yes # is this really true???
458
          ;;
459
        siemens)
460
          hardcode_direct=no
461
          ;;
462
        motorola)
463
          hardcode_direct=no #Motorola manual says yes, but my tests say they lie
464
          ;;
465
      esac
466
      ;;
467
    sysv4.3*)
468
      ;;
469
    sysv4*MP*)
470
      if test -d /usr/nec; then
471
        ld_shlibs=yes
472
      fi
473
      ;;
620 by kukuk
Relevant BUGIDs:
474
    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7*)
475
      ;;
476
    sysv5* | sco3.2v5* | sco5v6*)
477
      hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
478
      hardcode_libdir_separator=':'
332 by kukuk
Relevant BUGIDs: none
479
      ;;
480
    uts4*)
481
      hardcode_libdir_flag_spec='-L$libdir'
482
      ;;
483
    *)
484
      ld_shlibs=no
485
      ;;
486
  esac
487
fi
488
489
# Check dynamic linker characteristics
490
# Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER.
491
libname_spec='lib$name'
492
case "$host_os" in
493
  aix3*)
494
    ;;
495
  aix4* | aix5*)
496
    ;;
497
  amigaos*)
498
    ;;
499
  beos*)
500
    ;;
501
  bsdi[45]*)
502
    ;;
503
  cygwin* | mingw* | pw32*)
504
    shrext=.dll
505
    ;;
506
  darwin* | rhapsody*)
507
    shrext=.dylib
508
    ;;
509
  dgux*)
510
    ;;
511
  freebsd1*)
512
    ;;
513
  kfreebsd*-gnu)
514
    ;;
620 by kukuk
Relevant BUGIDs:
515
  freebsd* | dragonfly*)
332 by kukuk
Relevant BUGIDs: none
516
    ;;
517
  gnu*)
518
    ;;
519
  hpux9* | hpux10* | hpux11*)
620 by kukuk
Relevant BUGIDs:
520
    case $host_cpu in
332 by kukuk
Relevant BUGIDs: none
521
      ia64*)
522
        shrext=.so
523
        ;;
524
      hppa*64*)
525
        shrext=.sl
526
        ;;
527
      *)
528
        shrext=.sl
529
        ;;
530
    esac
531
    ;;
620 by kukuk
Relevant BUGIDs:
532
  interix3*)
533
    ;;
332 by kukuk
Relevant BUGIDs: none
534
  irix5* | irix6* | nonstopux*)
535
    case "$host_os" in
536
      irix5* | nonstopux*)
537
        libsuff= shlibsuff=
538
        ;;
539
      *)
540
        case $LD in
541
          *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;;
542
          *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;;
543
          *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;;
544
          *) libsuff= shlibsuff= ;;
545
        esac
546
        ;;
547
    esac
548
    ;;
549
  linux*oldld* | linux*aout* | linux*coff*)
550
    ;;
551
  linux*)
552
    ;;
553
  knetbsd*-gnu)
554
    ;;
555
  netbsd*)
556
    ;;
557
  newsos6)
558
    ;;
559
  nto-qnx*)
560
    ;;
561
  openbsd*)
562
    ;;
563
  os2*)
564
    libname_spec='$name'
565
    shrext=.dll
566
    ;;
567
  osf3* | osf4* | osf5*)
568
    ;;
569
  solaris*)
570
    ;;
571
  sunos4*)
572
    ;;
620 by kukuk
Relevant BUGIDs:
573
  sysv4 | sysv4.3*)
332 by kukuk
Relevant BUGIDs: none
574
    ;;
575
  sysv4*MP*)
576
    ;;
620 by kukuk
Relevant BUGIDs:
577
  sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
578
    ;;
332 by kukuk
Relevant BUGIDs: none
579
  uts4*)
580
    ;;
581
esac
582
583
sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
584
escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
585
shlibext=`echo "$shrext" | sed -e 's,^\.,,'`
586
escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
587
588
LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
589
590
# How to pass a linker flag through the compiler.
591
wl="$escaped_wl"
592
593
# Static library suffix (normally "a").
594
libext="$libext"
595
596
# Shared library suffix (normally "so").
597
shlibext="$shlibext"
598
599
# Flag to hardcode \$libdir into a binary during linking.
600
# This must work even if \$libdir does not exist.
601
hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
602
603
# Whether we need a single -rpath flag with a separated argument.
604
hardcode_libdir_separator="$hardcode_libdir_separator"
605
606
# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
607
# resulting binary.
608
hardcode_direct="$hardcode_direct"
609
610
# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
611
# resulting binary.
612
hardcode_minus_L="$hardcode_minus_L"
613
614
EOF