--- /dev/null
+#
+# Set up some defaults.
+#
+STLIBEXT=.a
+# Default to being unable to build shared libraries.
+SHLIBEXT=.so-nobuild
+SHLIBVEXT=.so.v-nobuild
+SHLIBSEXT=.so.s-nobuild
+# Most systems support profiled libraries.
+PFLIBEXT=_p.a
+# Most systems install shared libs as mode 644, etc. while hpux wants 755
+INSTALL_SHLIB='$(INSTALL_DATA)'
+
+STOBJEXT=.o
+SHOBJEXT=.so
+PFOBJEXT=.po
+# Default for systems w/o shared libraries
+CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+
+# Set up architecture-specific variables.
+case $krb5_cv_host in
+alpha*-dec-osf*)
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBSEXT='.so.$(LIBMAJOR)'
+ SHLIBEXT=.so
+ # Alpha OSF/1 doesn't need separate PIC objects
+ SHOBJEXT=.o
+ LDCOMBINE='ld -shared -expect_unresolved \* -update_registry $(BUILDTOP)/so_locations -soname lib$(LIB)$(SHLIBSEXT)'
+ SHLIB_EXPFLAGS='-rpath $(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ PROFFLAGS=-pg
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -Wl,-rpath -Wl,$(PROG_RPATH)'
+ # Need -oldstyle_liblookup to avoid picking up shared libs from
+ # other builds. OSF/1 / Tru64 ld programs look through the entire
+ # library path for shared libs prior to looking through the
+ # entire library path for static libs.
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH) -Wl,-oldstyle_liblookup'
+ # $(PROG_RPATH) is here to handle things like a shared tcl library
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`:$(PROG_RPATH):/usr/shlib:/usr/ccs/lib:/usr/lib/cmplrs/cc:/usr/lib:/usr/local/lib; export LD_LIBRARY_PATH; _RLD_ROOT=/dev/dummy/d; export _RLD_ROOT;'
+ ;;
+
+# HPUX *seems* to work under 10.20.
+#
+# Note: "-Wl,+s" when building executables enables the use of the
+# SHLIB_PATH environment variable for finding shared libraries
+# in non-standard directories. If a non-standard search-path for
+# shared libraries is compiled into the executable (using
+# -Wl,+b,$KRB5_SHLIBDIR), then the order of "-Wl,+b,..." and "-Wl,+s"
+# on the commandline of the linker will determine which path
+# (compiled-in or SHLIB_PATH) will be searched first.
+#
+*-*-hpux*)
+ PICFLAGS=+z
+ INSTALL_SHLIB='$(INSTALL)'
+ SHLIBEXT=.sl
+ SHLIBVEXT='.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBSEXT='.$(LIBMAJOR)'
+ SHLIB_EXPFLAGS='+s +b $(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ LDCOMBINE='ld -b +h lib$(LIB)$(SHLIBSEXT)'
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -Wl,+s -Wl,+b,$(PROG_RPATH)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='SHLIB_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export SHLIB_PATH;'
+ ;;
+
+mips-sgi-irix6.3) # This is a Kludge; see below
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBSEXT='.so.$(LIBMAJOR)'
+ SHLIBEXT=.so
+ SHOBJEXT=.o
+ # Kludge follows: (gcc makes n32 object files but ld expects o32, so we reeducate ld)
+ if test "$krb5_cv_prog_gcc" = yes; then
+ LDCOMBINE='ld -n32 -shared -ignore_unresolved -update_registry $(BUILDTOP)/so_locations -soname lib$(LIB)$(SHLIBSEXT)'
+ else
+ LDCOMBINE='ld -shared -ignore_unresolved -update_registry $(BUILDTOP)/so_locations -soname lib$(LIB)$(SHLIBSEXT)'
+ fi
+ SHLIB_EXPFLAGS='-rpath $(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ # no gprof for Irix...
+ PROFFLAGS=-p
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -Wl,-rpath -Wl,$(PROG_RPATH)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ ;;
+
+mips-sgi-irix*)
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBSEXT='.so.$(LIBMAJOR)'
+ SHLIBEXT=.so
+ SHOBJEXT=.o
+ LDCOMBINE='ld -shared -ignore_unresolved -update_registry $(BUILDTOP)/so_locations -soname lib$(LIB)$(SHLIBSEXT)'
+ SHLIB_EXPFLAGS='-rpath $(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ # no gprof for Irix...
+ PROFFLAGS=-p
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -Wl,-rpath -Wl,$(PROG_RPATH)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ ;;
+
+# untested...
+mips-sni-sysv4)
+ if test "$krb5_cv_prog_gcc" = yes; then
+ PICFLAGS=-fpic
+ LDCOMBINE='$(CC) -G -Wl,-h -Wl,lib$(LIB)$(SHLIBSEXT)'
+ else
+ PICFLAGS=-Kpic
+ LDCOMBINE='$(CC) -G -h lib$(LIB)$(SHLIBSEXT)'
+ fi
+ SHLIB_EXPFLAGS='-R$(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ SHLIBEXT=.so
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBSEXT='.so.$(LIBMAJOR)'
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -R$(PROG_RPATH)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ PROFFLAGS=-pg
+ ;;
+
+mips-*-netbsd*)
+ PICFLAGS=-fPIC
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBSEXT='.so.$(LIBMAJOR)'
+ SHLIBEXT=.so
+ LDCOMBINE='ld -shared -soname lib$(LIB)$(SHLIBSEXT)'
+ SHLIB_EXPFLAGS='-R$(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -Wl,-rpath -Wl,$(PROG_RPATH)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ PROFFLAGS=-pg
+ ;;
+
+*-*-netbsd*)
+ PICFLAGS=-fpic
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBEXT=.so
+ LDCOMBINE='ld -Bshareable'
+ SHLIB_EXPFLAGS='-R$(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -R$(PROG_RPATH)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ PROFFLAGS=-pg
+ ;;
+
+*-*-freebsd*)
+ if test -x /usr/bin/objformat ; then
+ objformat=`/usr/bin/objformat`
+ else
+ objformat="aout"
+ fi
+ PICFLAGS=-fpic
+ if test "x$objformat" = "xelf" ; then
+ SHLIBVEXT='.so.$(LIBMAJOR)'
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -Wl,-rpath -Wl,$(PROG_RPATH)'
+ else
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -R$(PROG_RPATH)'
+ fi
+ SHLIBEXT=.so
+ LDCOMBINE='ld -Bshareable'
+ SHLIB_EXPFLAGS='-R$(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ PROFFLAGS=-pg
+ ;;
+
+*-*-openbsd*)
+ PICFLAGS=-fpic
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBEXT=.so
+ LDCOMBINE='ld -Bshareable'
+ SHLIB_EXPFLAGS='-R$(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -R$(PROG_RPATH)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ PROFFLAGS=-pg
+ ;;
+
+*-*-darwin* | *-*-rhapsody*)
+ PICFLAGS=-fno-common
+ SHLIBVEXT='.$(LIBMAJOR).$(LIBMINOR).dylib'
+ SHLIBSEXT='.$(LIBMAJOR).dylib'
+ SHLIB_EXPFLAGS='$(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ SHLIBEXT=.dylib
+ LDCOMBINE='$(CC) $(LDFLAGS) -undefined warning -dynamiclib -compatibility_version $(LIBMAJOR) -current_version $(LIBMAJOR).$(LIBMINOR) -install_name "$(KRB5_LIBDIR)/lib$(LIB)$(SHLIBVEXT)"'
+ CC_LINK_SHARED='$(CC) $(LDFLAGS) $(PROG_LIBPATH) -dynamic'
+ CC_LINK_STATIC='$(CC) $(LDFLAGS) $(PROG_LIBPATH)'
+ RUN_ENV='DYLD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export DYLD_LIBRARY_PATH;'
+ ;;
+
+*-*-solaris*)
+ if test "$krb5_cv_prog_gcc" = yes; then
+ PICFLAGS=-fpic
+ LDCOMBINE='$(CC) -shared -h lib$(LIB)$(SHLIBSEXT)'
+ else
+ PICFLAGS=-Kpic
+ # Solaris cc doesn't default to stuffing the SONAME field...
+ LDCOMBINE='$(CC) -dy -G -z text -h lib$(LIB)$(SHLIBSEXT)'
+ fi
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBSEXT='.so.$(LIBMAJOR)'
+ SHLIBEXT=.so
+ SHLIB_EXPFLAGS='-R$(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ PROFFLAGS=-pg
+ CC_LINK_SHARED='$(PURE) $(CC) $(PROG_LIBPATH) -R$(PROG_RPATH)'
+ CC_LINK_STATIC='$(PURE) $(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ ;;
+
+*-*-sunos*)
+ PICFLAGS=-fpic
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBEXT=.so
+ # The following grossness is to prevent relative paths from
+ # creeping into the RPATH of an executable or library built
+ # under SunOS; the explicit setting of LD_LIBRARY_PATH does
+ # does not make it into the output file, while directories
+ # passed by "-Ldirname" do.
+ LDCOMBINE='LD_LIBRARY_PATH=`echo $(SHLIB_DIRS) | sed -e "s/-L//g" -e "s/ /:/g"` ld -dp -assert pure-text'
+ SHLIB_EXPFLAGS='-L$(SHLIB_RDIRS) $(SHLIB_EXPLIBS)'
+ PROFFLAGS=-pg
+ CC_LINK_SHARED='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"` $(PURE) $(CC) -L$(PROG_RPATH)'
+ CC_LINK_STATIC='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g` $(PURE) $(CC)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ ;;
+*-*-linux*)
+ PICFLAGS=-fPIC
+ SHLIBVEXT='.so.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBSEXT='.so.$(LIBMAJOR)'
+ SHLIBEXT=.so
+ # Linux ld doesn't default to stuffing the SONAME field...
+ # Use objdump -x to examine the fields of the library
+ LDCOMBINE='ld -shared -h lib$(LIB)$(SHLIBSEXT)'
+ SHLIB_EXPFLAGS='-R$(SHLIB_RDIRS) $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ PROFFLAGS=-pg
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -Wl,-rpath -Wl,$(PROG_RPATH)'
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ RUN_ENV='LD_LIBRARY_PATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`; export LD_LIBRARY_PATH;'
+ ;;
+
+*-*-aix*)
+ SHLIBVEXT='.a.$(LIBMAJOR).$(LIBMINOR)'
+ SHLIBEXT=.a
+ # AIX doesn't need separate PIC objects
+ SHOBJEXT=.o
+ LDCOMBINE='$(BUILDTOP)/util/makeshlib $(LIBMAJOR).$(LIBMINOR)'
+ SHLIB_EXPFLAGS=' $(SHLIB_DIRS) $(SHLIB_EXPLIBS)'
+ PROFFLAGS=-pg
+ if test "$krb5_cv_prog_gcc" = "yes" ; then
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -Xlinker -bex4:$(BUILDTOP)/util/aix.bincmds '
+ else
+ CC_LINK_SHARED='$(CC) $(PROG_LIBPATH) -bex4:$(BUILDTOP)/util/aix.bincmds '
+ fi
+ CC_LINK_STATIC='$(CC) $(PROG_LIBPATH)'
+ # $(PROG_RPATH) is here to handle things like a shared tcl library
+ RUN_ENV='LIBPATH=`echo $(PROG_LIBPATH) | sed -e "s/-L//g" -e "s/ /:/g"`:$(PROG_RPATH):/usr/lib:/usr/local/lib; export LIBPATH; '
+
+esac