summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2017-08-11 14:26:14 -0400
committermidipix <writeonce@midipix.org>2017-08-11 14:26:49 -0400
commit53b931989b7bb64957ff0440979ba40ca326c681 (patch)
treec8563772b6c84ff6aa02415009b2108dc1c51fbf
parent2c2879478f52ed9aa633d35df2488fb00878e9b7 (diff)
downloadslibtool-53b931989b7bb64957ff0440979ba40ca326c681.tar.bz2
slibtool-53b931989b7bb64957ff0440979ba40ca326c681.tar.xz
driver: support -thread-safe more elegantly.
-rw-r--r--src/driver/slbt_driver_ctx.c3
-rw-r--r--src/internal/slibtool_driver_impl.h1
-rw-r--r--src/skin/slbt_skin_default.c4
3 files changed, 5 insertions, 3 deletions
diff --git a/src/driver/slbt_driver_ctx.c b/src/driver/slbt_driver_ctx.c
index 47afa83..9b984e0 100644
--- a/src/driver/slbt_driver_ctx.c
+++ b/src/driver/slbt_driver_ctx.c
@@ -339,9 +339,6 @@ static int slbt_split_argv(
*targv++ = argv[i++];
*targv++ = argv[i];
- } else if (!(strcmp("thread-safe",&argv[i][1]))) {
- (void)0;
-
} else {
for (popt=optout; popt[0] && popt[0]->long_name; popt++)
if (!(strcmp(popt[0]->long_name,&argv[i][1])))
diff --git a/src/internal/slibtool_driver_impl.h b/src/internal/slibtool_driver_impl.h
index 738f308..14f981a 100644
--- a/src/internal/slibtool_driver_impl.h
+++ b/src/internal/slibtool_driver_impl.h
@@ -60,6 +60,7 @@ enum app_tags {
TAG_AVOID_VERSION,
TAG_COMPILER_FLAG,
TAG_VERBATIM_FLAG,
+ TAG_THREAD_SAFE,
};
struct slbt_host_strs {
diff --git a/src/skin/slbt_skin_default.c b/src/skin/slbt_skin_default.c
index 8798d05..0c5e312 100644
--- a/src/skin/slbt_skin_default.c
+++ b/src/skin/slbt_skin_default.c
@@ -239,5 +239,9 @@ const struct argv_option slbt_default_options[] = {
ARGV_OPTION_HYBRID_ONLY,0,0,
"disallow unresolved references"},
+ {"thread-safe", 0,TAG_THREAD_SAFE,ARGV_OPTARG_NONE,
+ ARGV_OPTION_HYBRID_ONLY,0,0,
+ "sleep tight, your threads are now safe"},
+
{0,0,0,0,0,0,0,0}
};