gwenhywfar  5.10.1
target.h
Go to the documentation of this file.
1 /***************************************************************************
2  begin : Mon Feb 08 2021
3  copyright : (C) 2021 by Martin Preuss
4  email : martin@libchipcard.de
5 
6  ***************************************************************************
7  * Please see toplevel file COPYING for license details *
8  ***************************************************************************/
9 
10 #ifndef GWBUILD_TARGET_H
11 #define GWBUILD_TARGET_H
12 
13 
14 #include <gwenhywfar/list2.h>
15 
16 
17 typedef struct GWB_TARGET GWB_TARGET;
19 
20 
21 #include "gwenbuild/types/context.h"
22 #include "gwenbuild/types/file.h"
27 
28 #include <gwenhywfar/stringlist.h>
29 
30 
31 
33 void GWB_Target_free(GWB_TARGET *target);
34 
35 const char *GWB_Target_GetId(const GWB_TARGET *target);
36 void GWB_Target_SetId(GWB_TARGET *target, const char *s);
37 
38 
39 const char *GWB_Target_GetName(const GWB_TARGET *target);
40 void GWB_Target_SetName(GWB_TARGET *target, const char *s);
41 
42 
43 const char *GWB_Target_GetInstallName(const GWB_TARGET *target);
44 void GWB_Target_SetInstallName(GWB_TARGET *target, const char *s);
45 
46 
49 
50 
51 const char *GWB_Target_GetInstallPath(const GWB_TARGET *target);
52 void GWB_Target_SetInstallPath(GWB_TARGET *target, const char *s);
53 
54 
56 
57 
58 void GWB_Target_SetSoVersion(GWB_TARGET *target, int vCurrent, int vAge, int vRevision);
60 int GWB_Target_GetSoVersionAge(const GWB_TARGET *target);
62 
63 
65 void GWB_Target_SetContext(GWB_TARGET *target, GWB_CONTEXT *ctx);
66 
67 GWB_FILE_LIST2 *GWB_Target_GetSourceFileList(const GWB_TARGET *target);
68 void GWB_Target_AddSourceFile(GWB_TARGET *target, GWB_FILE *file);
69 
71 void GWB_Target_AddUsedTargetName(GWB_TARGET *target, const char *s);
72 
73 
75 void GWB_Target_AddUsedLibraryName(GWB_TARGET *target, const char *s);
76 
77 
79 void GWB_Target_AddUsedTargetLinkSpec(GWB_TARGET *target, const char *s);
80 
81 
83 void GWB_Target_SetBuilder(GWB_TARGET *target, GWB_BUILDER *builder);
84 
87 
88 GWB_BUILD_CMD_LIST *GWB_Target_GetExplicitBuildList(const GWB_TARGET *target);
90 
91 
92 void GWB_Target_Dump(const GWB_TARGET *target, int indent, int fullDump);
93 
94 
95 #endif
GWB_FILE * GWB_Target_GetOutputFile(const GWB_TARGET *target)
Definition: target.c:279
void GWB_Target_SetOutputFile(GWB_TARGET *target, GWB_FILE *f)
Definition: target.c:286
struct GWB_CONTEXT GWB_CONTEXT
Definition: context.h:17
GWB_FILE_LIST2 * GWB_Target_GetSourceFileList(const GWB_TARGET *target)
Definition: target.c:201
void GWB_Target_SetInstallPath(GWB_TARGET *target, const char *s)
Definition: target.c:149
int GWB_Target_GetSoVersionCurrent(const GWB_TARGET *target)
Definition: target.c:166
struct GWB_FILE GWB_FILE
Definition: file.h:18
const char * GWB_Target_GetName(const GWB_TARGET *target)
Definition: target.c:71
void GWB_Target_SetSoVersion(GWB_TARGET *target, int vCurrent, int vAge, int vRevision)
Definition: target.c:157
GWB_TARGET * GWB_Target_new(GWB_PROJECT *project)
Definition: target.c:26
void GWB_Target_SetId(GWB_TARGET *target, const char *s)
Definition: target.c:116
struct GWB_PROJECT GWB_PROJECT
Definition: project.h:14
GWEN_STRINGLIST * GWB_Target_GetUsedLibraryNameList(const GWB_TARGET *target)
Definition: target.c:232
GWBUILD_TARGETTYPE
Definition: gwenbuild.h:18
void GWB_Target_SetInstallName(GWB_TARGET *target, const char *s)
Definition: target.c:97
GWEN_LIST2_FUNCTION_DEFS(GWB_BUILD_CMD, GWB_BuildCmd)
GWEN_STRINGLIST * GWB_Target_GetUsedTargetNameList(const GWB_TARGET *target)
Definition: target.c:216
GWEN_STRINGLIST * GWB_Target_GetUsedTargetLinkSpecList(const GWB_TARGET *target)
Definition: target.c:248
GWBUILD_TARGETTYPE GWB_Target_GetTargetType(const GWB_TARGET *target)
Definition: target.c:128
struct GWB_TARGET GWB_TARGET
Definition: target.h:17
void GWB_Target_SetName(GWB_TARGET *target, const char *s)
Definition: target.c:78
const char * GWB_Target_GetInstallName(const GWB_TARGET *target)
Definition: target.c:90
const char * GWB_Target_GetId(const GWB_TARGET *target)
Definition: target.c:109
struct GWEN_STRINGLISTSTRUCT GWEN_STRINGLIST
Definition: stringlist.h:56
void GWB_Target_AddExplicitBuild(GWB_TARGET *target, GWB_BUILD_CMD *bcmd)
Definition: target.c:300
void GWB_Target_AddUsedTargetLinkSpec(GWB_TARGET *target, const char *s)
Definition: target.c:255
GWB_BUILD_CMD_LIST * GWB_Target_GetExplicitBuildList(const GWB_TARGET *target)
Definition: target.c:293
void GWB_Target_AddSourceFile(GWB_TARGET *target, GWB_FILE *file)
Definition: target.c:208
void GWB_Target_AddUsedTargetName(GWB_TARGET *target, const char *s)
Definition: target.c:223
void GWB_Target_Dump(const GWB_TARGET *target, int indent, int fullDump)
Definition: target.c:332
struct GWB_BUILD_CMD GWB_BUILD_CMD
Definition: buildcmd.h:20
struct GWB_BUILDER GWB_BUILDER
Definition: builder.h:17
GWB_BUILDER * GWB_Target_GetBuilder(const GWB_TARGET *target)
Definition: target.c:265
int GWB_Target_GetSoVersionAge(const GWB_TARGET *target)
Definition: target.c:173
GWB_CONTEXT * GWB_Target_GetContext(const GWB_TARGET *target)
Definition: target.c:187
void GWB_Target_free(GWB_TARGET *target)
Definition: target.c:45
const char * GWB_Target_GetInstallPath(const GWB_TARGET *target)
Definition: target.c:142
void GWB_Target_AddUsedLibraryName(GWB_TARGET *target, const char *s)
Definition: target.c:239
GWB_PROJECT * GWB_Target_GetProject(const GWB_TARGET *target)
Definition: target.c:64
int GWB_Target_GetSoVersionRevision(const GWB_TARGET *target)
Definition: target.c:180
void GWB_Target_SetBuilder(GWB_TARGET *target, GWB_BUILDER *builder)
Definition: target.c:272
void GWB_Target_SetContext(GWB_TARGET *target, GWB_CONTEXT *ctx)
Definition: target.c:194
void GWB_Target_SetTargetType(GWB_TARGET *target, GWBUILD_TARGETTYPE t)
Definition: target.c:135