ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/gvpe/config.rpath
Revision: 1.1
Committed: Sat Mar 22 21:09:35 2003 UTC (21 years, 7 months ago) by pcg
Branch: MAIN
CVS Tags: poll-based-iom, VPE_0_9, VPE_1_2, VPE_1_4, VPE_1_6, rel-1_7, VPE-1_6_1, VPE_1_0
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 pcg 1.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     #
5     # Copyright 1996-2002 Free Software Foundation, Inc.
6     # Taken from GNU libtool, 2001
7     # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
8     #
9     # This program is free software; you can redistribute it and/or modify
10     # it under the terms of the GNU General Public License as published by
11     # the Free Software Foundation; either version 2 of the License, or
12     # (at your option) any later version.
13     #
14     # This program is distributed in the hope that it will be useful, but
15     # WITHOUT ANY WARRANTY; without even the implied warranty of
16     # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17     # General Public License for more details.
18     #
19     # You should have received a copy of the GNU General Public License
20     # along with this program; if not, write to the Free Software
21     # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22     #
23     # As a special exception to the GNU General Public License, if you
24     # distribute this file as part of a program that contains a
25     # configuration script generated by Autoconf, you may include it under
26     # the same distribution terms that you use for the rest of that program.
27     #
28     # The first argument passed to this file is the canonical host specification,
29     # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
30     # or
31     # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
32     # The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld
33     # should be set by the caller.
34     #
35     # The set of defined variables is at the end of this script.
36    
37     # All known linkers require a `.a' archive for static linking (except M$VC,
38     # which needs '.lib').
39     libext=a
40     shlibext=
41    
42     host="$1"
43     host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
44     host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
45     host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
46    
47     wl=
48     if test "$GCC" = yes; then
49     wl='-Wl,'
50     else
51     case "$host_os" in
52     aix3* | aix4* | aix5*)
53     wl='-Wl,'
54     ;;
55     hpux9* | hpux10* | hpux11*)
56     wl='-Wl,'
57     ;;
58     irix5* | irix6*)
59     wl='-Wl,'
60     ;;
61     linux*)
62     echo '__INTEL_COMPILER' > conftest.$ac_ext
63     if $CC -E conftest.$ac_ext >/dev/null | grep __INTEL_COMPILER >/dev/null
64     then
65     :
66     else
67     # Intel icc
68     wl='-Qoption,ld,'
69     fi
70     ;;
71     osf3* | osf4* | osf5*)
72     wl='-Wl,'
73     ;;
74     solaris*)
75     wl='-Wl,'
76     ;;
77     sunos4*)
78     wl='-Qoption ld '
79     ;;
80     sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
81     if test "x$host_vendor" = xsni; then
82     wl='-LD'
83     else
84     wl='-Wl,'
85     fi
86     ;;
87     esac
88     fi
89    
90     hardcode_libdir_flag_spec=
91     hardcode_libdir_separator=
92     hardcode_direct=no
93     hardcode_minus_L=no
94    
95     case "$host_os" in
96     cygwin* | mingw* | pw32*)
97     # FIXME: the MSVC++ port hasn't been tested in a loooong time
98     # When not using gcc, we currently assume that we are using
99     # Microsoft Visual C++.
100     if test "$GCC" != yes; then
101     with_gnu_ld=no
102     fi
103     ;;
104     openbsd*)
105     with_gnu_ld=no
106     ;;
107     esac
108    
109     ld_shlibs=yes
110     if test "$with_gnu_ld" = yes; then
111     case "$host_os" in
112     aix3* | aix4* | aix5*)
113     # On AIX, the GNU linker is very broken
114     ld_shlibs=no
115     ;;
116     amigaos*)
117     hardcode_libdir_flag_spec='-L$libdir'
118     hardcode_minus_L=yes
119     # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
120     # that the semantics of dynamic libraries on AmigaOS, at least up
121     # to version 4, is to share data among multiple programs linked
122     # with the same dynamic library. Since this doesn't match the
123     # behavior of shared libraries on other platforms, we can use
124     # them.
125     ld_shlibs=no
126     ;;
127     beos*)
128     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
129     :
130     else
131     ld_shlibs=no
132     fi
133     ;;
134     cygwin* | mingw* | pw32*)
135     # hardcode_libdir_flag_spec is actually meaningless, as there is
136     # no search path for DLLs.
137     hardcode_libdir_flag_spec='-L$libdir'
138     ;;
139     solaris* | sysv5*)
140     if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
141     ld_shlibs=no
142     elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
143     :
144     else
145     ld_shlibs=no
146     fi
147     ;;
148     sunos4*)
149     hardcode_direct=yes
150     ;;
151     *)
152     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
153     :
154     else
155     ld_shlibs=no
156     fi
157     ;;
158     esac
159     if test "$ld_shlibs" = yes; then
160     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
161     fi
162     else
163     case "$host_os" in
164     aix3*)
165     # Note: this linker hardcodes the directories in LIBPATH if there
166     # are no directories specified by -L.
167     hardcode_minus_L=yes
168     if test "$GCC" = yes; then
169     # Neither direct hardcoding nor static linking is supported with a
170     # broken collect2.
171     hardcode_direct=unsupported
172     fi
173     ;;
174     aix4* | aix5*)
175     if test "$host_cpu" = ia64; then
176     # On IA64, the linker does run time linking by default, so we don't
177     # have to do anything special.
178     aix_use_runtimelinking=no
179     else
180     aix_use_runtimelinking=no
181     # Test if we are trying to use run time linking or normal
182     # AIX style linking. If -brtl is somewhere in LDFLAGS, we
183     # need to do runtime linking.
184     case $host_os in aix4.[23]|aix4.[23].*|aix5*)
185     for ld_flag in $LDFLAGS; do
186     if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
187     aix_use_runtimelinking=yes
188     break
189     fi
190     done
191     esac
192     fi
193     hardcode_direct=yes
194     hardcode_libdir_separator=':'
195     if test "$GCC" = yes; then
196     case $host_os in aix4.[012]|aix4.[012].*)
197     collect2name=`${CC} -print-prog-name=collect2`
198     if test -f "$collect2name" && \
199     strings "$collect2name" | grep resolve_lib_name >/dev/null
200     then
201     # We have reworked collect2
202     hardcode_direct=yes
203     else
204     # We have old collect2
205     hardcode_direct=unsupported
206     hardcode_minus_L=yes
207     hardcode_libdir_flag_spec='-L$libdir'
208     hardcode_libdir_separator=
209     fi
210     esac
211     fi
212     if test "$aix_use_runtimelinking" = yes; then
213     hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
214     else
215     if test "$host_cpu" = ia64; then
216     hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
217     else
218     hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
219     fi
220     fi
221     ;;
222     amigaos*)
223     hardcode_libdir_flag_spec='-L$libdir'
224     hardcode_minus_L=yes
225     # see comment about different semantics on the GNU ld section
226     ld_shlibs=no
227     ;;
228     cygwin* | mingw* | pw32*)
229     # When not using gcc, we currently assume that we are using
230     # Microsoft Visual C++.
231     # hardcode_libdir_flag_spec is actually meaningless, as there is
232     # no search path for DLLs.
233     hardcode_libdir_flag_spec=' '
234     libext=lib
235     ;;
236     darwin* | rhapsody*)
237     hardcode_direct=yes
238     ;;
239     freebsd1*)
240     ld_shlibs=no
241     ;;
242     freebsd2.2*)
243     hardcode_libdir_flag_spec='-R$libdir'
244     hardcode_direct=yes
245     ;;
246     freebsd2*)
247     hardcode_direct=yes
248     hardcode_minus_L=yes
249     ;;
250     freebsd*)
251     hardcode_libdir_flag_spec='-R$libdir'
252     hardcode_direct=yes
253     ;;
254     hpux9* | hpux10* | hpux11*)
255     hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
256     hardcode_libdir_separator=:
257     hardcode_direct=yes
258     hardcode_minus_L=yes # Not in the search PATH, but as the default
259     # location of the library.
260     ;;
261     irix5* | irix6*)
262     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
263     hardcode_libdir_separator=:
264     ;;
265     netbsd*)
266     hardcode_libdir_flag_spec='-R$libdir'
267     hardcode_direct=yes
268     ;;
269     newsos6)
270     hardcode_direct=yes
271     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
272     hardcode_libdir_separator=:
273     ;;
274     openbsd*)
275     hardcode_direct=yes
276     if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
277     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
278     else
279     case "$host_os" in
280     openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
281     hardcode_libdir_flag_spec='-R$libdir'
282     ;;
283     *)
284     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
285     ;;
286     esac
287     fi
288     ;;
289     os2*)
290     hardcode_libdir_flag_spec='-L$libdir'
291     hardcode_minus_L=yes
292     ;;
293     osf3*)
294     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
295     hardcode_libdir_separator=:
296     ;;
297     osf4* | osf5*)
298     if test "$GCC" = yes; then
299     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
300     else
301     # Both cc and cxx compiler support -rpath directly
302     hardcode_libdir_flag_spec='-rpath $libdir'
303     fi
304     hardcode_libdir_separator=:
305     ;;
306     sco3.2v5*)
307     ;;
308     solaris*)
309     hardcode_libdir_flag_spec='-R$libdir'
310     ;;
311     sunos4*)
312     hardcode_libdir_flag_spec='-L$libdir'
313     hardcode_direct=yes
314     hardcode_minus_L=yes
315     ;;
316     sysv4)
317     if test "x$host_vendor" = xsno; then
318     hardcode_direct=yes # is this really true???
319     else
320     hardcode_direct=no # Motorola manual says yes, but my tests say they lie
321     fi
322     ;;
323     sysv4.3*)
324     ;;
325     sysv5*)
326     hardcode_libdir_flag_spec=
327     ;;
328     uts4*)
329     hardcode_libdir_flag_spec='-L$libdir'
330     ;;
331     dgux*)
332     hardcode_libdir_flag_spec='-L$libdir'
333     ;;
334     sysv4*MP*)
335     if test -d /usr/nec; then
336     ld_shlibs=yes
337     fi
338     ;;
339     sysv4.2uw2*)
340     hardcode_direct=yes
341     hardcode_minus_L=no
342     ;;
343     sysv5uw7* | unixware7*)
344     ;;
345     *)
346     ld_shlibs=no
347     ;;
348     esac
349     fi
350    
351     # Check dynamic linker characteristics
352     libname_spec='lib$name'
353     sys_lib_dlsearch_path_spec="/lib /usr/lib"
354     sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
355     case "$host_os" in
356     aix3*)
357     shlibext=so
358     ;;
359     aix4* | aix5*)
360     shlibext=so
361     ;;
362     amigaos*)
363     shlibext=ixlibrary
364     ;;
365     beos*)
366     shlibext=so
367     ;;
368     bsdi4*)
369     shlibext=so
370     sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
371     sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
372     ;;
373     cygwin* | mingw* | pw32*)
374     case $GCC,$host_os in
375     yes,cygwin*)
376     shlibext=dll.a
377     ;;
378     yes,mingw*)
379     shlibext=dll
380     sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
381     ;;
382     yes,pw32*)
383     shlibext=dll
384     ;;
385     *)
386     shlibext=dll
387     ;;
388     esac
389     ;;
390     darwin* | rhapsody*)
391     shlibext=dylib
392     ;;
393     freebsd1*)
394     ;;
395     freebsd*)
396     shlibext=so
397     ;;
398     gnu*)
399     shlibext=so
400     ;;
401     hpux9* | hpux10* | hpux11*)
402     shlibext=sl
403     ;;
404     irix5* | irix6*)
405     shlibext=so
406     case "$host_os" in
407     irix5*)
408     libsuff= shlibsuff=
409     ;;
410     *)
411     case $LD in
412     *-32|*"-32 ") libsuff= shlibsuff= ;;
413     *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 ;;
414     *-64|*"-64 ") libsuff=64 shlibsuff=64 ;;
415     *) libsuff= shlibsuff= ;;
416     esac
417     ;;
418     esac
419     sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
420     sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
421     ;;
422     linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
423     ;;
424     linux-gnu*)
425     shlibext=so
426     ;;
427     netbsd*)
428     shlibext=so
429     ;;
430     newsos6)
431     shlibext=so
432     ;;
433     openbsd*)
434     shlibext=so
435     ;;
436     os2*)
437     libname_spec='$name'
438     shlibext=dll
439     ;;
440     osf3* | osf4* | osf5*)
441     shlibext=so
442     sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
443     sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
444     ;;
445     sco3.2v5*)
446     shlibext=so
447     ;;
448     solaris*)
449     shlibext=so
450     ;;
451     sunos4*)
452     shlibext=so
453     ;;
454     sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
455     shlibext=so
456     case "$host_vendor" in
457     motorola)
458     sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
459     ;;
460     esac
461     ;;
462     uts4*)
463     shlibext=so
464     ;;
465     dgux*)
466     shlibext=so
467     ;;
468     sysv4*MP*)
469     if test -d /usr/nec; then
470     shlibext=so
471     fi
472     ;;
473     esac
474    
475     sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
476     escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"`
477     escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
478     escaped_sys_lib_search_path_spec=`echo "X$sys_lib_search_path_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
479     escaped_sys_lib_dlsearch_path_spec=`echo "X$sys_lib_dlsearch_path_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
480    
481     sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
482    
483     # How to pass a linker flag through the compiler.
484     wl="$escaped_wl"
485    
486     # Static library suffix (normally "a").
487     libext="$libext"
488    
489     # Shared library suffix (normally "so").
490     shlibext="$shlibext"
491    
492     # Flag to hardcode \$libdir into a binary during linking.
493     # This must work even if \$libdir does not exist.
494     hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
495    
496     # Whether we need a single -rpath flag with a separated argument.
497     hardcode_libdir_separator="$hardcode_libdir_separator"
498    
499     # Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
500     # resulting binary.
501     hardcode_direct="$hardcode_direct"
502    
503     # Set to yes if using the -LDIR flag during linking hardcodes DIR into the
504     # resulting binary.
505     hardcode_minus_L="$hardcode_minus_L"
506    
507     # Compile-time system search path for libraries
508     sys_lib_search_path_spec="$escaped_sys_lib_search_path_spec"
509    
510     # Run-time system search path for libraries
511     sys_lib_dlsearch_path_spec="$escaped_sys_lib_dlsearch_path_spec"
512    
513     EOF