diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/driver/slbt_driver_ctx.c | 8 | ||||
-rw-r--r-- | src/internal/slibtool_driver_impl.h | 1 | ||||
-rw-r--r-- | src/skin/slbt_skin_default.c | 6 |
3 files changed, 15 insertions, 0 deletions
diff --git a/src/driver/slbt_driver_ctx.c b/src/driver/slbt_driver_ctx.c index 69db462..46a5ef3 100644 --- a/src/driver/slbt_driver_ctx.c +++ b/src/driver/slbt_driver_ctx.c @@ -239,6 +239,10 @@ static int slbt_split_argv( *targv++ = argv[i++]; *targv++ = argv[i]; + } else if (!(strcmp("export-symbols",&argv[i][1]))) { + *targv++ = argv[i++]; + *targv++ = argv[i]; + } else if (!(strcmp("export-symbols-regex",&argv[i][1]))) { *targv++ = argv[i++]; *targv++ = argv[i]; @@ -703,6 +707,10 @@ int slbt_get_driver_ctx( cctx.release = entry->arg; break; + case TAG_EXPSYM_FILE: + cctx.symfile = entry->arg; + break; + case TAG_EXPSYM_REGEX: cctx.regex = entry->arg; break; diff --git a/src/internal/slibtool_driver_impl.h b/src/internal/slibtool_driver_impl.h index 712f79c..80cf5f7 100644 --- a/src/internal/slibtool_driver_impl.h +++ b/src/internal/slibtool_driver_impl.h @@ -34,6 +34,7 @@ enum app_tags { TAG_OUTPUT, TAG_RPATH, TAG_RELEASE, + TAG_EXPSYM_FILE, TAG_EXPSYM_REGEX, TAG_VERSION_INFO, TAG_VERSION_NUMBER, diff --git a/src/skin/slbt_skin_default.c b/src/skin/slbt_skin_default.c index 58059e8..8d16286 100644 --- a/src/skin/slbt_skin_default.c +++ b/src/skin/slbt_skin_default.c @@ -90,6 +90,12 @@ const struct argv_option slbt_default_options[] = { ARGV_OPTION_HYBRID_ONLY|ARGV_OPTION_HYBRID_SPACE,0,0, "specify release information"}, + {"export-symbols", 0,TAG_EXPSYM_FILE,ARGV_OPTARG_REQUIRED, + ARGV_OPTION_HYBRID_ONLY|ARGV_OPTION_HYBRID_SPACE, + 0,"<symfile>", + "only export the symbols that are listed in %s " + "[currently a no-op]"}, + {"export-symbols-regex",0,TAG_EXPSYM_REGEX,ARGV_OPTARG_REQUIRED, ARGV_OPTION_HYBRID_ONLY|ARGV_OPTION_HYBRID_SPACE, 0,"<regex>", |