diff --git a/include/crucible/uname.h b/include/crucible/uname.h new file mode 100644 index 0000000..fc65b66 --- /dev/null +++ b/include/crucible/uname.h @@ -0,0 +1,14 @@ +#ifndef CRUCIBLE_UNAME_H +#define CRUCIBLE_UNAME_H + +#include + +namespace crucible { + using namespace std; + + struct Uname : public utsname { + Uname(); + }; +} + +#endif diff --git a/lib/Makefile b/lib/Makefile index b3acfa4..622abf9 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -19,6 +19,7 @@ CRUCIBLE_OBJS = \ string.o \ task.o \ time.o \ + uname.o \ include ../makeflags -include ../localconf diff --git a/lib/uname.cc b/lib/uname.cc new file mode 100644 index 0000000..f8ed6ad --- /dev/null +++ b/lib/uname.cc @@ -0,0 +1,11 @@ +#include "crucible/error.h" +#include "crucible/uname.h" + +namespace crucible { + using namespace std; + + Uname::Uname() + { + DIE_IF_NON_ZERO(uname(static_cast(this))); + } +}