diff options
author | midipix <writeonce@midipix.org> | 2024-02-28 21:33:56 +0000 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2024-02-28 21:33:56 +0000 |
commit | a2500c761ba3740dd416eaebac808f7c8d93aef7 (patch) | |
tree | 6339aa15914c2fc92846aac67e47383864a586c3 /src/logic/slbt_exec_ar.c | |
parent | 8192235a926ca89160e11658a42d6a994c3a86da (diff) | |
download | slibtool-a2500c761ba3740dd416eaebac808f7c8d93aef7.tar.bz2 slibtool-a2500c761ba3740dd416eaebac808f7c8d93aef7.tar.xz |
ar mode: -Wdlsyms: require an accompanying -Wdlunit argument.
Diffstat (limited to 'src/logic/slbt_exec_ar.c')
-rw-r--r-- | src/logic/slbt_exec_ar.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/logic/slbt_exec_ar.c b/src/logic/slbt_exec_ar.c index 2abf7f2..ad8896c 100644 --- a/src/logic/slbt_exec_ar.c +++ b/src/logic/slbt_exec_ar.c @@ -307,7 +307,19 @@ int slbt_exec_ar(const struct slbt_driver_ctx * dctx) (void)0; } else if (cctx->fmtflags & SLBT_OUTPUT_ARCHIVE_DLSYMS) { - (void)0; + if (!cctx->dlunit) + slbt_dprintf(fderr, + "%s: missing -Wdlunit: generation of a dlsyms vtable " + "requires the name of the dynamic library, executable " + "program, or dynamic module for which the vtable would " + "be generated.\n", + dctx->program); + + return slbt_exec_ar_fail( + ectx,meta, + SLBT_CUSTOM_ERROR( + dctx, + SLBT_ERR_AR_DLUNIT_NOT_SPECIFIED)); } else if (!(cctx->drvflags & SLBT_DRIVER_MODE_AR_ACTIONS)) { if (cctx->drvflags & SLBT_DRIVER_VERBOSITY_ERRORS) |