Building commands


Description

These commands are related to building projects.

Methods

Name

Parameters

Returns

Shared

BuildApp

buildType As Integer, reveal As Boolean = False

String

CancelBuild

PropertyValue

attribute As String

String

attribute As String, Assigns value As String

Property descriptions


BuildCurrentPlatform

BuildCurrentPlatform As Boolean

Gets or sets whether to build the project for the current OS platform.


BuildLanguage

BuildLanguage As String

Used to get or set the build language. This is the “Language” property on the Shared Build Settings.

Change the language to English:

If BuildLanguage = "Default" Then
  BuildLanguage = "English"
End If

BuildLinux

BuildLinux As Boolean

Gets or sets whether to build the project for Linux.

This is also set to true when "This Computer" is selected and Xojo is running on Linux.

Create a Linux build:

BuildLinux = True
DoCommand("BuildApp")

BuildMac

BuildMac As Boolean

Gets or sets whether to build the project for macOS.

This is also set to true when "This Computer" is selected and Xojo is running on macOS.

Build for macOS, but not Windows:

BuildMac = True
BuildWin32 = False
DoCommand("BuildApp")

BuildWebDebugPort

BuildWebDebugPort As Integer

Gets or sets the web port for running debug apps.

Set the debug port:

BuildWebDebugPort = 8100

BuildWebPort

BuildWebPort As Integer

Gets or sets the web port for built apps.

Use a value of -1 to choose a port automatically.

Set the port:

BuildWebPort = 8080

BuildWin32

BuildWin32 As Boolean

Gets or sets whether to build the project for Windows.

This is also set to True when "This Computer" is selected and Xojo is running on Windows.

Build for Windows, but not macOS:

BuildMac = False
BuildWin32 = True
DoCommand("BuildApp")

CurrentBuildAppName

CurrentBuildAppName As String

Returns the name of the app that was built. This can only be used in a Build Automation IDE Script that runs after the Build Step. This just the app name, so spaces and other special characters are not escaped.

This property is read-only.

Note

For macOS apps, this includes the full appname and extension.

Display the built app's name:

Print(CurrentBuildAppName)

CurrentBuildLocation

CurrentBuildLocation As String

Returns the shell path to the app that was built. This can only be used in a Build Automation IDE Script that runs after the Build Step. Since this is a shell path, spaces and other special characters are properly escaped.

This property is read-only.

Display the built app's shell path:

Print(CurrentBuildLocation)

CurrentBuildLocationNative

CurrentBuildLocationNative As String

Returns the native (unescaped) path to the app that was built. This can only be used in a Build Automation IDE Script that runs after the Build Step.

This property is read-only.

Display the built app's native path:

Print(CurrentBuildLocationNative)

CurrentBuildTarget

CurrentBuildTarget As Integer

Returns an Integer that specifies the type of app that was built. This can only be used in a Build Automation IDE Script that runs after the Build Step.

This property is read-only.

The return value is one of these values:

Value

Build Target

32/64-bit

Architecture

3

Windows

32-bit

Intel

4

Linux

32-bit

Intel

9

macOS Universal

64-bit

Intel & ARM

10

iOS Simulator

64-bit

ARM

12

Xojo Cloud

64-bit

Intel

14

iOS Simulator

64-bit

Intel

15

iOS Device

64-bit

ARM

16

macOS (all)

64-bit

Intel

17

Linux

64-bit

Intel

18

Linux

32-bit

ARM

19

Windows

64-bit

Intel

21

Android Emulator

64-bit

Intel & ARM

23

Android Device

64-bit

ARM

24

macOS

64-bit

ARM

25

Windows

64-bit

ARM

26

Linux

64-bit

ARM

Get the value for the target that was built:

Var result As Integer = CurrentBuildTarget

Method descriptions


BuildApp

BuildApp(buildType As Integer, reveal As Boolean = False) As String

Starts building the current project.

The buildType can be one of these values:

Value

Build Target

32/64-bit

Architecture

3

Windows

32-bit

Intel

4

Linux

32-bit

Intel

9

macOS Universal

64-bit

Intel & ARM

10

iOS Simulator

64-bit

ARM

12

Xojo Cloud

64-bit

Intel

13

iOS Simulator

64-bit

Intel

14

iOS Device

64-bit

ARM

16

macOS (all)

64-bit

Intel

17

Linux

64-bit

Intel

18

Linux

32-bit

ARM

19

Windows

64-bit

Intel

21

Android Emulator

64-bit

Intel & ARM

23

Android Device

64-bit

ARM

24

macOS

64-bit

ARM

25

Windows

64-bit

ARM

26

Linux

64-bit

ARM

If reveal is True, the built app is displayed using the OS file manager.

Returns a String containing the Shell path of the built app.

BuildApp cannot be used in an IDE Script that is called by a Build Automation Script.

The code displays the location of a Mac build:

Var appPath As String
appPath = BuildApp(16) ' Mac 64-bit build
Print("Built: " + appPath)

CancelBuild

CancelBuild

Cancels the current build in IDE Pre-Build Scripts. In a Post-Build script this is ignored.

Cancel a build:

CancelBuild

PropertyValue

PropertyValue(attribute As String) As String

PropertyValue(attribute As String, Assigns value As String)

Allows you to set some attributes of the build target.

Names

Values

App.MacArchitecture, App.WindowsArchitecture, App.LinuxArchitecture

x32, x64, ARM32, ARM64

macOSMinimumVersion

A version string - for example: 13.0.1

If the property doesn't support the value passed, the build target will be unchanged.

This example sets the macOS architecture to x64:

PropertyValue("App.MacArchitecture") = "x64"