#############################################################
# This file contains the versioning information for Axis C  #
#############################################################
majorVersion = 1
minorVersion = 6
#revision = n

#version = ${majorVersion}.${minorVersion}.${revision}
version = ${majorVersion}.${minorVersion}

version.comments = 
version.CompanyName = The Apache Software Foundation
version.FileDescription = Apache Axis C++
version.LegalCopyright = 
version.LegalTrademarks = 
version.PrivateBuild = ${version}
version.ProductName = Apache Axis C++