diff options
author | Matt Caswell <matt@openssl.org> | 2014-12-19 10:55:54 +0000 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2014-12-19 14:02:15 +0000 |
commit | 488f16e31b8f5ec2513410929325d0830d76762d (patch) | |
tree | 35e4c59165bd00bdc762601b26c4d9f37066955f /util/mkbuildinf.pl | |
parent | c0fc27f88ea0933a3e201325fc683b52fe55d848 (diff) | |
download | openssl-488f16e31b8f5ec2513410929325d0830d76762d.tar.gz |
Fix a problem if CFLAGS is too long cversion.c fails to compile when config
is run with --strict-warnings.
Reviewed-by: Richard Levitte <levitte@openssl.org>
Diffstat (limited to 'util/mkbuildinf.pl')
-rwxr-xr-x | util/mkbuildinf.pl | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/util/mkbuildinf.pl b/util/mkbuildinf.pl new file mode 100755 index 0000000000..ca02d7b0b2 --- /dev/null +++ b/util/mkbuildinf.pl @@ -0,0 +1,35 @@ +#!/usr/local/bin/perl + +my ($cflags, $platform) = @ARGV; + +$cflags = "compiler: $cflags"; +$date = localtime(); +print <<"END_OUTPUT"; +#ifndef MK1MF_BUILD + /* auto-generated by util/mkbuildinf.pl for crypto/cversion.c */ + #define CFLAGS + /* + * Generate CFLAGS as an array of individual characters. This is a + * workaround for the situation where CFLAGS gets too long for a C90 string + * literal + */ + static const char cflags[] = { +END_OUTPUT +my $ctr = 0; +foreach my $c (split //, $cflags) { + # Max 18 characters per line + if (($ctr++ % 18) == 0) { + if ($ctr != 0) { + print "\n"; + } + print " "; + } + print "'$c',"; +} +print <<"END_OUTPUT"; +'\\0' + }; + #define PLATFORM "platform: $platform" + #define DATE "built on: $date" +#endif +END_OUTPUT |