diff options
author | midipix <writeonce@midipix.org> | 2016-04-10 08:07:32 -0400 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2016-04-10 08:07:32 -0400 |
commit | 873ecbda4d71a629a18e79561b0d9100217530c9 (patch) | |
tree | ee98121f08657a2b9b573b56d38564777544fb08 | |
parent | 5e58040cb4e77c2f3aae4cd20dd1f6eabc4b1ba3 (diff) | |
download | slibtool-873ecbda4d71a629a18e79561b0d9100217530c9.tar.bz2 slibtool-873ecbda4d71a629a18e79561b0d9100217530c9.tar.xz |
driver: added -export-symbols support [no-op].
-rw-r--r-- | include/slibtool/slibtool.h | 1 | ||||
-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 |
4 files changed, 16 insertions, 0 deletions
diff --git a/include/slibtool/slibtool.h b/include/slibtool/slibtool.h index 73683e9..44d596e 100644 --- a/include/slibtool/slibtool.h +++ b/include/slibtool/slibtool.h @@ -156,6 +156,7 @@ struct slbt_common_ctx { char * libname; const char * rpath; const char * release; + const char * symfile; const char * regex; char ** targv; char ** cargv; 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>", |