FinalBuilder
Encyclopedia
FinalBuilder is an integrated tool for carrying out software build
s on the Windows platform. Unlike tools such as make or Apache Ant
, which require separate tools for authoring, executing and carrying out individual steps, FinalBuilder provides a unified graphical interface
to author and execute build projects. Once defined, a project can only be run either via the graphical interface
or command line program to execute build projects. A project consists of actions, of which there are around 650 types defined as of version 6http://www.finalbuilder.com/feature-matrix.aspx. Projects are stored in a zipped XML format.
Developed by VSoft Technologies
, FinalBuilder is in competition with NAnt
and MSBuild
. It is written in Delphi
, C# (FinalBuilder hosts the Microsoft .NET CLR
), VBScript
, and JScript
. The tool has a mild bias towards building Delphi
projects, but it supports a range of compilers making it suitable for building projects in many languages http://www.finalbuilder.com/Products/FinalBuilder/FeatureMatrix/FeaturesCompilerActions/tabid/98/Default.aspx.
community. This was due to it being only one of only two graphical build tools available at the time - the other being Visual Build
.
Due to the early adoption by Delphi
developers, VSoft
initially focused on developing support for Delphi tools. However, in more recent versions, VSoft have expanded FinalBuilder's support for other development environments and frameworks, most notably Visual Studio and the .NET Framework
.
In 2008, VSoft
released version 6 of FinalBuilder, which included a server application for remotely managing build servers and implementing Continuous Integration
.
for developing custom actions or plugins for FinalBuilder. Using JScript
, VBScript
, PowerShell, IronPython
or any other .NET
languages, users of ActionStudio can create custom FinalBuilder actions to include in their build projects. Action files define the properties, events, options and property pages in an XML file format.
server, called FinalBuilder Server.
FinalBuilder Server provides a number of triggers for automating the regular integration of code. Triggers include:
FinalBuilder Server supports continuous integration with the following version control systems:
Software build
In the field of computer software, the term software build refers either to the process of converting source code files into standalone software artifact that can be run on a computer, or the result of doing so...
s on the Windows platform. Unlike tools such as make or Apache Ant
Apache Ant
Apache Ant is a software tool for automating software build processes. It is similar to Make but is implemented using the Java language, requires the Java platform, and is best suited to building Java projects....
, which require separate tools for authoring, executing and carrying out individual steps, FinalBuilder provides a unified graphical interface
Gui
Gui or guee is a generic term to refer to grilled dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients. The term derives from the verb, "gupda" in Korean, which literally...
to author and execute build projects. Once defined, a project can only be run either via the graphical interface
Gui
Gui or guee is a generic term to refer to grilled dishes in Korean cuisine. These most commonly have meat or fish as their primary ingredient, but may in some cases also comprise grilled vegetables or other vegetarian ingredients. The term derives from the verb, "gupda" in Korean, which literally...
or command line program to execute build projects. A project consists of actions, of which there are around 650 types defined as of version 6http://www.finalbuilder.com/feature-matrix.aspx. Projects are stored in a zipped XML format.
Developed by VSoft Technologies
VSoft Technologies
VSoft Technologies is a Canberra-based ISV , established in 1997. VSoft Technologies produces automated build and administrative automation software for the Windows platform.-External links:**...
, FinalBuilder is in competition with NAnt
NAnt
NAnt is a free and open source software tool for automating software build processes. It is similar to Apache Ant, but targeted at the .NET environment rather than Java...
and MSBuild
MSBuild
MSBuild is a Microsoft build platform typically used in conjunction with Visual Studio. MSBuild version 2.0 is part of .NET Framework 2.0 and works together with Visual Studio 2005...
. It is written in Delphi
Borland Delphi
Embarcadero Delphi is an integrated development environment for console, desktop graphical, web, and mobile applications.Delphi's compilers use its own Object Pascal dialect of Pascal and generate native code for 32- and 64-bit Windows operating systems, as well as 32-bit Mac OS X and iOS...
, C# (FinalBuilder hosts the Microsoft .NET CLR
Common Language Runtime
The Common Language Runtime is the virtual machine component of Microsoft's .NET framework and is responsible for managing the execution of .NET programs. In a process known as just-in-time compilation, the CLR compiles the intermediate language code known as CIL into the machine instructions...
), VBScript
VBScript
VBScript is an Active Scripting language developed by Microsoft that is modeled on Visual Basic. It is designed as a “lightweight” language with a fast interpreter for use in a wide variety of Microsoft environments...
, and JScript
JScript
JScript is a scripting language based on the ECMAScript standard that is used in Microsoft's Internet Explorer.JScript is implemented as a Windows Script engine. This means that it can be "plugged in" to any application that supports Windows Script, such as Internet Explorer, Active Server Pages,...
. The tool has a mild bias towards building Delphi
Borland Delphi
Embarcadero Delphi is an integrated development environment for console, desktop graphical, web, and mobile applications.Delphi's compilers use its own Object Pascal dialect of Pascal and generate native code for 32- and 64-bit Windows operating systems, as well as 32-bit Mac OS X and iOS...
projects, but it supports a range of compilers making it suitable for building projects in many languages http://www.finalbuilder.com/Products/FinalBuilder/FeatureMatrix/FeaturesCompilerActions/tabid/98/Default.aspx.
History
The first version of FinalBuilder was made publicly available in May, 2000. It quickly gained popularity and found a strong user base, particularly among the DelphiBorland Delphi
Embarcadero Delphi is an integrated development environment for console, desktop graphical, web, and mobile applications.Delphi's compilers use its own Object Pascal dialect of Pascal and generate native code for 32- and 64-bit Windows operating systems, as well as 32-bit Mac OS X and iOS...
community. This was due to it being only one of only two graphical build tools available at the time - the other being Visual Build
Visual Build
Visual Build is GUI software for Windows that enables software developers and build masters to create an automated, repeatable process for software builds. It has built-in support for integrating various development tools into the build process. Projects are stored as XML to facilitate storage in...
.
Due to the early adoption by Delphi
Borland Delphi
Embarcadero Delphi is an integrated development environment for console, desktop graphical, web, and mobile applications.Delphi's compilers use its own Object Pascal dialect of Pascal and generate native code for 32- and 64-bit Windows operating systems, as well as 32-bit Mac OS X and iOS...
developers, VSoft
VSoft Technologies
VSoft Technologies is a Canberra-based ISV , established in 1997. VSoft Technologies produces automated build and administrative automation software for the Windows platform.-External links:**...
initially focused on developing support for Delphi tools. However, in more recent versions, VSoft have expanded FinalBuilder's support for other development environments and frameworks, most notably Visual Studio and the .NET Framework
.NET Framework
The .NET Framework is a software framework that runs primarily on Microsoft Windows. It includes a large library and supports several programming languages which allows language interoperability...
.
In 2008, VSoft
VSoft Technologies
VSoft Technologies is a Canberra-based ISV , established in 1997. VSoft Technologies produces automated build and administrative automation software for the Windows platform.-External links:**...
released version 6 of FinalBuilder, which included a server application for remotely managing build servers and implementing Continuous Integration
Continuous integration
In software engineering, continuous integration implements continuous processes of applying quality control — small pieces of effort, applied frequently...
.
Built-in actions
As of version 6, FinalBuilder includes more than 650 different action types. It is beyond the scope of this article to list every action, but the notable actions categories include:- Version Control System actions for automating interaction with 17 different version control systems
- CompilerCompilerA compiler is a computer program that transforms source code written in a programming language into another computer language...
actions for executing a 19 different source code compilers - Setup/installer programs and help file compiler actions
- Communication actions for sending build notifications with email, news servers, ICQ and MSN
- Automated Testing tool actions to automate tests as part of a build process
- File and Folder actions for file transfers with FTP and SFTPSSH file transfer protocolIn computing, the SSH File Transfer Protocol is a network protocol that provides file access, file transfer, and file management functionality over any reliable data stream...
and local file system management
ActionStudio
ActionStudio is a stand alone IDEIntegrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...
for developing custom actions or plugins for FinalBuilder. Using JScript
JScript
JScript is a scripting language based on the ECMAScript standard that is used in Microsoft's Internet Explorer.JScript is implemented as a Windows Script engine. This means that it can be "plugged in" to any application that supports Windows Script, such as Internet Explorer, Active Server Pages,...
, VBScript
VBScript
VBScript is an Active Scripting language developed by Microsoft that is modeled on Visual Basic. It is designed as a “lightweight” language with a fast interpreter for use in a wide variety of Microsoft environments...
, PowerShell, IronPython
IronPython
IronPython is an implementation of the Python programming language targeting the .NET Framework and Mono. Jim Hugunin created the project and actively contributed to it up until Version 1.0 which was released on September 5, 2006. Thereafter, it was maintained by a small team at Microsoft until...
or any other .NET
.NET Framework
The .NET Framework is a software framework that runs primarily on Microsoft Windows. It includes a large library and supports several programming languages which allows language interoperability...
languages, users of ActionStudio can create custom FinalBuilder actions to include in their build projects. Action files define the properties, events, options and property pages in an XML file format.
FinalBuilder Server
Since the release of version 6, FinalBuilder has included a Continuous IntegrationContinuous integration
In software engineering, continuous integration implements continuous processes of applying quality control — small pieces of effort, applied frequently...
server, called FinalBuilder Server.
FinalBuilder Server provides a number of triggers for automating the regular integration of code. Triggers include:
- Time Trigger: for scheduling builds
- File Trigger: for starting builds when file/s or folder/s change
- Run Process Trigger: for executing a process and then conditionally running a build based on the outcome of that process
- Version Control Triggers: for running a build with every check-in to a version control system
FinalBuilder Server supports continuous integration with the following version control systems:
- AlienBrain
- Accurev
- IBM Rational ClearCase (Base and UCM)
- CVSConcurrent Versions SystemThe Concurrent Versions System , also known as the Concurrent Versioning System, is a client-server free software revision control system in the field of software development. Version control system software keeps track of all work and all changes in a set of files, and allows several developers ...
- PerforcePerforcePerforce is a commercial, proprietary, centralized revision control system developed by Perforce Software, Inc.-Architecture:Perforce is a client/server system.The server manages a central database and a master repository of file versions....
- BorlandBorlandBorland Software Corporation is a software company first headquartered in Scotts Valley, California, Cupertino, California and finally Austin, Texas. It is now a Micro Focus subsidiary. It was founded in 1983 by Niels Jensen, Ole Henriksen, Mogens Glad and Philippe Kahn.-The 1980s:...
StarTeamStarTeamStarTeam is a revision control system used in software development, especially when a project involves multiple teams in different locations. StarTeam is a SCM and SDLC software application, created by Starbase Corporation, acquired by Borland in January 2003 which was acquired by Microfocus... - Subversion
- Seapine Surround SCM
- SourceGear Vault
- Microsoft Visual SourceSafeMicrosoft Visual SourceSafeMicrosoft Visual SourceSafe is a source control software package oriented towards small software development projects. Like most source control systems, SourceSafe creates a virtual library of computer files...
- MicrosoftMicrosoftMicrosoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
Visual Studio Team SystemVisual Studio Team SystemVisual Studio Application Lifecycle Management is a collection of integrated software development tools developed by Microsoft. These tools include IDEs, source control, work items, collaboration, metrics, and reporting tools.-Platform:... - Plastic SCMPlastic SCMPlastic SCM is a commercial, proprietary revision control tool developed by Codice Software, Inc.Plastic can work in centralized mode and as a distributed revision control system.-Architecture:...