Check-in [9475a0176c]
Overview
Comment:Updated to support skipping re-building of Tcl Added tclreadline package
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:9475a0176c1a390ace2c6f3db4ac150ce3804887
User & Date: rkeene on 2011-07-06 03:08:14
Other Links: manifest | tags
Context
2011-07-06
09:45
Updated to include common.sh in src tarballs check-in: 05f4343e50 user: rkeene tags: trunk
03:08
Updated to support skipping re-building of Tcl Added tclreadline package check-in: 9475a0176c user: rkeene tags: trunk
02:15
Fixed issue with dbus-tcl putting files in weird places Updated to clean-up "out" directories up run check-in: 32e6a2e492 user: rkeene tags: trunk
Changes

Modified .fossil-settings/ignore-glob from [89ec5725c7] to [44ae4ec4c1].

    38     38   server/buildpkgs/tclpkcs11/build/*
    39     39   server/buildpkgs/tclpkcs11/out
    40     40   server/buildpkgs/tclpkcs11/out/*
    41     41   server/buildpkgs/tclpkcs11/src
    42     42   server/buildpkgs/tclpkcs11/src/*
    43     43   server/buildpkgs/tclpkgs-*.tar.*
    44     44   server/buildpkgs/tclpkgs-*.tar.*/*
           45  +server/buildpkgs/tclreadline/build
           46  +server/buildpkgs/tclreadline/build/*
           47  +server/buildpkgs/tclreadline/out
           48  +server/buildpkgs/tclreadline/out/*
           49  +server/buildpkgs/tclreadline/src
           50  +server/buildpkgs/tclreadline/src/*
    45     51   server/buildpkgs/tls/build
    46     52   server/buildpkgs/tls/build/*
    47     53   server/buildpkgs/tls/out
    48     54   server/buildpkgs/tls/out/*
    49     55   server/buildpkgs/tls/src
    50     56   server/buildpkgs/tls/src/*
    51     57   server/pkgs
    52     58   server/pkgs/*

Modified server/buildpkgs/build_all.sh from [d1d316a9e2] to [0d43706d4f].

    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 tcl/inst-*
    27         -rm -f platform.magic.*
    28     26   rm -rf */out
           27  +if [ "${CLEANONLY}" = "1" ]; then
           28  +	rm -rf tcl/build tcl/inst-*
           29  +	rm -f platform.magic.*
           30  +fi
    29     31   if [ "${DISTCLEAN}" = "1" ]; then
    30     32   	rm -rf tcl
    31     33   fi
    32     34   
    33     35   if [ "${CLEANONLY}" = "0" ]; then
    34     36   	PROJROOTDIR="$(pwd)"
    35     37   	export PROJROOTDIR
    36     38   
    37     39   	for TCLVERS in 8.5.9 8.4.19; do
    38     40   		TCLSHORTVERS="$(echo "${TCLVERS}" | cut -f 1-2 -d '.')"
    39     41   		TCLPRIVATE="$(pwd)/tcl/build/tcl${TCLVERS}"
    40     42   		TCLINSTDIR="$(pwd)/tcl/inst-${TCLSHORTVERS}"
    41     43   		export TCLVERS TCLPRIVATE TCLINSTDIR
           44  +
           45  +		if [ -f "${TCLINSTDIR}/lib/tclConfig.sh" ]; then
           46  +			echo "Skipping build of Tcl ${TCLVERS} (already found)"
           47  +
           48  +			continue
           49  +		fi
    42     50   
    43     51   		mkdir tcl tcl/build >/dev/null 2>/dev/null
    44     52   
    45     53   		if [ ! -f "tcl/src/tcl${TCLVERS}.tar.gz" ]; then
    46     54   			mkdir tcl/src >/dev/null 2>/dev/null
    47     55   			wget -o /dev/null -O "tcl/src/tcl${TCLVERS}.tar.gz" "http://prdownloads.sourceforge.net/tcl/tcl${TCLVERS}-src.tar.gz"
    48     56   		fi
