diff options
Diffstat (limited to 'src/logic')
-rw-r--r-- | src/logic/slbt_exec_ctx.c | 11 | ||||
-rw-r--r-- | src/logic/slbt_exec_link.c | 8 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/logic/slbt_exec_ctx.c b/src/logic/slbt_exec_ctx.c index ad4ffa7..23cae68 100644 --- a/src/logic/slbt_exec_ctx.c +++ b/src/logic/slbt_exec_ctx.c @@ -268,7 +268,7 @@ int slbt_get_exec_ctx( + 1; } - /* linking: arfilename, lafilename, dsofilename */ + /* linking: arfilename, lafilename, laifilename, dsofilename */ if (dctx->cctx->mode == SLBT_MODE_LINK && dctx->cctx->libname) { /* arprefix, dsoprefix */ if (dctx->cctx->drvflags & SLBT_DRIVER_MODULE) { @@ -299,6 +299,15 @@ int slbt_get_exec_ctx( ch++; + /* laifilename */ + ictx->ctx.laifilename = ch; + ch += sprintf(ch,"%s%s%s.lai", + ictx->ctx.ldirname, + dsoprefix, + dctx->cctx->libname); + ch++; + + /* dsofilename */ ictx->ctx.dsofilename = ch; ch += sprintf(ch,"%s%s%s%s", diff --git a/src/logic/slbt_exec_link.c b/src/logic/slbt_exec_link.c index 5a82b8c..793afc2 100644 --- a/src/logic/slbt_exec_link.c +++ b/src/logic/slbt_exec_link.c @@ -1126,6 +1126,14 @@ int slbt_exec_link( ectx->lafilename, true)); + /* .lai wrapper symlink */ + if (ret == 0) + ret = (slbt_create_symlink( + dctx,ectx, + output, + ectx->laifilename, + true)); + /* all done */ fclose(fout); slbt_free_exec_ctx(actx); |