[openssl-commits] [openssl] master update
Richard Levitte
levitte at openssl.org
Mon Dec 3 09:39:21 UTC 2018
The branch master has been updated
via b608fabfcca597e66c2e115e902b56ed828e8bea (commit)
via 547a3320fcaa971ab2e827a4cd6512199607c9e9 (commit)
from 9b1c0e006b9e7fde14b6719b40853e5c3557ec98 (commit)
- Log -----------------------------------------------------------------
commit b608fabfcca597e66c2e115e902b56ed828e8bea
Author: Richard Levitte <levitte at openssl.org>
Date: Sun Dec 2 20:39:46 2018 +0100
util/process_docs.pl: handle multiple source directories for .pod files
From now on, the default is to look in both the source directory and
the build directory.
Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre at ncp-e.com>
(Merged from https://github.com/openssl/openssl/pull/7742)
commit 547a3320fcaa971ab2e827a4cd6512199607c9e9
Author: Richard Levitte <levitte at openssl.org>
Date: Sun Dec 2 20:37:30 2018 +0100
Doc: add doc/man7/openssl_user_macros.pod.in
This manual is a start to describe macros that users can use to affect
what symbols are exported by the public header files.
Because the macro OPENSSL_API_COMPAT has a default that's affected by
configuration choices, we must make it a generated manual.
Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre at ncp-e.com>
(Merged from https://github.com/openssl/openssl/pull/7742)
-----------------------------------------------------------------------
Summary of changes:
build.info | 4 ++-
doc/man7/openssl_user_macros.pod.in | 60 +++++++++++++++++++++++++++++++++++++
util/process_docs.pl | 16 +++++-----
3 files changed, 72 insertions(+), 8 deletions(-)
create mode 100644 doc/man7/openssl_user_macros.pod.in
diff --git a/build.info b/build.info
index 53629c4..c2ed667 100644
--- a/build.info
+++ b/build.info
@@ -22,13 +22,15 @@ DEPEND[libssl]=libcrypto
# Empty DEPEND "indices" means the dependencies are expected to be built
# unconditionally before anything else.
DEPEND[]=include/openssl/opensslconf.h crypto/include/internal/bn_conf.h \
- crypto/include/internal/dso_conf.h
+ crypto/include/internal/dso_conf.h doc/man7/openssl_user_macros.pod
DEPEND[include/openssl/opensslconf.h]=configdata.pm
GENERATE[include/openssl/opensslconf.h]=include/openssl/opensslconf.h.in
DEPEND[crypto/include/internal/bn_conf.h]=configdata.pm
GENERATE[crypto/include/internal/bn_conf.h]=crypto/include/internal/bn_conf.h.in
DEPEND[crypto/include/internal/dso_conf.h]=configdata.pm
GENERATE[crypto/include/internal/dso_conf.h]=crypto/include/internal/dso_conf.h.in
+DEPEND[doc/man7/openssl_user_macros.pod]=configdata.pm
+GENERATE[doc/man7/openssl_user_macros.pod]=doc/man7/openssl_user_macros.pod.in
IF[{- defined $target{shared_defflag} -}]
SHARED_SOURCE[libcrypto]=libcrypto.ld
diff --git a/doc/man7/openssl_user_macros.pod.in b/doc/man7/openssl_user_macros.pod.in
new file mode 100644
index 0000000..8af5aea
--- /dev/null
+++ b/doc/man7/openssl_user_macros.pod.in
@@ -0,0 +1,60 @@
+=pod
+
+=head1 NAME
+
+openssl_user_macros, OPENSSL_API_COMPAT - User defined macros
+
+=head1 DESCRIPTION
+
+User defined macros allow the programmer to control certain aspects of
+what is exposed by the OpenSSL headers.
+
+B<NOTE:> to be effective, a user defined macro I<must be defined
+before including any header file that depends on it>, either in the
+compilation command (C<cc -DMACRO=value>) or by defining the macro in
+source before including any headers.
+
+Other manual pages may refer to this page when declarations depend on
+user defined macros.
+
+=head2 The macros
+
+=over
+
+=item B<OPENSSL_API_COMPAT>
+
+The value is a version number similar to the
+L<OPENSSL_VERSION_NUMBER(3)> macro. Any symbol that is deprecated in
+versions up to and including the version given in this macro will not
+be declared. Any version number may be given, but these numbers are
+the current known major deprecation points, making them the most
+meaningful:
+
+=over
+
+=item C<0x00908000L> (version 0.9.8)
+
+=item C<0x10000000L> (version 1.0.0)
+
+=item C<0x10100000L> (version 1.1.0)
+
+=back
+
+If not set, this macro will default to
+C<{- join('', map { my @x = split /=/,$_; $x[1] }
+ grep /^OPENSSL_MIN_API=/, @{$config{openssl_api_defines} // []})
+ || '0x00000000L'
+ -}>.
+
+=back
+
+=head1 COPYRIGHT
+
+Copyright 2018 The OpenSSL Project Authors. All Rights Reserved.
+
+Licensed under the OpenSSL license (the "License"). You may not use
+this file except in compliance with the License. You can obtain a copy
+in the file LICENSE in the source distribution or at
+L<https://www.openssl.org/source/license.html>.
+
+=cut
diff --git a/util/process_docs.pl b/util/process_docs.pl
index 30b149e..fcce8d8 100755
--- a/util/process_docs.pl
+++ b/util/process_docs.pl
@@ -29,7 +29,7 @@ use OpenSSL::Util::Pod;
my %options = ();
GetOptions(\%options,
- 'sourcedir=s', # Source directory
+ 'sourcedir=s@', # Source directories
'section=i@', # Subdirectories to look through,
# with associated section numbers
'destdir=s', # Destination directory
@@ -46,7 +46,8 @@ unless ($options{section}) {
$options{section} = [ 1, 3, 5, 7 ];
}
unless ($options{sourcedir}) {
- $options{sourcedir} = catdir($config{sourcedir}, "doc");
+ $options{sourcedir} = [ catdir($config{sourcedir}, "doc"),
+ catdir($config{builddir}, "doc") ];
}
pod2usage(1) unless ( defined $options{section}
&& defined $options{sourcedir}
@@ -59,8 +60,9 @@ pod2usage(1) if ( $options{type} eq 'html'
if ($options{debug}) {
print STDERR "DEBUG: options:\n";
- print STDERR "DEBUG: --sourcedir = $options{sourcedir}\n"
- if defined $options{sourcedir};
+ foreach (sort @{$options{sourcedir}}) {
+ print STDERR "DEBUG: --sourcedir = $_\n";
+ }
print STDERR "DEBUG: --destdir = $options{destdir}\n"
if defined $options{destdir};
print STDERR "DEBUG: --type = $options{type}\n"
@@ -82,10 +84,10 @@ my $symlink_exists = eval { symlink("",""); 1 };
foreach my $section (sort @{$options{section}}) {
my $subdir = "man$section";
- my $podsourcedir = catfile($options{sourcedir}, $subdir);
- my $podglob = catfile($podsourcedir, "*.pod");
+ my @podsourcedirs = map { catfile($_, $subdir); } @{$options{sourcedir}};
+ my @podglobs = map { catfile($_, "*.pod"); } @podsourcedirs;
- foreach my $podfile (glob $podglob) {
+ foreach my $podfile (map { glob $_ } @podglobs) {
my $podname = basename($podfile, ".pod");
my $podpath = catfile($podfile);
my %podinfo = extract_pod_info($podpath,
More information about the openssl-commits
mailing list