BAWT Logo
Overview
Currently selected Documentation
Downloads
History
Related links
Contact
Valid XHTML 1.0 Transitional

Documentation

General information
Getting started
Command line usage

General information

Currently available documentation other than the source code is my Work-In-Progess talk from EuroTcl 2016.

Top of page

Getting started

Build instructions for Windows

Prerequisites:
  - None for building Tcl/Tk, TEA compliant packages or Tclkits.
  - Otherwise Visual Studio or Visual Studio Express.
    Versions 2008, 2010, 2012, 2013, 2015 supported.
    If Visual Studio is not installed in the standard location, you have to adapt procedure GetVcvarsProg. 
 
Downloads:
  - BAWT framework (appr. 8 MB)

  - MSys/MinGW distribution(s) (appr. 110 MB per distribution)
    MSys/MinGW 4.9.2 32-bit
    MSys/MinGW 4.9.2 64-bit
    MSys/MinGW 5.2.0 32-bit
    MSys/MinGW 5.2.0 64-bit
    Note, that MSys/MinGW with gcc 4.9.2 is set as default (use --gcc to change)
 
Actions:
  - Extract BAWT-Framework Bawt-0.5.0.zip in a folder of choice, ex. C:\Bawt
  - Copy MSys/MinGW distribution(s) into C:\Bawt\Bawt-0.5.0\Bootstrap-Windows 
  - Open command shell window and go into folder C:\Bawt\Bawt-0.5.0

  - Create Tcl runtime distribution for 32-bit:
    > Build-Windows.bat x86 Windows Setup\Tcl.bawt
  - Create Tcl runtime distribution for 64-bit:
    > Build-Windows.bat x64 Windows Setup\Tcl.bawt

  - Create the libraries which need VisualStudio to build with VisualStudio 2008 for 32-bit:
    > Build-Windows.bat x86 vs2008 Setup\All.bawt

Build instructions for Linux

Prerequisites:
  - C/C++ development 
  - curl (should be available by default on Linux)
  - Package  p7zip (for 7z program)
  - Package  glu-devel (Optional: Needed by library Gl2ps)
  - Package  libxerces (Optional: Needed by library Xalan)
  - Packages mesa-common-dev libgl1-mesa-dev libglu1-mesa-dev libxmu-dev (Optional: Needed by library tcl3dBasic)

Downloads:
  - BAWT framework (appr. 8 MB)

Actions:
  - Extract BAWT-Framework Bawt-0.5.0.zip in a folder of choice.
  - Open shell (Terminal window), go into created folder Bawt-0.5.0 and execute:
    > chmod u+x Build*
    > chmod u+x tclkit*

  - Create Tcl runtime distribution for 32-bit:
    > ./Build-Linux.sh x86 Setup/Tcl.bawt
  - Create Tcl runtime distribution for 64-bit:
    > ./Build-Linux.sh x64 Setup/Tcl.bawt

  - Create all libraries for 32-bit:
    > ./Build-Linux.sh x86 Bawt-All/All.bawt

Build instructions for Mac

Prerequisites:
  - XCode
  - curl (should be available by default on Mac)

Downloads:
  - BAWT framework (appr. 8 MB)

Actions:
  - Extract BAWT-Framework Bawt-0.5.0.zip in a folder of choice.
  - Open shell (Terminal window), go into created folder Bawt-0.5.0 and execute:
    > chmod u+x Build*
    > chmod u+x tclkit*

  - Create Tcl runtime distribution for 64-bit:
    > ./Build-Darwin.sh Setup/Tcl.bawt

  - Create all libraries for 64-bit:
    > ./Build-Darwin.sh Bawt-All/All.bawt

Top of page

Command line usage

Output of option --help

> tclkit Build.bawt --help

Usage: Build.bawt [Options] BuildFile LibraryName [LibraryNameN]

Start the BAWT automatic library build process.
When using "all" as library name, all libraries specified
in the build configuration file are built.
It is also possible to specify the numbers of the libraries as printed
by option "--list" or specify a range of numbers (e.g: 2-5).
Note, that at least either a list or build action option must be specified.

General options:
--help          : Print this help message and exit.
--version       : Print version number and exit.
--loglevel <int>: Specify log message verbosity.
                  Choices: 0 - 4. Default: 3.

List action options:
--list          : Print all available library names and versions and exit.
--platforms     : Additionally print supported platforms.
--dependencies  : Additionally print library dependencies.
--authors       : Additionally print script authors.
--homepages     : Additionally print library homepages.

Build action options:
--clean     : Clean library specific build and install directories.
--extract   : Extract library sources from ZIP files or sub-directories.

--configure : Perform the configure stage of the build process.
--compile   : Perform the compile stage of the build process.
--distribute: Perform the distribution stage of the build process.

--finalize  : Generate environment file and call user supplied Finalize procedure.
--complete  : Perform the following stages in order:
              clean, extract, configure, compile, distribution, finalize.

--update    : Perform necessary stages depending on modification times.
              Note: Global stage finalize is always executed.
--simulate  : Simulate update action without actually building libraries.

