@@ -1,413 +1,74 @@ -# Makefile.in -- -# -# This file is a Makefile for the tls Tcl extension. If it has the name -# "Makefile.in" then it is a template for a Makefile; to generate the -# actual Makefile, run "./configure", which is a configuration script -# generated by the "autoconf" program (constructs like "@foo@" will get -# replaced in the actual Makefile. -# -# Copyright (c) 1999-2000 Ajuba Solutions. -# All rights reserved. -# -# See the file "license.terms" for information on usage and redistribution -# of this file, and for a DISCLAIMER OF ALL WARRANTIES. -# -# RCS: @(#) $Id: Makefile.in,v 1.29 2010/08/12 01:28:06 hobbs2 Exp $ - - -#======================================================================== -# Enumerate the names of the source files included in this package. -# This will be used when a dist target is added to the Makefile. -#======================================================================== - -PKG_SOURCES = tls.c tlsIO.c tlsBIO.c tlsX509.c fixstrtod.c -PKG_OBJECTS = tls.$(OBJEXT) tlsIO.$(OBJEXT) tlsBIO.$(OBJEXT) \ - tlsX509.$(OBJEXT) fixstrtod.$(OBJEXT) - -#======================================================================== -# RUNTIME_SOURCES identifies Tcl runtime files that are associated with -# this package that need to be installed, if any. -#======================================================================== - -PKG_TCL_SOURCES = tls.tcl - -#======================================================================== -# This is a list of header files to be installed -#======================================================================== - -PKG_HEADERS = tls.h - -#======================================================================== -# Variables and AC_SUBST cases added for tls. -#======================================================================== - -SSL_DIR = @SSL_DIR@ -SSL_LIB_DIR = @SSL_LIB_DIR@ -SSL_INCLUDE_DIR = @SSL_INCLUDE_DIR@ -SSL_INCLUDE_DIR_NATIVE = @SSL_INCLUDE_DIR_NATIVE@ -SSL_INCLUDES = -I$(SSL_INCLUDE_DIR_NATIVE) - -#======================================================================== -# "PKG_LIB_FILE" refers to the library (dynamic or static as per -# configuration options) composed of the named objects. -#======================================================================== - -PKG_LIB_FILE = @PKG_LIB_FILE@ -PKG_STUB_LIB_FILE = @PKG_STUB_LIB_FILE@ - -lib_BINARIES = $(PKG_LIB_FILE) -BINARIES = $(lib_BINARIES) - -SHELL = @SHELL@ - -srcdir = @srcdir@ -prefix = @prefix@ -exec_prefix = @exec_prefix@ - -bindir = @bindir@ -libdir = @libdir@ -datadir = @datadir@ -mandir = @mandir@ -includedir = @includedir@ - -DESTDIR = - -PKG_DIR = $(PACKAGE_NAME)$(PACKAGE_VERSION) -pkgdatadir = $(datadir)/$(PKG_DIR) -pkglibdir = $(libdir)/$(PKG_DIR) -pkgincludedir = $(includedir)/$(PKG_DIR) - -top_builddir = . - -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ - -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -CC = @CC@ -CFLAGS_DEFAULT = @CFLAGS_DEFAULT@ -CFLAGS_WARNING = @CFLAGS_WARNING@ -CLEANFILES = @CLEANFILES@ -EXEEXT = @EXEEXT@ -LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ -MAKE_LIB = @MAKE_LIB@ -MAKE_SHARED_LIB = @MAKE_SHARED_LIB@ -MAKE_STATIC_LIB = @MAKE_STATIC_LIB@ -MAKE_STUB_LIB = @MAKE_STUB_LIB@ -OBJEXT = @OBJEXT@ -RANLIB = @RANLIB@ -RANLIB_STUB = @RANLIB_STUB@ -SHLIB_CFLAGS = @SHLIB_CFLAGS@ -SHLIB_LD = @SHLIB_LD@ -SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ -STLIB_LD = @STLIB_LD@ -TCL_DEFS = @TCL_DEFS@ -TCL_BIN_DIR = @TCL_BIN_DIR@ -TCL_SRC_DIR = @TCL_SRC_DIR@ -# This is necessary for packages that use private Tcl headers -#TCL_TOP_DIR_NATIVE = @TCL_TOP_DIR_NATIVE@ -# Not used, but retained for reference of what libs Tcl required -TCL_LIBS = @TCL_LIBS@ - -#======================================================================== -# TCLLIBPATH seeds the auto_path in Tcl's init.tcl so we can test our -# package without installing. The other environment variables allow us -# to test against an uninstalled Tcl. Add special env vars that you -# require for testing here (like TCLX_LIBRARY). -#======================================================================== - -EXTRA_PATH = $(top_builddir):$(TCL_BIN_DIR) -TCLSH_ENV = TCL_LIBRARY=`@CYGPATH@ $(TCL_SRC_DIR)/library` \ - @LD_LIBRARY_PATH_VAR@="$(EXTRA_PATH):$(@LD_LIBRARY_PATH_VAR@)" \ - PATH="$(EXTRA_PATH):$(PATH)" \ - TCLLIBPATH="$(top_builddir)" -TCLSH_PROG = @TCLSH_PROG@ -TCLSH = $(TCLSH_ENV) $(TCLSH_PROG) -SHARED_BUILD = @SHARED_BUILD@ - -INCLUDES = @PKG_INCLUDES@ @TCL_INCLUDES@ $(SSL_INCLUDES) - -PKG_CFLAGS = @PKG_CFLAGS@ - -#DEFS = $(TCL_DEFS) @DEFS@ $(EXTRA_CFLAGS) -DEFS = @DEFS@ $(PKG_CFLAGS) - -CONFIG_CLEAN_FILES = Makefile pkgIndex.tcl - -CPPFLAGS = @CPPFLAGS@ -LIBS = @PKG_LIBS@ @LIBS@ -AR = ar -CFLAGS = @CFLAGS@ -COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) - -#======================================================================== -# Start of user-definable TARGETS section -#======================================================================== - -#======================================================================== -# TEA TARGETS. Please note that the "libraries:" target refers to platform -# independent files, and the "binaries:" target inclues executable programs and -# platform-dependent libraries. Modify these targets so that they install -# the various pieces of your package. The make and install rules -# for the BINARIES that you specified above have already been done. -#======================================================================== - -all: binaries libraries doc - -#======================================================================== -# The binaries target builds executable programs, Windows .dll's, unix -# shared/static libraries, and any other platform-dependent files. -# The list of targets to build for "binaries:" is specified at the top -# of the Makefile, in the "BINARIES" variable. -#======================================================================== - -binaries: $(BINARIES) pkgIndex.tcl - -libraries: $(PKG_TCL_SOURCES) - -doc: - -install: all install-binaries install-libraries install-doc - -install-binaries: binaries install-lib-binaries install-bin-binaries - -#======================================================================== -# This rule installs platform-independent files, such as header files. -#======================================================================== - -install-libraries: libraries - @mkdir -p $(DESTDIR)$(includedir) - @echo "Installing header files in $(DESTDIR)$(includedir)" - @list='$(PKG_HEADERS)'; for i in $$list; do \ - echo "Installing $(srcdir)/$$i" ; \ - $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(includedir) ; \ - done; - -#======================================================================== -# Install documentation. Unix manpages should go in the $(mandir) -# directory. -#======================================================================== - -install-doc: doc -# @mkdir -p $(DESTDIR)$(mandir)/mann -# @echo "Installing documentation in $(DESTDIR)$(mandir)" -# @for i in $(srcdir)/doc/*.n; do \ -# echo "Installing $$i"; \ -# rm -f $(DESTDIR)$(mandir)/mann/`basename $$i`; \ -# $(INSTALL_DATA) $$i $(DESTDIR)$(mandir)/mann ; \ -# done - -test: binaries libraries - echo "load $(PKG_LIB_FILE); \ - if {![file exists tls.tcl]} { \ - file copy [file join $(srcdir) tls.tcl] tls.tcl \ - } ;\ - source [file join $(srcdir) tls.tcl]; \ - set argv {$(TESTFLAGS)}; \ - source [file join $(srcdir) tests all.tcl]" | $(TCLSH) - -shell: binaries libraries - @$(TCLSH) $(SCRIPT) - -gdb: - $(TCLSH_ENV) gdb $(TCLSH_PROG) $(SCRIPT) - -depend: - -#======================================================================== -# $(PKG_LIB_FILE) should be listed as part of the BINARIES variable -# mentioned above. That will ensure that this target is built when you -# run "make binaries". -# -# The $(PKG_OBJECTS) objects are created and linked into the final -# library. In most cases these object files will correspond to the -# source files above. -#======================================================================== - -$(PKG_LIB_FILE): $(PKG_OBJECTS) - -rm -f $(PKG_LIB_FILE) - ${MAKE_LIB} - -$(RANLIB) $(PKG_LIB_FILE) - -#======================================================================== -# We need to enumerate the list of .c to .o lines here. -# -# In the following lines, $(srcdir) refers to the toplevel directory -# containing your extension. If your sources are in a subdirectory, -# you will have to modify the paths to reflect this: -# -# sample.$(OBJEXT): $(srcdir)/generic/sample.c -# $(COMPILE) -c `@CYGPATH@ $(srcdir)/generic/sample.c` -o $@ -# -# Setting the VPATH variable to a list of paths will cause the makefile -# to look into these paths when resolving .c to .obj dependencies. -# As necessary, add $(srcdir):$(srcdir)/compat:.... -#======================================================================== - -VPATH = $(srcdir) - -.c.@OBJEXT@: - $(COMPILE) -c `@CYGPATH@ $<` -o $@ - -#======================================================================== -# Create the pkgIndex.tcl file. -# It is usually easiest to let Tcl do this for you with pkg_mkIndex, but -# you may find that you need to customize the package. If so, either -# modify the -hand version, or create a pkgIndex.tcl.in file and have -# the configure script output the pkgIndex.tcl by editing configure.in. -#======================================================================== - -pkgIndex.tcl-auto: - ( echo pkg_mkIndex . $(PKG_LIB_FILE) \; exit; ) | $(TCLSH) - -pkgIndex.tcl: - (echo 'package ifneeded $(PACKAGE_NAME) $(PACKAGE_VERSION) \ - "[list source [file join $$dir tls.tcl]] ; \ - [list tls::initlib $$dir $(PKG_LIB_FILE)]"'\ - ) > pkgIndex.tcl - -#======================================================================== -# End of user-definable section -#======================================================================== - -#======================================================================== -# Don't modify the file to clean here. Instead, set the "CLEANFILES" -# variable in configure.in -#======================================================================== - -clean: - -test -z "$(BINARIES)" || rm -f $(BINARIES) - -rm -f *.$(OBJEXT) core *.core - -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) - -distclean: clean - -rm -f *.tab.c - -rm -f $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log config.status - -COMPEXE = gzip -COMPEXT = gz -COMPRESS = tar cvf - $(PKG_DIR) | $(COMPEXE) > $(PKG_DIR)-src.tar.$(COMPEXT) -DIST_ROOT = /tmp/dist -DIST_DIR = $(DIST_ROOT)/$(PKG_DIR) - -dist-clean: - rm -rf $(DIST_DIR) $(DIST_ROOT)/$(PKG_DIR).tar.$(COMPEXT) - -dist: dist-clean - mkdir -p $(DIST_DIR) - cp -p $(srcdir)/README.txt $(srcdir)/ChangeLog $(srcdir)/tls.htm \ - $(srcdir)/configure $(srcdir)/configure.in \ - $(srcdir)/Makefile.in $(srcdir)/*.[ch] \ - $(srcdir)/license.terms \ - $(srcdir)/aclocal.m4 $(srcdir)/tls.tcl \ - $(DIST_DIR) - chmod 664 $(DIST_DIR)/Makefile.in $(DIST_DIR)/aclocal.m4 - chmod 775 $(DIST_DIR)/configure $(DIST_DIR)/configure.in - - mkdir $(DIST_DIR)/tclconfig - cp -p $(srcdir)/tclconfig/install-sh $(srcdir)/tclconfig/tcl.m4 \ - $(DIST_DIR)/tclconfig/ - chmod 664 $(DIST_DIR)/tclconfig/tcl.m4 - chmod +x $(DIST_DIR)/tclconfig/install-sh - - mkdir $(DIST_DIR)/tests - cp -p $(srcdir)/tests/*.{tcl,test} $(DIST_DIR)/tests - - mkdir $(DIST_DIR)/tests/certs - cp -p $(srcdir)/tests/certs/*.{pem,key,req,txt,srl} \ - $(DIST_DIR)/tests/certs - - mkdir $(DIST_DIR)/win - cp -p $(srcdir)/win/*.{vc,rc,c} $(DIST_DIR)/win - - (cd $(DIST_ROOT); $(COMPRESS);) - -#======================================================================== -# Install binary object libraries. On Windows this includes both .dll and -# .lib files. Because the .lib files are not explicitly listed anywhere, -# we need to deduce their existence from the .dll file of the same name. -# Additionally, the .dll files go into the bin directory, but the .lib -# files go into the lib directory. On Unix platforms, all library files -# go into the lib directory. In addition, this will generate the pkgIndex.tcl -# file in the install location (assuming it can find a usable tclsh) -# -# You should not have to modify this target. -#======================================================================== - -install-lib-binaries: - @mkdir -p $(DESTDIR)$(pkglibdir) - @list='$(lib_BINARIES)'; for p in $$list; do \ - if test -f $$p; then \ - echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p"; \ - $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p; \ - stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \ - if test "x$$stub" = "xstub"; then \ - echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \ - $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \ - else \ - echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \ - $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \ - fi; \ - ext=`echo $$p|sed -e "s/.*\.//"`; \ - if test "x$$ext" = "xdll"; then \ - lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \ - if test -f $$lib; then \ - echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \ - $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \ - fi; \ - fi; \ - fi; \ - done - @list='$(PKG_TCL_SOURCES)'; for p in $$list; do \ - if test -f $(srcdir)/$$p; then \ - destp=`basename $$p`; \ - echo " Install $$destp $(DESTDIR)$(pkglibdir)/$$destp"; \ - $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \ - fi; \ - done - @if test "x$(SHARED_BUILD)" = "x1"; then \ - echo " Install pkgIndex.tcl $(DESTDIR)$(pkglibdir)"; \ - $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir); \ - fi - -#======================================================================== -# Install binary executables (e.g. .exe files) -# -# You should not have to modify this target. -#======================================================================== - -install-bin-binaries: - @mkdir -p $(DESTDIR)$(bindir) - @list='$(bin_BINARIES)'; for p in $$list; do \ - if test -f $$p; then \ - echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p"; \ - $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p; \ - fi; \ - done - -.SUFFIXES: .c .$(OBJEXT) - -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status - -uninstall-binaries: - list='$(lib_BINARIES)'; for p in $$list; do \ - rm -f $(DESTDIR)$(pkglibdir)/$$p; \ - done - list='$(PKG_TCL_SOURCES)'; for p in $$list; do \ - p=`basename $$p`; \ - rm -f $(DESTDIR)$(pkglibdir)/$$p; \ - done - list='$(bin_BINARIES)'; for p in $$list; do \ - rm -f $(DESTDIR)$(bindir)/$$p; \ - done - -.PHONY: all binaries clean depend distclean doc install libraries test - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: +CC = @CC@ +AR = @AR@ +RANLIB = @RANLIB@ +CFLAGS = @CFLAGS@ @SHOBJFLAGS@ +CPPFLAGS = @CPPFLAGS@ -I@srcdir@ -I. @DEFS@ @TCL_DEFS@ +LDFLAGS = @LDFLAGS@ @SHOBJLDFLAGS@ +LIBS = @LIBS@ +INSTALL = @INSTALL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@ +PACKAGE_INSTALL_DIR = $(TCL_PACKAGE_PATH)/tcltls$(PACKAGE_VERSION) + +all: @EXTENSION_TARGET@ + +# The shared object target +tcltls.@SHOBJEXT@: tls.o tlsBIO.o tlsIO.o tlsX509.o + $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o tcltls.@SHOBJEXT@ tls.o tlsBIO.o tlsIO.o tlsX509.o $(LIBS) + +# The static target +tcltls.a: tls.o tlsBIO.o tlsIO.o tlsX509.o + $(AR) rcu tcltls.a.new tls.o tlsBIO.o tlsIO.o tlsX509.o + $(RANLIB) tcltls.a.new + mv tcltls.a.new tcltls.a + +# Dependencies for all our targets +tls.o: @srcdir@/tls.c @srcdir@/tlsInt.h @srcdir@/tclOpts.h @srcdir@/tls.tcl.h dh_params.h +tlsBIO.o: @srcdir@/tlsBIO.c @srcdir@/tlsInt.h +tlsIO.o: @srcdir@/tlsIO.c @srcdir@/tlsInt.h +tlsX509.o: @srcdir@/tlsX509.c @srcdir@/tlsInt.h + +# Create a C-source-ified version of the script resources +# for TclTLS so that we only need a single file to enable +# this extension +@srcdir@/tls.tcl.h: @srcdir@/tls.tcl + xxd -i < '@srcdir@/tls.tcl' > '@srcdir@/tls.tcl.h.new' + mv '@srcdir@/tls.tcl.h.new' '@srcdir@/tls.tcl.h' + +# Create default DH parameters +dh_params.h: @srcdir@/gen_dh_params + @srcdir@/gen_dh_params @GEN_DH_PARAMS_ARGS@ > dh_params.h.new + mv dh_params.h.new dh_params.h + +# Generic target for building files from the "srcdir" +# tree -- the default target will not match paths +%.o: @srcdir@/%.c + $(CC) $(CPPFLAGS) $(CFLAGS) -o "$@" -c "$<" + +# Install the extension +install: @EXTENSION_TARGET@ pkgIndex.tcl + $(INSTALL) -d '$(DESTDIR)$(PACKAGE_INSTALL_DIR)' + $(INSTALL) -t '$(DESTDIR)$(PACKAGE_INSTALL_DIR)' @EXTENSION_TARGET@ pkgIndex.tcl + +# Clean the local build directory for rebuild against the same configuration +clean: + rm -f tls.o tlsBIO.o tlsIO.o tlsX509.o + rm -f tcltls.@SHOBJEXT@ + rm -f tcltls.a.new tcltls.a + +# Clean the local build directory back to what it was after unpacking the +# distribution tarball +distclean: clean + rm -f config.log config.status + rm -f dh_params.h.new dh_params.h + rm -f Makefile pkgIndex.tcl + +# Clean the local build directory back to only thing things that exist in +# version control system +mrproper: distclean + rm -f @srcdir@/tls.tcl.h + rm -f @srcdir@/configure @srcdir@/config.sub @srcdir@/config.guess @srcdir@/install-sh + rm -f @srcdir@/aclocal.m4 + rm -rf @srcdir@/aclocal @srcdir@/autom4te.cache + +.PHONY: all install clean distclean mrproper