> openssl-SNAP-19990515-1530 on alpha-cc fails to build with #error
> "HASH_BLOCK_DATA_ORDER must be defined!" in md32_common.h.
> Adding -DL_ENDIAN to the flags appears to fix it; I'm guessing
> every Configure entry that doesn't have -D[LB]_ENDIAN in it is
> currently broken.
Not really... I would classify it *unsafe* to add -DL_ENDIAN to alpha-*
at this point as there might be other LP64 dependencies erroneously
masked by #undef *_ENDIAN (see my previous "LP64 woes" posts). Yes,
I'm currently looking for other possible dependencies, but at this
very point I'd still leave Configure along and rather do following
instead:

*** ./crypto/md5/md5_locl.h.orig        Sat May 15 19:00:16 1999
--- ./crypto/md5/md5_locl.h     Mon May 17 00:23:16 1999
***************
*** 112,118 ****
  #define HASH_TRANSFORM                MD5_Transform
  #define HASH_FINAL            MD5_Final
  #define HASH_BLOCK_HOST_ORDER md5_block_host_order
! #if defined(B_ENDIAN) || defined(md5_block_data_order)
  #define       HASH_BLOCK_DATA_ORDER   md5_block_data_order
  /*
   * Little-endians (Intel and Alpha) feel better without this.
--- 112,118 ----
  #define HASH_TRANSFORM                MD5_Transform
  #define HASH_FINAL            MD5_Final
  #define HASH_BLOCK_HOST_ORDER md5_block_host_order
! #if !defined(L_ENDIAN) || defined(md5_block_data_order)
  #define       HASH_BLOCK_DATA_ORDER   md5_block_data_order
  /*
   * Little-endians (Intel and Alpha) feel better without this.

In case you wonder what does it mean for performance on Alpha. You
gonna loose ~27% in aligned and ~10% in unaligned cases. I mean in
comparison to what you get with -DL_ENDIAN in compiler's command line...

And I've found bug in crypto/md32_common.h:

*** ./crypto/md32_common.h.orig Sat May 15 19:00:07 1999
--- ./crypto/md32_common.h      Mon May 17 00:15:16 1999
***************
*** 315,321 ****
  #  endif
  #endif
  
! #if !defined(HASH_BLOCK_DATA_ORDER_ALIGNED) && HASH_BLOCK_DATA_ORDER_ALIGNED!=1
  #ifndef HASH_BLOCK_DATA_ORDER
  #error "HASH_BLOCK_DATA_ORDER must be defined!"
  #endif
--- 315,321 ----
  #  endif
  #endif
  
! #if !defined(HASH_BLOCK_DATA_ORDER_ALIGNED) || HASH_BLOCK_DATA_ORDER_ALIGNED==1
  #ifndef HASH_BLOCK_DATA_ORDER
  #error "HASH_BLOCK_DATA_ORDER must be defined!"
  #endif

> 
> --- Configure~  Thu May 13 10:00:06 1999
> +++ Configure   Sat May 15 12:49:03 1999
And I'd like to say it again that I think that -D[LB]_ENDIAN should be
*autoconfigured*, not put in manually:-)

Cheers. Andy.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to