blob: 152578074ce573a354393200557a3c4803e078a9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#include <types.h>
namespace gb
{
using namespace types;
class LinkTarget;
class Library : public IsCleanable, public HasDependencies, public IsLinking, public DeliversHeaders, public HasCompileSettings, public Target
{
public:
Library(String name) {};
private:
/// private helper function for the constructor
void Library_impl(
LinkTarget library_linktarget) {};
/// platformdependant additional setup for constructor (used on Windows only)
void Library_platform(
LinkTarget library_linktarget,
Path dllfile);
/// helper function to wrap LinkTargets functions (this is more or less pimpl ...)
void forward_to_linktarget(Function f) {};
/// List of buildable libraries (i.e. libraries that are not expected to exist outside of \$(OUTDIR) on the system).
static const List<Library> TARGETS;
/// List of additional defines for compiling objects for libraries
static const List<String> DEFS;
/// List of additional flags for linking a library
static const List<String> TARGETTYPEFLAGS;
/// Mapping from symbolic library names to dll filenames
static const Map<Library,Path> DLLFILENAMES;
/// Mapping from symbolic library names to filenames
static const Map<Library,Path> FILENAMES;
};
}
/* vim: set filetype=cpp : */
|