cloudflare / sslconfig

Cloudflare's Internet facing SSL configuration
BSD 3-Clause "New" or "Revised" License
1.3k stars 132 forks source link

Cannot build with nginx on a ARM machine. #25

Closed undirectlookable closed 8 years ago

undirectlookable commented 8 years ago

I got an error when I was building nginx 1.9.12 + openssl1.0.2f with this patch, on a raspberrypi.

openssl__chacha20_poly1305_cf.patch

cryptlib.c:721:16: error: conflicting types for 'OPENSSL_ia32cap_loc'
 unsigned long *OPENSSL_ia32cap_loc(void)
                ^
In file included from cryptlib.h:72:0,
                 from cryptlib.c:117:
../include/openssl/crypto.h:593:15: note: previous declaration of 'OPENSSL_ia32cap_loc' was here
 unsigned int *OPENSSL_ia32cap_loc(void);
               ^
<builtin>: recipe for target 'cryptlib.o' failed
make[3]: *** [cryptlib.o] Error 1
make[3]: Leaving directory '/root/nginx-build/build/openssl-1.0.2f/crypto'
Makefile:286: recipe for target 'build_crypto' failed
make[2]: *** [build_crypto] Error 1
make[2]: Leaving directory '/root/nginx-build/build/openssl-1.0.2f'
objs/Makefile:1785: recipe for target '../openssl-1.0.2f/.openssl/include/openssl/ssl.h' failed
make[1]: *** [../openssl-1.0.2f/.openssl/include/openssl/ssl.h] Error 2
make[1]: Leaving directory '/root/nginx-build/build/nginx-1.9.12'
Makefile:8: recipe for target 'build' failed
make: *** [build] Error 2

openssl__chacha20_poly1305_draft_and_rfc_ossl102f.patch

e_chacha20poly1305.c:82:57: error: 'EVP_CHACHA20_POLY1305_CTX' has no member named 'poly_state'
     #define poly_update(c,i,l) CRYPTO_poly1305_update(&c->poly_state,i,l)
                                                         ^
e_chacha20poly1305.c:372:17: note: in expansion of macro 'poly_update'
                 poly_update(aead_ctx, aad, arg + sizeof(thirteen));
                 ^
<builtin>: recipe for target 'e_chacha20poly1305.o' failed
make[4]: *** [e_chacha20poly1305.o] Error 1
make[4]: Leaving directory '/root/nginx-build/build/openssl-1.0.2f/crypto/evp'
Makefile:88: recipe for target 'subdirs' failed
make[3]: *** [subdirs] Error 1
make[3]: Leaving directory '/root/nginx-build/build/openssl-1.0.2f/crypto'
Makefile:286: recipe for target 'build_crypto' failed
make[2]: *** [build_crypto] Error 1
make[2]: Leaving directory '/root/nginx-build/build/openssl-1.0.2f'
objs/Makefile:1785: recipe for target '../openssl-1.0.2f/.openssl/include/openssl/ssl.h' failed
make[1]: *** [../openssl-1.0.2f/.openssl/include/openssl/ssl.h] Error 2
make[1]: Leaving directory '/root/nginx-build/build/nginx-1.9.12'
Makefile:8: recipe for target 'build' failed
make: *** [build] Error 2

Do this patch only support x86 platform?

vkrasnov commented 8 years ago

We didn't really intend it for non x86-64 machines

undirectlookable commented 8 years ago

It may be a good idea to add this to the readme file, would save much time for me.