summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2016-04-17 15:03:43 -0400
committermidipix <writeonce@midipix.org>2016-04-17 17:33:26 -0400
commite15ee1671b4b2904c264250d69b0781849981bab (patch)
tree62d13805db848b09d2be1e96cc416a06ad3c6966
parentbcd5af9ca57f03e0a63966ca3be6429e2e659605 (diff)
downloadslibtool-e15ee1671b4b2904c264250d69b0781849981bab.tar.bz2
slibtool-e15ee1671b4b2904c264250d69b0781849981bab.tar.xz
execution context: PE support: added placeholders.
-rw-r--r--include/slibtool/slibtool.h2
-rw-r--r--src/logic/slbt_exec_ctx.c6
2 files changed, 8 insertions, 0 deletions
diff --git a/include/slibtool/slibtool.h b/include/slibtool/slibtool.h
index cb9a75d..c580c30 100644
--- a/include/slibtool/slibtool.h
+++ b/include/slibtool/slibtool.h
@@ -100,6 +100,8 @@ struct slbt_exec_ctx {
char ** noundef;
char ** soname;
char ** lsoname;
+ char ** symdefs;
+ char ** symfile;
char ** lout[2];
char ** sentinel;
FILE * fwrapper;
diff --git a/src/logic/slbt_exec_ctx.c b/src/logic/slbt_exec_ctx.c
index 37bb475..239c5e5 100644
--- a/src/logic/slbt_exec_ctx.c
+++ b/src/logic/slbt_exec_ctx.c
@@ -230,6 +230,8 @@ int slbt_get_exec_ctx(
ictx->ctx.noundef = &ictx->ctx.argv[i++];
ictx->ctx.soname = &ictx->ctx.argv[i++];
ictx->ctx.lsoname = &ictx->ctx.argv[i++];
+ ictx->ctx.symdefs = &ictx->ctx.argv[i++];
+ ictx->ctx.symfile = &ictx->ctx.argv[i++];
ictx->ctx.lout[0] = &ictx->ctx.argv[i++];
ictx->ctx.lout[1] = &ictx->ctx.argv[i++];
@@ -372,6 +374,8 @@ void slbt_reset_placeholders(struct slbt_exec_ctx * ectx)
*ectx->noundef = "-USLIBTOOL_PLACEHOLDER_NO_UNDEFINED";
*ectx->soname = "-USLIBTOOL_PLACEHOLDER_SONAME";
*ectx->lsoname = "-USLIBTOOL_PLACEHOLDER_LSONAME";
+ *ectx->symdefs = "-USLIBTOOL_PLACEHOLDER_SYMDEF_SWITCH";
+ *ectx->symfile = "-USLIBTOOL_PLACEHOLDER_SYMDEF_FILE";
*ectx->lout[0] = "-USLIBTOOL_PLACEHOLDER_OUTPUT_SWITCH";
*ectx->lout[1] = "-USLIBTOOL_PLACEHOLDER_OUTPUT_FILE";
@@ -387,6 +391,8 @@ void slbt_disable_placeholders(struct slbt_exec_ctx * ectx)
*ectx->noundef = 0;
*ectx->soname = 0;
*ectx->lsoname = 0;
+ *ectx->symdefs = 0;
+ *ectx->symfile = 0;
*ectx->lout[0] = 0;
*ectx->lout[1] = 0;