From 5969630081b7eb43a4e6d4374407544174d77770 Mon Sep 17 00:00:00 2001 From: Ken Raeburn Date: Wed, 30 Aug 2000 23:06:55 +0000 Subject: [PATCH] * lib.in (EXTRA_CLEAN_TARGETS, EXTRA_CLEAN_LINKS): New variables. (clean-libs, clean-liblinks): Depend on targets specified in those variables. (config.status): Depend on shlib.conf. (all-framework, link-framework, clean-framework, clean-framework-link, install-framework): New targets, details to be filled in later. * pre.in (KRB5_LIB_libopt): Renamed from KDB5_LIB. (KRB5_LIB_frameworkopt): Tentative framework version for Mac OS X, details to be tuned later. (KRB5_LIB): Select between them using @LIB_LINK_OPT@. (KRB5CRYPTO_LIB*, COM_ERR_LIB*, GSS_KRB5_LIB*): Similarly. (KRB5_BASE_LIBS, GSS_LIBS): Use them. (KRB4COMPAT_LIBS): Use KRB5_BASE_LIBS. * shlib.conf: Set LIB_LINK_OPT. Set new EXTRA_* variables for darwin target. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@12638 dc483132-0cff-0310-8789-dd5450dbe970 --- src/config/ChangeLog | 21 +++++++++++++++++++++ src/config/lib.in | 29 +++++++++++++++++++++++++++-- src/config/pre.in | 28 +++++++++++++++++++++++++--- src/config/shlib.conf | 7 +++++++ 4 files changed, 80 insertions(+), 5 deletions(-) diff --git a/src/config/ChangeLog b/src/config/ChangeLog index 05b37a23a..f910641cd 100644 --- a/src/config/ChangeLog +++ b/src/config/ChangeLog @@ -1,3 +1,24 @@ +2000-08-30 Ken Raeburn + + * lib.in (EXTRA_CLEAN_TARGETS, EXTRA_CLEAN_LINKS): New variables. + (clean-libs, clean-liblinks): Depend on targets specified in those + variables. + (config.status): Depend on shlib.conf. + (all-framework, link-framework, clean-framework, + clean-framework-link, install-framework): New targets, details to + be filled in later. + + * pre.in (KRB5_LIB_libopt): Renamed from KDB5_LIB. + (KRB5_LIB_frameworkopt): Tentative framework version for Mac OS X, + details to be tuned later. + (KRB5_LIB): Select between them using @LIB_LINK_OPT@. + (KRB5CRYPTO_LIB*, COM_ERR_LIB*, GSS_KRB5_LIB*): Similarly. + (KRB5_BASE_LIBS, GSS_LIBS): Use them. + (KRB4COMPAT_LIBS): Use KRB5_BASE_LIBS. + + * shlib.conf: Set LIB_LINK_OPT. Set new EXTRA_* variables for + darwin target. + 2000-08-29 Tom Yu * post.in: Test for existing Makefile in directory before diff --git a/src/config/lib.in b/src/config/lib.in index 54f7f1ecd..ad37262b3 100644 --- a/src/config/lib.in +++ b/src/config/lib.in @@ -40,6 +40,10 @@ LIBLINKS=@LIBLINKS@ # Set by configure; list of install targets LIBINSTLIST=@LIBINSTLIST@ +# Set by configure; list of extra targets when cleaning +EXTRA_CLEAN_TARGETS=@EXTRA_CLEAN_TARGETS@ +EXTRA_CLEAN_LINKS=@EXTRA_CLEAN_LINKS@ + # Some of these should really move to pre.in, since programs will need # it too. (e.g. stuff that has dependencies on the libraries) @@ -128,20 +132,36 @@ $(TOPLIBD)/lib$(LIB)$(PFLIBEXT): lib$(LIB)$(PFLIBEXT) all-libs: $(LIBLIST) all-liblinks: $(LIBLINKS) -clean-libs: +all-framework: + @echo lxs, put something here in config/lib.in for building frameworks + @false + +link-framework: + @echo lxs, put something here in config/lib.in for symlinking frameworks + @false + +clean-libs: $(EXTRA_CLEAN_TARGETS) $(RM) lib$(LIB)$(STLIBEXT) $(RM) lib$(LIB)$(SHLIBVEXT) $(RM) lib$(LIB)$(SHLIBSEXT) $(RM) lib$(LIB)$(SHLIBEXT) $(RM) lib$(LIB)$(PFLIBEXT) -clean-liblinks: +clean-liblinks: $(EXTRA_CLEAN_LINKS) $(RM) $(TOPLIBD)/lib$(LIB)$(STLIBEXT) $(RM) $(TOPLIBD)/lib$(LIB)$(SHLIBVEXT) $(RM) $(TOPLIBD)/lib$(LIB)$(SHLIBSEXT) $(RM) $(TOPLIBD)/lib$(LIB)$(SHLIBEXT) $(RM) $(TOPLIBD)/lib$(LIB)$(PFLIBEXT) +clean-framework: + @echo lxs, put something here in config/lib.in for cleaning frameworks + @false + +clean-framework-link: + @echo lxs, put something here in config/lib.in for cleaning framework links + @false + install-libs: $(LIBINSTLIST) install-static: $(RM) $(DESTDIR)$(KRB5_LIBDIR)/lib$(LIB)$(STLIBEXT) @@ -162,7 +182,12 @@ install-profiled: $(INSTALL_DATA) lib$(LIB)$(PFLIBEXT) $(DESTDIR)$(KRB5_LIBDIR) $(RANLIB) $(DESTDIR)$(KRB5_LIBDIR)/lib$(LIB)$(PFLIBEXT) +install-framework: + @echo lxs, put something here in config/lib.in for installing frameworks + @false + Makefile: $(SRCTOP)/config/lib.in +config.status: $(SRCTOP)/config/shlib.conf # Use the following if links need to be made to $(TOPLIBD): # all-unix:: all-liblinks diff --git a/src/config/pre.in b/src/config/pre.in index 1b97aeb4d..ced91c4f6 100644 --- a/src/config/pre.in +++ b/src/config/pre.in @@ -240,27 +240,49 @@ SS_LIB = $(TOPLIBD)/libss.a KDB5_LIB = -lkdb5 DB_LIB = -ldb +KRB5_LIB = $(KRB5_LIB_@LIB_LINK_OPT@) +KRB5_LIB_libopt = -lkrb5 +KRB5_LIB_frameworkopt = -framework Kerberos5 + +KRB5CRYPTO_LIB = $(KRB5CRYPTO_LIB_@LIB_LINK_OPT@) +KRB5CRYPTO_LIB_libopt = -lk5crypto +KRB5CRYPTO_LIB_frameworkopt = -framework Kerberos5Crypto + +COM_ERR_LIB = $(COMERR_LIB_@LIB_LINK_OPT@) +COM_ERR_LIB_libopt = -lcom_err +COM_ERR_LIB_frameworkopt = -framework FooComErr + +GSS_KRB5_LIB = $(GSS_KRB5_LIB_@LIB_LINK_OPT@) +GSS_KRB5_LIB_libopt = -lgssapi_krb5 +GSS_KRB5_LIB_frameworkopt = -framework Krb5GSSAPILib + # KRB4_LIB is -lkrb4 if building --with-krb4 +# needs fixing if ever used on Mac OS X! KRB4_LIB = @KRB4_LIB@ # DES425_LIB is -ldes425 if building --with-krb4 +# needs fixing if ever used on Mac OS X! DES425_LIB = @DES425_LIB@ # KRB524_LIB is $(BUILDTOP)/krb524/libkrb524.a if building --with-krb4 +# needs fixing if ever used on Mac OS X! KRB524_LIB = @KRB524_LIB@ # HESIOD_LIBS is -lhesiod... HESIOD_LIBS = @HESIOD_LIBS@ -KRB5_BASE_LIBS = -lkrb5 -lk5crypto -lcom_err $(GEN_LIB) $(LIBS) -KRB4COMPAT_LIBS = $(KRB4_LIB) -lkrb5 $(DES425_LIB) -lk5crypto -lcom_err $(GEN_LIB) $(LIBS) +KRB5_BASE_LIBS = $(KRB5_LIB) $(K5CRYPTO_LIB) $(COM_ERR_LIB) $(GEN_LIB) $(LIBS) +KRB4COMPAT_LIBS = $(KRB4_LIB) $(DES425_LIB) $(KRB5_BASE_LIBS) KDB5_LIBS = $(KDB5_LIB) $(DB_LIB) -GSS_LIBS = -lgssapi_krb5 +GSS_LIBS = $(GSS_KRB5_LIB) +# needs fixing if ever used on Mac OS X! GSSRPC_LIBS = -lgssrpc -ldyn $(GSS_LIBS) KADM_COMM_LIBS = $(GSSRPC_LIBS) +# need fixing if ever used on Mac OS X! KADMSRV_LIBS = -lkadm5srv $(HESIOD_LIBS) $(KDB5_LIBS) $(KADM_COMM_LIBS) KADMCLNT_LIBS = -lkadm5clnt $(KADM_COMM_LIBS) +# need fixing if ever used on Mac OS X! UTIL_LIB = -lkrb5util PTY_LIB = -lpty diff --git a/src/config/shlib.conf b/src/config/shlib.conf index 5829586fd..7846b0c32 100644 --- a/src/config/shlib.conf +++ b/src/config/shlib.conf @@ -1,6 +1,7 @@ # # Set up some defaults. # +LIB_LINK_OPT=libopt STLIBEXT=.a # Default to being unable to build shared libraries. SHLIBEXT=.so-nobuild @@ -182,6 +183,12 @@ mips-*-netbsd*) 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;' + LIB_LINK_OPT=frameworkopt + EXTRA_LIB_TARGETS=all-framework + EXTRA_LIBLINK_TARGETS=link-framework + EXTRA_LIBINST_TARGETS=install-framework + EXTRA_CLEAN_TARGETS=clean-framework + EXTRA_CLEAN_LINKS=clean-framework-link ;; *-*-solaris*) -- 2.26.2