@echo ...Building TCL/TK... ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Purpose: Build TCL/TK shared libraries :: REF: github.com:tcltk :: NOTE: in TCL/TK 8.6 the stated adding siffixes that must be removed for OCCT :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: Set variables @echo off @SETLOCAL ENABLEDELAYEDEXPANSION :: Uncomment for development build SET DEVBUILD=1 @echo ===================================== @echo Loading visual studio 2015 Vars @call "%VS140COMNTOOLS%\..\..\VC\vcvarsall.bat" @set PATH=%VS140COMNTOOLS%\..\..\VC\bin;%PATH% @echo ===================================== @echo Set paths: @IF NOT DEFINED TOP SET TOP=%CD% @IF NOT DEFINED TCL_SRC SET TCL_SRC=%TOP%\tcl_src @IF NOT DEFINED TCL_INST SET TCL_INST=tcl_install @IF NOT DEFINED TCL_PACKAGE SET TCL_PACKAGE=%TOP%\tcl.win.zip @IF NOT DEFINED TK_SRC SET TK_SRC=%TOP%\tk_src @IF NOT DEFINED TK_INST SET TK_INST=tk_install @IF NOT DEFINED TK_PACKAGE SET TK_PACKAGE=%TOP%\tk.win.zip @IF NOT DEFINED BUILDTYPE SET BUILDTYPE=Release @echo TOP=%TOP% @echo TCL_SRC=%TCL_SRC% @echo TCL_INST=%TCL_INST% @echo TCL_PACKAGE=%TCL_PACKAGE% @echo TK_SRC=%TK_SRC% @echo TK_INST=%TK_INST% @echo TK_PACKAGE=%TK_PACKAGE% @echo BUILDTYPE=%BUILDTYPE% @SET GIT=C:\Program Files\Git\cmd\git.exe @echo ===================================== @echo CLEAN PREVIOUS PRODUCT IF EXIST "%TOP%\%TCL_INST%" ( rmdir /s /q "%TOP%\%TCL_INST%" ) IF EXIST "%TCL_PACKAGE%" ( del "%TCL_PACKAGE%" ) IF EXIST "%TOP%\%TK_INST%" ( rmdir /s /q "%TOP%\%TK_INST%" ) IF EXIST "%TK_PACKAGE%" ( del "%TK_PACKAGE%" ) @IF DEFINED DEVBUILD ( @echo ===================================== @echo GET SOURCE @echo Find %GIT% IF NOT EXIST "%GIT%" ( echo Error %ERRORLEVEL% exit /b %ERRORLEVEL% ) IF NOT EXIST "%TCL_SRC%" ( "%GIT%" clone git@github.com:tcltk/tcl.git "%TCL_SRC%" ) pushd "%TCL_SRC%" "%GIT%" clean -d -f -x "%GIT%" fetch && git fetch --tags "%GIT%" checkout core-8-6-8 popd IF NOT EXIST "%TK_SRC%" ( "%GIT%" clone git@github.com:tcltk/tk.git "%TK_SRC%" ) pushd "%TK_SRC%" "%GIT%" clean -d -f -x "%GIT%" fetch && git fetch --tags "%GIT%" checkout core-8-6-8 popd ) @echo ===================================== @echo BUILD TCL SOURCE pushd "%TCL_SRC%\win" nmake -nologo -f makefile.vc TCLDIR="%TCL_SRC%" release SUFX= :: check exist status IF ERRORLEVEL 1 ( echo Error %ERRORLEVEL% exit /b %ERRORLEVEL% ) nmake -f makefile.vc install INSTALLDIR="%TOP%\%TCL_INST%" SUFX= :: check exist status IF ERRORLEVEL 1 ( echo Error %ERRORLEVEL% exit /b %ERRORLEVEL% ) popd @echo ===================================== @echo BUILD TK SOURCE pushd "%TK_SRC%\win" nmake -nologo -f makefile.vc TCLDIR="%TCL_SRC%" release SUFX= :: check exist status IF ERRORLEVEL 1 ( echo Error %ERRORLEVEL% exit /b %ERRORLEVEL% ) nmake -f makefile.vc install INSTALLDIR="%TOP%\%TK_INST%" SUFX= :: check exist status IF ERRORLEVEL 1 ( echo Error %ERRORLEVEL% exit /b %ERRORLEVEL% ) popd @echo ===================================== @echo PACKAGFE PRODUCT @pushd "%TOP%" :: I found if this variable is set zip has a an error @set ZIP= @zip -r "%TCL_PACKAGE%" "%TCL_INST%" @dir "%TCL_PACKAGE%" @zip -r "%TK_PACKAGE%" "%TK_INST%" @dir "%TK_PACKAGE%" @echo ===================================== @echo UPDATE load_vars.bat with paths to installed TCL/TK @echo SET TCL_INST=%TCL_INST%>>load_vars.bat @echo SET TK_INST=%TK_INST%>>load_vars.bat @echo @echo