* lib.in (EXTRA_CLEAN_TARGETS, EXTRA_CLEAN_LINKS): New variables.
authorKen Raeburn <raeburn@mit.edu>
Wed, 30 Aug 2000 23:06:55 +0000 (23:06 +0000)
committerKen Raeburn <raeburn@mit.edu>
Wed, 30 Aug 2000 23:06:55 +0000 (23:06 +0000)
(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
src/config/lib.in
src/config/pre.in
src/config/shlib.conf

index 05b37a23af6a87c80c3d7618db6aecdb7560ba6a..f910641cd34d1b0ba7b068cff152fb5f73e30c1c 100644 (file)
@@ -1,3 +1,24 @@
+2000-08-30  Ken Raeburn  <raeburn@mit.edu>
+
+       * 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  <tlyu@mit.edu>
 
        * post.in: Test for existing Makefile in directory before
index 54f7f1ecd351dd8788ba77b35d1bb0f491bbf8d8..ad37262b3b45d69bc8a95576f6896725a05f0207 100644 (file)
@@ -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
index 1b97aeb4de07e6e7dfed3de6af25222d3d50c992..ced91c4f67c576ec8894e116b34860dfcb4801cc 100644 (file)
@@ -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
 
index 5829586fdcf3d2f3715d6f160c7ebb05fa26f695..7846b0c325c4f5ae26e6c3a1ab82ffa011c04289 100644 (file)
@@ -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*)