diff options
author | midipix <writeonce@midipix.org> | 2016-04-25 19:30:05 -0400 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2016-04-25 20:36:38 -0400 |
commit | 2bc17534f0bba1de06210535c20311db70c417c4 (patch) | |
tree | 270554600540d64b9433b9396942708a2384828f /src/driver | |
parent | dac9cd4bdd4da581279f2ad7a65a17b5d0ba7f87 (diff) | |
download | slibtool-2bc17534f0bba1de06210535c20311db70c417c4.tar.bz2 slibtool-2bc17534f0bba1de06210535c20311db70c417c4.tar.xz |
driver: added --annotate support.
Diffstat (limited to 'src/driver')
-rw-r--r-- | src/driver/slbt_driver_ctx.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/driver/slbt_driver_ctx.c b/src/driver/slbt_driver_ctx.c index f65460a..f3c13ca 100644 --- a/src/driver/slbt_driver_ctx.c +++ b/src/driver/slbt_driver_ctx.c @@ -695,6 +695,9 @@ int slbt_get_driver_ctx( /* shared and static objects: enable by default, disable by ~switch */ cctx.drvflags = flags | SLBT_DRIVER_SHARED | SLBT_DRIVER_STATIC; + /* full annotation when annotation is on; */ + cctx.drvflags |= SLBT_DRIVER_ANNOTATE_FULL; + /* get options, count units */ for (entry=meta->entries; entry->fopt || entry->arg; entry++) { if (entry->fopt) { @@ -775,6 +778,24 @@ int slbt_get_driver_ctx( cctx.warnings = SLBT_WARNING_LEVEL_NONE; break; + case TAG_ANNOTATE: + if (!strcmp("always",entry->arg)) { + cctx.drvflags |= SLBT_DRIVER_ANNOTATE_ALWAYS; + cctx.drvflags &= ~(uint64_t)SLBT_DRIVER_ANNOTATE_NEVER; + + } else if (!strcmp("never",entry->arg)) { + cctx.drvflags |= SLBT_DRIVER_ANNOTATE_NEVER; + cctx.drvflags &= ~(uint64_t)SLBT_DRIVER_ANNOTATE_ALWAYS; + + } else if (!strcmp("minimal",entry->arg)) { + cctx.drvflags &= ~(uint64_t)SLBT_DRIVER_ANNOTATE_FULL; + + } else if (!strcmp("full",entry->arg)) { + cctx.drvflags |= SLBT_DRIVER_ANNOTATE_FULL; + } + + break; + case TAG_DEPS: cctx.drvflags |= SLBT_DRIVER_DEPS; break; |