# Copyright: 2016-2023 Paul Obermeier (obermeier@tcl3d.org) # Distributed under BSD license. # BuildType Windows: CMake / vs # CMake / gcc # # Changes to source code: # Added CMakeLists.txt. # Adapted reading of "hdc FunctionVector" to work with 64-bit. proc Init_printer { libName libVersion } { SetScriptAuthor $libName "Paul Obermeier" "obermeier@tcl3d.org" SetLibHomepage $libName "http://www.schwartzcomputer.com/tcl-tk/tcl-tk.html" SetLibDependencies $libName "Tk" "TkStubs" SetPlatforms $libName "Windows" SetWinCompilers $libName "gcc" "vs" } proc Build_printer { libName libVersion buildDir instDir devDir distDir } { if { [UseStage "Extract" $libName] } { ExtractLibrary $libName $buildDir } if { [UseStage "Configure" $libName] } { set tclIncDir [GetDevTclIncDir] CMakeConfig $libName "$buildDir" "$buildDir" "$instDir" \ "-DTCL_INCLUDE_PATH=$tclIncDir" \ "-DTCL_STUB_LIBRARY=[GetTclStubLib [GetTclVersion] [GetWinCompiler $libName]]" \ "-DTK_INCLUDE_PATH=$tclIncDir" \ "-DTK_STUB_LIBRARY=[GetTkStubLib [GetTkVersion] [GetWinCompiler $libName]]" \ [GetCMakeMSysOption $libName] } if { [UseStage "Compile" $libName] } { CMakeBuild $libName "$buildDir" "install" [GetBuildType] [GetCMakeMSysOption $libName] } if { [UseStage "Distribute" $libName] } { StripLibraries "$instDir" MultiFileCopy "$instDir/$libName$libVersion" "$devDir/[GetTclLibDir]/$libName$libVersion" "*" true MultiFileCopy "$instDir/$libName$libVersion" "$distDir/[GetTclLibDir]/$libName$libVersion" "*" true if { ! [UseTclPkgVersion] } { FileRename "$devDir/[GetTclLibDir]/$libName$libVersion" "$devDir/[GetTclLibDir]/$libName" FileRename "$distDir/[GetTclLibDir]/$libName$libVersion" "$distDir/[GetTclLibDir]/$libName" } } return true }