gwenhywfar  5.7.2
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 
45 
46 
47 const char *GWB_Target_GetInstallPath(const GWB_TARGET *target);
48 void GWB_Target_SetInstallPath(GWB_TARGET *target, const char *s);
49 
50 
52 
53 
54 void GWB_Target_SetSoVersion(GWB_TARGET *target, int vCurrent, int vAge, int vRevision);
56 int GWB_Target_GetSoVersionAge(const GWB_TARGET *target);
58 
59 
61 void GWB_Target_SetContext(GWB_TARGET *target, GWB_CONTEXT *ctx);
62 
63 GWB_FILE_LIST2 *GWB_Target_GetSourceFileList(const GWB_TARGET *target);
64 void GWB_Target_AddSourceFile(GWB_TARGET *target, GWB_FILE *file);
65 
67 void GWB_Target_AddUsedTargetName(GWB_TARGET *target, const char *s);
68 
69 
71 void GWB_Target_AddUsedLibraryName(GWB_TARGET *target, const char *s);
72 
73 
75 void GWB_Target_AddUsedTargetLinkSpec(GWB_TARGET *target, const char *s);
76 
77 
79 void GWB_Target_SetBuilder(GWB_TARGET *target, GWB_BUILDER *builder);
80 
83 
84 GWB_BUILD_CMD_LIST *GWB_Target_GetExplicitBuildList(const GWB_TARGET *target);
86 
87 
88 void GWB_Target_Dump(const GWB_TARGET *target, int indent, int fullDump);
89 
90 
91 #endif
GWB_FILE * GWB_Target_GetOutputFile(const GWB_TARGET *target)
Definition: target.c:259
void GWB_Target_SetOutputFile(GWB_TARGET *target, GWB_FILE *f)
Definition: target.c:266
struct GWB_CONTEXT GWB_CONTEXT
Definition: context.h:17
GWB_FILE_LIST2 * GWB_Target_GetSourceFileList(const GWB_TARGET *target)
Definition: target.c:181
void GWB_Target_SetInstallPath(GWB_TARGET *target, const char *s)
Definition: target.c:129
int GWB_Target_GetSoVersionCurrent(const GWB_TARGET *target)
Definition: target.c:146
struct GWB_FILE GWB_FILE
Definition: file.h:18
const char * GWB_Target_GetName(const GWB_TARGET *target)
Definition: target.c:70
void GWB_Target_SetSoVersion(GWB_TARGET *target, int vCurrent, int vAge, int vRevision)
Definition: target.c:137
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:96
struct GWB_PROJECT GWB_PROJECT
Definition: project.h:14
GWEN_STRINGLIST * GWB_Target_GetUsedLibraryNameList(const GWB_TARGET *target)
Definition: target.c:212
GWBUILD_TARGETTYPE
Definition: gwenbuild.h:18
GWEN_LIST2_FUNCTION_DEFS(GWB_BUILD_CMD, GWB_BuildCmd)
GWEN_STRINGLIST * GWB_Target_GetUsedTargetNameList(const GWB_TARGET *target)
Definition: target.c:196
GWEN_STRINGLIST * GWB_Target_GetUsedTargetLinkSpecList(const GWB_TARGET *target)
Definition: target.c:228
GWBUILD_TARGETTYPE GWB_Target_GetTargetType(const GWB_TARGET *target)
Definition: target.c:108
struct GWB_TARGET GWB_TARGET
Definition: target.h:17
void GWB_Target_SetName(GWB_TARGET *target, const char *s)
Definition: target.c:77
const char * GWB_Target_GetId(const GWB_TARGET *target)
Definition: target.c:89
struct GWEN_STRINGLISTSTRUCT GWEN_STRINGLIST
Definition: stringlist.h:56
void GWB_Target_AddExplicitBuild(GWB_TARGET *target, GWB_BUILD_CMD *bcmd)
Definition: target.c:280
void GWB_Target_AddUsedTargetLinkSpec(GWB_TARGET *target, const char *s)
Definition: target.c:235
GWB_BUILD_CMD_LIST * GWB_Target_GetExplicitBuildList(const GWB_TARGET *target)
Definition: target.c:273
void GWB_Target_AddSourceFile(GWB_TARGET *target, GWB_FILE *file)
Definition: target.c:188
void GWB_Target_AddUsedTargetName(GWB_TARGET *target, const char *s)
Definition: target.c:203
void GWB_Target_Dump(const GWB_TARGET *target, int indent, int fullDump)
Definition: target.c:310
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:245
int GWB_Target_GetSoVersionAge(const GWB_TARGET *target)
Definition: target.c:153
GWB_CONTEXT * GWB_Target_GetContext(const GWB_TARGET *target)
Definition: target.c:167
void GWB_Target_free(GWB_TARGET *target)
Definition: target.c:45
const char * GWB_Target_GetInstallPath(const GWB_TARGET *target)
Definition: target.c:122
void GWB_Target_AddUsedLibraryName(GWB_TARGET *target, const char *s)
Definition: target.c:219
GWB_PROJECT * GWB_Target_GetProject(const GWB_TARGET *target)
Definition: target.c:63
int GWB_Target_GetSoVersionRevision(const GWB_TARGET *target)
Definition: target.c:160
void GWB_Target_SetBuilder(GWB_TARGET *target, GWB_BUILDER *builder)
Definition: target.c:252
void GWB_Target_SetContext(GWB_TARGET *target, GWB_CONTEXT *ctx)
Definition: target.c:174
void GWB_Target_SetTargetType(GWB_TARGET *target, GWBUILD_TARGETTYPE t)
Definition: target.c:115