Hi Richard, On Jan 18 23:50, Richard Levitte wrote: > FYI, > > The branch has been updated, the Makfile template now has install > targets as well, and I did the mods I could see would be necessary for > Cygwin and Mingw. I would appreciate it if someone could help me try > those out. > > Remember to configure with --unified.
I tested this on 64 bit Cygwin and stumbled over a minor and a major
problem. First, there's a typo in crypto/bn/Makefile.in, using eight
spaces rather than a TAB:
diff -upr origsrc/openssl-1.1-rc1/crypto/bn/Makefile.in
src/openssl-1.1-rc1/crypto/bn/Makefile.in
--- origsrc/openssl-1.1-rc1/crypto/bn/Makefile.in 2016-01-23
21:02:12.604753995 +0100
+++ src/openssl-1.1-rc1/crypto/bn/Makefile.in 2016-01-23 21:03:58.394966621
+0100
@@ -161,6 +161,6 @@ clean:
# Different flavours of make disagree on where output goes
.c.o:
- $(CC) $(CFLAGS) -c $< -o $@
+ $(CC) $(CFLAGS) -c $< -o $@
# DO NOT DELETE THIS LINE -- make depend depends on it.
Second, the build fails trying to compile crypto/cversion.c:
crypto/cversion.c:62:23: fatal error: buildinf.h: No such file or directory
# include "buildinf.h"
^
The reason is that buildinf.h can't be built because util/mkbuildinf.pl
requires /usr/local/bin/perl rather than /usr/bin/perl:
diff -upr origsrc/openssl-1.1-rc1/util/mkbuildinf.pl
src/openssl-1.1-rc1/util/mkbuildinf.pl
--- origsrc/openssl-1.1-rc1/util/mkbuildinf.pl 2016-01-23 21:02:18.386710976
+0100
+++ src/openssl-1.1-rc1/util/mkbuildinf.pl 2016-01-23 21:15:19.705883094
+0100
@@ -1,4 +1,4 @@
-#!/usr/local/bin/perl
+#!/usr/bin/perl
my ($cflags, $platform) = @ARGV;
The build eventually fails with the following error message, which I
don't quite understand. The libraries should have been built before
trying to build the engines due to hard dependencies, but for some
reason they aren't. Sorry, I have no fix for that :(
Last but not least, we have another problem with enginesdir. To allow a
rolling release cycle, we have to support multiple versions of openssl
in parallel. The problem here is that the enginesdir needs to be
versioned to allow per-openssl version engines. The build scripts don't
allow for this. Right now we're using a patch as the below one to tweak
the configury to allow specifying the engines dir during build time.
Would it hurt terribly to include something like the below patch?
+++ src/openssl-1.1-rc1/Configure 2016-01-23 21:03:43.604076740 +0100
@@ -221,6 +221,7 @@ $config{prefix}="";
$config{openssldir}="";
$config{processor}="";
$config{libdir}="";
+$config{enginesdir}="";
$config{install_prefix}= "$ENV{'INSTALL_PREFIX'}";
$config{cross_compile_prefix}="";
$config{fipslibdir}="/usr/local/ssl/fips-2.0/lib/";
@@ -633,6 +634,10 @@ foreach (@argvcopy)
{
$config{libdir}=$1;
}
+ elsif (/^--enginesdir=(.*)$/)
+ {
+ $config{enginesdir}=$1;
+ }
elsif (/^--openssldir=(.*)$/)
{
$config{openssldir}=$1;
@@ -893,7 +898,7 @@ if ($target{build_file} eq "Makefile"
$target{multilib}="" if !-d "$config{prefix}/lib$target{multilib}";
$config{libdir}="lib$target{multilib}" if $config{libdir} eq "";
-$config{enginesdir}=$config{prefix} . "/" . $config{libdir} . "/engines";
+$config{enginesdir}=$config{prefix} . "/" . $config{libdir} . "/engines" if
$config{enginesdir} eq "";
push @{$config{defines}},
map { (my $x = $_) =~ s/^OPENSSL_NO_/OPENSSL_EXPERIMENTAL_/; $x }
Thanks,
Corinna
signature.asc
Description: PGP signature
_______________________________________________ openssl-dev mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev
