Makefile.in   [plain text]


thisconfigdir=../..
myfulldir=lib/gssapi
mydir=lib/gssapi
BUILDTOP=$(REL)..$(S)..
SUBDIRS= generic mechglue krb5 spnego
DEFS=

##DOSLIBNAME=$(OUTPRE)gssapi.lib
##DOSOBJFILELIST=@$(OUTPRE)mechglue.lst @$(OUTPRE)spnego.lst @$(OUTPRE)generic.lst @$(OUTPRE)krb5.lst @$(OUTPRE)gssapi.lst
##DOSOBJFILEDEP=$(OUTPRE)mechglue.lst $(OUTPRE)spnego.lst $(OUTPRE)generic.lst $(OUTPRE)krb5.lst $(OUTPRE)gssapi.lst

##DOSOBJFILE=$(OUTPRE)gssapi.lst
##DOSLIBOBJS=$(OBJS)

##DOS##DLL_EXP_TYPE=GSS

LOCALINCLUDES = -Igeneric -I$(srcdir)/generic -Ikrb5 -I$(srcdir)/krb5 -I$(srcdir)/mechglue
STLIBOBJS=\
	gss_libinit.o

OBJS=\
	$(OUTPRE)gss_libinit.$(OBJEXT)

SRCS=\
	$(srcdir)/gss_libinit.c

LIBBASE=gssapi_krb5
LIBMAJOR=2
LIBMINOR=2
LIBINITFUNC=gssint_lib_init
LIBFINIFUNC=gssint_lib_fini
STOBJLISTS=OBJS.ST generic/OBJS.ST mechglue/OBJS.ST krb5/OBJS.ST spnego/OBJS.ST
SUBDIROBJLISTS=generic/OBJS.ST mechglue/OBJS.ST krb5/OBJS.ST spnego/OBJS.ST
SHLIB_EXPDEPS=\
	$(KRB5_DEPLIB) $(CRYPTO_DEPLIB) $(SUPPORT_DEPLIB) $(COM_ERR_DEPLIB)
SHLIB_EXPLIBS=-lkrb5 -lk5crypto -lcom_err $(SUPPORT_LIB) $(DL_LIB) $(LIBS)
SHLIB_DIRS=-L$(TOPLIBD)
SHLIB_RDIRS=$(KRB5_LIBDIR)
RELDIR=gssapi

all-unix:: all-liblinks @MAINT@ verify-calling-conventions-gssapi

install-unix:: install-libs

clean-unix:: clean-liblinks clean-libs clean-libobjs clean-misc-unix

clean-windows::
	$(RM) gssapi.lib gssapi.bak

clean-misc-unix: clean-recurse
	$(RM) merged-gssapi-header.h
	$(RM) -r $(EHDRDIR)

EHDRDIR=$(BUILDTOP)$(S)include$(S)gssapi
EXPORTED_HEADERS= \
	$(EHDRDIR)$(S)gssapi_krb5.h \
	$(EHDRDIR)$(S)gssapi_generic.h \
	$(EHDRDIR)$(S)gssapi.h
merged-gssapi-header.h: $(EXPORTED_HEADERS)
	cat $(EXPORTED_HEADERS) > merged.tmp
	$(MV) merged.tmp merged-gssapi-header.h
verify-calling-conventions-gssapi: merged-gssapi-header.h
	$(PERL) -w $(SRCTOP)/util/def-check.pl merged-gssapi-header.h $(srcdir)/../gssapi32.def

all-windows::
	cd generic
	@echo Making in gssapi\generic
	$(MAKE) -$(MFLAGS)
	cd ..\krb5
	@echo Making in gssapi\krb5
	$(MAKE) -$(MFLAGS)
	cd ..\mechglue
	@echo Making in gssapi\mechglue
	$(MAKE) -$(MFLAGS)
	cd ..\spnego
	@echo Making in gssapi\spnego
	$(MAKE) -$(MFLAGS)
	cd ..

