提交 bffb1490 编写于 作者: R Richard Levitte

Generate simple build test files

Generate small test programs to check that external programs can be
built with our stuff at a very basic level.

For now, they check that each of our header files can be included
individually without compile failure.
Reviewed-by: NRich Salz <rsalz@openssl.org>
上级 39a47008
{- use File::Spec::Functions qw/catdir rel2abs/; -}
{- use File::Spec::Functions qw/catdir catfile rel2abs abs2rel updir/; -}
IF[{- !$disabled{tests} -}]
PROGRAMS=\
aborttest \
......@@ -254,4 +254,30 @@ IF[{- !$disabled{tests} -}]
SOURCE[bioprinttest]=bioprinttest.c
INCLUDE[bioprinttest]={- rel2abs(catdir($builddir,"../include")) -} ../include
DEPEND[bioprinttest]=../libcrypto
{-
use File::Basename;
use if $^O ne "VMS", 'File::Glob' => qw/glob/;
my $includes = join(" ",
rel2abs(catdir($builddir,"../include")), "../include");
my @nogo_headers = ( "asn1_mac.h",
"__decc_include_prologue.h",
"__decc_include_epilogue.h" );
my @headerfiles = glob catfile($sourcedir,
updir(), "include", "openssl", "*.h");
foreach my $headerfile (@headerfiles) {
my $name = basename($headerfile, ".h");
next if $disabled{$name};
next if grep { $_ eq lc("$name.h") } @nogo_headers;
$OUT .= <<"_____";
PROGRAMS=buildtest_$name
GENERATE[buildtest_$name.c]=generate_buildtest.pl $name
SOURCE[buildtest_$name]=buildtest_$name.c
INCLUDE[buildtest_$name]=$includes
DEPEND[buildtest_$name]=../libssl ../libcrypto
_____
}
-}
ENDIF
#! /usr/bin/env perl
# Copyright 2016 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
# https://www.openssl.org/source/license.html
use strict;
use warnings;
# First argument is name;
my $name = shift @ARGV;
# All other arguments are ignored for now
print <<"_____";
/*
* Generated with test/generate_buildtest.pl, to check that such a simple
* program builds.
*/
#include <openssl/$name.h>
int main()
{
return 0;
}
_____
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册