Menu

BuildNotes

build (5)
Martin Fischer Dave Bullis Russell Shilling

Build Notes

Building XTrackCad consists of the following steps
* Gathering the tools
* Fetching the source
* Configuring the build
* Bulding the product
* Installing the product

The source code is maintained in a Mecurial repository on SourceForge. You will need to install the Mercurial application (hg and thg)

CMake is a cross-platform build system, available at http://www.cmake.org, that can be used to generate builds for a variety of build tools ranging from "make" to Visual Studio and XCode. Using CMake you can build XTrackCAD on Windows, GNU/Linux, and Mac OSX using the build tool(s) of your choice.

Details can be found below.

Windows Build: [WindowsBuild]
Mac OSX Build: [MacBuild]
Linux Build: [LinuxBuild]

You might find these usefull as well:
Developer Info: [DeveloperInfo]
Create Help: [CreateHelp]
Localization and Internationalization: [Internationalization]

XTrackCAD has been compiled and tested on FreeBSD and OpenSolaris. But there is no official support for these operating systems.

Regression Tests

After you've built XTrackCAD you should run the [RegressionTest].

Release Build Notes

In addition to the Build notes in each of the platforms Build Notes above, there a few generic steps for releasing the product.

Update the Release Notes

Create the release notes from the commit
messages in Mercurial.

cd source-directory
hg log -d ">2016-11-01" --template "* {desc}\
" >notes

OR

hg log -r 900: --template "* {desc}\
" >notes

The notes are then inserted into ##source-directory\app\lib\CHANGELOG.md##
Use pandoc to convert the ##CHANGELOG.md## and the ##Readme.txt##. Finally the current release is tagged.

pandoc -f markdown -t plain -o Readme.txt Readme.md
hg ci -m "Update release notes"
hg tag Release_${VERSION}

Creating a Mercurial bundle

cd [sourcedirectory]
hg bundle -a xtrkcad_4_2_4a.hg

Uploading

Create a new directory for this release on sourceforge and upload CHANGELOG.md, Readme.md and the packages.
Replace
* ${USER} with your sourceforge user id
* ${VERSION} with the new version number
* ${SOURCEDIR} with the directory from above
* ${BUILDDIR} with your build directory
* ${PACKAGE} with your built package

$ sftp ${USER}/@frs.sourceforge.net
sftp> cd /home/frs/project/xtrkcad-fork/XTrackCad
sftp> mkdir "Version ${VERSION}'
sftp> cd 'Version ${VERSION}'
stfp> lcd '${SOURCEDIR}/app/lib'
sftp> put CHANGELOG.md
stfp> put Readme.md
stfp> lcd ${BUILDDIR}
sftp> put ${PACKAGE}
sftp> quit

Note: it might take a while for the file to show up.

Other Updates

Update the #%Download and Install: [DownloadInstall]#% wikka page with the new Version number

Update the default download file on the SourceForge download page.

CategoryDevel


Related

Wiki: CreateHelp
Wiki: DeveloperInfo
Wiki: DownloadInstall
Wiki: Home
Wiki: Internationalization
Wiki: LinuxBuild
Wiki: MacBuild
Wiki: RegressionTest
Wiki: WindowsBuild

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.