xref: /freebsd/crypto/krb5/src/config/shlib.conf (revision f1c4c3daccbaf3820f0e2224de53df12fc952fcc)
1# This shell script fragment should set a bunch of variables:
2#
3# CC_LINK_STATIC: How to link a program if we're only building static
4#  libraries for krb5 (but may use other shared libs, and there may
5#  be a shared krb5 lib already installed that we shouldn't use).
6# CC_LINK_SHARED: How to link a program if we're building shared
7#  libraries.
8# CXX_LINK_STATIC, CXX_LINK_SHARED: Variants for C++.
9# STLIBEXT: Static library extension.
10# SHLIBEXT: Shared library extension.
11# SHLIBVEXT: Shared library extension, with major version.
12# SHLIBSEXT: Shared library extension, with full version.
13# (... finish documenting these ...)
14
15#
16# Set up some defaults.
17#
18STLIBEXT=.a
19# Default to being unable to build shared libraries.
20SHLIBEXT=.so-nobuild
21SHLIBVEXT=.so.v-nobuild
22SHLIBSEXT=.so.s-nobuild
23# Most systems support profiled libraries.
24PFLIBEXT=_p.a
25# Install libraries executable.  Some systems (e.g., RPM-based ones) require
26# this for package dependency generation, while others are ambivalent or will
27# strip it during packaging.
28INSTALL_SHLIB='$(INSTALL)'
29# Most systems use the same objects for shared libraries and dynamically
30# loadable objects.
31DYNOBJEXT='$(SHLIBEXT)'
32MAKE_DYNOBJ_COMMAND='$(MAKE_SHLIB_COMMAND)'
33DYNOBJ_EXPDEPS='$(SHLIB_EXPDEPS)'
34DYNOBJ_EXPFLAGS='$(SHLIB_EXPFLAGS)'
35# On some platforms we will instruct the linker to run named functions
36# (specified by LIBINITFUNC and LIBFINIFUNC in each library's Makefile.in) as
37# initializers or finalizers.
38use_linker_init_option=no
39use_linker_fini_option=no
40# Where possible we will prevent unloading of the libraries we build, in which
41# case we can skip running finalizers.  Do not set use_linker_fini_option if
42# setting lib_unload_prevented.
43lib_unload_prevented=no
44
45STOBJEXT=.o
46SHOBJEXT=.so
47PFOBJEXT=.po
48# Default for systems w/o shared libraries
49CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
50CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
51#
52SHLIB_EXPORT_FILE_DEP='$(SHLIB_EXPORT_FILE)'
53# This will do for most platforms, and we'll substitute for
54# LDCOMBINE, SHLIB_EXPFLAGS, and LDCOMBINE_TAIL below.
55MAKE_SHLIB_COMMAND=x
56INIT_FINI_PREP=:
57
58# Default to static or shared libraries?
59default_static=no
60default_shared=yes
61
62# Set up architecture-specific variables.
63case $krb5_cv_host in
64# Note: "-Wl,+s" when building executables enables the use of the
65# SHLIB_PATH environment variable for finding shared libraries
66# in non-standard directories.  If a non-standard search-path for
67#  shared libraries is compiled into the executable (using
68# -Wl,+b,$KRB5_SHLIBDIR), then the order of "-Wl,+b,..." and "-Wl,+s"
69# on the commandline of the linker will determine which path
70# (compiled-in or SHLIB_PATH) will be searched first.
71#
72# +I initproc routine gets called at load and unload time for
73#    shl_load calls, but appears to never be called for link-time
74#    specified libraries.
75# +e sym exports symbol and supposedly prevents other symbols
76#    from being exported, according to the man page, but the
77#    latter bit doesn't actually seem to work
78# -O +dpv should display any routines eliminated as unused, but -b
79#	  apparently turns that off
80*-*-hpux*)
81	case $host_cpu in
82	hppa*)
83		SHLIBEXT=.sl
84		;;
85	ia64*)
86		SHLIBEXT=.so
87		;;
88	esac
89	SHLIBVEXT='.$(LIBMAJOR).$(LIBMINOR)'
90	SHLIBSEXT='.$(LIBMAJOR)'
91	RPATH_FLAG='-Wl,+b,'
92	if test "$ac_cv_c_compiler_gnu" = yes; then
93		PICFLAGS=-fPIC
94		SHLIB_RPATH_FLAGS='-Wl,+b,$(SHLIB_RDIRS)'
95		SHLIB_EXPFLAGS='-Wl,+s $(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
96		LDCOMBINE='gcc -fPIC -shared -Wl,+h,$(LIBPREFIX)$(LIBBASE)$(SHLIBSEXT) -Wl,-c,hpux.exports'
97	else
98		PICFLAGS=+z
99		SHLIB_RPATH_FLAGS='+b $(SHLIB_RDIRS)'
100		SHLIB_EXPFLAGS='$(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
101		LDCOMBINE='ld -b +h $(LIBPREFIX)$(LIBBASE)$(SHLIBSEXT) -c hpux.exports'
102	fi
103	MAKE_SHLIB_COMMAND="${LDCOMBINE} -o \$@ \$\$objlist \$(LDFLAGS) \$(SHLIB_EXPFLAGS) ${LDCOMBINE_TAIL}"
104	PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH)'
105	CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)'
106	CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
107	CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)'
108	CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
109	RUN_ENV='SHLIB_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`'
110	RUN_VARS='SHLIB_PATH'
111	SHLIB_EXPORT_FILE_DEP=hpux.exports
112	# Do *not* set use_linker_init_option=yes here, because in the
113	# case where the library is specified at program link time, the
114	# initialization function appears not to get called, only for
115	# shl_load.  But for finalization functions, the shl_load case
116	# is the one we care about.
117	#
118	# Not setting use_linker_init_option here should cause compilation
119	# failures if the user tries to disable delayed initialization.
120	use_linker_fini_option=yes
121	;;
122
123mips-*-netbsd*)
124	PICFLAGS=-fPIC
125	SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
126	SHLIBSEXT='.so.$(LIBMAJOR)'
127	SHLIBEXT=.so
128	LDCOMBINE='ld -shared -soname $(LIBPREFIX)$(LIBBASE)$(SHLIBSEXT) -z nodelete'
129	SHLIB_RPATH_FLAGS='-R$(SHLIB_RDIRS)'
130	SHLIB_EXPFLAGS='$(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
131	RPATH_FLAG='-Wl,-rpath -Wl,'
132	PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH)'
133	CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)'
134	CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
135	CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)'
136	CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
137	RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`'
138	RUN_VARS='LD_LIBRARY_PATH'
139	PROFFLAGS=-pg
140	lib_unload_prevented=yes
141	;;
142
143*-*-netbsd*)
144	PICFLAGS=-fPIC
145	SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
146	SHLIBEXT=.so
147	LDCOMBINE='$(CC) -shared -Wl,-z,nodelete'
148	SHLIB_RPATH_FLAGS='-R$(SHLIB_RDIRS)'
149	SHLIB_EXPFLAGS='$(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
150	RPATH_FLAG=-R
151	PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH)'
152	CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)'
153	CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
154	CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)'
155	CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
156	RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`'
157	RUN_VARS='LD_LIBRARY_PATH'
158	PROFFLAGS=-pg
159	lib_unload_prevented=yes
160	;;
161
162*-*-freebsd*)
163	case $krb5_cv_host in
164		sparc64-*)
165			PICFLAGS=-fPIC
166			;;
167		*)
168			PICFLAGS=-fpic
169			;;
170	esac
171	SHLIBVEXT='.so.$(LIBMAJOR)'
172	RPATH_FLAG='-Wl,--enable-new-dtags -Wl,-rpath -Wl,'
173	PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH)'
174	CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)'
175	CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)'
176	SHLIBEXT=.so
177	LDCOMBINE='ld -Bshareable -z nodelete'
178	SHLIB_RPATH_FLAGS='--enable-new-dtags -rpath $(SHLIB_RDIRS)'
179	SHLIB_EXPFLAGS='$(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
180	CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
181	CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
182	RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`'
183	RUN_VARS='LD_LIBRARY_PATH'
184	PROFFLAGS=-pg
185	lib_unload_prevented=yes
186	;;
187
188*-*-openbsd*)
189	PICFLAGS=-fpic
190	SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
191	SHLIBEXT=.so
192	LDCOMBINE='ld -Bshareable -z nodelete'
193	SHLIB_RPATH_FLAGS='-R$(SHLIB_RDIRS)'
194	SHLIB_EXPFLAGS='$(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
195	RPATH_FLAG=-R
196	PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH)'
197	CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)'
198	CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
199	CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)'
200	CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
201	RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`'
202	RUN_VARS='LD_LIBRARY_PATH'
203	PROFFLAGS=-pg
204	lib_unload_prevented=yes
205	;;
206
207*-*-darwin* | *-*-rhapsody*)
208	SHLIBVEXT='.$(LIBMAJOR).$(LIBMINOR).dylib'
209	SHLIBSEXT='.$(LIBMAJOR).dylib'
210	SHLIB_EXPFLAGS='$(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
211	SHLIBEXT=.dylib
212	DYNOBJEXT=.so
213	SHLIB_EXPORT_FILE_DEP=darwin.exports
214	LDCOMBINE='$(CC) -undefined error -dead_strip -dynamiclib -compatibility_version $(LIBMAJOR) -current_version $(LIBMAJOR).$(LIBMINOR) -install_name "$(KRB5_LIBDIR)/$(LIBPREFIX)$(LIBBASE)$(SHLIBVEXT)" -exported_symbols_list darwin.exports $(CFLAGS)'
215	# The -dylib_file option tells the linker where to find indirect dependent
216	# libraries, without adding them to the dependency list.  We need this because
217	# the direct dependent libraries contain the pathname where the indirect
218	# dependent libraries will be installed (but haven't been yet).
219	LDCOMBINE_TAIL=""
220	for lib in libkrb5support.1.1.dylib libkadm5srv.5.1.dylib libkdb5.4.0.dylib; do
221	    LDCOMBINE_TAIL="$LDCOMBINE_TAIL -dylib_file \"\$(KRB5_LIBDIR)/$lib\":\$(TOPLIBD)/$lib"
222	done
223	MAKE_DYNOBJ_COMMAND='$(CC) -bundle $(CFLAGS) $(LDFLAGS) -o $@ $$objlist $(DYNOBJ_EXPFLAGS) $(LDFLAGS) -exported_symbols_list darwin.exports'" ${LDCOMBINE_TAIL}"
224	CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -dynamic $(CFLAGS) $(LDFLAGS)'
225	CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
226	CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) -dynamic $(CXXFLAGS) $(LDFLAGS)'
227	CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
228	RUN_ENV='DYLD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`'
229	RUN_VARS='DYLD_LIBRARY_PATH'
230	;;
231
232*-*-solaris*)
233	if test "$ac_cv_c_compiler_gnu" = yes; then
234		PICFLAGS=-fPIC
235		LDCOMBINE='$(CC) $(CFLAGS) -shared -Wl,-z,nodelete -h $(LIBPREFIX)$(LIBBASE)$(SHLIBSEXT)'
236	else
237		PICFLAGS=-KPIC
238		# Solaris cc doesn't default to stuffing the SONAME field...
239		LDCOMBINE='$(CC) $(CFLAGS) -dy -G -z text -z nodelete -h $(LIBPREFIX)$(LIBBASE)$(SHLIBSEXT) $$initfini'
240		#
241		case $krb5_cv_host in
242		*-*-solaris2.[1-7] | *-*-solaris2.[1-7].*)
243		    # Did Solaris 7 and earlier have a linker option for this?
244		    ;;
245		*)
246		    INIT_FINI_PREP='initfini=; for f in . $(LIBINITFUNC); do if test $$f = .; then :; else initfini="$$initfini -Wl,-z,initarray=$${f}__auxinit"; fi; done;'
247		    use_linker_init_option=yes
248		    ;;
249		esac
250	fi
251	SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
252	SHLIBSEXT='.so.$(LIBMAJOR)'
253	SHLIBEXT=.so
254	SHLIB_RPATH_FLAGS='-R$(SHLIB_RDIRS)'
255	SHLIB_EXPFLAGS='$(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
256	PROFFLAGS=-pg
257	RPATH_FLAG=-R
258	PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH)'
259	CC_LINK_SHARED='$(PURE) $(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)'
260	CC_LINK_STATIC='$(PURE) $(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
261	CXX_LINK_SHARED='$(PURE) $(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)'
262	CXX_LINK_STATIC='$(PURE) $(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
263	RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`'
264	RUN_VARS='LD_LIBRARY_PATH'
265	lib_unload_prevented=yes
266	;;
267
268*-*-linux* | *-*-gnu* | *-*-k*bsd*-gnu)
269	PICFLAGS=-fPIC
270	SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
271	SHLIBSEXT='.so.$(LIBMAJOR)'
272	SHLIBEXT=.so
273	# Linux ld doesn't default to stuffing the SONAME field...
274	# Use objdump -x to examine the fields of the library
275	# UNDEF_CHECK is suppressed by --enable-asan
276	LDCOMBINE='$(CC) -shared -fPIC -Wl,-z,nodelete -Wl,-h,$(LIBPREFIX)$(LIBBASE)$(SHLIBSEXT) $(UNDEF_CHECK)'
277	UNDEF_CHECK='-Wl,--no-undefined'
278	# $(EXPORT_CHECK) runs export-check.pl when in maintainer mode.
279	LDCOMBINE_TAIL='-Wl,--version-script binutils.versions $(EXPORT_CHECK)'
280	SHLIB_EXPORT_FILE_DEP=binutils.versions
281	RPATH_FLAG='-Wl,--enable-new-dtags -Wl,-rpath -Wl,'
282	# For cases where we do have dependencies on other libraries
283	# built in this tree...
284	SHLIB_RPATH_FLAGS='$(RPATH_FLAG)$(SHLIB_RDIRS)'
285	SHLIB_EXPFLAGS='$(SHLIB_RPATH_FLAGS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
286	PROFFLAGS=-pg
287	PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH)'
288	CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)'
289	CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
290	CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)'
291	CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
292	RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`'
293	RUN_VARS='LD_LIBRARY_PATH'
294	lib_unload_prevented=yes
295
296	## old version:
297	# Linux libc does weird stuff at shlib link time, must be
298	# explicitly listed here.  This also makes it get used even
299	# for the libraries marked as not having any dependencies; while
300	# that's not strictly correct, the resulting behavior -- not adding
301	# extra -R directories -- is still what we want.
302	#LDCOMBINE='ld -shared -h $(LIBPREFIX)$(LIBBASE)$(SHLIBSEXT)'
303	#LDCOMBINE_TAIL="-lc"
304	#SHLIB_EXPFLAGS='-R$(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
305
306	;;
307
308*-*-aix*)
309	SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
310	SHLIBEXT=.so
311	# AIX doesn't need separate PIC objects
312	SHOBJEXT=.o
313	SHLIB_EXPFLAGS='  $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
314	PROFFLAGS=-pg
315	if test "$ac_cv_c_compiler_gnu" = "yes" ; then
316	  wl_prefix=-Wl,
317	  RPATH_FLAG='-Wl,-blibpath:'
318	  LDCOMBINE='$(CC) -shared -v -o $@ $$objlist -nostartfiles -Xlinker -bgcbypass:1 -Xlinker -bfilelist -Xlinker -bM:SRE -Xlinker -bE:$(SHLIB_EXPORT_FILE) -Xlinker -bernotok -Xlinker -brtl $(SHLIB_EXPFLAGS) $(LDFLAGS) -lc $$initfini'
319	else
320	  wl_prefix=
321	  RPATH_FLAG=-blibpath:
322	  LDCOMBINE='/bin/ld -o $@ $$objlist -H512 -T512 -bnoentry -bgcbypass:1 -bnodelcsect -bfilelist -bM:SRE -bE:$(SHLIB_EXPORT_FILE) -bernotok -brtl $(SHLIB_EXPFLAGS) $(LDFLAGS) -lc $$initfini'
323	fi
324	# Assume initialization always delayed.
325	INIT_FINI_PREP="wl=${wl_prefix}; "'i=1; initfini=; for f in . $(LIBFINIFUNC); do if test $$f != .; then initfini="$$initfini $${wl}-binitfini::$$f:$$i"; else :; fi; i=`expr $$i + 1`; done'
326	use_linker_fini_option=yes
327	MAKE_SHLIB_COMMAND="${INIT_FINI_PREP} && ${LDCOMBINE}"
328	RPATH_TAIL=:/usr/lib:/lib
329	PROG_RPATH_FLAGS='$(RPATH_FLAG)$(PROG_RPATH):'"$RPATH_TAIL"
330	CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CFLAGS) $(LDFLAGS)'
331	CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) $(CFLAGS) $(LDFLAGS)'
332	CXX_LINK_SHARED='$(CXX) $(PROG_LIBPATH) $(PROG_RPATH_FLAGS) $(CXXFLAGS) $(LDFLAGS)'
333	CXX_LINK_STATIC='$(CXX) $(PROG_LIBPATH) $(CXXFLAGS) $(LDFLAGS)'
334	# $(PROG_RPATH) is here to handle things like a shared tcl library
335	RUN_ENV='LIBPATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`:$(PROG_RPATH):/usr/lib:/usr/local/lib'
336	RUN_VARS='LIBPATH'
337	;;
338esac
339
340if test "${MAKE_SHLIB_COMMAND}" = "x" ; then
341  if test "${INIT_FINI_PREP}" != ":"; then
342    MAKE_SHLIB_COMMAND="${INIT_FINI_PREP} && ${LDCOMBINE} -o \$@ \$\$objlist \$(SHLIB_EXPFLAGS) \$(LDFLAGS) ${LDCOMBINE_TAIL}"
343  else
344    MAKE_SHLIB_COMMAND="${LDCOMBINE} -o \$@ \$\$objlist \$(SHLIB_EXPFLAGS) \$(LDFLAGS) ${LDCOMBINE_TAIL}"
345  fi
346fi
347