Do buildtests on our public header files with C++ as well
authorRichard Levitte <levitte@openssl.org>
Mon, 25 Feb 2019 10:43:00 +0000 (11:43 +0100)
committerRichard Levitte <levitte@openssl.org>
Wed, 27 Feb 2019 17:49:43 +0000 (18:49 +0100)
This ensures that we don't mistakenly use C++ keywords anywhere public.

Related to #8313

Reviewed-by: Paul Dale <paul.dale@oracle.com>
(Merged from https://github.com/openssl/openssl/pull/8325)

test/build.info

index db4e1a7..1a47463 100644 (file)
@@ -593,11 +593,19 @@ ENDIF
        next if grep { lc("$name.h") =~ m/$_/i } @nogo_headers_re;
        $OUT .= <<"_____";
 
-  PROGRAMS{noinst}=buildtest_$name
+  PROGRAMS{noinst}=buildtest_c_$name
+  SOURCE[buildtest_c_$name]=buildtest_$name.c
   GENERATE[buildtest_$name.c]=generate_buildtest.pl $name
-  SOURCE[buildtest_$name]=buildtest_$name.c
-  INCLUDE[buildtest_$name]=../include
-  DEPEND[buildtest_$name]=../libssl ../libcrypto
+  INCLUDE[buildtest_c_$name]=../include
+  DEPEND[buildtest_c_$name]=../libssl ../libcrypto
+_____
+       $OUT .= <<"_____" if $config{CXX};
+
+  PROGRAMS{noinst}=buildtest_cc_$name
+  SOURCE[buildtest_cc_$name]=buildtest_$name.cc
+  GENERATE[buildtest_$name.cc]=generate_buildtest.pl $name
+  INCLUDE[buildtest_cc_$name]=../include
+  DEPEND[buildtest_cc_$name]=../libssl ../libcrypto
 _____
    }
 -}