diff options
author | midipix <writeonce@midipix.org> | 2016-04-20 21:04:53 -0400 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2016-04-20 21:04:53 -0400 |
commit | f7645c9729a4776529a40bef24a11e3bcd921508 (patch) | |
tree | c58fb8c78a0848afe5cf652f4770316cbfe0f6bf | |
parent | 8b1ca1a880b528bd473535aac6bb0135cdcd5324 (diff) | |
download | slibtool-f7645c9729a4776529a40bef24a11e3bcd921508.tar.bz2 slibtool-f7645c9729a4776529a40bef24a11e3bcd921508.tar.xz |
driver: added -all-static support.
-rw-r--r-- | include/slibtool/slibtool.h | 2 | ||||
-rw-r--r-- | src/driver/slbt_driver_ctx.c | 4 | ||||
-rw-r--r-- | src/internal/slibtool_driver_impl.h | 1 | ||||
-rw-r--r-- | src/skin/slbt_skin_default.c | 6 |
4 files changed, 13 insertions, 0 deletions
diff --git a/include/slibtool/slibtool.h b/include/slibtool/slibtool.h index 1d78ab1..0e9f471 100644 --- a/include/slibtool/slibtool.h +++ b/include/slibtool/slibtool.h @@ -57,6 +57,8 @@ extern "C" { #define SLBT_DRIVER_IMAGE_PE 0x400000 #define SLBT_DRIVER_IMAGE_MACHO 0x800000 +#define SLBT_DRIVER_ALL_STATIC 0x01000000 + /* execution modes */ enum slbt_mode { SLBT_MODE_UNKNOWN, diff --git a/src/driver/slbt_driver_ctx.c b/src/driver/slbt_driver_ctx.c index 97248c8..8caa5cb 100644 --- a/src/driver/slbt_driver_ctx.c +++ b/src/driver/slbt_driver_ctx.c @@ -807,6 +807,10 @@ int slbt_get_driver_ctx( cctx.drvflags |= SLBT_DRIVER_MODULE; break; + case TAG_ALL_STATIC: + cctx.drvflags |= SLBT_DRIVER_ALL_STATIC; + 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 b7a089f..9e0872f 100644 --- a/src/internal/slibtool_driver_impl.h +++ b/src/internal/slibtool_driver_impl.h @@ -45,6 +45,7 @@ enum app_tags { TAG_PREFER_NON_PIC, TAG_SHARED, TAG_STATIC, + TAG_ALL_STATIC, 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 3d2d78f..a9fffa7 100644 --- a/src/skin/slbt_skin_default.c +++ b/src/skin/slbt_skin_default.c @@ -114,6 +114,12 @@ const struct argv_option slbt_default_options[] = { "object name need not follow the platform's " "library naming conventions"}, + {"all-static", 0,TAG_ALL_STATIC,ARGV_OPTARG_NONE, + ARGV_OPTION_HYBRID_ONLY,0,0, + "for programs, create a zero-dependency, " + "statically linked binary; for libraries, " + "only create an archive of non-pic objects"}, + {"avoid-version", 0,TAG_AVOID_VERSION,ARGV_OPTARG_NONE, ARGV_OPTION_HYBRID_ONLY,0,0, "do not store version information, " |