- MK_SHARED_LIB='${LD} +b ${libdir} -b -o $@'
- # HP-UX shared libraries must be executable, and should be
- # readonly to exploit a quirk in the memory manager.
- INSTALL_LIB="-m 555"
- ;;
- (interix*)
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
- if test "$cf_cv_shlib_version" = rel; then
- cf_shared_soname='`basename .${REL_VERSION}`.${ABI_VERSION}'
- else
- cf_shared_soname='`basename `'
- fi
- CC_SHARED_OPTS=
- MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o '
- ;;
- (irix*)
- if test "$cf_cv_enable_rpath" = yes ; then
- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- # tested with IRIX 5.2 and 'cc'.
- if test "$GCC" != yes; then
- CC_SHARED_OPTS='-KPIC'
- MK_SHARED_LIB='${CC} -shared -rdata_shared -soname `basename $@` -o $@'
- else
- MK_SHARED_LIB='${CC} -shared -Wl,-soname,`basename $@` -o $@'
- fi
- cf_cv_rm_so_locs=yes
- ;;
- (linux*|gnu*|k*bsd*-gnu)
- if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
-
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
- if test "$cf_cv_shlib_version" = rel; then
- cf_cv_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}'
- else
- cf_cv_shared_soname='`basename $@`'
- fi
-
- MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $@'
- ;;
- (mingw*)
- cf_cv_shlib_version=mingw
- cf_cv_shlib_version_infix=mingw
- shlibdir=$bindir
- MAKE_DLLS=
- if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="-Wl,--enable-auto-import"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS"
- fi
- CC_SHARED_OPTS=
- MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh $@ ${CC} ${CFLAGS}'
- RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a"
- cat >mk_shared_lib.sh <<-CF_EOF
- #!$SHELL
- SHARED_LIB=\$1
- IMPORT_LIB=\`echo "\$1" | sed -e 's/[0-9]*\.dll$/.dll.a/'\`
- shift
- cat <<-EOF
- Linking shared library
- ** SHARED_LIB \$SHARED_LIB
- ** IMPORT_LIB \$IMPORT_LIB
-EOF
- exec \$* -shared -Wl,--enable-auto-import,--out-implib=\${IMPORT_LIB} -Wl,--export-all-symbols -o \${SHARED_LIB}
-CF_EOF
- chmod +x mk_shared_lib.sh
- ;;
- (openbsd[2-9].*|mirbsd*)
- if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="${LD_RPATH_OPT}\$(LOCAL_LIBDIR)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
- fi
- if test "$cf_cv_enable_rpath" = yes ; then
- EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
- fi
- CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
-
- test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
- if test "$cf_cv_shlib_version" = rel; then
- cf_cv_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}'
- else
- cf_cv_shared_soname='`basename $@`'
- fi