On Thu, 13 Jun 2002, Doug Kaufman wrote:

> On Thu, 13 Jun 2002, Richard Levitte via RT wrote:
> 
> > I finally committed most of your changes.  Please download the next 
> > snapshot of 0.9.7 and check that it works as intended.
> > 
> > I'm keeping this ticket open until you have confirmed that it works 
> > (perhaps after further changes).
> 
> Thanks. I'll try to do this in the next few days.

The snapshot doesn't work under DJGPP, but I think that this patch
will fix it. There were several problems. In Configure, you tried to
use ENV{DJDIR}, but this puts in a DOS style path such as "c:/djgpp".
The extra ":" throws off each of the subsequent parameters by one
field. This was one of the reasons that the "/dev/env" notation was
developed. "make depend" gave quite a few warnings, since the include
directives from CFLAG were not utilized. This led to a number of
header files not being found under DJGPP (and presumably for anyone
else not using standard locations for header files). This patch
adds the CFLAG directives for "make depend". Lastly, as I mentioned
previously, "make depend" doesn't fix the problem of no testfiles for
excluded algorithms, so compilation stops with errors in the "test"
directory, even after running "make depend".

I think I finally came up with an acceptable method of putting the
header and test files for excluded algoritms in "include/openssl" and
"test" respectively. If this is accepted, there should be no need to
run "make depend" after excluding algorithms. I didn't put it in the
patch, but I would consider removing the notice to run "make depend",
which was just added.

I also found a problem I had previously overlooked in
crypto/engine/hw_aep.c. Which MSDOS compiler needs the section that
doesn't apply to DJGPP?

With this patch, the snapshot from 13 June does Configure, make, and
"make test" without problems under DJGPP. "make depend" also completes
without warnings, but it doesn't seem necessary to run it.

Patch attached to avoid problems with long lines in the archive.
                            Doug
__ 
Doug Kaufman
Internet: [EMAIL PROTECTED]
--- openssl-0.9.7/Configure.orig        2002-06-13 22:07:24.000000000 +0000

+++ openssl-0.9.7/Configure     2002-06-14 20:03:22.000000000 +0000

@@ -517,7 +517,7 @@

 "Cygwin", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 
-Wall:::CYGWIN32::BN_LLONG ${x86_gcc_des} 
${x86_gcc_opts}:${x86_out_asm}:win32:cygwin-shared:::.dll",

 

 # DJGPP

-"DJGPP", "gcc:-I/dev/env/DJDIR/watt32/inc -DTERMIOS -DL_ENDIAN -fomit-frame-pointer 
-O2 -Wall:::MSDOS:-L$ENV{DJDIR}/watt32/lib -lwatt:BN_LLONG ${x86_gcc_des} 
${x86_gcc_opts}::::::::::",

+"DJGPP", "gcc:-I/dev/env/DJDIR/watt32/inc -DTERMIOS -DL_ENDIAN -fomit-frame-pointer 
+-O2 -Wall:::MSDOS:-L/dev/env/DJDIR/watt32/lib -lwatt:BN_LLONG ${x86_gcc_des} 
+${x86_gcc_opts}::::::::::",

 

 # Ultrix from Bernhard Simon <[EMAIL PROTECTED]>

 "ultrix-cc","cc:-std1 -O -Olimit 1000 -DL_ENDIAN::(unknown):::::::",

@@ -1438,10 +1438,14 @@

 } else {

        my $make_command = "make -f Makefile.ssl PERL=\'$perl\'";

        my $make_targets = "";

+       my $skip_dir;

        $make_targets .= " links" if $symlink;

        $make_targets .= " depend" if $depflags ne "" && $make_depend;

        (system $make_command.$make_targets) == 0 or exit $?

                if $make_targets ne "";

+       foreach $skip_dir (@skip) {

+       system ("cd crypto/$skip_dir; make links PERL=\'$perl\' -f Makefile.ssl");

+    }

        if ( $perl =~ m@^/@) {

            &dofile("tools/c_rehash",$perl,'^#!/', '#!%s','^my \$dir;$', 'my $dir = "' 
. $openssldir . '";');

            &dofile("apps/der_chop",$perl,'^#!/', '#!%s');

--- openssl-0.9.7/Makefile.org.orig     2002-06-12 05:02:08.000000000 -0800

+++ openssl-0.9.7/Makefile.org  2002-06-14 07:52:36.000000000 -0800

@@ -598,7 +598,7 @@

        do \

        if [ -d "$$i" ]; then \

                (cd $$i && echo "making dependencies $$i..." && \

-               $(MAKE) SDIRS='${SDIRS}' DEPFLAG='${DEPFLAG}' 
MAKEDEPPROG='${MAKEDEPPROG}' KRB5_INCLUDES='${KRB5_INCLUDES}' PERL='${PERL}' depend ) 
|| exit 1; \

+               $(MAKE) SDIRS='${SDIRS}' CFLAG='${CFLAG}' DEPFLAG='${DEPFLAG}' 
+MAKEDEPPROG='${MAKEDEPPROG}' KRB5_INCLUDES='${KRB5_INCLUDES}' PERL='${PERL}' depend ) 
+|| exit 1; \

        fi; \

        done;

 

--- openssl-0.9.7/crypto/Makefile.ssl.orig      2002-06-10 04:04:58.000000000 -0800

+++ openssl-0.9.7/crypto/Makefile.ssl   2002-06-14 07:38:20.000000000 -0800

@@ -141,7 +141,7 @@

        @for i in $(SDIRS) ;\

        do \

        (cd $$i && echo "making depend in crypto/$$i..." && \

-       $(MAKE) MAKEFILE='${MAKEFILE}' INCLUDES='${INCLUDES}' DEPFLAG='${DEPFLAG}' 
PERL='${PERL}' depend ); \

+       $(MAKE) MAKEFILE='${MAKEFILE}' INCLUDES='${INCLUDES}' CFLAG='${CFLAG}' 
+DEPFLAG='${DEPFLAG}' PERL='${PERL}' depend ); \

        done;

 

 clean:

--- openssl-0.9.7/crypto/engine/hw_aep.c.orig   2002-03-07 20:07:44.000000000 +0000

+++ openssl-0.9.7/crypto/engine/hw_aep.c        2002-06-14 20:22:30.000000000 +0000

@@ -60,7 +60,7 @@

 #include <string.h>

 

 #include <openssl/e_os2.h>

-#ifndef OPENSSL_SYS_MSDOS

+#if !defined(OPENSSL_SYS_MSDOS) || defined(__DJGPP__)

 #include <sys/types.h>

 #include <unistd.h>

 #else

--- openssl-0.9.7/util/domd.orig        2002-06-05 00:09:16.000000000 -0800

+++ openssl-0.9.7/util/domd     2002-06-14 07:54:22.000000000 -0800

@@ -17,7 +17,7 @@

 if [ "$MAKEDEPEND" = "gcc" ]; then

     sed -e '/^# DO NOT DELETE.*/,$d' < Makefile.ssl > Makefile.tmp

     echo '# DO NOT DELETE THIS LINE -- make depend depends on it.' >> Makefile.tmp

-    gcc -D OPENSSL_DOING_MAKEDEPEND -M $@ >> Makefile.tmp

+    gcc -D OPENSSL_DOING_MAKEDEPEND -M ${CFLAG} $@ >> Makefile.tmp

     ${PERL} $TOP/util/clean-depend.pl < Makefile.tmp > Makefile.new

     rm -f Makefile.tmp

 else

Reply via email to