]> git.tdb.fi Git - builder.git/blobdiff - source/objectfile.h
Use default member initializers and constructor delegation
[builder.git] / source / objectfile.h
index f6bded762cfb08daccf44d805feaff01bcee2175..9e3ff90a77c227cf157db6d8e646586409576bd1 100644 (file)
@@ -12,20 +12,26 @@ class ObjectFile: public FileTarget
 {
 private:
        SourceFile &source;
-       
+       bool used_in_shlib = false;
+
 public:
        ObjectFile(Builder &, const Component &, SourceFile &);
 private:
-       static Msp::FS::Path generate_target_path(const Component &, const std::string &);
+       static Msp::FS::Path generate_target_path(const Component &, const Msp::FS::Path &);
 
 public:
-       virtual const char *get_type() const { return "ObjectFile"; }
+       const char *get_type() const override { return "ObjectFile"; }
        SourceFile &get_source() const { return source; }
 
-       virtual void find_dependencies();
+       void set_used_in_shared_library(bool);
+       bool is_used_in_shared_library() const { return used_in_shlib; }
+
+       void collect_build_info(BuildInfo &) const override;
 
 private:
-       void find_dependencies(FileTarget *);
+       void find_dependencies() override;
+
+       void find_dependencies(FileTarget &, std::vector<FileTarget *> &);
 };
 
 #endif