summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2015-08-20 18:05:12 (GMT)
committerBrad King <brad.king@kitware.com>2015-08-20 18:20:50 (GMT)
commit932af85fbb8f6f2ab65aaa518adb363f2c5e0052 (patch)
tree7c71df1b5847c6ac687187447dcfe6d9f8c0411a
parentf8242ad0cc3028bfac613b79332d7477b6fcc6e4 (diff)
downloadCastXML-932af85fbb8f6f2ab65aaa518adb363f2c5e0052.zip
CastXML-932af85fbb8f6f2ab65aaa518adb363f2c5e0052.tar.gz
CastXML-932af85fbb8f6f2ab65aaa518adb363f2c5e0052.tar.bz2
Detect: Avoid use of KWSys SystemTools::Split
Use llvm::StringRef::split instead.
-rw-r--r--src/Detect.cxx14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/Detect.cxx b/src/Detect.cxx
index 0d30879..df53d0a 100644
--- a/src/Detect.cxx
+++ b/src/Detect.cxx
@@ -18,6 +18,8 @@
#include "Options.h"
#include "Utils.h"
+#include "llvm/ADT/SmallVector.h"
+#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Triple.h"
#include "llvm/Support/Host.h"
@@ -194,12 +196,12 @@ static bool detectCC_MSVC(const char* const* argBeg,
opts.Predefines = predefs+1;
}
if(const char* includes_str = std::getenv("INCLUDE")) {
- std::vector<std::string> includes;
- cxsys::SystemTools::Split(includes_str, includes, ';');
- for(std::vector<std::string>::iterator i = includes.begin(),
- e = includes.end(); i != e; ++i) {
- if(!i->empty()) {
- std::string inc = *i;
+ llvm::SmallVector<llvm::StringRef, 8> includes;
+ llvm::StringRef includes_ref(includes_str);
+ includes_ref.split(includes, ";", -1, false);
+ for (llvm::StringRef i: includes) {
+ if (!i.empty()) {
+ std::string inc = i;
std::replace(inc.begin(), inc.end(), '\\', '/');
opts.Includes.push_back(inc);
}