X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Farchitecture.h;h=153230244f6aedfdce7fd6a5648619108fe93d12;hb=HEAD;hp=00719cfab91387d23f2ec6935a687a61f1a9dc59;hpb=0368a9c1972ff5fd6cd8984901ff0bdbd86afc9f;p=builder.git diff --git a/source/architecture.h b/source/architecture.h deleted file mode 100644 index 00719cf..0000000 --- a/source/architecture.h +++ /dev/null @@ -1,63 +0,0 @@ -#ifndef ARCHITECTURE_H_ -#define ARCHITECTURE_H_ - -#include -#include "buildinfo.h" -#include "pattern.h" - -class Builder; - -/** -Stores information about an architecture. This includes CPU type, model and -bitness and operating system. -*/ -class Architecture -{ -public: - class Loader: public Msp::DataFile::ObjectLoader - { - public: - Loader(Architecture &); - }; - - typedef std::list PatternList; - -private: - Builder &builder; - std::string type; - std::string cpu; - std::string system; - unsigned bits; - std::string name; - bool native; - std::string cross_prefix; - PatternList sharedlib_patterns; - PatternList staticlib_patterns; - PatternList executable_patterns; - -public: - Architecture(Builder &b, const std::string &spec); - - const std::string &get_name() const { return name; } - const std::string &get_system() const { return system; } - unsigned get_bits() const { return bits; } - const std::string &get_cpu() const { return cpu; } - bool match_name(const std::string &) const; - bool is_native() const { return native; } - bool is_cross() const { return !cross_prefix.empty(); } - - void set_cross_prefix(const std::string &); - const std::string &get_cross_prefix() const { return cross_prefix; } - - const PatternList &get_shared_library_patterns() const { return sharedlib_patterns; } - const PatternList &get_static_library_patterns() const { return staticlib_patterns; } - const PatternList &get_executable_patterns() const { return executable_patterns; } - -private: - std::string resolve_alias(const std::string &) const; - void parse_specification(const std::string &); -}; - -typedef std::map ArchMap; - -#endif