Check-in [e143e5ef08]
Overview
Comment:Updated Minkit build scripts to support buildint KitDLL

Added fix for building KitDLL on platforms without working "strtod"

Updated to support compiling TclVFS extension with "-fPIC" when building KitDLL

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:e143e5ef08903c542a624bdeb9bb6812f8d460fd
User & Date: rkeene on 2010-10-02 08:39:55
Other Links: manifest | tags
Context
2010-10-02
08:40
Added missing file from previous commit check-in: d08ab67dfd user: rkeene tags: trunk
08:39
Updated Minkit build scripts to support buildint KitDLL

Added fix for building KitDLL on platforms without working "strtod"

Updated to support compiling TclVFS extension with "-fPIC" when building KitDLL check-in: e143e5ef08 user: rkeene tags: trunk

06:58
Fixed determination of encoding from system in KitDLL check-in: 015d254dbe user: rkeene tags: trunk
Changes

Modified build/make-minkit from [fd8671763c] to [440fcc9f64].

     1      1   #! /bin/sh
     2      2   
     3      3   # Build minimalistic tclkit
     4         -KITCREATOR_PKGS=" "
            4  +if echo " ${KITCREATOR_PKGS} " | grep ' kitdll ' >/dev/null; then
            5  +	KITCREATOR_PKGS="kitdll"
            6  +else
            7  +	KITCREATOR_PKGS=" "
            8  +fi
     5      9   KITCREATOR_MINENCODINGS='true' 
     6     10   KITCREATOR_MINBUILD='true' 
     7     11   export KITCREATOR_PKGS KITCREATOR_MINENCODINGS KITCREATOR_MINBUILD
     8     12   
     9     13   ./kitcreator "$@"

Modified build/make-minkit-static from [05272e8f15] to [5ddd33e2a4].

     1      1   #! /bin/sh
     2      2   
     3      3   # Set C compiler to diet libc
     4      4   CC='diet gcc'
     5      5   export CC
     6      6   
     7         -rm -rf tcl/patchscripts
     8         -mkdir tcl/patchscripts || exit 1
     9         -
    10      7   cat << \__EOF__ > tcl/patchscripts/dietlibc.sh
    11      8   sed 's@^# *include *<string.h>$@&@;T s;p;s@string.h@strings.h@;:s' generic/tclInt.h > generic/tclInt.h.new && cat generic/tclInt.h.new > generic/tclInt.h
    12      9   rm -f generic/tclInt.h.new
    13     10   __EOF__
    14     11   
    15     12   ./build/make-minkit "$@" --disable-load --disable-threads
    16     13   
    17         -rm -rf tcl/patchscripts
           14  +rm -f tcl/patchscripts/dietlibc.sh
    18     15   
    19     16   exit 0

Modified tcl/build.sh from [6ef99f6477] to [0f3c234f4e].

    56     56   
    57     57   	cd "${BUILDDIR}" || exit 1
    58     58   
    59     59   	# Apply patch scripts if needed
    60     60   	for patchscript in "${PATCHSCRIPTDIR}"/*.sh; do
    61     61   		if [ -f "${patchscript}" ]; then
    62     62   			echo "Running patch script: ${patchscript}"
    63         -			. "${patchscript}"
           63  +
           64  +			(
           65  +				. "${patchscript}"
           66  +			)
    64     67   		fi
    65     68   	done
    66     69   
    67     70   	# Patch Win32 builds to always provide DllMain if we are building KitDLL
    68     71   	if [ "${KITTARGET}" = "kitdll" ]; then
    69     72   		## DllMain is needed when building KitDLL
    70     73   		for filetopatch in win/tclWin32Dll.c win/tclWinInit.c; do

Modified tclvfs/build.sh from [708db71e5e] to [d1e2c23178].

    66     66   	if [ "${BUILDTYPE}" = "win" ]; then
    67     67   		TEA_PLATFORM="windows"
    68     68   		export TEA_PLATFORM
    69     69   
    70     70   		CFLAGS="${CFLAGS} -I${TCLCONFIGDIR}"
    71     71   		export CFLAGS
    72     72   	fi
           73  +
           74  +	# If we are building for KitDLL, compile with '-fPIC'
           75  +	if [ "${KITTARGET}" = "kitdll" ]; then
           76  +		CFLAGS="${CFLAGS} -fPIC"
           77  +		export CFLAGS
           78  +	fi
    73     79   
    74     80   	# Build static version
    75     81   	echo "Running: ./configure --disable-shared --prefix=\"${INSTDIR}\" --exec-prefix=\"${INSTDIR}\" --with-tcl=\"${TCLCONFIGDIR}\" ${CONFIGUREEXTRA}"
    76     82   	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
    77     83   
    78     84   	echo "Running: ${MAKE:-make}"
    79     85   	${MAKE:-make} || exit 1