From 873ecbda4d71a629a18e79561b0d9100217530c9 Mon Sep 17 00:00:00 2001
From: midipix <writeonce@midipix.org>
Date: Sun, 10 Apr 2016 08:07:32 -0400
Subject: driver: added -export-symbols support [no-op].

---
 include/slibtool/slibtool.h         | 1 +
 src/driver/slbt_driver_ctx.c        | 8 ++++++++
 src/internal/slibtool_driver_impl.h | 1 +
 src/skin/slbt_skin_default.c        | 6 ++++++
 4 files changed, 16 insertions(+)

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>",
-- 
cgit v1.2.3