Check-in [b759ce7ece]
Overview
Comment:Added TclPCKS11 build script Reworked build script for Tcl to install Tcl and set TCLCONFIGDIR to installed location
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:b759ce7ecea7e41c79e9495b747627e998a8578f
User & Date: rkeene on 2010-10-17 12:54:27
Other Links: manifest | tags
Context
2010-10-17
13:24
Updated to remove tclWinDde.c and tclWinReg.c from Tcl 8.4.19 compile as these fail to build check-in: 60857c9f4d user: rkeene tags: trunk
12:54
Added TclPCKS11 build script Reworked build script for Tcl to install Tcl and set TCLCONFIGDIR to installed location check-in: b759ce7ece user: rkeene tags: trunk
2010-10-09
15:48
Updated teapot_index to remove duplicate requirements from built index page check-in: 0844204408 user: rkeene tags: trunk
Changes

Modified .fossil-settings/ignore-glob from [e3e4fac2e6] to [8dda756635].

    24     24   server/buildpkgs/tcl/*
    25     25   server/buildpkgs/tcllib/build
    26     26   server/buildpkgs/tcllib/build/*
    27     27   server/buildpkgs/tcllib/out
    28     28   server/buildpkgs/tcllib/out/*
    29     29   server/buildpkgs/tcllib/src
    30     30   server/buildpkgs/tcllib/src/*
           31  +server/buildpkgs/tclpkcs11/build
           32  +server/buildpkgs/tclpkcs11/build/*
           33  +server/buildpkgs/tclpkcs11/out
           34  +server/buildpkgs/tclpkcs11/out/*
           35  +server/buildpkgs/tclpkcs11/src
           36  +server/buildpkgs/tclpkcs11/src/*
    31     37   server/buildpkgs/tclpkgs-*.tar.*
    32     38   server/buildpkgs/tclpkgs-*.tar.*/*
    33     39   server/buildpkgs/tls/build
    34     40   server/buildpkgs/tls/build/*
    35     41   server/buildpkgs/tls/out
    36     42   server/buildpkgs/tls/out/*
    37     43   server/buildpkgs/tls/src
    38     44   server/buildpkgs/tls/src/*
    39     45   server/pkgs
    40     46   server/pkgs/*

Modified server/buildpkgs/build_all.sh from [62bff14932] to [af64eaf700].

    19     19   fi
    20     20   export CLEANONLY DISTCLEAN
    21     21   
    22     22   CONFIGUREEXTRA="$@"
    23     23   export CONFIGUREEXTRA
    24     24   
    25     25   # Determine path to "tclConfig.sh"
    26         -rm -rf tcl/build
           26  +rm -rf tcl/build tcl/inst
    27     27   rm -f platform.magic.*
    28     28   if [ "${DISTCLEAN}" = "1" ]; then
    29     29   	rm -rf tcl
    30     30   fi
    31     31   
    32     32   if [ "${CLEANONLY}" = "0" ]; then
    33     33   	TCLVERS="8.4.19"
    34     34   	TCLPRIVATE="$(pwd)/tcl/build/tcl${TCLVERS}"
    35     35   	PROJROOTDIR="$(pwd)"
    36         -	export TCLVERS TCLPRIVATE PROJROOTDIR
           36  +	TCLINSTDIR="$(pwd)/tcl/inst"
           37  +	export TCLVERS TCLPRIVATE PROJROOTDIR TCLINSTDIR
    37     38   
    38     39   	mkdir tcl tcl/build >/dev/null 2>/dev/null
    39     40   
    40     41   	if [ ! -f "tcl/src/tcl${TCLVERS}.tar.gz" ]; then
    41     42   		mkdir tcl/src >/dev/null 2>/dev/null
    42     43   		wget -o /dev/null -O "tcl/src/tcl${TCLVERS}.tar.gz" "http://prdownloads.sourceforge.net/tcl/tcl${TCLVERS}-src.tar.gz"
    43     44   	fi
................................................................................
    48     49   		cd tcl/build || exit 1
    49     50   		gzip -dc "../src/tcl${TCLVERS}.tar.gz" | tar -xf -
    50     51   
    51     52   		for dir in unix win macosx; do
    52     53   			cd "${TCLPRIVATE}/${dir}" || exit 1
    53     54   
    54     55   			echo " Executing: ./configure ${CONFIGUREEXTRA}"
    55         -			./configure --disable-threads ${CONFIGUREEXTRA}
           56  +			./configure --disable-threads ${CONFIGUREEXTRA} --prefix="${TCLINSTDIR}"
    56     57   
    57     58   			${MAKE:-make} || continue
           59  +			${MAKE:-make} install || break
    58     60   
    59     61   			LD_LIBRARY_PATH=".:${LD_LIBRARY_PATH}"
    60     62   			LD_RUN_PATH=".:${LD_RUN_PATH}"
    61     63   			export LD_LIBRARY_PATH LD_RUN_PATH
    62     64   
    63     65   			file tclsh tclsh*.exe 2>/dev/null | grep -iv 'No such file' > "${PROJROOTDIR}/platform.magic.file"
    64     66   			if [ -f tclsh*.exe ]; then
................................................................................
    75     77   		echo 'Failed to build Tcl.  See "./tcl/build/build.log"'
    76     78   		echo 'Proceeding with system Tcl.  Building might fail.'
    77     79   	)
    78     80   
    79     81   	TCLBUILDDIR="$(cat "${PROJROOTDIR}/platform.magic.dir")"
    80     82   	export TCLBUILDDIR
    81     83   
    82         -	if [ -d "${TCLBUILDDIR}" -a -f "${TCLBUILDDIR}/tclConfig.sh" ]; then
           84  +	if [ -d "${TCLINSTDIR}" -a -f "${TCLINSTDIR}/lib/tclConfig.sh" ]; then
           85  +		TCLCONFIGDIR="${TCLINSTDIR}/lib"
           86  +	elif [ -d "${TCLBUILDDIR}" -a -f "${TCLBUILDDIR}/tclConfig.sh" ]; then
    83     87   		TCLCONFIGDIR="${TCLBUILDDIR}"
    84     88   	else
    85     89   		unset TCLPRIVATE
    86     90   
    87     91   		TCLCONFIGDIR=$(
    88     92   			(
    89     93   				echo "${LD_LIBRARY_PATH}" | tr ':' "\n"
................................................................................
    99    103   		if [ -z "${TCLCONFIGDIR}" ]; then
   100    104   			TCLCONFIGDIR="/usr/lib"
   101    105   		fi
   102    106   
   103    107   		TCLPRIVATE="$(dirname "${TCLCONFIGDIR}")/include/tcl-private"
   104    108   	fi
   105    109   
   106         -	ADDFLAGS="-I${TCLPRIVATE} -I${TCLPRIVATE}/generic -I${TCLBUILDDIR}"
          110  +	ADDFLAGS=""
          111  +	if [ -n "${TCLPRIVATE}" ]; then
          112  +		ADDFLAGS="${ADDFLAGS} -I${TCLPRIVATE} -I${TCLPRIVATE}/generic"
          113  +	fi
          114  +	if [ -n "${TCLBUILDDIR}" ]; then
          115  +		ADDFLAGS="${ADDFLAGS} -I${TCLBUILDDIR}"
          116  +	fi
   107    117   	CFLAGS="${ADDFLAGS} ${CFLAGS}"
   108    118   	CPPFLAGS="${ADDFLAGS} ${CPPFLAGS}"
   109    119   
   110    120   	unset TCLVERS
   111    121   	unset ADDFLAGS
   112         -	unset TCLBUILDDIR
   113         -	export TCLCONFIGDIR TCLPRIVATE CFLAGS CPPFLAGS
          122  +	export TCLBUILDDIR TCLCONFIGDIR TCLPRIVATE CFLAGS CPPFLAGS
   114    123   fi
   115    124   
   116    125   # Determine platform
   117    126   if [ -z "${FORCE_PLATFORM}" ]; then
   118    127   	PLATFORM="$(./platform)"
   119    128   	export PLATFORM
   120    129   else

Added server/buildpkgs/tclpkcs11/build.sh version [2e24f26dd6].

            1  +#! /bin/bash
            2  +
            3  +if [ ! -x "../platform" ]; then
            4  +	echo "No platform script found, aborting." >&2
            5  +
            6  +	exit 1
            7  +fi
            8  +
            9  +if [ "${PLATFORM}" = "tcl" ]; then
           10  +	rm -rf out
           11  +
           12  +	exit 0
           13  +fi
           14  +
           15  +VERS=0.9.6
           16  +SRC="src/sqlite-${VERS}.tar.gz"
           17  +SRCURL="http://www.rkeene.org/devel/tclpkcs11-${VERS}.tar.gz"
           18  +BUILDDIR="tclpkcs11-${VERS}"
           19  +WORKDIR="${TMPDIR:-/tmp}/tclpkcs11-$$${RANDOM}${RANDOM}${RANDOM}"
           20  +PLATDIR="$(pwd)/out/${PLATFORM}"
           21  +
           22  +export VERS SRC SRCURL BUILDDIR WORKDIR PLATDIR
           23  +
           24  +if [ ! -f "${SRC}" ]; then
           25  +	mkdir src >/dev/null 2>/dev/null
           26  +
           27  +	wget -O "${SRC}" "${SRCURL}" || exit 1
           28  +fi
           29  +
           30  +(
           31  +	rm -rf build
           32  +	mkdir -p "${PLATDIR}" >/dev/null 2>/dev/null
           33  +	mkdir build
           34  +
           35  +	cd build/ || exit 1
           36  +
           37  +	gzip -dc "../${SRC}" | tar -xf -
           38  +	cd "${BUILDDIR}" || exit 1
           39  +
           40  +	./configure --enable-shared --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
           41  +
           42  +	${MAKE:-make} || exit 1
           43  +
           44  +	cp tclpkcs11.so tclpkcs11.sl tclpkcs11.dylib tclpkcs11.dll "${PLATDIR}" >/dev/null 2>/dev/null
           45  +	cp pkgIndex.tcl "${PLATDIR}"
           46  +) || exit 1
           47  +
           48  +../create_teapot "${PLATDIR}/teapot.txt" "tclpkcs11" "${VERS}" "${SRCURL}" "${PLATFORM}" "Tcl 8.4, pki" "TclPKCS11 is a package to provide PKCS#11 cryptography support to Tcl.  This will let you offload cryptographic operations onto a dedicated hardware or software module."
           49  +
           50  +exit 0