]> git.tdb.fi Git - builder.git/blob - source/importlibrary.h
Save caches before starting the build
[builder.git] / source / importlibrary.h
1 #ifndef IMPORTLIBRARY_H_
2 #define IMPORTLIBRARY_H_
3
4 #include "filetarget.h"
5
6 class ExportDefinitions;
7 class SharedLibrary;
8
9 /**
10 A special case of static library which pulls in a shared library.  Used on
11 platforms with no true dynamic linking support.
12 */
13 class ImportLibrary: public FileTarget
14 {
15 private:
16         SharedLibrary *shared_lib;
17
18 public:
19         ImportLibrary(Builder &, const Msp::FS::Path &);
20         ImportLibrary(Builder &, const Component &, SharedLibrary &, ExportDefinitions &);
21 private:
22         static std::string generate_filename(const Component &, const SharedLibrary &);
23
24 public:
25         virtual const char *get_type() const { return "ImportLibrary"; }
26
27         SharedLibrary *get_shared_library() const { return shared_lib; }
28 };
29
30 #endif