diff options
author | midipix <writeonce@midipix.org> | 2016-05-01 14:18:40 -0400 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2016-05-01 14:24:47 -0400 |
commit | c4a3890f7c384e13df8442aa3986be944165e5e0 (patch) | |
tree | 7803f5fbb8ba436e916183731c4605d9a58badf7 /src | |
parent | 928cf1f414b5665c50f4e926f40fc39806345729 (diff) | |
download | slibtool-c4a3890f7c384e13df8442aa3986be944165e5e0.tar.bz2 slibtool-c4a3890f7c384e13df8442aa3986be944165e5e0.tar.xz |
dry run: initial quick implementation.
With the current patch, slibtool respects --dry-run by turning the
various modes (compile, link, install, execute) into no-ops. For at
least the compile and install mode, it should be possible to output
complete information about the steps that would be performed under
default operation conditions, however that is not yet implemented.
Diffstat (limited to 'src')
-rw-r--r-- | src/logic/slbt_exec_compile.c | 4 | ||||
-rw-r--r-- | src/logic/slbt_exec_execute.c | 4 | ||||
-rw-r--r-- | src/logic/slbt_exec_install.c | 4 | ||||
-rw-r--r-- | src/logic/slbt_exec_link.c | 4 |
4 files changed, 16 insertions, 0 deletions
diff --git a/src/logic/slbt_exec_compile.c b/src/logic/slbt_exec_compile.c index dcfdf29..ec19c22 100644 --- a/src/logic/slbt_exec_compile.c +++ b/src/logic/slbt_exec_compile.c @@ -38,6 +38,10 @@ int slbt_exec_compile( struct slbt_exec_ctx * actx = 0; const struct slbt_source_version * verinfo; + /* dry run */ + if (dctx->cctx->drvflags & SLBT_DRIVER_DRY_RUN) + return 0; + /* context */ if (ectx) slbt_reset_placeholders(ectx); diff --git a/src/logic/slbt_exec_execute.c b/src/logic/slbt_exec_execute.c index 04fec87..7df18b2 100644 --- a/src/logic/slbt_exec_execute.c +++ b/src/logic/slbt_exec_execute.c @@ -27,6 +27,10 @@ int slbt_exec_execute( char wrapper[PATH_MAX]; struct slbt_exec_ctx * actx = 0; + /* dry run */ + if (dctx->cctx->drvflags & SLBT_DRIVER_DRY_RUN) + return 0; + /* context */ if (ectx) slbt_disable_placeholders(ectx); diff --git a/src/logic/slbt_exec_install.c b/src/logic/slbt_exec_install.c index 66cf7f0..1546109 100644 --- a/src/logic/slbt_exec_install.c +++ b/src/logic/slbt_exec_install.c @@ -454,6 +454,10 @@ int slbt_exec_install( char dstdir[PATH_MAX]; const struct argv_option * options = slbt_install_options; + /* dry run */ + if (dctx->cctx->drvflags & SLBT_DRIVER_DRY_RUN) + return 0; + /* context */ if (ectx) actx = 0; diff --git a/src/logic/slbt_exec_link.c b/src/logic/slbt_exec_link.c index cbd5c6f..5538d6d 100644 --- a/src/logic/slbt_exec_link.c +++ b/src/logic/slbt_exec_link.c @@ -1011,6 +1011,10 @@ int slbt_exec_link( char arname[PATH_MAX]; const struct slbt_source_version * verinfo; + /* dry run */ + if (dctx->cctx->drvflags & SLBT_DRIVER_DRY_RUN) + return 0; + /* libfoo.so.x.y.z */ if ((size_t)snprintf(soxyz,sizeof(soxyz),"%s%s%s.%d.%d.%d", dctx->cctx->settings.dsoprefix, |