I am now building OpenSSL with non-default arguments, and am thus seeing
a new build error on Tru64 v5.1:

cc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include 
-DOPENSSL_THREADS -pthread -DDSO_DLFCN -DHAVE_DLFCN_H -std1 -tune host
-fast -readonly_strings -DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DGHASH_ASM  
-c -o randfile.o randfile.c
cc: Warning: randfile.c, line 63: The redefinition of the macro
"_XOPEN_SOURCE" conflicts with a current definition because the
replacement lists differ.  The redefinition is now in effect.
(macroredef)
#define _XOPEN_SOURCE 500
----------------------^
cc: Error: /usr/include/sys/stat.h, line 204: Missing type specifier or
type qualifier. (missingtype)
        __F64_STAT
--------^
cc: Error: /usr/include/sys/stat.h, line 204: Missing type specifier or
type qualifier. (missingtype)
        __F64_STAT
--------^
<builtin>: recipe for target 'randfile.o' failed
make[2]: *** [randfile.o] Error 1
make[2]: Leaving directory '/tmp/openssl/crypto/rand'


This occurs because randfile.c #defines _XOPEN_SOURCE after
#including system headers via e_os.h. If I do this change...

--- a/crypto/rand/randfile.c
+++ b/crypto/rand/randfile.c
@@ -56,13 +56,13 @@
  * [including the GNU Public Licence.]
  */
 
-#include "e_os.h"
-
 /* We need to define this to get macros like S_IFBLK and S_IFCHR */
 #if !defined(OPENSSL_SYS_VXWORKS)
 #define _XOPEN_SOURCE 500
 #endif
 
+#include "e_os.h"
+
 #include <errno.h>
 #include <stdio.h>
 #include <stdlib.h>

...then the file compiles correctly. But this is not exactly a fix,
because OPENSSL_SYS_VXWORKS is defined (if applicable) in
e_os.h/e_os2.h.

By the way, just to correct the record, Tru64 v5.1 *does* have
IPPROTO_IPV6. I somehow missed this when I was testing the cpp
logic earlier.


--Daniel


-- 
Daniel Richard G. || sk...@iskunk.org
My ASCII-art .sig got a bad case of Times New Roman.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to