+
+my $platform_cpp_symbol = "MK1MF_PLATFORM_$platform";
+$platform_cpp_symbol =~ s/-/_/;
+if (open(IN,"crypto/mk1mfinf.h"))
+ {
+ # Remove entry for this platform in existing file mk1mfinf.h.
+
+ my $old_mk1mfinf_h = "";
+ while (<IN>)
+ {
+ if (/^\#ifdef $platform_cpp_symbol$/)
+ {
+ while (<IN>) { last if (/^\#endif/); }
+ }
+ else
+ {
+ $old_mk1mfinf_h .= $_;
+ }
+ }
+
+ open(OUT,">crypto/mk1mfinf.h") || die "Can't open mk1mfinf.h";
+ print OUT $old_mk1mfinf_h;
+ }
+
+open (OUT,">>crypto/mk1mfinf.h") || die "Can't open mk1mfinf.h";
+printf OUT <<EOF;
+#ifdef $platform_cpp_symbol
+ /* auto-generated and updated by util/mk1mf.pl for crypto/cversion.c */
+ /* (used in place of crypto/buildinf.h by mk1mf builds) */
+ #define CFLAGS "$cc $cflags"
+ #define PLATFORM "$platform"
+EOF
+printf OUT " #define DATE \"%s\"\n", scalar gmtime();
+printf OUT "#endif\n";
+close(OUT);