Check-in [34ff31cd97]
Bounty program for improvements to Tcl and certain Tcl packages.
Overview
Comment:Updated to use POSIX tool "od" to create tls.tcl.h and since we can now rebuild this file more freely, do so to "fully" support out-of-source-dir builds
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 34ff31cd977ba0b68362a58ccf7f7cf1aa1cb2fb
User & Date: rkeene on 2016-12-13 06:27:59
Other Links: manifest | tags
Context
2016-12-13
06:39
Added additional ignores check-in: 5315cfb88d user: rkeene tags: trunk
06:27
Updated to use POSIX tool "od" to create tls.tcl.h and since we can now rebuild this file more freely, do so to "fully" support out-of-source-dir builds check-in: 34ff31cd97 user: rkeene tags: trunk
05:52
Fixed typo in configure help check-in: 2ceafae87f user: rkeene tags: trunk
Changes

Modified Makefile.in from [81d5511d4d] to [b4a189657e].

    20     20   # The static target
    21     21   [email protected]@: tls.o tlsBIO.o tlsIO.o tlsX509.o Makefile
    22     22   	$(AR) rcu tcltls.a.new tls.o tlsBIO.o tlsIO.o tlsX509.o
    23     23   	$(RANLIB) tcltls.a.new
    24     24   	mv tcltls.a.new tcltls.a
    25     25   
    26     26   # Dependencies for all our targets
    27         -tls.o: @[email protected]/tls.c @[email protected]/tlsInt.h @[email protected]/tclOpts.h @[email protected]/tls.tcl.h dh_params.h Makefile
           27  +tls.o: @[email protected]/tls.c @[email protected]/tlsInt.h @[email protected]/tclOpts.h tls.tcl.h dh_params.h Makefile
    28     28   tlsBIO.o: @[email protected]/tlsBIO.c @[email protected]/tlsInt.h Makefile
    29     29   tlsIO.o: @[email protected]/tlsIO.c @[email protected]/tlsInt.h Makefile
    30     30   tlsX509.o: @[email protected]/tlsX509.c @[email protected]/tlsInt.h Makefile
    31     31   
    32     32   # Create a C-source-ified version of the script resources
    33     33   # for TclTLS so that we only need a single file to enable
    34     34   # this extension
    35         -@[email protected]/tls.tcl.h: @[email protected]/tls.tcl
    36         -	@[email protected] -i < '@[email protected]/tls.tcl' > '@[email protected]/tls.tcl.h.new'
    37         -	mv '@[email protected]/tls.tcl.h.new' '@[email protected]/tls.tcl.h'
           35  +tls.tcl.h: @[email protected]/tls.tcl
           36  +	od -A n -v -t xC < '@[email protected]/tls.tcl' > tls.tcl.h.new.1
           37  +	sed '[email protected]  *@@g;[email protected]@0x&, @g' < tls.tcl.h.new.1 > tls.tcl.h.new.2
           38  +	rm -f tls.tcl.h.new.1
           39  +	mv tls.tcl.h.new.2 tls.tcl.h
    38     40   
    39     41   # Create default DH parameters
    40     42   dh_params.h: @[email protected]/gen_dh_params Makefile
    41     43   	@[email protected]/gen_dh_params @[email protected] > dh_params.h.new
    42     44   	mv dh_params.h.new dh_params.h
    43     45   
    44     46   # Generic target for building files from the "srcdir"
................................................................................
    52     54   	$(INSTALL) -t '$(DESTDIR)$(PACKAGE_INSTALL_DIR)' @[email protected] pkgIndex.tcl
    53     55   
    54     56   # Clean the local build directory for rebuild against the same configuration
    55     57   clean:
    56     58   	rm -f tls.o tlsBIO.o tlsIO.o tlsX509.o
    57     59   	rm -f [email protected]@
    58     60   	rm -f tcltls.a.new tcltls.a
           61  +	rm -f tls.tcl.h tls.tcl.h.new.1 tls.tcl.h.new.2
    59     62   
    60     63   # Clean the local build directory back to what it was after unpacking the
    61     64   # distribution tarball
    62     65   distclean: clean
    63     66   	rm -f config.log config.status
    64     67   	rm -f dh_params.h.new dh_params.h
    65     68   	rm -f Makefile pkgIndex.tcl
    66     69   	rm -f tcltls.a.linkadd
    67     70   
    68     71   # Clean the local build directory back to only thing things that exist in
    69     72   # version control system
    70     73   mrproper: distclean
    71         -	rm -f @[email protected]/tls.tcl.h
    72     74   	rm -f @[email protected]/configure @[email protected]/config.sub @[email protected]/config.guess @[email protected]/install-sh
    73     75   	rm -f @[email protected]/aclocal.m4
    74     76   	rm -rf @[email protected]/autom4te.cache
    75     77   
    76     78   .PHONY: all install clean distclean mrproper

Modified configure.in from [9616332438] to [a4617bc155].

   114    114   else
   115    115   	dnl If we are not doing debugging disable some of the more annoying warnings
   116    116   	AX_CHECK_COMPILE_FLAG([-Wno-unused-value], [CFLAGS="$CFLAGS -Wno-unused-value"])
   117    117   	AX_CHECK_COMPILE_FLAG([-Wno-unused-parameter], [CFLAGS="$CFLAGS -Wno-unused-parameter"])
   118    118   	AX_CHECK_COMPILE_FLAG([-Wno-deprecated-declarations], [CFLAGS="$CFLAGS -Wno-deprecated-declarations"])
   119    119   fi
   120    120   
   121         -dnl Find "xxd" so we can build the tls.tcl.h file
   122         -AC_CHECK_PROG([XXD], [xxd], [xxd], [__xxd__not__found])
   123         -
   124    121   dnl Find "pkg-config" since we need to use it
   125    122   AC_CHECK_TOOL([PKGCONFIG], [pkg-config], [false])
   126    123   
   127    124   dnl Determine if we have been asked to use a fast path if possible
   128    125   tcltls_ssl_fastpath='yes'
   129    126   AC_ARG_ENABLE([ssl-fastpath], AS_HELP_STRING([--disable-ssl-fastpath], [disable using the underlying file descriptor for talking directly to the SSL library]), [
   130    127   	if test "$enableval" = 'no'; then

Modified tls.c from [8eeae8c00a] to [fa35866bf7].

  1658   1658    *
  1659   1659    *-------------------------------------------------------------------
  1660   1660    */
  1661   1661   
  1662   1662   int Tls_Init(Tcl_Interp *interp) {
  1663   1663   	const char tlsTclInitScript[] = {
  1664   1664   #include "tls.tcl.h"
  1665         -            , 0x00
         1665  +            0x00
  1666   1666   	};
  1667   1667   
  1668   1668           dprintf("Called");
  1669   1669   
  1670   1670   	/*
  1671   1671   	 * We only support Tcl 8.4 or newer
  1672   1672   	 */