Soluling home   Document home

Command line tool

SoluMake Command Line Tool

Soluling has a command-line version called SoluMake (SoluMake.exe). It can be used to perform most of the operations of the GUI tool. SoluMake is ideal to be used in your build process through your build or pipeline tools. You can get detailed help with command-line parameters by typing.

SoluMake -h

Note! SoluMake is installed and enabled if you have a Soluling edition that supports it, such as Enterprise edition or Build automation edition.

Soluling saves all file paths in the project file as relative paths. This makes it possible to copy the project file, for example, to the build server. Just remember to uses the same relative paths for all files and directories in the build server.

Using SoluMake in a build server or a self-hosted build agent

If you have your build server or a self-hosted build agent, the easiest way to install SoluMake is to run the Soluling setup application and to choose to Install only files needed by build automation option.

Build automation setup

If you use a DevOps pipeline and you don't have a self-hosted build agent follow the instruction in the following chapter.

Using SoluMake in DevOps pipeline using a cloud-hosted agent

If you use a DevOps pipeline (e.g Azure or AWS) that does not use your self-hosted build server as a build agent, you can still use SoluMake. Follow these instructions:

  1. Make sure you use a Windows-based build agent. SoluMake.exe is a Windows application.
  2. Include SoluMake.exe in your repo or some other repo. Depending on your source types, you might need to include some DLLs and VsPath.exe from the Soluling directory. Now when SoluMake.exe is a part of your repo, it will be available in the machine performing your build, and you can use it.
  3. When the build pipeline starts, activate SoluMake.exe by running the following command:
    SoluMake activate -firstname:<firstname> -lastmame:<lastname> -serial:<yourserialnumber>
  4. Now you can use SoluMake during the rest of the pipeline. The activation is effective for one day on the build machine. You can deactivate Soluling after the build is complete by running the following command:
    SoluMake deactivate

If you use a self-hosted build agent, follow the instructions given earlier in Using SoluMake in a build server or a self-hosted build agent.

Using response files with export, exchange, import, and report command

Typically you use the following command to perform an import or export command.

SoluMake export -lang:fi Sample_fi.xlsx Sample.ntp

The above command exports the Finnish part from Sample.ntp to an Excel file, Sample_fi.xlsx. If you have multiple languages, you might repeat the command.

SoluMake export -lang:fi Sample_fi.xlsx Sample.ntp
SoluMake export -lang:de Sample_de.xlsx Sample.ntp
SoluMake export -lang:ja Sample_ja.xlsx Sample.ntp

This exports Finnish, German, and Japanese Excel sheets. If your project is very large, it may take some time to load it into the memory. In that case, you can use response files. First, you create a text file with .rsp extension and add the language-specific options there. Our Sample.rsp looks like this.

-lang:fi Sample_fi.xlsx
-lang:de Sample_de.xlsx
-lang:ja Sample_ja.xlsx

Then you call SoluMake's export only once.

SoluMake export Sample.rsp Sample.ntp

Now SoluMake loads Sample.ntp only once but performs the export command three times using the options specified on each line of the response file. This will improve the performance because the project loading is done only once. You can add options also to the command. For example.

SoluMake export -noheader Sample.rsp Sample.ntp

Place only the language-specific options into the response file.

Responce files work with export, exchange, import, and report commands.

Samples

GitHub and <data-dir>\Samples\BuildAutomation contains following build automation samples:

GitHub/Directory Description
Import This directory contains an INI file and a command line batch file that creates a project for the INI file (Sport.ini), then imports Finnish and German translations from a TMX file (Sport.tmx) and Japanese translations from an Excel file (Sport.xlsx), and finally builds the localized INI files.
MachineTranslation This directory contains a Delphi application (Win32\Debug\Project1.exe) and a command line batch file that scans an existing Soluling project (Project1.ntp) that contains the Delphi application, then uses machine translation to translate the project, and finally builds the localized Delphi applications.