summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/slibtool/slibtool.h1
-rw-r--r--src/driver/slbt_driver_ctx.c7
-rw-r--r--src/internal/slibtool_driver_impl.h1
-rw-r--r--src/skin/slbt_skin_default.c9
4 files changed, 17 insertions, 1 deletions
diff --git a/include/slibtool/slibtool.h b/include/slibtool/slibtool.h
index 9da8d3f..091ec79 100644
--- a/include/slibtool/slibtool.h
+++ b/include/slibtool/slibtool.h
@@ -59,6 +59,7 @@ extern "C" {
#define SLBT_DRIVER_ALL_STATIC 0x01000000
#define SLBT_DRIVER_DISABLE_STATIC 0x02000000
+#define SLBT_DRIVER_DISABLE_SHARED 0x04000000
/* execution modes */
enum slbt_mode {
diff --git a/src/driver/slbt_driver_ctx.c b/src/driver/slbt_driver_ctx.c
index 544e485..673cfeb 100644
--- a/src/driver/slbt_driver_ctx.c
+++ b/src/driver/slbt_driver_ctx.c
@@ -705,6 +705,9 @@ int slbt_get_driver_ctx(
else if (!strcmp("disable-static",entry->arg))
cctx.drvflags |= SLBT_DRIVER_DISABLE_STATIC;
+
+ else if (!strcmp("disable-shared",entry->arg))
+ cctx.drvflags |= SLBT_DRIVER_DISABLE_SHARED;
break;
case TAG_CONFIG:
@@ -818,6 +821,10 @@ int slbt_get_driver_ctx(
cctx.drvflags |= SLBT_DRIVER_DISABLE_STATIC;
break;
+ case TAG_DISABLE_SHARED:
+ cctx.drvflags |= SLBT_DRIVER_DISABLE_SHARED;
+ break;
+
case TAG_AVOID_VERSION:
cctx.drvflags |= SLBT_DRIVER_AVOID_VERSION;
break;
diff --git a/src/internal/slibtool_driver_impl.h b/src/internal/slibtool_driver_impl.h
index 3c45f91..2ecc652 100644
--- a/src/internal/slibtool_driver_impl.h
+++ b/src/internal/slibtool_driver_impl.h
@@ -47,6 +47,7 @@ enum app_tags {
TAG_STATIC,
TAG_ALL_STATIC,
TAG_DISABLE_STATIC,
+ TAG_DISABLE_SHARED,
TAG_NO_UNDEFINED,
TAG_MODULE,
TAG_AVOID_VERSION,
diff --git a/src/skin/slbt_skin_default.c b/src/skin/slbt_skin_default.c
index 0e29d96..e3c0ce2 100644
--- a/src/skin/slbt_skin_default.c
+++ b/src/skin/slbt_skin_default.c
@@ -21,7 +21,7 @@ const struct argv_option slbt_default_options[] = {
"do not make any changes to the file system"},
{"tag", 0,TAG_TAG,ARGV_OPTARG_REQUIRED,0,
- "CC|CXX|NASM|disable-static",0,
+ "CC|CXX|NASM|disable-static|disable-shared",0,
"a universal playground game"},
{"config", 0,TAG_CONFIG,ARGV_OPTARG_NONE,0,0,0,
@@ -127,6 +127,13 @@ const struct argv_option slbt_default_options[] = {
"containing the individual object files. "
"[currently a no-op]"},
+ {"disable-shared", 0,TAG_DISABLE_SHARED,ARGV_OPTARG_NONE,
+ ARGV_OPTION_HYBRID_ONLY,0,0,
+ "for libraries, only create an archive "
+ "containing the individual object files, and "
+ "accordingly do not create a shared library. "
+ "[currently a no-op]"},
+
{"avoid-version", 0,TAG_AVOID_VERSION,ARGV_OPTARG_NONE,
ARGV_OPTION_HYBRID_ONLY,0,0,
"do not store version information, "