aboutsummaryrefslogtreecommitdiffstats
path: root/roms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl
diff options
context:
space:
mode:
authorAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-10 14:33:42 +0000
committerAngelos Mouzakitis <a.mouzakitis@virtualopensystems.com>2023-10-10 14:33:42 +0000
commitaf1a266670d040d2f4083ff309d732d648afba2a (patch)
tree2fc46203448ddcc6f81546d379abfaeb323575e9 /roms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl
parente02cda008591317b1625707ff8e115a4841aa889 (diff)
Add submodule dependency filesHEADmaster
Change-Id: Iaf8d18082d3991dec7c0ebbea540f092188eb4ec
Diffstat (limited to 'roms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl')
-rwxr-xr-xroms/edk2/CryptoPkg/Library/OpensslLib/openssl/util/mkbuildinf.pl56
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