KitCreator , by Roy Keene, is a simple build system for creating a Tclkit or other basekit for your platform. It was created to ease creation of basekits for the local platform.
It will work for cross-compiling Tclkits if you bootstrap a local Tclkit first.
It is intended to resemble as closely as possible the authentic Tclkit.
What sets this project apart from other similar projects is that:
AMG: Is any work being done on getting recent versions of KitCreator to work with SunOS/Solaris? I'm going to need this.
Here are the current build failure logs: [L1 ] [L2 ]
kitsh/build.log:76:/home/rkeene/root/cross-compilers/sparc-sun-solaris2.8/bin/sparc-sun-solaris2.8-gcc -static-libgcc -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/inst/include -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/generic -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/win -I../../../tk/build/tk8.6.8/win/ -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tk/build/tk8.6.8/generic -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tk/build/tk8.6.8/xlib -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/zlib/inst/include -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/zlib/inst -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/inst/include -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/generic -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/win -I../../../tk/build/tk8.6.8/win/ -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tk/build/tk8.6.8/generic -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tk/build/tk8.6.8/xlib -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/zlib/inst/include -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/zlib/inst -DPACKAGE_NAME=\"kitsh\" -DPACKAGE_TARNAME=\"kitsh\" -DPACKAGE_VERSION=\"0.0\" -DPACKAGE_STRING=\"kitsh\ 0.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -D__EXTENSIONS__=1 -D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D_POSIX_PTHREAD_SEMANTICS=1 -D_TANDEM_SOURCE=1 -DTK_LOCAL_APPINIT=TclKit_AppInit -DKIT_INCLUDES_MK4TCL=1 -DKIT_INCLUDES_TK=1 -DKIT_TK_VERSION=\"8.6.8\" -DSTDC_HEADERS=1 -DHAVE_UNISTD_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_DLFCN_H=1 -DKIT_STORAGE_MK4=1 -c -o kitInit.o kitInit.c kitsh/build.log:77:In file included from /var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/generic/tclInt.h:36:0, kitsh/build.log:78: from kitInit.c:33: kitsh/build.log:79:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/generic/tclPort.h:23:28: fatal error: tclUnixPort.h: No such file or directory [...] tcl/build.log:1186:/home/rkeene/root/cross-compilers/sparc-sun-solaris2.8/bin/sparc-sun-solaris2.8-gcc -static-libgcc -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.21.0\" -DPACKAGE_STRING=\"sqlite\ 3.21.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DBUILD_sqlite=/\*\*/ -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DWORDS_BIGENDIAN=1 -DHAVE_LIMITS_H=1 -DHAVE_SYS_PARAM_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DTCL_THREADS=1 -DSQLITE_THREADSAFE=1 -DUSE_TCL_STUBS=1 -DUSE_TCLOO_STUBS=1 -DMODULE_SCOPE=extern\ __attribute__\(\(__visibility__\(\"hidden\"\)\)\) -DHAVE_HIDDEN=1 -DHAVE_CAST_TO_UNION=1 -DTCL_WIDE_INT_TYPE=long\ long -DHAVE_STRUCT_DIRENT64=1 -DHAVE_STRUCT_STAT64=1 -DHAVE_OPEN64=1 -DHAVE_LSEEK64=1 -DHAVE_TYPE_OFF64_T=1 -DUSE_TCL_STUBS=1 -DHAVE_MALLOC_H=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_UTIME=1 -DHAVE_READLINK=1 -DHAVE_LSTAT=1 -DHAVE_PREAD=1 -DHAVE_PREAD64=1 -DHAVE_PWRITE=1 -DHAVE_PWRITE64=1 -DHAVE_DECL_STRERROR_R=0 -DSQLITE_ENABLE_DBSTAT_VTAB=1 -DSQLITE_ENABLE_FTS3_PARENTHESIS=1 -DSQLITE_ENABLE_FTS4=1 -DSQLITE_ENABLE_FTS5=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_JSON1=1 -DSQLITE_3_SUFFIX_ONLY=1 -DSQLITE_ENABLE_RTREE=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 -DSQLITE_LIKE_DOESNT_MATCH_BLOBS=1 -DSQLITE_UNTESTABLE=1 -DSQLITE_OMIT_DEPRECATED=1 -DSQLITE_OMIT_LOOKASIDE=1 -DSQLITE_SECURE_DELETE=1 -DSQLITE_SOUNDEX=1 -DSQLITE_USE_ALLOCA=1 -DSQLITE_WIN32_NO_ANSI=1 -DSQLITE_WIN32_GETVERSIONEX=0 -DSQLITE_API=MODULE_SCOPE -DSQLITE_EXTERN= -I"/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic" -I"/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/generic" -I/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/.. -pipe -O2 -fomit-frame-pointer -DNDEBUG -Wall -fPIC -c `echo /var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/tclsqlite3.c` -o tclsqlite3.o tcl/build.log:1187:In file included from /var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/tclsqlite3.c:4:0: tcl/build.log:1188:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:30874:42: error: 'pread64' undeclared here (not in a function) tcl/build.log:1189:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:30892:42: error: 'pwrite64' undeclared here (not in a function) tcl/build.log:1190:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:30899:42: error: 'fchmod' undeclared here (not in a function) tcl/build.log:1191:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:30922:42: error: 'fchown' undeclared here (not in a function) tcl/build.log:1192:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:30960:42: error: 'readlink' undeclared here (not in a function) tcl/build.log:1193:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:30967:43: error: 'lstat' undeclared here (not in a function) tcl/build.log:1194:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:30973:43: error: 'ioctl' undeclared here (not in a function) tcl/build.log:1195:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c: In function 'seekAndRead': tcl/build.log:1196:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:33615:11: error: unknown type name 'off64_t' tcl/build.log:1197:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:33615:11: error: expected ')' before 'aUnixSyscall' tcl/build.log:1198:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:33615:20: error: called object '<erroneous-expression>' is not a function tcl/build.log:1199:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:33615:9: warning: assignment makes integer from pointer without a cast [enabled by default] tcl/build.log:1200:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c: In function 'seekAndWriteFd': tcl/build.log:1201:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:33727:17: error: unknown type name 'off64_t' tcl/build.log:1202:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:33727:17: error: expected ')' before 'aUnixSyscall' tcl/build.log:1203:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:33727:27: error: called object '<erroneous-expression>' is not a function tcl/build.log:1204:In file included from /var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/tclsqlite3.c:4:0: tcl/build.log:1205:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c: In function 'unixSleep': tcl/build.log:1206:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36772:3: warning: implicit declaration of function 'usleep' [-Wimplicit-function-declaration] tcl/build.log:1207:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c: In function 'unixCurrentTimeInt64': tcl/build.log:1208:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36818:18: error: storage size of 'sNow' isn't known tcl/build.log:1209:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36819:3: warning: implicit declaration of function 'gettimeofday' [-Wimplicit-function-declaration] tcl/build.log:1210:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36820:48: error: request for member 'tv_sec' in something not a structure or union tcl/build.log:1211:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36820:29: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] tcl/build.log:1212:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36820:62: error: request for member 'tv_usec' in something not a structure or union tcl/build.log:1213:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36820:70: error: invalid operands to binary / (have 'struct unix_syscall *' and 'int') tcl/build.log:1214:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36820:10: warning: assignment makes integer from pointer without a cast [enabled by default] tcl/build.log:1215:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:36818:18: warning: unused variable 'sNow' [-Wunused-variable] tcl/build.log:1216:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c: In function 'sqlite3BitvecSet': tcl/build.log:1217:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:44690:5: warning: implicit declaration of function 'alloca' [-Wimplicit-function-declaration] tcl/build.log:1218:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:44690:21: warning: incompatible implicit declaration of built-in function 'alloca' [enabled by default] tcl/build.log:1219:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c: In function 'balance_nonroot': tcl/build.log:1220:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:67185:14: warning: incompatible implicit declaration of built-in function 'alloca' [enabled by default] tcl/build.log:1221:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c: In function 'codeRowTrigger': tcl/build.log:1222:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:125030:15: warning: incompatible implicit declaration of built-in function 'alloca' [enabled by default] tcl/build.log:1223:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c: In function 'sqlite3WhereCodeOneLoopStart': tcl/build.log:1224:/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/pkgs/sqlite3.21.0/generic/../compat/sqlite3/sqlite3.c:130161:16: warning: incompatible implicit declaration of built-in function 'alloca' [enabled by default] tcl/build.log:1225:Makefile:291: recipe for target 'tclsqlite3.o' failed [...] tk/build.log:258: *** Creating tkbase.res.o to support Windows build tk/build.log:259:"windres" -o tkbase.res.o --define STATIC_BUILD --include "./../generic" --include "/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/win/../generic" --include "/var/tmp/kitcreator-test-8981103881756025603/kitcreator-trunk-tip/tcl/build/tcl8.6.8/win" --include "./rc" "./rc/tk_base.rc" tk/build.log:260:./rc/tk_base.rc:5:21: fatal error: windows.h: No such file or directory
AMG: Roy Keene appears to be using cross compilation to build kbs for Windows and Solaris. It would be nice to get some information on how the build environment is set up so that I can produce my own binaries with my own extensions.