Commit | Line | Data |
---|---|---|
9b700aad | 1 | #! /bin/sh |
c862e87b JM |
2 | # |
3 | # shobj-conf -- output a series of variable assignments to be substituted | |
4 | # into a Makefile by configure which specify system-dependent | |
5 | # information for creating shared objects that may be loaded | |
6 | # into bash with `enable -f' | |
7 | # | |
8 | # usage: shobj-conf [-C compiler] -c host_cpu -o host_os -v host_vendor | |
9 | # | |
10 | # Chet Ramey | |
11 | # chet@po.cwru.edu | |
12 | ||
9255ee31 EZ |
13 | # Copyright (C) 1996-2002 Free Software Foundation, Inc. |
14 | # | |
15 | # This program is free software; you can redistribute it and/or modify | |
16 | # it under the terms of the GNU General Public License as published by | |
17 | # the Free Software Foundation; either version 2, or (at your option) | |
18 | # any later version. | |
19 | # | |
20 | # This program is distributed in the hope that it will be useful, | |
21 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
22 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
23 | # GNU General Public License for more details. | |
24 | # | |
25 | # You should have received a copy of the GNU General Public License | |
26 | # along with this program; if not, write to the Free Software | |
27 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA. | |
28 | ||
c862e87b JM |
29 | # |
30 | # defaults | |
31 | # | |
32 | SHOBJ_STATUS=supported | |
33 | SHLIB_STATUS=supported | |
34 | ||
35 | SHOBJ_CC=cc | |
36 | SHOBJ_CFLAGS= | |
37 | SHOBJ_LD= | |
38 | SHOBJ_LDFLAGS= | |
39 | SHOBJ_XLDFLAGS= | |
40 | SHOBJ_LIBS= | |
41 | ||
42 | SHLIB_XLDFLAGS= | |
43 | SHLIB_LIBS= | |
5bdf8622 DJ |
44 | |
45 | SHLIB_DOT='.' | |
46 | SHLIB_LIBPREF='lib' | |
c862e87b JM |
47 | SHLIB_LIBSUFF='so' |
48 | ||
49 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF)' | |
5bdf8622 | 50 | SHLIB_DLLVERSION='$(SHLIB_MAJOR)' |
c862e87b JM |
51 | |
52 | PROGNAME=`basename $0` | |
53 | USAGE="$PROGNAME [-C compiler] -c host_cpu -o host_os -v host_vendor" | |
54 | ||
55 | while [ $# -gt 0 ]; do | |
56 | case "$1" in | |
57 | -C) shift; SHOBJ_CC="$1"; shift ;; | |
58 | -c) shift; host_cpu="$1"; shift ;; | |
59 | -o) shift; host_os="$1"; shift ;; | |
60 | -v) shift; host_vendor="$1"; shift ;; | |
61 | *) echo "$USAGE" >&2 ; exit 2;; | |
62 | esac | |
63 | done | |
64 | ||
65 | case "${host_os}-${SHOBJ_CC}" in | |
9255ee31 | 66 | sunos4*-*gcc*) |
c862e87b JM |
67 | SHOBJ_CFLAGS=-fpic |
68 | SHOBJ_LD=/usr/bin/ld | |
69 | SHOBJ_LDFLAGS='-assert pure-text' | |
70 | ||
71 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)' | |
72 | ;; | |
73 | ||
74 | sunos4*) | |
75 | SHOBJ_CFLAGS=-pic | |
76 | SHOBJ_LD=/usr/bin/ld | |
77 | SHOBJ_LDFLAGS='-assert pure-text' | |
78 | ||
79 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)' | |
80 | ;; | |
81 | ||
9255ee31 | 82 | sunos5*-*gcc*|solaris2*-*gcc*) |
c862e87b JM |
83 | SHOBJ_CFLAGS=-fpic |
84 | SHOBJ_LD='${CC}' | |
5bdf8622 DJ |
85 | ld_used=`gcc -print-prog-name=ld` |
86 | if ${ld_used} -V 2>&1 | grep GNU >/dev/null 2>&1; then | |
87 | # This line works for the GNU ld | |
88 | SHOBJ_LDFLAGS='-shared -Wl,-h,$@' | |
89 | else | |
90 | # This line works for the Solaris linker in /usr/ccs/bin/ld | |
91 | SHOBJ_LDFLAGS='-shared -Wl,-i -Wl,-h,$@' | |
92 | fi | |
c862e87b | 93 | |
1b17e766 | 94 | # SHLIB_XLDFLAGS='-R $(libdir)' |
c862e87b JM |
95 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' |
96 | ;; | |
97 | ||
98 | sunos5*|solaris2*) | |
99 | SHOBJ_CFLAGS='-K pic' | |
100 | SHOBJ_LD=/usr/ccs/bin/ld | |
101 | SHOBJ_LDFLAGS='-G -dy -z text -i -h $@' | |
102 | ||
1b17e766 | 103 | # SHLIB_XLDFLAGS='-R $(libdir)' |
c862e87b JM |
104 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' |
105 | ;; | |
106 | ||
9255ee31 | 107 | # All versions of Linux or the semi-mythical GNU Hurd. |
5bdf8622 | 108 | linux*-*|gnu*-*|k*bsd*-gnu-*) |
9255ee31 EZ |
109 | SHOBJ_CFLAGS=-fPIC |
110 | SHOBJ_LD='${CC}' | |
111 | SHOBJ_LDFLAGS='-shared -Wl,-soname,$@' | |
112 | ||
113 | SHLIB_XLDFLAGS='-Wl,-rpath,$(libdir) -Wl,-soname,`basename $@ $(SHLIB_MINOR)`' | |
114 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)' | |
115 | ;; | |
116 | ||
117 | freebsd2* | netbsd*) | |
c862e87b JM |
118 | SHOBJ_CFLAGS=-fpic |
119 | SHOBJ_LD=ld | |
120 | SHOBJ_LDFLAGS='-x -Bshareable' | |
121 | ||
122 | SHLIB_XLDFLAGS='-R$(libdir)' | |
123 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)' | |
124 | ;; | |
125 | ||
1b17e766 | 126 | # FreeBSD-3.x ELF |
5bdf8622 | 127 | freebsd[3-9]*|freebsdelf[3-9]*|freebsdaout[3-9]*|dragonfly*) |
c862e87b JM |
128 | SHOBJ_CFLAGS=-fpic |
129 | SHOBJ_LD='${CC}' | |
c862e87b | 130 | |
1b17e766 EZ |
131 | if [ -x /usr/bin/objformat ] && [ "`/usr/bin/objformat`" = "elf" ]; then |
132 | SHOBJ_LDFLAGS='-shared -Wl,-soname,$@' | |
133 | ||
134 | SHLIB_XLDFLAGS='-Wl,-rpath,$(libdir)' | |
135 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
136 | else | |
137 | SHOBJ_LDFLAGS='-shared' | |
138 | ||
139 | SHLIB_XLDFLAGS='-R$(libdir)' | |
140 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)' | |
141 | fi | |
c862e87b JM |
142 | ;; |
143 | ||
9255ee31 EZ |
144 | # Darwin/MacOS X |
145 | darwin*|macosx*) | |
146 | SHOBJ_STATUS=unsupported | |
147 | SHLIB_STATUS=supported | |
148 | ||
5bdf8622 | 149 | SHOBJ_CFLAGS='-fno-common' |
9255ee31 | 150 | |
5bdf8622 | 151 | SHOBJ_LD='${CC}' |
9255ee31 EZ |
152 | |
153 | SHLIB_LIBVERSION='$(SHLIB_MAJOR)$(SHLIB_MINOR).$(SHLIB_LIBSUFF)' | |
154 | SHLIB_LIBSUFF='dylib' | |
155 | ||
5bdf8622 DJ |
156 | case "${host_os}" in |
157 | darwin[78]*) SHOBJ_LDFLAGS='' | |
158 | SHLIB_XLDFLAGS='-dynamiclib -arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' | |
159 | ;; | |
160 | *) SHOBJ_LDFLAGS='-dynamic' | |
161 | SHLIB_XLDFLAGS='-arch_only `/usr/bin/arch` -install_name $(libdir)/$@ -current_version $(SHLIB_MAJOR)$(SHLIB_MINOR) -compatibility_version $(SHLIB_MAJOR) -v' | |
162 | ;; | |
163 | esac | |
9255ee31 | 164 | |
5bdf8622 | 165 | SHLIB_LIBS='-lncurses' # see if -lcurses works on MacOS X 10.1 |
9255ee31 EZ |
166 | ;; |
167 | ||
168 | openbsd*) | |
c862e87b JM |
169 | SHOBJ_CFLAGS=-fPIC |
170 | SHOBJ_LD='${CC}' | |
9255ee31 | 171 | SHOBJ_LDFLAGS='-shared' |
c862e87b | 172 | |
9255ee31 | 173 | SHLIB_XLDFLAGS='-R$(libdir)' |
c862e87b JM |
174 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)' |
175 | ;; | |
176 | ||
177 | bsdi2*) | |
178 | SHOBJ_CC=shlicc2 | |
179 | SHOBJ_CFLAGS= | |
180 | SHOBJ_LD=ld | |
181 | SHOBJ_LDFLAGS=-r | |
182 | SHOBJ_LIBS=-lc_s.2.1.0 | |
183 | ||
184 | # BSD/OS 2.x and 3.x `shared libraries' are too much of a pain in | |
185 | # the ass -- they require changing {/usr/lib,etc}/shlib.map on | |
186 | # each system, and the library creation process is byzantine | |
187 | SHLIB_STATUS=unsupported | |
188 | ;; | |
189 | ||
190 | bsdi3*) | |
191 | SHOBJ_CC=shlicc2 | |
192 | SHOBJ_CFLAGS= | |
193 | SHOBJ_LD=ld | |
194 | SHOBJ_LDFLAGS=-r | |
195 | SHOBJ_LIBS=-lc_s.3.0.0 | |
196 | ||
197 | # BSD/OS 2.x and 3.x `shared libraries' are too much of a pain in | |
198 | # the ass -- they require changing {/usr/lib,etc}/shlib.map on | |
199 | # each system, and the library creation process is byzantine | |
200 | SHLIB_STATUS=unsupported | |
201 | ;; | |
202 | ||
203 | bsdi4*) | |
204 | # BSD/OS 4.x now supports ELF and SunOS-style dynamically-linked | |
205 | # shared libraries. gcc 2.x is the standard compiler, and the | |
206 | # `normal' gcc options should work as they do in Linux. | |
207 | ||
208 | SHOBJ_CFLAGS=-fPIC | |
209 | SHOBJ_LD='${CC}' | |
210 | SHOBJ_LDFLAGS='-shared -Wl,-soname,$@' | |
211 | ||
9255ee31 | 212 | SHLIB_XLDFLAGS='-Wl,-soname,`basename $@ $(SHLIB_MINOR)`' |
c862e87b JM |
213 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)$(SHLIB_MINOR)' |
214 | ;; | |
215 | ||
9255ee31 | 216 | osf*-*gcc*) |
1b17e766 EZ |
217 | # Fix to use gcc linker driver from bfischer@TechFak.Uni-Bielefeld.DE |
218 | SHOBJ_LD='${CC}' | |
219 | SHOBJ_LDFLAGS='-shared -Wl,-soname,$@' | |
220 | ||
221 | SHLIB_XLDFLAGS='-rpath $(libdir)' | |
222 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
223 | ;; | |
224 | ||
c862e87b JM |
225 | osf*) |
226 | SHOBJ_LD=ld | |
227 | SHOBJ_LDFLAGS='-shared -soname $@ -expect_unresolved "*"' | |
228 | ||
229 | SHLIB_XLDFLAGS='-rpath $(libdir)' | |
230 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
231 | ;; | |
232 | ||
9255ee31 | 233 | aix4.[2-9]*-*gcc*) # lightly tested by jik@cisco.com |
c862e87b JM |
234 | SHOBJ_CFLAGS=-fpic |
235 | SHOBJ_LD='ld' | |
236 | SHOBJ_LDFLAGS='-bdynamic -bnoentry -bexpall' | |
237 | SHOBJ_XLDFLAGS='-G' | |
238 | ||
239 | SHLIB_XLDFLAGS='-bM:SRE' | |
240 | SHLIB_LIBS='-lcurses -lc' | |
241 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
242 | ;; | |
243 | ||
244 | aix4.[2-9]*) | |
245 | SHOBJ_CFLAGS=-K | |
246 | SHOBJ_LD='ld' | |
247 | SHOBJ_LDFLAGS='-bdynamic -bnoentry -bexpall' | |
248 | SHOBJ_XLDFLAGS='-G' | |
249 | ||
250 | SHLIB_XLDFLAGS='-bM:SRE' | |
251 | SHLIB_LIBS='-lcurses -lc' | |
252 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
253 | ;; | |
254 | ||
255 | # | |
256 | # THE FOLLOWING ARE UNTESTED -- and some may not support the dlopen interface | |
257 | # | |
9255ee31 | 258 | irix[56]*-*gcc*) |
c862e87b JM |
259 | SHOBJ_CFLAGS='-fpic' |
260 | SHOBJ_LD='${CC}' | |
261 | SHOBJ_LDFLAGS='-shared -Wl,-soname,$@' | |
262 | ||
263 | SHLIB_XLDFLAGS='-Wl,-rpath,$(libdir)' | |
264 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
265 | ;; | |
266 | ||
267 | irix[56]*) | |
268 | SHOBJ_CFLAGS='-K PIC' | |
269 | SHOBJ_LD=ld | |
1b17e766 | 270 | # SHOBJ_LDFLAGS='-call_shared -hidden_symbol -no_unresolved -soname $@' |
9255ee31 EZ |
271 | # Change from David Kaelbling <drk@sgi.com>. If you have problems, |
272 | # remove the `-no_unresolved' | |
1b17e766 | 273 | SHOBJ_LDFLAGS='-shared -no_unresolved -soname $@' |
c862e87b JM |
274 | |
275 | SHLIB_XLDFLAGS='-rpath $(libdir)' | |
276 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
277 | ;; | |
278 | ||
9255ee31 | 279 | hpux9*-*gcc*) |
c862e87b JM |
280 | # must use gcc; the bundled cc cannot compile PIC code |
281 | SHOBJ_CFLAGS='-fpic' | |
282 | SHOBJ_LD='${CC}' | |
283 | SHOBJ_LDFLAGS='-shared -Wl,-b -Wl,+s' | |
284 | ||
285 | SHLIB_XLDFLAGS='-Wl,+b,$(libdir)' | |
286 | SHLIB_LIBSUFF='sl' | |
287 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
288 | ;; | |
289 | ||
290 | hpux9*) | |
291 | SHOBJ_STATUS=unsupported | |
292 | SHLIB_STATUS=unsupported | |
9255ee31 EZ |
293 | |
294 | # If you are using the HP ANSI C compiler, you can uncomment and use | |
295 | # this code (I have not tested it) | |
296 | # SHOBJ_STATUS=supported | |
297 | # SHLIB_STATUS=supported | |
298 | # | |
299 | # SHOBJ_CFLAGS='+z' | |
300 | # SHOBJ_LD='ld' | |
301 | # SHOBJ_LDFLAGS='-b +s' | |
302 | # | |
303 | # SHLIB_XLDFLAGS='+b $(libdir)' | |
304 | # SHLIB_LIBSUFF='sl' | |
305 | # SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
306 | ||
c862e87b JM |
307 | ;; |
308 | ||
9255ee31 | 309 | hpux10*-*gcc*) |
c862e87b JM |
310 | # must use gcc; the bundled cc cannot compile PIC code |
311 | SHOBJ_CFLAGS='-fpic' | |
312 | SHOBJ_LD='${CC}' | |
5bdf8622 DJ |
313 | # if you have problems linking here, moving the `-Wl,+h,$@' from |
314 | # SHLIB_XLDFLAGS to SHOBJ_LDFLAGS has been reported to work | |
c862e87b JM |
315 | SHOBJ_LDFLAGS='-shared -Wl,-b -Wl,+s' |
316 | ||
317 | SHLIB_XLDFLAGS='-Wl,+h,$@ -Wl,+b,$(libdir)' | |
318 | SHLIB_LIBSUFF='sl' | |
319 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
320 | ;; | |
321 | ||
322 | hpux10*) | |
323 | SHOBJ_STATUS=unsupported | |
324 | SHLIB_STATUS=unsupported | |
9255ee31 EZ |
325 | |
326 | # If you are using the HP ANSI C compiler, you can uncomment and use | |
327 | # this code (I have not tested it) | |
328 | # SHOBJ_STATUS=supported | |
329 | # SHLIB_STATUS=supported | |
330 | # | |
331 | # SHOBJ_CFLAGS='+z' | |
332 | # SHOBJ_LD='ld' | |
333 | # SHOBJ_LDFLAGS='-b +s +h $@' | |
334 | # | |
335 | # SHLIB_XLDFLAGS='+b $(libdir)' | |
336 | # SHLIB_LIBSUFF='sl' | |
337 | # SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
338 | ||
c862e87b JM |
339 | ;; |
340 | ||
9255ee31 | 341 | hpux11*-*gcc*) |
c862e87b JM |
342 | # must use gcc; the bundled cc cannot compile PIC code |
343 | SHOBJ_CFLAGS='-fpic' | |
344 | SHOBJ_LD='${CC}' | |
345 | # SHOBJ_LDFLAGS='-shared -Wl,-b -Wl,-B,symbolic -Wl,+s -Wl,+std -Wl,+h,$@' | |
9255ee31 | 346 | SHOBJ_LDFLAGS='-shared -fpic -Wl,-b -Wl,+s -Wl,+h,$@' |
c862e87b JM |
347 | |
348 | SHLIB_XLDFLAGS='-Wl,+b,$(libdir)' | |
349 | SHLIB_LIBSUFF='sl' | |
350 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
351 | ;; | |
352 | ||
353 | hpux11*) | |
354 | SHOBJ_STATUS=unsupported | |
355 | SHLIB_STATUS=unsupported | |
9255ee31 EZ |
356 | |
357 | # If you are using the HP ANSI C compiler, you can uncomment and use | |
358 | # this code (I have not tested it) | |
359 | # SHOBJ_STATUS=supported | |
360 | # SHLIB_STATUS=supported | |
361 | # | |
362 | # SHOBJ_CFLAGS='+z' | |
363 | # SHOBJ_LD='ld' | |
364 | # SHOBJ_LDFLAGS='-b +s +h $@' | |
365 | # | |
366 | # SHLIB_XLDFLAGS='+b $(libdir)' | |
367 | # SHLIB_LIBSUFF='sl' | |
368 | # SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
369 | ||
c862e87b JM |
370 | ;; |
371 | ||
9255ee31 | 372 | sysv4*-*gcc*) |
c862e87b JM |
373 | SHOBJ_CFLAGS=-shared |
374 | SHOBJ_LDFLAGS='-shared -h $@' | |
375 | SHOBJ_LD='${CC}' | |
376 | ||
377 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
378 | ;; | |
379 | ||
380 | sysv4*) | |
381 | SHOBJ_CFLAGS='-K PIC' | |
382 | SHOBJ_LD=ld | |
383 | SHOBJ_LDFLAGS='-dy -z text -G -h $@' | |
384 | ||
385 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
386 | ;; | |
387 | ||
9255ee31 | 388 | sco3.2v5*-*gcc*) |
c862e87b JM |
389 | SHOBJ_CFLAGS='-fpic' # DEFAULTS TO ELF |
390 | SHOBJ_LD='${CC}' | |
391 | SHOBJ_LDFLAGS='-shared' | |
392 | ||
393 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
394 | ;; | |
395 | ||
396 | sco3.2v5*) | |
397 | SHOBJ_CFLAGS='-K pic -b elf' | |
398 | SHOBJ_LD=ld | |
399 | SHOBJ_LDFLAGS='-G -b elf -dy -z text -h $@' | |
400 | ||
401 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
402 | ;; | |
403 | ||
9255ee31 | 404 | sysv5uw7*-*gcc*) |
c862e87b JM |
405 | SHOBJ_CFLAGS='-fpic' |
406 | SHOBJ_LD='${CC}' | |
407 | SHOBJ_LDFLAGS='-shared' | |
408 | ||
409 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
410 | ;; | |
411 | ||
412 | sysv5uw7*) | |
413 | SHOBJ_CFLAGS='-K PIC' | |
414 | SHOBJ_LD=ld | |
415 | SHOBJ_LDFLAGS='-G -dy -z text -h $@' | |
416 | ||
417 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
418 | ;; | |
5bdf8622 DJ |
419 | |
420 | sysv5UnixWare*-*gcc*) | |
421 | SHOBJ_CFLAGS=-fpic | |
422 | SHOBJ_LD='${CC}' | |
423 | SHOBJ_LDFLAGS='-shared' | |
424 | ||
425 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
426 | ;; | |
427 | ||
428 | sysv5UnixWare*) | |
429 | SHOBJ_CFLAGS='-K PIC' | |
430 | SHOBJ_LD=ld | |
431 | SHOBJ_LDFLAGS='-G -dy -z text -h $@' | |
432 | ||
433 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
434 | ;; | |
435 | ||
436 | sysv5OpenUNIX*-*gcc*) | |
437 | SHOBJ_CFLAGS=-fpic | |
438 | SHOBJ_LD='${CC}' | |
439 | SHOBJ_LDFLAGS='-shared' | |
440 | ||
441 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
442 | ;; | |
443 | ||
444 | sysv5OpenUNIX*) | |
445 | SHOBJ_CFLAGS='-K PIC' | |
446 | SHOBJ_LD=ld | |
447 | SHOBJ_LDFLAGS='-G -dy -z text -h $@' | |
448 | ||
449 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
450 | ;; | |
451 | ||
9255ee31 | 452 | dgux*-*gcc*) |
c862e87b JM |
453 | SHOBJ_CFLAGS=-fpic |
454 | SHOBJ_LD='${CC}' | |
455 | SHOBJ_LDFLAGS='-shared' | |
456 | ||
457 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
458 | ;; | |
459 | ||
460 | dgux*) | |
461 | SHOBJ_CFLAGS='-K pic' | |
462 | SHOBJ_LD=ld | |
463 | SHOBJ_LDFLAGS='-G -dy -h $@' | |
464 | ||
465 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
466 | ;; | |
511fec4d | 467 | |
1b17e766 | 468 | msdos*) |
511fec4d EZ |
469 | SHOBJ_STATUS=unsupported |
470 | SHLIB_STATUS=unsupported | |
471 | ;; | |
472 | ||
5bdf8622 DJ |
473 | cygwin*) |
474 | SHOBJ_LD='$(CC)' | |
475 | SHOBJ_LDFLAGS='-shared -Wl,--enable-auto-import -Wl,--enable-auto-image-base -Wl,--export-all -Wl,--out-implib=$(@).a' | |
476 | SHLIB_LIBPREF='cyg' | |
477 | SHLIB_LIBSUFF='dll' | |
478 | SHLIB_LIBVERSION='$(SHLIB_DLLVERSION).$(SHLIB_LIBSUFF)' | |
479 | SHLIB_LIBS='$(TERMCAP_LIB)' | |
480 | ||
481 | SHLIB_DOT= | |
482 | # For official cygwin releases, DLLVERSION will be defined in the | |
483 | # environment of configure, and will be incremented any time the API | |
484 | # changes in a non-backwards compatible manner. Otherwise, it is just | |
485 | # SHLIB_MAJOR. | |
486 | if [ -n "$DLLVERSION" ] ; then | |
487 | SHLIB_DLLVERSION="$DLLVERSION" | |
488 | fi | |
489 | ;; | |
490 | ||
c862e87b JM |
491 | # |
492 | # Rely on correct gcc configuration for everything else | |
493 | # | |
9255ee31 | 494 | *-*gcc*) |
c862e87b JM |
495 | SHOBJ_CFLAGS=-fpic |
496 | SHOBJ_LD='${CC}' | |
497 | SHOBJ_LDFLAGS='-shared' | |
498 | ||
499 | SHLIB_LIBVERSION='$(SHLIB_LIBSUFF).$(SHLIB_MAJOR)' | |
500 | ;; | |
501 | ||
502 | *) | |
503 | SHOBJ_STATUS=unsupported | |
504 | SHLIB_STATUS=unsupported | |
505 | ;; | |
506 | ||
507 | esac | |
508 | ||
509 | echo SHOBJ_CC=\'"$SHOBJ_CC"\' | |
510 | echo SHOBJ_CFLAGS=\'"$SHOBJ_CFLAGS"\' | |
511 | echo SHOBJ_LD=\'"$SHOBJ_LD"\' | |
512 | echo SHOBJ_LDFLAGS=\'"$SHOBJ_LDFLAGS"\' | |
513 | echo SHOBJ_XLDFLAGS=\'"$SHOBJ_XLDFLAGS"\' | |
514 | echo SHOBJ_LIBS=\'"$SHOBJ_LIBS"\' | |
515 | ||
516 | echo SHLIB_XLDFLAGS=\'"$SHLIB_XLDFLAGS"\' | |
517 | echo SHLIB_LIBS=\'"$SHLIB_LIBS"\' | |
5bdf8622 DJ |
518 | |
519 | echo SHLIB_DOT=\'"$SHLIB_DOT"\' | |
520 | ||
521 | echo SHLIB_LIBPREF=\'"$SHLIB_LIBPREF"\' | |
c862e87b | 522 | echo SHLIB_LIBSUFF=\'"$SHLIB_LIBSUFF"\' |
5bdf8622 | 523 | |
c862e87b | 524 | echo SHLIB_LIBVERSION=\'"$SHLIB_LIBVERSION"\' |
5bdf8622 | 525 | echo SHLIB_DLLVERSION=\'"$SHLIB_DLLVERSION"\' |
c862e87b JM |
526 | |
527 | echo SHOBJ_STATUS=\'"$SHOBJ_STATUS"\' | |
528 | echo SHLIB_STATUS=\'"$SHLIB_STATUS"\' | |
529 | ||
530 | exit 0 |