[PATCH] fall back to mozilla's sha.h if openssl/sha.h is not available

Subsystems: kernel build + files below scripts/ (unless maintained elsewhere), the rest

DORMANTno replies

4 messages, 2 authors, 2016-06-15 · open the first message on its own page

[PATCH] fall back to mozilla's sha.h if openssl/sha.h is not available

From: martin f. krafft <hidden>
Date: 2016-06-15 22:43:21

Uses $(CPP) to attempt to preprocess an include <openssl/sha.h> directive. If
that fails, NO_OPENSSL is defined, causing the Makefile to fall back to using
mozilla's SHA implementation.

This should possibly go to configure.ac, but maybe *also* to Makefile to make
from-source compilations easier. git HEAD already comes with a Makefile (rather
than a Makefile.in), so I just ran it while testing out patches. I introduced
the test because I thought the computer could find out about libssl for me,
rather than myself having to forget to specify NO_OPENSSL every time.

Signed-off-by: martin f. krafft <redacted>
---
 Makefile |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/Makefile b/Makefile
index d7541b4..1676343 100644
--- a/Makefile
+++ b/Makefile
@@ -532,6 +532,12 @@ ifndef NO_CURL
 	endif
 endif
 
+HAS_OPENSSL := $(shell echo "\#include <openssl/sha.h>" \
+			| $(CPP) -o/dev/null - 2>/dev/null || echo no)
+ifeq "$(HAS_OPENSSL)" "no"
+	NO_OPENSSL = "openssl_sha.h_not_found"
+endif
+
 ifndef NO_OPENSSL
 	OPENSSL_LIBSSL = -lssl
 	ifdef OPENSSLDIR
-- 
1.5.3.rc1.9.gf029

Re: [PATCH] fall back to mozilla's sha.h if openssl/sha.h is not available

From: Alex Riesen <hidden>
Date: 2016-06-15 22:43:21

martin f. krafft, Sat, Jul 14, 2007 11:24:37 +0200:
This should possibly go to configure.ac, but maybe *also* to Makefile to make
Definitely. It should it least skip the test if NO_OPENSSL is already
defined.
from-source compilations easier. git HEAD already comes with a Makefile (rather
than a Makefile.in), so I just ran it while testing out patches. I introduced
the test because I thought the computer could find out about libssl for me,
rather than myself having to forget to specify NO_OPENSSL every time.
You can simply create a config.mak and put NO_OPENSSL=Yes in it.
It gets included from Makefile.

Re: [PATCH] fall back to mozilla's sha.h if openssl/sha.h is not available

From: martin f krafft <hidden>
Date: 2016-06-15 22:43:21

also sprach Alex Riesen [off-list ref] [2007.07.14.1623 +0200]:
quoted
This should possibly go to configure.ac, but maybe *also* to Makefile to make
Definitely. It should it least skip the test if NO_OPENSSL is already
defined.
Reading this as a yes, here is the patch adding this. I'll wait for
a few days before submitting a squashed patch to Junio then. If you
oppose, please speak up.

My autotools knowledge is limited, but I might then look at adding
the fall back to configure.ac too.

Btw: I've done a lot of things wrong on this mailing list already,
for which I'd like to apologise. Thanks to those who told me
privately off my faux pas. I hope those won't be necessary anymore.



commit c8cbe9e5a44174baabe17152d575b3ee46b82c36
Author: martin f. krafft [off-list ref]
Date:   Sat Jul 14 16:44:46 2007 +0200

    skip the openssl/sha.h test if NO_OPENSSL is already defined
diff --git a/Makefile b/Makefile
index 1676343..b0ce7f0 100644
--- a/Makefile
+++ b/Makefile
@@ -532,10 +532,12 @@ ifndef NO_CURL
 	endif
 endif
 
-HAS_OPENSSL := $(shell echo "\#include <openssl/sha.h>" \
-			| $(CPP) -o/dev/null - 2>/dev/null || echo no)
-ifeq "$(HAS_OPENSSL)" "no"
-	NO_OPENSSL = "openssl_sha.h_not_found"
+ifndef NO_OPENSSL
+	HAS_OPENSSL := $(shell echo "\#include <openssl/sha.h>" \
+				| $(CPP) -o/dev/null - 2>/dev/null || echo no)
+	ifeq "$(HAS_OPENSSL)" "no"
+		NO_OPENSSL = "openssl_sha.h_not_found"
+	endif
 endif
 
 ifndef NO_OPENSSL
-- 
martin;              (greetings from the heart of the sun.)
  \____ echo mailto: !#^."<*>"|tr "<*> mailto:" net@madduck
 
spamtraps: madduck.bogus@madduck.net
 
"one should never do anything that
 one cannot talk about after dinner."
                                                        -- oscar wilde

Re: [PATCH] fall back to mozilla's sha.h if openssl/sha.h is not available

From: Alex Riesen <hidden>
Date: 2016-06-15 22:43:21

martin f krafft, Sat, Jul 14, 2007 16:50:13 +0200:
also sprach Alex Riesen [off-list ref] [2007.07.14.1623 +0200]:
quoted
quoted
This should possibly go to configure.ac, but maybe *also* to Makefile to make
Definitely. It should it least skip the test if NO_OPENSSL is already
defined.
Reading this as a yes, here is the patch adding this. ...
I was not clear. Read it as NO.
My autotools knowledge is limited, but I might then look at adding
the fall back to configure.ac too.
Some (me, for one) will consider it the only place where it should be
Btw: I've done a lot of things wrong on this mailing list already,
for which I'd like to apologise. Thanks to those who told me
privately off my faux pas. I hope those won't be necessary anymore.
If I were you, I would have considered CPPFLAGS and CFLAGS and added a
check if HAS_OPENSSL already set.

And BTW doesn't it strike you as a little bit odd that noone has done
that in Makefile before you? Could that be because configure is
considered the _right_ place for this kind of stuff?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help