Make it possible to get ENGINESDIR info from OpenSSL_versions
authorRichard Levitte <levitte@openssl.org>
Wed, 10 Feb 2016 17:51:15 +0000 (18:51 +0100)
committerRichard Levitte <levitte@openssl.org>
Wed, 10 Feb 2016 18:36:48 +0000 (19:36 +0100)
Have apps/openssl display the result along with OPENSSLDIR

As part of this, add ENGINESDIR in util/mk1mf.pl

Reviewed-by: Rich Salz <rsalz@openssl.org>
apps/version.c
crypto/cversion.c
doc/apps/version.pod
doc/crypto/OPENSSL_VERSION_NUMBER.pod
include/openssl/crypto.h
util/mk1mf.pl

index 073aa93..84929a5 100644 (file)
@@ -141,6 +141,7 @@ OPTIONS version_options[] = {
     {"a", OPT_A, '-', "Show all data"},
     {"b", OPT_B, '-', "Show build date"},
     {"d", OPT_D, '-', "Show configuration directory"},
+    {"e", OPT_D, '-', "Show engines directory"},
     {"f", OPT_F, '-', "Show compiler flags used"},
     {"o", OPT_O, '-', "Show some internal datatype options"},
     {"p", OPT_P, '-', "Show target build platform"},
@@ -152,6 +153,7 @@ int version_main(int argc, char **argv)
 {
     int ret = 1, dirty = 0;
     int cflags = 0, version = 0, date = 0, options = 0, platform = 0, dir = 0;
+    int engdir = 0;
     char *prog;
     OPTION_CHOICE o;
 
@@ -172,6 +174,9 @@ int version_main(int argc, char **argv)
         case OPT_D:
             dirty = dir = 1;
             break;
+        case OPT_E:
+            dirty = engdir = 1;
+            break;
         case OPT_F:
             dirty = cflags = 1;
             break;
@@ -228,6 +233,8 @@ int version_main(int argc, char **argv)
         printf("%s\n", OpenSSL_version(OPENSSL_CFLAGS));
     if (dir)
         printf("%s\n", OpenSSL_version(OPENSSL_DIR));
+    if (engdir)
+        printf("%s\n", OpenSSL_version(OPENSSL_ENGINES_DIR));
     ret = 0;
  end:
     return (ret);
index 5405e5c..a13ccf4 100644 (file)
@@ -102,5 +102,12 @@ const char *OpenSSL_version(int t)
         return "OPENSSLDIR: N/A";
 #endif
     }
+    if (t == OPENSSL_ENGINES_DIR) {
+#ifdef ENGINESDIR
+        return "ENGINESDIR: \"" ENGINESDIR "\"";
+#else
+        return "ENGINESDIR: N/A";
+#endif
+    }
     return ("not available");
 }
index 8ab51dd..01f6d2a 100644 (file)
@@ -15,6 +15,7 @@ B<openssl version>
 [B<-f>]
 [B<-p>]
 [B<-d>]
+[B<-e>]
 
 =head1 DESCRIPTION
 
@@ -56,6 +57,10 @@ platform setting.
 
 OPENSSLDIR setting.
 
+=item B<-e>
+
+ENGINESDIR setting.
+
 =back
 
 =head1 NOTES
index fc16536..d87d719 100644 (file)
@@ -77,6 +77,11 @@ if available or "platform: information not available" otherwise.
 The "OPENSSLDIR" setting of the library build in the form "OPENSSLDIR: "...""
 if available or "OPENSSLDIR: N/A" otherwise.
 
+=item OPENSSL_ENGINES_DIR
+
+The "ENGINESDIR" setting of the library build in the form "ENGINESDIR: "...""
+if available or "ENGINESDIR: N/A" otherwise.
+
 =back
 
 For an unknown B<t>, the text "not available" is returned.
index d761a97..4199466 100644 (file)
@@ -362,6 +362,7 @@ const char *OpenSSL_version(int type);
 # define OPENSSL_BUILT_ON         2
 # define OPENSSL_PLATFORM         3
 # define OPENSSL_DIR              4
+# define OPENSSL_ENGINES_DIR      5
 
 int OPENSSL_issetugid(void);
 
index 1e72b90..e79733d 100755 (executable)
@@ -11,6 +11,7 @@ use Cwd;
 
 $INSTALLTOP="/usr/local";
 $OPENSSLDIR="/usr/local/ssl";
+$ENGINESDIR="/usr/local/lib/engines";
 $OPTIONS="";
 $ssl_version="";
 $banner="\t\@echo Building OpenSSL";
@@ -47,6 +48,7 @@ my %mf_import = (
        OPTIONS        => \$OPTIONS,
        INSTALLTOP     => \$INSTALLTOP,
        OPENSSLDIR     => \$OPENSSLDIR,
+       ENGINESDIR     => \$ENGINESDIR,
        PLATFORM       => \$mf_platform,
        CC             => \$mf_cc,
        CFLAG          => \$mf_cflag,
@@ -636,6 +638,7 @@ $defs .= $preamble if defined $preamble;
 $defs.= <<"EOF";
 INSTALLTOP=$INSTALLTOP
 OPENSSLDIR=$OPENSSLDIR
+ENGINESDIR=$ENGINESDIR
 
 # Set your compiler options
 PLATFORM=$platform
@@ -770,6 +773,7 @@ install: all
        \$(MKDIR) \"\$(INSTALLTOP)${o}include\"
        \$(MKDIR) \"\$(INSTALLTOP)${o}include${o}openssl\"
        \$(MKDIR) \"\$(INSTALLTOP)${o}lib\"
+       \$(MKDIR) \"\$(INSTALLTOP)${o}lib${o}engines\"
 $extra_install
 
 clean: