Update Containerfiles, start CLI tool.

+ Containerfiles: default to using g++.  Most of the dev machines aren't
  working with clang yet; until this is sorted out, they'll need to use
  g++.
+ Add script to determine if the git-tree is tagged.
+ Add basic CMake skeleton and start CLI tool.
This commit is contained in:
2023-10-18 21:05:56 -07:00
parent f7c146b3a0
commit 19fa0c147d
13 changed files with 282 additions and 4 deletions

41
src/packager.cc Normal file
View File

@@ -0,0 +1,41 @@
///
/// \file packager.cc
/// \author K. Isom <kyle@imap.cc>
/// \date 2023-10-18
/// \brief Packaging tools for shimmering-clarity.
///
#include <iostream>
#include <string>
#include <scsl/Commander.h>
#include <scsl/Flag.h>
static struct {
scsl::Flags *flags;
std::string owner;
std::string distribution;
std::string component;
std::string password;
std::string username;
std::string version;
} config;
int
main(int argc, char *argv[])
{
config.flags = new scsl::Flags("sc3dev-packager", "package tooling for shimmering clarity");
config.flags->Register("--component", "main", "Debian package component");
config.flags->Register("--distribution", "ubuntu", "Debian package distribution");
config.flags->Register("--owner", "sc", "package repository owner");
auto status = config.flags->Parse(argc, argv);
if (status != scsl::Flags::ParseStatus::OK) {
std::cerr << "failed to parse flags: "
<< scsl::Flags::ParseStatusToString(status)
<< "\n";
exit(1);
}
}