Blame src/config/libnover.in

Packit fd8b60
### config/libnover.in
Packit fd8b60
# *** keep this in sync with lib.in
Packit fd8b60
#
Packit fd8b60
# Makefile fragment that creates shared libraries sans version
Packit fd8b60
# info (plugin modules).
Packit fd8b60
#
Packit fd8b60
# The following variables must be set in the Makefile.in:
Packit fd8b60
#
Packit fd8b60
# LIBBASE	library name without "lib" or extension
Packit fd8b60
# SHLIB_EXPDEPS	list of libraries that this one has explicit
Packit fd8b60
#			dependencies on, pref. in the form libfoo$(SHLIBEXT)
Packit fd8b60
# SHLIB_EXPLIBS	list of libraries that this one has explicit
Packit fd8b60
#			dependencies on, in "-lfoo" form.
Packit fd8b60
# RELDIR	path to this directory relative to $(TOPLIBD)
Packit fd8b60
#
Packit fd8b60
# Makefile.in can also override the defaults for SHLIB_DIRS,
Packit fd8b60
# SHLIB_RDIRS, and STOBJLISTS from pre.in.
Packit fd8b60
Packit fd8b60
LIBPREFIX=
Packit fd8b60
Packit fd8b60
SHOBJLISTS=$(STOBJLISTS:.ST=.SH)
Packit fd8b60
PFOBJLISTS=$(STOBJLISTS:.ST=.PF)
Packit fd8b60
Packit fd8b60
dummy-target-1 $(SUBDIROBJLISTS) $(SUBDIROBJLISTS:.ST=.SH) $(SUBDIROBJLISTS:.ST=.PF): all-recurse
Packit fd8b60
Packit fd8b60
# Gets invoked as $(PARSE_OBJLISTS) list-of-OBJS.*-files
Packit fd8b60
PARSE_OBJLISTS= set -x && $(PERL) -p -e 'BEGIN { $$SIG{__WARN__} = sub {die @_} }; $$e=$$ARGV; $$e =~ s/OBJS\...$$//; s/^/ /; s/ $$//; s/ / $$e/g;'
Packit fd8b60
Packit fd8b60
LIBINSTLIST=install-shared
Packit fd8b60
Packit fd8b60
libkrb5_$(LIBBASE)$(STLIBEXT): $(STOBJLISTS)
Packit fd8b60
	$(RM) $@
Packit fd8b60
	@echo "building static $(LIBBASE) library"
Packit fd8b60
	set -x; objlist=`$(PARSE_OBJLISTS) $(STOBJLISTS)` && $(AR) cq $@ $$objlist
Packit fd8b60
	$(RANLIB) $@
Packit fd8b60
Packit fd8b60
$(LIBBASE)$(DYNOBJEXT): $(SHOBJLISTS) $(DYNOBJ_EXPDEPS) $(SHLIB_EXPORT_FILE_DEP)
Packit fd8b60
	$(RM) $@
Packit fd8b60
	@echo "building dynamic $(LIBBASE) object"
Packit fd8b60
	set -x; objlist=`$(PARSE_OBJLISTS) $(SHOBJLISTS)` && $(MAKE_DYNOBJ_COMMAND)
Packit fd8b60
Packit fd8b60
binutils.versions: $(SHLIB_EXPORT_FILE) Makefile
Packit fd8b60
	echo >  binutils.versions "HIDDEN { local: __*; _rest*; _save*; *; };"
Packit fd8b60
	echo >> binutils.versions "$(LIBBASE)_$(LIBMAJOR)_MIT {"
Packit fd8b60
	sed  >> binutils.versions < $(SHLIB_EXPORT_FILE) "s/$$/;/"
Packit fd8b60
	echo >> binutils.versions "};"
Packit fd8b60
Packit fd8b60
osf1.exports: $(SHLIB_EXPORT_FILE) Makefile
Packit fd8b60
	$(RM) osf1.tmp osf1.exports
Packit fd8b60
	sed "s/^/-exported_symbol /" < $(SHLIB_EXPORT_FILE) > osf1.tmp
Packit fd8b60
	for f in . $(LIBINITFUNC); do \
Packit fd8b60
	  if test "$$f" != "." ; then \
Packit fd8b60
	    echo " -init $$f"__auxinit >> osf1.tmp; \
Packit fd8b60
	  else :; fi; \
Packit fd8b60
	done
Packit fd8b60
	a=""; \
Packit fd8b60
	for f in . $(LIBFINIFUNC); do \
Packit fd8b60
	  if test "$$f" != "." ; then \
Packit fd8b60
	    a="-fini $$f $$a"; \
Packit fd8b60
	  else :; fi; \
Packit fd8b60
	done; echo " $$a" >> osf1.tmp; \
Packit fd8b60
	mv -f osf1.tmp osf1.exports
Packit fd8b60
Packit fd8b60
hpux.exports: $(SHLIB_EXPORT_FILE) Makefile
Packit fd8b60
	$(RM) hpux.tmp hpux.exports
