Skip to content

Command-line compiler

It is possible to build TMS WEB Core web client projects outside the IDE. This is done via the command-line compiler. The command-line compiler is located in the CommandLineCompiler subfolder of the install folder. It contains a Windows version and a Linux version. The name is: TMSWebCompiler.

Running the command-line compiler for a project is done with:

tmswebcompiler.exe /ParseDprojFile /ProjectFile:myproject.dproj
The compiler has various flags that can be used. Frequently used flags will be to choose the config from the project, i.e.
tmswebcompiler.exe /ParseDprojFile /ProjectFile:myproject.dproj /Config:Release
selects to compile in release mode.

To see a full list of command-line parameters, use

tmswebcompiler.exe -help
Note that several of these command-line parameters will override the settings used in the .DPROJ file.

This is an extensive list of the parameters:

CompilerBin, Pas2JS dll, example /CompilerBin:c:\temp\libpas2js.dll
Config, configuration, example /Config:Release
CopyFiles, files that are copied to the html dir, example
Debug, example /Debug
Compiler defines, example /Defines:RELEASE;DEBUG
Compile all dproj files which can be found here, example
EcmaScript, 0 = default, 1 = EcmaScript5, 2 = EcmaScript6, example
Version of the generated Electron binary, example /ElectronAppVersion:"1.0.0"
Target-System, Win32: 2, Win64: 3, Linux32:4, Linux64:5, MacOS32: 6, MacOS64:
7, example /ElectronBuild:3
Name of the Electron Linux icon file, example
Name of the Electron Mac icon file, example
Name of the Electron Windows icon file, example
Name of the Electron main.js file, example /ElectronMainJSName:"main.js"
Name of the Electron package.json file, example
Electron Application, example /Electron
Version of Electron with which the binary should be created, example
help or no switch, example /help
HiddenMessages, example /HiddenMessages:123,456
HTMLOutputDir, html and JavaScript output directory, example
IncSearchPaths, include search paths, example
Set the language of the compiler (0 = English, 1 = German, 2 = French),
example /Language:0
Absolute paths in the map file, example /MapFileAbsolutePath
No XSSIProtection, example /NoXSSIProtection
Obfuscation, /Obfuscation
Optimization, optimization or not, 0 = no optimization, 1 = optimization,
example /Optimization:1
Parse the dproj file, example /ParseDprojFile
ProjectFile, name of the project file, example
ProjectHTMLFile, name of the project html file, example
PWA BackgroundColor, example /PWABackgroundColor:Black
PWA Description, example /PWADescription:Description
PWA Icon Res High, example /PWAIconResHigh:Icon.png
PWA Icon Res Low, example /PWAIconResLow:Icon.png
PWA Icon Res Mid, example /PWAIconResMid:Icon.png
PWA Manifestfile, example /PWAManifest:Manifest.json
PWA Name, example /PWAName:Name
PWA ServiceWorkerfile, example /PWAServiceWorker:ServiceWorker.js
PWA ShortName, example /PWAShortName:ShortName
PWA StartURL, example /PWAStartURL:
Progressive Web Application, example /PWA
PWA ThemeColor, example /PWAThemeColor:Black
ShowConditionals, example /ShowConditionals
ShowDebugNotes, example /ShowDebugNotes
ShowErrors, example /ShowErrors
ShowEverything, example /ShowEverything
ShowHints, example /ShowHints
ShowInfo, example /ShowInfo
ShowLineNumbers, example /ShowLineNumbers
ShowMessageNumbers, example /ShowMessageNumbers
ShowNotes, example /ShowNotes
ShowNothing, example /ShowNothing
ShowTriedFiles, example /ShowTriedFiles
ShowUsedTools, example /ShowUsedTools
ShowWarnings, example /ShowWarnings
SingleInstance, single tab in the browser, should only be used for debug
purpose, example /SingleInstance
SingleJS, single JavaScript file or not, example /SingleJS
UnitSearchPaths, unit search paths, example /UnitSearchPaths:c:\temp;c:\temp2
Verbose, example /Verbose
Version, example /Version:1.0.0