[subset] Add retain-gids option to hb-subset executable.
diff --git a/util/hb-subset.cc b/util/hb-subset.cc
index b7d9eb9..33e584b 100644
--- a/util/hb-subset.cc
+++ b/util/hb-subset.cc
@@ -91,6 +91,7 @@
   {
     hb_subset_input_set_drop_layout (input, !subset_options.keep_layout);
     hb_subset_input_set_drop_hints (input, subset_options.drop_hints);
+    hb_subset_input_set_retain_gids (input, subset_options.retain_gids);
     hb_subset_input_set_desubroutinize (input, subset_options.desubroutinize);
 
     hb_face_t *face = hb_font_get_face (font);
diff --git a/util/options.cc b/util/options.cc
index 04ddcf6..b315c6a 100644
--- a/util/options.cc
+++ b/util/options.cc
@@ -977,6 +977,7 @@
   {
     {"layout", 0, 0, G_OPTION_ARG_NONE,  &this->keep_layout,   "Keep OpenType Layout tables",   nullptr},
     {"no-hinting", 0, 0, G_OPTION_ARG_NONE,  &this->drop_hints,   "Whether to drop hints",   nullptr},
+    {"retain-gids", 0, 0, G_OPTION_ARG_NONE,  &this->retain_gids,   "If set don't renumber glyph ids in the subset.",   nullptr},
     {"desubroutinize", 0, 0, G_OPTION_ARG_NONE,  &this->desubroutinize,   "Remove CFF/CFF2 use of subroutines",   nullptr},
 
     {nullptr}
diff --git a/util/options.hh b/util/options.hh
index e846258..84139f5 100644
--- a/util/options.hh
+++ b/util/options.hh
@@ -675,6 +675,7 @@
   {
     keep_layout = false;
     drop_hints = false;
+    retain_gids = false;
     desubroutinize = false;
 
     add_options (parser);
@@ -684,6 +685,7 @@
 
   hb_bool_t keep_layout;
   hb_bool_t drop_hints;
+  hb_bool_t retain_gids;
   hb_bool_t desubroutinize;
 };