Packit fd8b60
	sed "s/^/+e /" < $(SHLIB_EXPORT_FILE) > hpux.tmp
Packit fd8b60
	a=""; \
Packit fd8b60
	for f in . $(LIBFINIFUNC); do \
Packit fd8b60
	  if test "$$f" != .; then \
Packit fd8b60
	    a="+I $${f}__auxfini $$a"; \
Packit fd8b60
	  else :; fi; \
Packit fd8b60
	done; echo "$$a" >> hpux.tmp
Packit fd8b60
	echo "+e errno" >> hpux.tmp
Packit fd8b60
	mv -f hpux.tmp hpux.exports
Packit fd8b60
Packit fd8b60
darwin.exports: $(SHLIB_EXPORT_FILE) Makefile
Packit fd8b60
	$(RM) darwin.exports
Packit fd8b60
	sed "s/^/_/" < $(SHLIB_EXPORT_FILE) > darwin.exports
Packit fd8b60
Packit fd8b60
libkrb5_$(LIBBASE)$(PFLIBEXT): $(PFOBJLISTS)
Packit fd8b60
	$(RM) $@
Packit fd8b60
	@echo "building profiled $(LIBBASE) library"
Packit fd8b60
	set -x; objlist=`$(PARSE_OBJLISTS) $(PFOBJLISTS)` && $(AR) cq $@ $$objlist
Packit fd8b60
	$(RANLIB) $@
Packit fd8b60
Packit fd8b60
# For static builds, we make a symlink in the main library directory,
Packit fd8b60
# allowing the plugin library to be a dependency of the core libraries
Packit fd8b60
# which use it.
Packit fd8b60
$(TOPLIBD)/libkrb5_$(LIBBASE)$(STLIBEXT):
Packit fd8b60
	$(RM) $@
Packit fd8b60
	(cd $(TOPLIBD) && $(LN_S) $(RELDIR)/libkrb5_$(LIBBASE)$(STLIBEXT) .)
Packit fd8b60
Packit fd8b60
# For shared builds, we make a symlink in the parent directory, allowing
Packit fd8b60
# tests to point plugin_base_dir at $(BUILDTOP)/plugins.
Packit fd8b60
../$(LIBBASE)$(DYNOBJEXT):
Packit fd8b60
	$(RM) $@
Packit fd8b60
	(cd .. && $(LN_S) `basename $(mydir)`/$(LIBBASE)$(DYNOBJEXT) .)
Packit fd8b60
Packit fd8b60
all-liblinks: all-libs $(PLUGINLINK)
Packit fd8b60
all-libs: $(PLUGIN)
Packit fd8b60
Packit fd8b60
clean-libs:
Packit fd8b60
	$(RM) $(LIBBASE)$(DYNOBJEXT)
Packit fd8b60
	$(RM) binutils.versions osf1.exports darwin.exports hpux.exports
Packit fd8b60
Packit fd8b60
clean-liblinks:
Packit fd8b60
	$(RM) $(PLUGINLINK)
Packit fd8b60
Packit fd8b60
install-libs: $(PLUGININST)
Packit fd8b60
install-static:
Packit fd8b60
	$(RM) $(DESTDIR)$(KRB5_LIBDIR)/libkrb5_$(LIBBASE)$(STLIBEXT)
Packit fd8b60
	$(INSTALL_DATA) libkrb5_$(LIBBASE)$(STLIBEXT) $(DESTDIR)$(KRB5_LIBDIR)
Packit fd8b60
	$(RANLIB) $(DESTDIR)$(KRB5_LIBDIR)/libkrb5_$(LIBBASE)$(STLIBEXT)
Packit fd8b60
install-plugin:
Packit fd8b60
	$(RM) $(DESTDIR)$(MODULE_INSTALL_DIR)/$(LIBBASE)$(DYNOBJEXT)
Packit fd8b60
	$(INSTALL_SHLIB) $(LIBBASE)$(DYNOBJEXT) $(DESTDIR)$(MODULE_INSTALL_DIR)
Packit fd8b60
Packit fd8b60
Makefile: $(top_srcdir)/config/libnover.in
Packit fd8b60
$(BUILDTOP)/config.status: $(top_srcdir)/config/shlib.conf
Packit fd8b60
Packit fd8b60
# Use the following if links need to be made to $(TOPLIBD):
Packit fd8b60
# all-unix: all-liblinks
Packit fd8b60
# install-unix: install-libs
Packit fd8b60
# clean-unix:: clean-liblinks clean-libs
Packit fd8b60
Packit fd8b60
# Use the following if links need not be made:
Packit fd8b60
# all-unix: all-libs
Packit fd8b60
# install-unix: install-libs
Packit fd8b60
# clean-unix:: clean-libs
Packit fd8b60
Packit fd8b60
###
Packit fd8b60
### end config/libnovers.in