Use regex to find compiler arguments.
continuous-integration/drone/push Build is passing Details

This commit is contained in:
tastytea 2019-10-10 22:01:36 +02:00
parent 6fb459467a
commit 5430c2de39
Signed by: tastytea
GPG Key ID: CFC39497F1B26E07
1 changed files with 5 additions and 11 deletions

View File

@ -25,6 +25,7 @@
#include <experimental/filesystem>
#include <fstream>
#include <iostream>
#include <regex>
#include <string>
#include <system_error>
#include <vector>
@ -171,18 +172,11 @@ string Compilescript::compile(const string &filename)
}
std::getline(in, buf);
if (buf.substr(0, 17) == "// compilescript:")
const std::regex re("^(//|#|;) ?compilescript:");
std::smatch match;
if (std::regex_search(buf, match, re))
{
compiler_arguments = buf.substr(17);
}
else if (buf.substr(0, 16) == "//compilescript:")
{
compiler_arguments = buf.substr(16);
}
else if ((buf.substr(0, 15) == "#compilescript:") ||
(buf.substr(0, 15) == ";compilescript:"))
{
compiler_arguments = buf.substr(15);
compiler_arguments = match.suffix();
}
else
{