+
+ //TODO: set pathMakeLists for windows
+ std::string pathMakeLists = path + "/CMakeLists.txt";
+
+ std::ifstream confFile;
+ confFile.open((pathMakeLists).c_str());
+
+ std::string word;
+ while(confFile.is_open() && !confFile.eof())
+ {
+ //get sets
+ std::getline(confFile,word,'(');
+ std::vector<std::string> wordBits;
+ CDMUtilities::splitter::split(wordBits,word," (\n",CDMUtilities::splitter::no_empties);
+
+ if(wordBits[wordBits.size()-1] == "SET")
+ {
+ //get package name
+ std::getline(confFile,word,')');
+ CDMUtilities::splitter::split(wordBits, word, " ", CDMUtilities::splitter::no_empties);
+ if(wordBits[0] == "BBTK_PACKAGE_NAME")
+ {
+ word = wordBits[1];
+ for (int i = 2; i < wordBits.size(); i++)
+ {
+ word += " " + wordBits[i];
+ }
+ wordBits.clear();
+ CDMUtilities::splitter::split(wordBits, word, "\"", CDMUtilities::splitter::no_empties);
+
+ this->namePackage = wordBits[0];
+ }
+ else if(wordBits[0] == "${BBTK_PACKAGE_NAME}_AUTHOR")
+ {
+ word = wordBits[1];
+ for (int i = 2; i < wordBits.size(); i++)
+ {
+ word += " " + wordBits[i];
+ }
+ wordBits.clear();
+ CDMUtilities::splitter::split(wordBits, word, "\"", CDMUtilities::splitter::no_empties);
+
+ this->authors = wordBits[0];
+ }
+ else if(wordBits[0] == "${BBTK_PACKAGE_NAME}_DESCRIPTION")
+ {
+ word = wordBits[1];
+ for (int i = 2; i < wordBits.size(); i++)
+ {
+ word += " " + wordBits[i];
+ }
+ wordBits.clear();
+ CDMUtilities::splitter::split(wordBits, word, "\"", CDMUtilities::splitter::no_empties);
+
+ this->description = wordBits[0];
+ }
+ else if(wordBits[0] == "${BBTK_PACKAGE_NAME}_MAJOR_VERSION")
+ {
+ this->version = wordBits[1];
+ }
+ else if(wordBits[0] == "${BBTK_PACKAGE_NAME}_MINOR_VERSION")
+ {
+ this->version += "." + wordBits[1];
+ }
+ else if(wordBits[0] == "${BBTK_PACKAGE_NAME}_BUILD_VERSION")
+ {
+ this->version += "." + wordBits[1];
+ }
+ }
+ }
+