Build configuration options:
--architecture <string>: Build for specified processor architecture.
                         Choices: x86 x64.
                         Default: x64.
--compiler <string>    : Build with specified compiler version.
                         Using gcc: Windows Linux Darwin.
                         Using Visual Studio: vs2008 vs2010 vs2012 vs2013 vs2015.
                         Default: Windows.
--gcc <string>         : Build with specified MinGW gcc version. Windows only.
                         Choices: 4.9.2 5.2.0.
                         Default: 4.9.2.
--tclversion <string>  : Build Tcl, Tk and Tclkit for specified version.
                         Choices: 8.6.5 8.6.6.
                         Default: 8.6.6.
--buildtype <string>   : Use specified build type.
                         Choices: Release Debug.
                         Default: Specified in build configuration file.

--url <string>         : Specify BAWT download server.
                         Default: http://www.bawt.tcl3d.org/download.
--builddir <string>    : Specify build root directory.
                         Default: C:/poSoft/Bawt/Windows/x64.
--libdir <string>      : Specify directory containing libraries.
                         Default: C:/poSoft/Bawt/InputLibs.
--distdir <string>     : Specify distribution root directory.
                         Default: C:/poSoft/Bawt/Windows/x64/NA/Distribution.

--sort <string>        : Sort libraries according to specified sorting mode.
                         Choices: dependencies dictionary none.
                         Default: dependencies.
--noversion            : Do not use version number for Tcl package directories.
                         Default: Library name and version number.
--noimportlibs         : Do not create import libraries on Windows.
                         Default: Create import libraries. Needs Visual Studio.
--nostrip              : Do not strip libraries in distribution directory.
                         Default: Strip libraries.
--noonline             : Do not check or download from online repository.
                         Default: Use http://www.bawt.tcl3d.org/download.
--norecursive          : Do not check recursive dependencies.
                         Default: Use recursive dependencies.

--iconfile             : Use specified icon file for tclkits and starpacks.
                         Default: Standard tclkit icon. Windows only.
--resourcefile         : Use specified resource file for tclkits and starpacks.
                         Default: Standard tclkit resource file. Windows only.

--numjobs <int>        : Number of parallel compile jobs.
                         Default: 1
--sleep <float>        : Number of seconds to wait before renaming directories.
                         Default: 1.0

Example output of option --dependencies

> tclkit Build.bawt Setup\Tcl.bawt all --dependencies

 #: Name           Version Dependencies                                                  
----------------------------------------------------------------------------------------
 0: CMake          3.7.2                                                                 
 1: CMakeWin32     3.7.2                                                                 
 2: InnoSetup      5.5.9                                                                 
 3: Tcl            8.6.6                                                                 
 4: TclStubs       8.6.6                                                                 
 5: Tclapplescript 2.2     Tcl                                                           
 6: Tclkit         8.6.6                                                                 
 7: Tk             8.6.6   Tcl                                                           
 8: TkStubs        8.6.6   TclStubs                                                      
 9: Tktable        2.11    Tk                                                            
10: critcl         3.1.15  Tcl                                                           
11: imgtools       0.3     Tcl Tk                                                        
12: libressl       2.3.6                                                                 
13: memchan        2.3     Tcl                                                           
14: nacl           1.0     Tcl                                                           
15: oratcl         4.6     Tcl                                                           
16: pdf4tcl        0.9.1   Tk                                                            
17: poImg          2.0.1   Tk                                                            
18: rl_json        0.9.6   Tk                                                            
19: ruff           0.4     Tcl                                                           
20: tablelist      5.16    Tk                                                            
21: tbcload        1.7     Tcl                                                           
22: tclAE          2.0.7   Tcl                                                           
23: tcllib         1.18    Tcl critcl                                                    
24: tdom           0.8.3   Tcl                                                           
25: tkcon          2.5     Tk                                                            
26: tkdnd          2.9     CMake CMakeWin32 Tk                                           
27: tklib          0.6     Tk                                                            
28: tkpath         0.3.3   Tk                                                            
29: tksvg          0.1     Tk                                                            
30: tls            1.6.7   Tcl libressl                                                  
31: treectrl       2.4.1   Tk                                                            
32: trofs          0.4.9   Tk                                                            
33: twapi          4.2a5   Tcl                                                           
34: udp            1.0.11  Tcl                                                           
35: ukaz           2.0a3   Tk                                                            
36: vectcl         0.2     Tk                                                            
37: BWidget        1.9.10  Tk                                                            
38: Canvas3d       1.2.2   Tk                                                            
39: Img            1.4.6   Tk                                                            
40: Mpexpr         1.2     Tcl                                                           
41: SWIG           3.0.12  Tcl                                                           
42: cawt           2.3.1   Tcl twapi                                                     
43: poApps         2.3.0   Tclkit tcllib tklib tablelist Img poImg cawt twapi tkdnd tksvg
44: tcl3dBasic     0.9.0   CMake CMakeWin32 Tk SWIG                                      
45: tksqlite       0.5.13  Tclkit tablelist Tktable treectrl Img                         
46: SetupTcl               All                                                           

Top of page