clean-windows::
	cd generic
	@echo Making clean in gssapi\generic
	$(MAKE) -$(MFLAGS) clean
	cd ..\krb5
	@echo Making clean in gssapi\krb5
	$(MAKE) -$(MFLAGS) clean
	cd ..\mechglue
	@echo Making clean in gssapi\mechglue
	$(MAKE) -$(MFLAGS) clean
	cd ..\spnego
	@echo Making clean in gssapi\spnego
	$(MAKE) -$(MFLAGS) clean
	cd ..
	@echo Making clean in gssapi

# These rules are an attempt to handle several different problems:
#
# Certain files in subdirectories must be made current by the
# recursion step before we can build files in this directory that
# depend on them.  Existing but out-of-date versions must not be used.
#
# In a parallel make, nothing should be built more than once.  This
# effect can be exaggerated for testing by sticking "sleep 5" into the
# rules for generating the files in subdirectories.  For example, in
# between testing for a directory and creating it -- do you then get
# mkdir complaining that the directory exists?  Adding the sleep
# command may also exaggerate the build-with-outdated-headers problem,
# by causing the timestamp on the newly generated header to be several
# seconds newer than object files built with its old version, even on
# fast machines where the UNIX filesystem's one-second granularity
# would mask the problem.
#
# We must not cause these files to always be considered newly updated
# when it comes time to build the object files in this directory.
# Otherwise, we wind up recompiling some files every time we run make.

# This set of rules fails the parallel make case; it can build
# gssapi-include and all-recurse at the same time, and both will
# create include/gssapi and gssapi.h.
#$(BUILDTOP)/include/gssapi/gssapi.h: generic/gssapi.h
#	(cd generic && $(MAKE) gssapi-include)
#generic/gssapi.h: generic/gssapi.hin
#	(cd generic && $(MAKE) gssapi.h)
#generic/gssapi_err_generic.h: generic/gssapi_err_generic.et
#	(cd generic && $(MAKE) gssapi_err_generic.h)
#krb5/gssapi_err_krb5.h: krb5/gssapi_err_krb5.et
#	(cd krb5 && $(MAKE) gssapi_err_krb5.h)

# This version, without the no-op command to run, reportedly caused
# repeated rebuilds in certain cases.  With the no-op command, it
# appears to be properly serializing the subdir processing and local
# compiles... so far.
##DOS##!if 0
$(EXPORTED_HEADERS) generic/gssapi.h krb5/gssapi_err_krb5.h generic/gssapi_err_generic.h krb5/gssapi_krb5.h: all-recurse
	: $@ updated by recursion rule
##DOS##!endif


@lib_frag@
@libobj_frag@

# +++ Dependency line eater +++
# 
# Makefile dependencies follow.  This must be the last section in
# the Makefile.in file
#
gss_libinit.so gss_libinit.po $(OUTPRE)gss_libinit.$(OBJEXT): \
  $(BUILDTOP)/include/autoconf.h $(BUILDTOP)/include/gssapi/gssapi.h \
  $(BUILDTOP)/include/krb5/krb5.h $(BUILDTOP)/include/osconf.h \
  $(BUILDTOP)/include/profile.h $(COM_ERR_DEPS) $(SRCTOP)/include/gssapi.h \
  $(SRCTOP)/include/k5-buf.h $(SRCTOP)/include/k5-err.h \
  $(SRCTOP)/include/k5-gmt_mktime.h $(SRCTOP)/include/k5-int-pkinit.h \
  $(SRCTOP)/include/k5-int.h $(SRCTOP)/include/k5-platform.h \
  $(SRCTOP)/include/k5-plugin.h $(SRCTOP)/include/k5-thread.h \
  $(SRCTOP)/include/krb5.h $(SRCTOP)/include/krb5/locate_plugin.h \
  $(SRCTOP)/include/krb5/preauth_plugin.h $(SRCTOP)/include/port-sockets.h \
  $(SRCTOP)/include/socket-utils.h $(srcdir)/generic/gssapiP_generic.h \
  $(srcdir)/generic/gssapi_generic.h $(srcdir)/krb5/gssapiP_krb5.h \
  $(srcdir)/mechglue/mechglue.h $(srcdir)/mechglue/mglueP.h \
  generic/gssapi_err_generic.h gss_libinit.c gss_libinit.h \
  krb5/gssapi_err_krb5.h krb5/gssapi_krb5.h