Check-in [4fa3b7d3ea]
Overview
Comment:Updated to pull user-specified (or default) kit.ico and kit.rc into Tk, if built and not include KitSH's own resource file when including Tk's since they conflict
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:4fa3b7d3ea98c865359c6813f3b0a62b0addc04c
User & Date: rkeene on 2011-05-17 01:33:09
Other Links: manifest | tags
Context
2011-05-19
23:00
Updated to try harder to look for a working Tcl interpreter for building KitDLL

Updated to return in failure if installvfs fails check-in: 3f354ca762 user: rkeene tags: trunk

18:04
Merged trunk check-in: b7c6c8232c user: rkeene tags: merge-kitdll-kitsh-common
2011-05-17
01:33
Updated to pull user-specified (or default) kit.ico and kit.rc into Tk, if built and not include KitSH's own resource file when including Tk's since they conflict check-in: 4fa3b7d3ea user: rkeene tags: trunk
2011-05-08
19:16
Added basic Incr Tcl test check-in: 36e900cf16 user: rkeene tags: trunk
Changes

Modified kitcreator from [0663f6ccec] to [fb76c24536].

    82     82   			echo '         Set STATICMK4 to 1 if you really want to link Mk4tcl statically.' >&2
    83     83   
    84     84   			STATICMK4="0"
    85     85   			export STATICMK4
    86     86   		fi
    87     87   	fi
    88     88   fi
           89  +
           90  +# Find Windows resource-related files
           91  +if [ -f "kit.ico" ]; then
           92  +	KITCREATOR_ICON="$(pwd)/kit.ico"
           93  +else
           94  +	KITCREATOR_ICON="$(echo "$(pwd)/kitsh/buildsrc"/kitsh-*/kit.ico)"
           95  +fi
           96  +if [ -f "kit.rc" ]; then
           97  +	KITCREATOR_RC="$(pwd)/kit.rc"
           98  +else
           99  +	KITCREATOR_RC="$(echo "$(pwd)/kitsh/buildsrc"/kitsh-*/kit.rc)"
          100  +fi
          101  +export KITCREATOR_ICON KITCREATOR_RC
    89    102   
    90    103   failedpkgs=""
    91    104   buildfailed="0"
    92    105   for pkg in tcl tclvfs zlib ${KITCREATOR_PKGS} "${KITTARGET}"; do
    93    106   	echo -n "Building ${pkg} ..."
    94    107   
    95    108   	failed="0"

Modified kitsh/build.sh from [2be7df7f4b] to [9ac6c7313f].

    39     39   	ZLIBDIR="$(cd "${OTHERPKGSDIR}/zlib/inst" 2>/dev/null && pwd)"
    40     40   	export ZLIBDIR
    41     41   	if [ -z "${ZLIBDIR}" -o ! -f "${ZLIBDIR}/lib/libz.a" ]; then
    42     42   		unset ZLIBDIR
    43     43   	fi
    44     44   
    45     45   	# Copy user specified kit.rc and kit.ico in to build directory, if found
    46         -	if [ -f "${OTHERPKGSDIR}/kit.rc" ]; then
    47         -		cp "${OTHERPKGSDIR}/kit.rc" "${BUILDDIR}"
    48         -	fi
    49         -	if [ -f "${OTHERPKGSDIR}/kit.ico" ]; then
    50         -		cp "${OTHERPKGSDIR}/kit.ico" "${BUILDDIR}"
    51         -	fi
           46  +	cp "${KITCREATOR_ICON}" "${BUILDDIR}/kit.ico"
           47  +	cp "${KITCREATOR_RC}" "${BUILDDIR}/kit.rc"
    52     48   
    53     49   	# Include extra objects as required
    54     50   	## Initialize list of extra objects
    55     51   	EXTRA_OBJS=""
    56     52   
    57         -	## Tk Resources (needed for Win32 support)
           53  +	## Tk Resources (needed for Win32 support) -- remove kit-found resources to prevent the symbols from being in conflict
    58     54   	TKDIR="$(cd "${OTHERPKGSDIR}/tk/inst" && pwd)"
    59     55   	TKRSRC="${TKDIR}/lib/tkbase.res.o"
    60     56   	if [ -n "${TKDIR}" -a -f "${TKRSRC}" ]; then
    61     57   		EXTRA_OBJS="${EXTRA_OBJS} ${TKRSRC}"
           58  +
           59  +		echo ' *** Removing "kit.rc" since we have Tk with its own resource file'
           60  +
           61  +		rm -f "${BUILDDIR}/kit.rc"
    62     62   	fi
    63     63   
    64     64   	## Export to the environment, to be picked up by the "configure" script
    65     65   	export EXTRA_OBJS
    66     66   
    67     67   	# Compile Kitsh
    68     68   	if [ -z "${ZLIBDIR}" ]; then

Modified kitsh/buildsrc/kitsh-0.0/configure.ac from [d545ae6633] to [da08c3d389].

    24     24   dnl Find extra objects we need to link as a part of "kit"
    25     25   AC_SUBST(EXTRA_OBJS)
    26     26   
    27     27   dnl Check for Windows Resource Compiler
    28     28   AC_CHECK_TOOL([RC], [windres], [false])
    29     29   
    30     30   dnl If we found the resource compiler, add "kit.res.o" to our list of objects to build
           31  +dnl (as long as the source for such an object exists)
    31     32   if ! test "$RC" = "false"; then
    32         -	EXTRA_OBJS="$EXTRA_OBJS kit.res.o"
           33  +	if test -f kit.rc; then
           34  +		EXTRA_OBJS="$EXTRA_OBJS kit.res.o"
           35  +	fi
    33     36   fi
    34     37   
    35     38   dnl Check for Tcl features
    36     39   SAVE_LIBS="${LIBS}"
    37     40   LIBS="${ARCHS} ${LIBS}"
    38     41   dnl Determine if we have "Tcl_SetStartupScript" (8.6.x) or "TclSetStartupScriptPath" (8.4.x)
    39     42   AC_CHECK_FUNCS(Tcl_SetStartupScript TclSetStartupScriptPath)

Modified tk/build.sh from [b1fd7e8b36] to [f374ed53cb].

   164    164   		) || continue
   165    165   
   166    166   		echo "Running: ${MAKE:-make} install"
   167    167   		${MAKE:-make} install || continue
   168    168   
   169    169   		# Update to include resources, if found
   170    170   		if [ "${dir}" = "win" ]; then
          171  +			echo ' *** Importing user-specified icon'
          172  +			cp "${KITCREATOR_ICON}" rc/tk.ico
          173  +
          174  +			echo ' *** Importing user-specified resources'
          175  +			cat "${KITCREATOR_RC}" | grep -v '^ *tclsh  *ICON' >> "./rc/tk_base.rc"
          176  +
   171    177   			echo ' *** Creating tkbase.res.o to support Windows build'
   172    178   			echo "\"${RC:-windres}\" -o tkbase.res.o  --define STATIC_BUILD --include \"./../generic\" --include \"${TCLCONFIGDIR}/../generic\" --include \"${TCLCONFIGDIR}\" --include \"./rc\" \"./rc/tk_base.rc\""
   173    179   			"${RC:-windres}" -o tkbase.res.o  --define STATIC_BUILD --include "./../generic" --include "${TCLCONFIGDIR}/../generic" --include "${TCLCONFIGDIR}" --include "./rc" "./rc/tk_base.rc"
   174    180   
   175    181   			if [ -f "tkbase.res.o" ]; then
   176    182   				cp "tkbase.res.o" "${INSTDIR}/lib/"
   177    183   			fi