Configure: give config targets the possibility to enable or disable features

Reviewed-by: Rich Salz <rsalz@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/3745)
diff --git a/Configurations/00-base-templates.conf b/Configurations/00-base-templates.conf
index 8c47e9e..84f7144 100644
--- a/Configurations/00-base-templates.conf
+++ b/Configurations/00-base-templates.conf
@@ -42,6 +42,10 @@
 
     BASE_common => {
 	template	=> 1,
+
+	enable		=> [],
+	disable		=> [],
+
 	defines		=>
 	    sub {
                 my @defs = ();
diff --git a/Configurations/README b/Configurations/README
index 92ff1ac..40fcc45 100644
--- a/Configurations/README
+++ b/Configurations/README
@@ -34,6 +34,13 @@
         sys_id          => System identity for systems where that
                            is difficult to determine automatically.
 
+        enable          => Enable specific configuration features.
+                           This MUST be an array of words.
+        disable         => Disable specific configuration features.
+                           This MUST be an array of words.
+                           Note: if the same feature is both enabled
+                           and disabled, disable wins.
+
         cc              => The C compiler command, usually one of "cc",
                            "gcc" or "clang".  This command is normally
                            also used to link object files and