diff options
author | Ezra Peisach <epeisach@mit.edu> | 1995-10-02 18:25:50 +0000 |
---|---|---|
committer | Ezra Peisach <epeisach@mit.edu> | 1995-10-02 18:25:50 +0000 |
commit | cc4c0a959f228e8f559bc8bc04e67c52b3816837 (patch) | |
tree | fe65441ab03574b5728d3b719cf102d5e5c879fc /src/aclocal.m4 | |
parent | 91501ffe7417ad2d81b1451a28681552fc492841 (diff) | |
download | krb5-cc4c0a959f228e8f559bc8bc04e67c52b3816837.tar.gz krb5-cc4c0a959f228e8f559bc8bc04e67c52b3816837.tar.xz krb5-cc4c0a959f228e8f559bc8bc04e67c52b3816837.zip |
* aclocal.m4 (DO_SUBDIRS): Add make Makefiles for broken versions
of make.
(V5_MAKE_SHARED_LIB): Changes to support version
numbering and library installation.
* configure.in: change shlib extentsion for netbsd and dirhead
rules to allow for shared library path to be included in
executable.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@6905 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/aclocal.m4')
-rw-r--r-- | src/aclocal.m4 | 65 |
1 files changed, 57 insertions, 8 deletions
diff --git a/src/aclocal.m4 b/src/aclocal.m4 index 9f708f7122..d30741bbd4 100644 --- a/src/aclocal.m4 +++ b/src/aclocal.m4 @@ -135,6 +135,7 @@ MAKE_SUBDIRS("making",all-unix, all) MAKE_SUBDIRS("cleaning",clean-unix, clean) MAKE_SUBDIRS("installing",install-unix, install) MAKE_SUBDIRS("checking",check-unix, check) +MAKE_SUBDIRS("making Makefiles",Makefiles, Makefiles) ])dnl dnl dnl drop in standard rules for all configure files -- CONFIG_RULES @@ -155,6 +156,8 @@ AC_PUSH_MAKEFILE()dnl [ SHELL=/bin/sh +Makefiles:: Makefile + Makefile: $(srcdir)/Makefile.in config.status $(SRCTOP)/config/pre.in $(SRCTOP)/config/post.in $(SHELL) config.status config.status: $(srcdir)/configure @@ -816,9 +819,12 @@ AC_SUBST(SHARED_RULE) AC_SUBST(SHARED_RULE_LOCAL) ])dnl dnl +dnl dnl This rule adds the additional Makefile fragment necessary to actually dnl create the shared library dnl +dnl V5_MAKE_SHARED_LIB(libname, version, libdir, dirname_relative_to_libdir) +dnl define(V5_MAKE_SHARED_LIB,[ if test "[$]krb5_cv_staticlibs_enabled" = yes then @@ -837,9 +843,9 @@ AC_SUBST(LD_SHLIBDIR_PREFIX) SHLIB_RPATH_DIRS= if test $krb5_cv_shlibs_use_dirs = yes ; then if test $krb5_cv_shlibs_use_colon_dirs = yes ; then - SHLIB_RPATH_DIRS="$krb5_cv_shlibs_dirhead \$(KRB5_SHLIBDIR):`pwd`/\$(TOPLIBD)" + SHLIB_RPATH_DIRS="${krb5_cv_shlibs_dirhead}$(KRB5_SHLIBDIR):`pwd`/\$(TOPLIBD)" else - SHLIB_RPATH_DIRS="$krb5_cv_shlibs_dirhead \$(KRB5_SHLIBDIR) $krb5_cv_shlibs_dirhead `pwd`/\$(TOPLIBD)" + SHLIB_RPATH_DIRS="${krb5_cv_shlibs_dirhead}\$(KRB5_SHLIBDIR) ${krb5_cv_shlibs_dirhead}`pwd`/\$(TOPLIBD)" fi fi AC_SUBST(SHLIB_RPATH_DIRS) @@ -854,20 +860,27 @@ SHEXT=$krb5_cv_shlibs_ext AC_SUBST(SHEXT) STEXT=$krb5_cv_noshlibs_ext AC_SUBST(STEXT) -DO_MAKE_SHLIB="$1.\$""(SHEXT)" +dnl export the version of the library.... +krb5_cv_shlib_version_$1=$2 +if test "$krb5_cv_shlibs_need_nover" = yes; then + DO_MAKE_SHLIB="$1.\$""(SHEXT).$2 $1.\$""(SHEXT)" +else + DO_MAKE_SHLIB="$1.\$""(SHEXT).$2" +fi +AC_SUBST(SHLIB_NAME) AC_PUSH_MAKEFILE()dnl all-unix:: [$](DO_MAKE_SHLIB) [$](SHLIB_STATIC_TARGET) clean-unix:: - $(RM) $1.[$](SHEXT) [$](SHLIB_STATIC_TARGET) + $(RM) $1.[$](SHEXT).$2 $1.[$](SHEXT) [$](SHLIB_STATIC_TARGET) -$1.[$](SHEXT): [$](LIBDONE) [$](DEPLIBS) +$1.[$](SHEXT).$2: [$](LIBDONE) [$](DEPLIBS) [$](BUILDTOP)/util/makeshlib [$]@ \ "[$](SHLIB_LIBDIRS)" \ "[$](SHLIB_LIBS)" "[$](SHLIB_LDFLAGS)" [$](LIB_SUBDIRS) - AC_POP_MAKEFILE()dnl +LinkFile($1.[$](SHEXT),$1.[$](SHEXT).$2) ],[ STEXT=$krb5_cv_noshlibs_ext AC_SUBST(STEXT) @@ -880,7 +893,43 @@ clean-unix:: AC_POP_MAKEFILE() ])dnl AC_SUBST(DO_MAKE_SHLIB) -AC_SUBST(SHLIB_STATIC_TARGET)])dnl +AC_SUBST(SHLIB_STATIC_TARGET) + +AC_ARG_ENABLE([shared], +[ --enable-shared build shared libraries],[ +LinkFileDir($3/$1.[$](SHEXT).$2, $1.[$](SHEXT).$2, $4) +AppendRule([$3/$1.[$](SHEXT): $3/$1.[$](SHEXT).$2 + [$](RM) $3/$1.[$](SHEXT) + [$](LN) $1.[$](SHEXT).$2 $3/$1.[$](SHEXT) +]) +AppendRule(clean::[ + [$](RM) $3/$1.[$](SHEXT).$2 $3/$1.[$](SHEXT) +]) +if test "$krb5_cv_shlibs_need_nover" = "yes" ; then +AppendRule([all-unix:: $3/$1.$(SHEXT).$2 $3/$1.$(SHEXT)]) +else +AppendRule([all-unix:: $3/$1.$(SHEXT).$2]) +fi +AppendRule([install:: $1.[$](SHEXT).$2 + [$](RM) [$](DESTDIR)[$](KRB5_SHLIBDIR)[$](S)$1.[$](SHEXT).$2 + [$](INSTALL_DATA) $1.[$](SHEXT).$2 \ + [$](DESTDIR)[$](KRB5_SHLIBDIR)[$](S)$1.[$](SHEXT).$2 +]) +if test "$krb5_cv_shlibs_need_nover" = "yes" ; then +AppendRule([install:: $1.[$](SHEXT).$2 + [$](RM) [$](DESTDIR)[$](KRB5_SHLIBDIR)[$](S)$1.[$](SHEXT) + [$](LN) $1.[$](SHEXT).$2 \ + [$](DESTDIR)[$](KRB5_SHLIBDIR)[$](S)$1.[$](SHEXT)]) +]) +fi +if test -n "$krb5_cv_staticlibs_enabled" ; then + AppendRule([install:: $1.[$](STEXT) + [$](INSTALL_DATA) $1.[$](STEXT) [$](DESTDIR)[$](KRB5_LIBDIR)[$](S)$1.[$](STEXT) + $(RANLIB) $(DESTDIR)$(KRB5_LIBDIR)[$](S)$1.[$](STEXT)]) + LinkFileDir($3/$1.[$](STEXT),$1.[$](STEXT),$4) + AppendRule([all-unix:: $3/$1.[$](STEXT)]) +fi +])dnl dnl dnl Defines LDARGS correctly so that we actually link with the shared library dnl @@ -896,7 +945,7 @@ if test "$krb5_cv_shlibs_enabled" = yes ; then AC_MSG_RESULT(Using shared libraries) LDARGS="$krb5_cv_shlibs_ldflag -L\$(TOPLIBD) $LDARGS" if test "$krb5_cv_exe_need_dirs" = yes; then - LDARGS="$LDARGS $krb5_cv_shlibs_dirhead \$(KRB5_SHLIBDIR) $krb5_cv_shlibs_dirhead `pwd`/\$(TOPLIBD)" + LDARGS="$LDARGS ${krb5_cv_shlibs_dirhead}\$(KRB5_SHLIBDIR) ${krb5_cv_shlibs_dirhead}`pwd`/\$(TOPLIBD)" fi SHLIB_TAIL_COMP=$krb5_cv_shlibs_tail_comp AC_SUBST(SHLIB_TAIL_COMP) |