5674466e00
This got triggered by test/testutil.h including ../apps/opt.h. Some compilers do all inclusions from the directory of the C file being compiled, so when a C file includes a header file with a relative file spec, and that header file also includes another header file with a relative file spec, the compiler no longer follows. As a specific example, test/testutil/basic_output.c included ../testutil.h. Fine so far, but then, test/testutil.h includes ../apps/opt.h, and the compiler ends up trying to include (seen from the source top) test/apps/opt.h rather than apps/opt.h, and fails. The solution could have been to simply add apps/ as an inclusion directory. However, that directory also has header files that have nothing to do with libapps, so we take this a bit further, create apps/include and move libapps specific headers there, and then add apps/include as inclusion directory in the build.info files where needed. Reviewed-by: Paul Yang <yang.yang@baishancloud.com> (Merged from https://github.com/openssl/openssl/pull/8210)
42 lines
1.6 KiB
Text
42 lines
1.6 KiB
Text
{- our @apps_openssl_src =
|
|
qw(openssl.c
|
|
asn1pars.c ca.c ciphers.c cms.c crl.c crl2p7.c dgst.c dhparam.c
|
|
dsa.c dsaparam.c ec.c ecparam.c enc.c engine.c errstr.c gendsa.c
|
|
genpkey.c genrsa.c nseq.c ocsp.c passwd.c pkcs12.c pkcs7.c pkcs8.c
|
|
pkey.c pkeyparam.c pkeyutl.c prime.c rand.c req.c rsa.c rsautl.c
|
|
s_client.c s_server.c s_time.c sess_id.c smime.c speed.c spkac.c
|
|
srp.c ts.c verify.c version.c x509.c rehash.c storeutl.c);
|
|
our @apps_lib_src =
|
|
( qw(apps.c apps_ui.c opt.c fmt.c s_cb.c s_socket.c app_rand.c
|
|
bf_prefix.c),
|
|
split(/\s+/, $target{apps_aux_src}) );
|
|
our @apps_init_src = split(/\s+/, $target{apps_init_src});
|
|
"" -}
|
|
IF[{- !$disabled{apps} -}]
|
|
LIBS{noinst}=libapps.a
|
|
SOURCE[libapps.a]={- join(" ", @apps_lib_src) -}
|
|
INCLUDE[libapps.a]=.. ../include include
|
|
|
|
PROGRAMS=openssl
|
|
SOURCE[openssl]={- join(" ", @apps_init_src) -}
|
|
SOURCE[openssl]={- join(" ", @apps_openssl_src) -}
|
|
INCLUDE[openssl]=.. ../include include
|
|
DEPEND[openssl]=libapps.a ../libssl
|
|
|
|
IF[{- $config{target} =~ /^(?:Cygwin|mingw|VC-)/ -}]
|
|
GENERATE[openssl.rc]=../util/mkrc.pl openssl
|
|
SOURCE[openssl]=openssl.rc
|
|
ENDIF
|
|
|
|
{- join("\n ", map { (my $x = $_) =~ s|\.c$|.o|; "DEPEND[$x]=progs.h" }
|
|
@apps_openssl_src) -}
|
|
GENERATE[progs.h]=progs.pl $(APPS_OPENSSL)
|
|
DEPEND[progs.h]=../configdata.pm
|
|
|
|
SCRIPTS{misc}=CA.pl
|
|
SOURCE[CA.pl]=CA.pl.in
|
|
# linkname tells build files that a symbolic link or copy of this script
|
|
# without extension must be installed as well. Unix or Unix lookalike only.
|
|
SCRIPTS{misc,linkname=tsget}=tsget.pl
|
|
SOURCE[tsget.pl]=tsget.in
|
|
ENDIF
|