summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmAuxSourceDirectoryCommand.cxx12
1 files changed, 8 insertions, 4 deletions
diff --git a/Source/cmAuxSourceDirectoryCommand.cxx b/Source/cmAuxSourceDirectoryCommand.cxx
index fed4d5b..6655911 100644
--- a/Source/cmAuxSourceDirectoryCommand.cxx
+++ b/Source/cmAuxSourceDirectoryCommand.cxx
@@ -32,6 +32,8 @@ bool cmAuxSourceDirectoryCommand::InitialPass(
sourceListValue = def;
}
+ std::vector<std::string> files;
+
// Load all the files in the directory
cmsys::Directory dir;
if (dir.Load(tdir.c_str())) {
@@ -55,14 +57,16 @@ bool cmAuxSourceDirectoryCommand::InitialPass(
// depends can be done
cmSourceFile* sf = this->Makefile->GetOrCreateSource(fullname);
sf->SetProperty("ABSTRACT", "0");
- if (!sourceListValue.empty()) {
- sourceListValue += ";";
- }
- sourceListValue += fullname;
+ files.push_back(fullname);
}
}
}
}
+ std::sort(files.begin(), files.end());
+ if (!sourceListValue.empty()) {
+ sourceListValue += ";";
+ }
+ sourceListValue += cmJoin(files, ";");
this->Makefile->AddDefinition(args[1], sourceListValue.c_str());
return true;
}