Attached is a patch to allow openssl-0.9.7 to compile under DOS with
DJGPP. This is based on the 20011222 tarball. Here are some comments
on the changes:

Configure: This allows for the DOS path names, with drive letter and
either "/" or "\" path separator. The ".h" and test files are either
symbolically linked or copied for algorithms which are not to be
compiled in, allowing "make test" to function properly.

Makefile.org: "make test" was trying to compile test.c after
completing the tests in the test directory. Adding a line with a TAB
after the "test:" line fixes that.

crypto/bn/bn_mul.c: This is a quick fix for DJGPP and CYGWIN,
but doesn't fix the underlying problem. BN_RECURSION appears to
be defined for all platforms in bn.h. bn_mul.c uses the function
bn_sub_part_words in a section of the code ifdef'd BN_RECURSION, but
bn_sub_part_words is compiled only when OPENSSL_NO_ASM is defined
or when __i386__ or __i386 are not defined. The function is NOT
defined in bn_asm.c. Can we remove the ifdef for all platforms for
bn_sub_part_words?

crypto/des/Makefile.ssl: This fixes the paths so that both symbolic
linking and copying work.

crypto/rand/rand_egd.c: This excludes DJGPP from the entropy
gathering daemon. Are there any platforms where egd works that are
defined OPENSSL_SYS_MSDOS? If not, wouldn't it be better to add
OPENSSL_SYS_MSDOS rather than __DJGPP__ to the ifdef list?

tools/c_rehash.in: This allows the test for openssl to pass, even when
the file is actually named "openssl.exe".

util/point.sh: This is specific for DJGPP, but needs to be generalized
to copy for any platform that doesn't have symbolic links. If would
work for DJGPP if we changed "ln -s" to "ln", since DJGPP's ln will
actually copy when hard links are requested. Would changing "ln -s" to
"ln" work for other platforms without symbolic links?

The other changes should be self-explanatory.
                            Doug

__ 
Doug Kaufman
Internet: [EMAIL PROTECTED]

Attachment: 097.pch.gz
Description: application/gunzip

Reply via email to