................................................................................
   180    188   
   181    189   		rm -rf "${dir}/out"
   182    190   		faileddirs="${faileddirs} ${dir}"
   183    191   		echo "Failed to build ${dir}"
   184    192   	fi
   185    193   done
   186    194   
   187         -# Clean magic-related files
   188         -rm -f platform.magic.*
   189         -
   190    195   # Cleanup is done at this point
   191    196   if [ "${CLEANONLY}" = "1" ]; then
   192    197   	exit 0
   193    198   fi
   194    199   
   195    200   # Let the user know what failed to build
   196    201   if [ -n "${faileddirs}" ]; then

Added server/buildpkgs/tclreadline/build.sh version [dd5656fd18].

            1  +#! /bin/bash
            2  +
            3  +# Define parameters
            4  +VERS=2.1.0
            5  +SRC="src/tclreadline-${VERS}.tar.gz"
            6  +SRCURL="http://downloads.sourceforge.net/project/tclreadline/tclreadline/tclreadline-${VERS}/tclreadline-${VERS}.tar.gz"
            7  +BUILDDIR="tclreadline-${VERS}"
            8  +export VERS SRC SRCURL BUILDDIR
            9  +
           10  +# Load common functions
           11  +source ../common.sh
           12  +
           13  +# Do not build if the "tcl" platform has been requested
           14  +not_platforms 'tcl'
           15  +
           16  +# Download source
           17  +download_src
           18  +
           19  +# Build package
           20  +(
           21  +	rm -rf build
           22  +	mkdir -p "${PLATDIR}" >/dev/null 2>/dev/null
           23  +	mkdir build
           24  +
           25  +	cd build/ || exit 1
           26  +
           27  +	gzip -dc "../${SRC}" | tar -xf -
           28  +	cd "${BUILDDIR}" || exit 1
           29  +
           30  +	# The configure script that comes with TclReadLine is out-of-date
           31  +	autoreconf -fvi
           32  +
           33  +	# TclReadLine doesn't know it should use stubs, force it.
           34  +	CFLAGS="${CFLAGS} -DUSE_TCL_STUBS=1"
           35  +	CPPFLAGS="${CPPFLAGS} -DUSE_TCL_STUBS=1"
           36  +	LDFLAGS="${LDFLAGS} $(source "${TCLCONFIGDIR}/tclConfig.sh" 2>/dev/null; eval echo "${TCL_STUB_LIB_SPEC}")" 
           37  +	export CFLAGS CPPFLAGS LDFLAGS
           38  +
           39  +	bash ./configure --enable-shared --with-tcl="${TCLCONFIGDIR}" --prefix="${PLATDIR}" --libdir="${PLATDIR}" --bindir="${PLATDIR}" ${CONFIGUREEXTRA}
           40  +
           41  +	${MAKE:-make} || exit 1
           42  +
           43  +	${MAKE:-make} install || exit 1
           44  +
           45  +) || exit 1
           46  +
           47  +# Re-write installation to match expectations
           48  +(
           49  +	cd "${PLATDIR}" || exit 1
           50  +
           51  +	mv lib/tclreadline*/* .
           52  +	rm *.a *.la
           53  +
           54  +	rm -rf lib/
           55  +	rm -rf include/
           56  +	rm -rf share/
           57  +
           58  +	# Delete symlink
           59  +	rm -f libtclreadline.so
           60  +
           61  +	# Rename actual file to symlink
           62  +	mv libtclreadline-*.so libtclreadline.so
           63  +
           64  +	# Correct Tcl script
           65  +	sed 's@ /.*/tclreadline/out/[^/]*/lib@ [file dirname [info script]]@' tclreadlineInit.tcl > tclreadlineInit.tcl.new
           66  +	mv tclreadlineInit.tcl.new tclreadlineInit.tcl
           67  +
           68  +	exit 0
           69  +) || exit 1
           70  +
           71  +
           72  +# Create metadata
           73  +../create_teapot "${PLATDIR}/teapot.txt" "tclreadline" "${VERS}" "${SRCURL}" "${PLATFORM}" "Tcl 8.4" "Readline package for Tcl"
           74  +
           75  +exit 0