diff options
Diffstat (limited to 'roms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl')
-rwxr-xr-x | roms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/roms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl b/roms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl new file mode 100755 index 000000000..c9324a9de --- /dev/null +++ b/roms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl @@ -0,0 +1,56 @@ +#! /usr/bin/env perl +# Copyright 2014-2017 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; + +my ($cflags, $platform) = @ARGV; +$cflags = "compiler: $cflags"; + +my $date = gmtime($ENV{'SOURCE_DATE_EPOCH'} || time()) . " UTC"; + +print <<"END_OUTPUT"; +/* + * WARNING: do not edit! + * Generated by util/mkbuildinf.pl + * + * Copyright 2014-2017 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 + */ + +#define PLATFORM "platform: $platform" +#define DATE "built on: $date" + +/* + * Generate compiler_flags 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 compiler_flags[] = { +END_OUTPUT + +my $ctr = 0; +foreach my $c (split //, $cflags) { + $c =~ s|([\\'])|\\$1|; + # Max 16 characters per line + if (($ctr++ % 16) == 0) { + if ($ctr != 1) { + print "\n"; + } + print " "; + } + print "'$c',"; +} +print <<"END_OUTPUT"; +'\\0' +}; +END_OUTPUT |