diff options
author | midipix <writeonce@midipix.org> | 2021-05-11 21:03:55 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2021-05-11 22:53:19 +0000 |
commit | 1858429b172ed77d15fd59045493fdecf460373f (patch) | |
tree | 696f1810dc19e0f92476071b3dd8fb68d87298ab | |
parent | 70949a39b9587465f5ab1d7930d1d100bc4485a0 (diff) | |
download | slibtool-1858429b172ed77d15fd59045493fdecf460373f.tar.bz2 slibtool-1858429b172ed77d15fd59045493fdecf460373f.tar.xz |
slbt_exec_install_entry(): perform non-library actions as early as possible.
-rw-r--r-- | src/logic/slbt_exec_install.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/src/logic/slbt_exec_install.c b/src/logic/slbt_exec_install.c index fc401e5..885c650 100644 --- a/src/logic/slbt_exec_install.c +++ b/src/logic/slbt_exec_install.c @@ -390,6 +390,19 @@ static int slbt_exec_install_entry( sprintf(srcfile,".libs/%s",lasource); } + /* executable? ordinary file? */ + if (fexe || !dot || strcmp(dot,".la")) { + *src = fexe ? srcfile : (char *)entry->arg; + *dst = dest ? 0 : (char *)last->arg; + + if (!(dctx->cctx->drvflags & SLBT_DRIVER_SILENT)) + if (slbt_output_install(dctx,ectx)) + return SLBT_NESTED_ERROR(dctx); + + return (((ret = slbt_spawn(ectx,true)) < 0) || ectx->exitcode) + ? SLBT_SPAWN_ERROR(dctx) : 0; + } + /* -shrext, dsosuffix */ strcpy(sobuf,dctx->cctx->settings.dsosuffix); dsosuffix = sobuf; @@ -411,19 +424,6 @@ static int slbt_exec_install_entry( strcpy(sobuf,&target[slen+7]); } - /* executable? ordinary file? */ - if (fexe || !dot || strcmp(dot,".la")) { - *src = fexe ? srcfile : (char *)entry->arg; - *dst = dest ? 0 : (char *)last->arg; - - if (!(dctx->cctx->drvflags & SLBT_DRIVER_SILENT)) - if (slbt_output_install(dctx,ectx)) - return SLBT_NESTED_ERROR(dctx); - - return (((ret = slbt_spawn(ectx,true)) < 0) || ectx->exitcode) - ? SLBT_SPAWN_ERROR(dctx) : 0; - } - /* legabits? */ if (dctx->cctx->drvflags & SLBT_DRIVER_LEGABITS) if (slbt_exec_install_library_wrapper(dctx,ectx,entry,dstdir)) |