Here is a query that gives you all the Server Properties available through the SERVERPROPERTY
system function.
You can run this on old SQL versions and if the Property didn't exist back then, the function will just safely return a NULL.
SELECT
SERVERPROPERTY('BuildClrVersion') AS BuildClrVersion
,SERVERPROPERTY('Collation') AS [Collation]
,SERVERPROPERTY('CollationID') AS CollationID
,SERVERPROPERTY('ComparisonStyle') AS ComparisonStyle
,SERVERPROPERTY('ComputerNamePhysicalNetBIOS') AS [ComputerNamePhysicalNetBIOS]
,SERVERPROPERTY('Edition') AS [Edition]
,SERVERPROPERTY('EditionID') AS EditionID
,SERVERPROPERTY('EngineEdition') AS EngineEdition
,SERVERPROPERTY('FilestreamConfiguredLevel') AS FilestreamConfiguredLevel
,SERVERPROPERTY('FilestreamEffectiveLevel') AS FilestreamEffectiveLevel
,SERVERPROPERTY('FilestreamShareName') AS FilestreamShareName
,SERVERPROPERTY('HadrManagerStatus') AS HadrManagerStatus
,SERVERPROPERTY('InstanceDefaultDataPath') AS InstanceDefaultDataPath
,SERVERPROPERTY('InstanceDefaultLogPath') AS InstanceDefaultLogPath
,SERVERPROPERTY('InstanceName') AS [Instance]
,SERVERPROPERTY('IsAdvancedAnalyticsInstalled') AS IsAdvancedAnalyticsInstalled
,SERVERPROPERTY('IsClustered') AS [IsClustered]
,SERVERPROPERTY('IsFullTextInstalled') AS [IsFullTextInstalled]
,SERVERPROPERTY('IsHadrEnabled') AS IsHadrEnabled
,SERVERPROPERTY('IsIntegratedSecurityOnly') AS [IsIntegratedSecurityOnly]
,SERVERPROPERTY('IsLocalDB') AS IsLocalDB
,SERVERPROPERTY('IsPolybaseInstalled') AS IsPolybaseInstalled
,SERVERPROPERTY('IsSingleUser') AS IsSingleUser
,SERVERPROPERTY('IsXTPSupported') AS IsXTPSupported
,SERVERPROPERTY('LCID') AS LCID
,SERVERPROPERTY('LicenseType') AS LicenseType
,SERVERPROPERTY('MachineName') AS [MachineName]
,SERVERPROPERTY('ProcessID') AS [ProcessID]
,SERVERPROPERTY('ProductBuild') AS ProductBuild
,SERVERPROPERTY('ProductBuildType') AS ProductBuildType
,SERVERPROPERTY('ProductLevel') AS ProductLevel
,SERVERPROPERTY('ProductMajorVersion') AS ProductMajorVersion
,SERVERPROPERTY('ProductMinorVersion') AS ProductMinorVersion
,SERVERPROPERTY('ProductUpdateLevel') AS ProductUpdateLevel
,SERVERPROPERTY('ProductUpdateReference') AS ProductUpdateReference
,SERVERPROPERTY('ProductVersion') AS [ProductVersion]
,SERVERPROPERTY('ResourceLastUpdateDateTime') AS ResourceLastUpdateDateTime
,SERVERPROPERTY('ResourceVersion') AS ResourceVersion
,SERVERPROPERTY('ServerName') AS [ServerName]
,SERVERPROPERTY('SqlCharSet') AS SqlCharSet
,SERVERPROPERTY('SqlCharSetName') AS SqlCharSetName
,SERVERPROPERTY('SqlSortOrder') AS SqlSortOrder
,SERVERPROPERTY('SqlSortOrderName') AS SqlSortOrderName
,@@VERSION AS [Version]