]> git.tdb.fi Git - builder.git/blobdiff - source/objectfile.h
Don't rely on component type in determining whether to use -fPIC
[builder.git] / source / objectfile.h
index 2e9b6e1a4333074e71c18fe1502ab49661a68c13..48e4482d7ab4a153f251724d02f4f855c01c218c 100644 (file)
@@ -12,24 +12,26 @@ class ObjectFile: public FileTarget
 {
 private:
        SourceFile &source;
-       
+       bool used_in_shlib;
+
 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"; }
        SourceFile &get_source() const { return source; }
 
-       /** Processes as many new dependences as possible.  Some may be created on
-       the fly and can't be processed until their own dependencies are ready.  In
-       such cases this function needs to be called again. */
-       virtual void find_depends();
+       void set_used_in_shared_library(bool);
+       bool is_used_in_shared_library() const { return used_in_shlib; }
+
+       virtual void collect_build_info(BuildInfo &) const;
 
 private:
-       /** Recursively looks for header targets and adds them as dependencies. */
-       void find_depends(FileTarget *);
+       virtual void find_dependencies();
+
+       void find_dependencies(FileTarget *);
 };
 
 #endif