diff options
Diffstat (limited to 'share/qbs/imports/qbs/Probes')
-rw-r--r-- | share/qbs/imports/qbs/Probes/IarProbe.qbs | 33 | ||||
-rw-r--r-- | share/qbs/imports/qbs/Probes/KeilProbe.qbs | 3 | ||||
-rw-r--r-- | share/qbs/imports/qbs/Probes/SdccProbe.qbs | 10 |
3 files changed, 18 insertions, 28 deletions
diff --git a/share/qbs/imports/qbs/Probes/IarProbe.qbs b/share/qbs/imports/qbs/Probes/IarProbe.qbs index 6e7fb7d64..d261e9065 100644 --- a/share/qbs/imports/qbs/Probes/IarProbe.qbs +++ b/share/qbs/imports/qbs/Probes/IarProbe.qbs @@ -65,34 +65,25 @@ PathProbe { compilerFilePath, tag); } - // FIXME: Do we need dump the default paths for both C - // and C++ languages? - var defaultPaths = IAR.dumpDefaultPaths( - compilerFilePath, languages[0]); - var macros = compilerDefinesByLanguage["c"] || compilerDefinesByLanguage["cpp"]; architecture = IAR.guessArchitecture(macros); endianness = IAR.guessEndianness(macros); - includePaths = defaultPaths.includePaths; - var version = parseInt(macros["__VER__"], 10); + // FIXME: Do we need dump the default paths for both C + // and C++ languages? + var defaultPaths = IAR.dumpDefaultPaths( + compilerFilePath, languages[0]); - if (architecture === "arm") { - versionMajor = parseInt(version / 1000000); - versionMinor = parseInt(version / 1000) % 1000; - versionPatch = parseInt(version) % 1000; - } else if (architecture === "mcs51") { - versionMajor = parseInt(version / 100); - versionMinor = parseInt(version % 100); - versionPatch = 0; - } else if (architecture === "avr") { - versionMajor = parseInt(version / 100); - versionMinor = parseInt(version % 100); - versionPatch = 0; - } + includePaths = defaultPaths.includePaths; - found = version && architecture && endianness; + var version = IAR.guessVersion(macros, architecture); + if (version) { + versionMajor = version.major; + versionMinor = version.minor; + versionPatch = version.patch; + found = version && architecture && endianness; + } } } diff --git a/share/qbs/imports/qbs/Probes/KeilProbe.qbs b/share/qbs/imports/qbs/Probes/KeilProbe.qbs index 1955fe480..34afecb64 100644 --- a/share/qbs/imports/qbs/Probes/KeilProbe.qbs +++ b/share/qbs/imports/qbs/Probes/KeilProbe.qbs @@ -81,8 +81,7 @@ PathProbe { versionMajor = version.major; versionMinor = version.minor; versionPatch = version.patch; + found = version.found && architecture && endianness; } - - found = version.found && architecture && endianness; } } diff --git a/share/qbs/imports/qbs/Probes/SdccProbe.qbs b/share/qbs/imports/qbs/Probes/SdccProbe.qbs index b5f7d384e..3595bb158 100644 --- a/share/qbs/imports/qbs/Probes/SdccProbe.qbs +++ b/share/qbs/imports/qbs/Probes/SdccProbe.qbs @@ -64,10 +64,10 @@ PathProbe { var defaultPaths = SDCC.dumpDefaultPaths(compilerFilePath, architecture); includePaths = defaultPaths.includePaths; - versionMajor = parseInt(macros["__SDCC_VERSION_MAJOR"], 10); - versionMinor = parseInt(macros["__SDCC_VERSION_MINOR"], 10); - versionPatch = parseInt(macros["__SDCC_VERSION_PATCH"], 10); - - found = macros["SDCC"]; + var version = SDCC.guessVersion(macros); + versionMajor = version.major; + versionMinor = version.minor; + versionPatch = version.patch; + found = version.found; } } |