summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2014-12-18 15:03:09 +0000
committerMatt Caswell <matt@openssl.org>2014-12-18 19:57:44 +0000
commitc0fc27f88ea0933a3e201325fc683b52fe55d848 (patch)
tree9592fb3af3318351fdf09cb7742b80eb27e928eb
parentbd2bd374b37a3718be4a6c0c198be8ff3123c81a (diff)
Made it an error to define OPENSSL_USE_DEPRECATED if OpenSSL has been built
with OPENSSL_NO_DEPRECATED defined Reviewed-by: Rich Salz <rsalz@openssl.org>
-rwxr-xr-xConfigure7
-rw-r--r--crypto/opensslconf.h.in2
2 files changed, 6 insertions, 3 deletions
diff --git a/Configure b/Configure
index 139dbf0a0c..b97f9617db 100755
--- a/Configure
+++ b/Configure
@@ -1419,8 +1419,11 @@ if ($zlib)
}
}
-#Always build the library with OPENSSL_USE_DEPRECATED. This is overridden by OPENSSL_NO_DEPRECATED
-$cflags = "-DOPENSSL_USE_DEPRECATED $cflags";
+#Build the library with OPENSSL_USE_DEPRECATED if deprecation is not disabled
+if(!defined($disabled{"deprecated"}))
+ {
+ $cflags = "-DOPENSSL_USE_DEPRECATED $cflags";
+ }
# You will find shlib_mark1 and shlib_mark2 explained in Makefile.org
my $shared_mark = "";
diff --git a/crypto/opensslconf.h.in b/crypto/opensslconf.h.in
index 31a01c1c8b..faa33a496d 100644
--- a/crypto/opensslconf.h.in
+++ b/crypto/opensslconf.h.in
@@ -6,7 +6,7 @@
* deprecated functions then this will not work
*/
#if defined(OPENSSL_NO_DEPRECATED) && defined(OPENSSL_USE_DEPRECATED)
-#undef OPENSSL_USE_DEPRECATED
+#error "OPENSSL_USE_DEPRECATED has been defined, but OpenSSL has been built without support for deprecated functions"
#endif
/* Test for support for deprecated attribute */