git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[RFC/PATCH 7] autoconf: Checks for libraries

From
Jakub Narebski <jnareb@gmail.com>
Date
Jul 8, 2006, 21:07 UTC
Message-ID
<11523928373299-git-send-email-jnareb@gmail.com>
In-Reply-To
<11523928373026-git-send-email-jnareb@gmail.com>
./configure script checks now if the following libraries are present:
 * -lssl    for SHA1_Init (NO_OPENSSL)
 * -lcurl   for curl_easy_setopt (NO_CURL)
 * -lexpat  for XML_ParserCreate (NO_EXPAT)
It also checks if adding the following libraries are needed:
 * -lcrypto for SHA1_Init (NEEDS_SSL_WITH_CRYPTO)
 * -liconv  for iconv (NEEDS_LIBICONV)
 * -lsocket for socket (NEEDS_SOCKET)
Policy: we check also if NEEDS_LIBRARY libraries are present, even if
there is no NO_LIBRARY variable.
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
---
Needs checking if correct functions are used for checks.
Policy might need to be changed, too.
 configure.ac |   28 +++++++++++++++++++++-------
 1 files changed, 21 insertions(+), 7 deletions(-)
diff --git a/configure.ac b/configure.ac
index ab6a77a..d938546 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,22 +26,36 @@ # Define NO_PYTHON if you want to loose 
 
 
 ## Checks for libraries.
+AC_MSG_NOTICE([CHECKS for libraries])
+
 # Define NO_OPENSSL environment variable if you do not have OpenSSL.
-# This also implies MOZILLA_SHA1.
-#
+# Define NEEDS_SSL_WITH_CRYPTO if you need -lcrypto with -lssl (Darwin).
+AC_CHECK_LIB([ssl], [SHA1_Init],[],
+[AC_CHECK_LIB([crypto], [SHA1_INIT],
+ GIT_CONF_APPEND_LINE(NEEDS_SSL_WITH_CRYPTO=YesPlease),
+ GIT_CONF_APPEND_LINE(NO_OPENSSL=YesPlease))])
+
 # Define NO_CURL if you do not have curl installed.  git-http-pull and
 # git-http-push are not built, and you cannot use http:// and https://
 # transports.
-#
+AC_CHECK_LIB([curl], [curl_global_init],[],
+GIT_CONF_APPEND_LINE(NO_CURL=YesPlease))
+
 # Define NO_EXPAT if you do not have expat installed.  git-http-push is
 # not built, and you cannot push using http:// and https:// transports.
-#
-# Define NEEDS_SSL_WITH_CRYPTO if you need -lcrypto with -lssl (Darwin).
-#
+AC_CHECK_LIB([expat], [XML_ParserCreate],[],
+GIT_CONF_APPEND_LINE(NO_EXPAT=YesPlease))
+
 # Define NEEDS_LIBICONV if linking with libc is not enough (Darwin).
-#
+AC_CHECK_LIB([c], [iconv],[],
+[AC_CHECK_LIB([iconv],[iconv],
+ GIT_CONF_APPEND_LINE(NEEDS_LIBICONV=YesPlease),[])])
+
 # Define NEEDS_SOCKET if linking with libc is not enough (SunOS,
 # Patrick Mauritz).
+AC_CHECK_LIB([c], [socket],[],
+[AC_CHECK_LIB([socket],[socket],
+ GIT_CONF_APPEND_LINE(NEEDS_SOCKET=YesPlease),[])])
 
 
 ## Checks for header files.
-- 
1.4.0
Previous: Jakub NarebskiNext: Jakub Narebski
Message 27 of 34 in “autoconf: Use autoconf to write installation directories to config.mak.autogen”
  1. autoconf: Use autoconf to write installation directories to config.mak.autogenJakub Narebski, Jul 2, 2006
  2. autoconf: Use ./configure script in git *.spec fileJakub Narebski, Jul 3, 2006
  3. Junio C HamanoJul 3, 2006
  4. Jakub NarebskiJul 3, 2006
  5. Junio C HamanoJul 3, 2006
  6. contrib/ statusJunio C Hamano, Jul 3, 2006
  7. Eric WongJul 3, 2006
  8. Junio C HamanoJul 3, 2006
  9. Eric WongJul 4, 2006
  10. git-svn: migrate out of contribEric Wong, Jul 6, 2006
  11. Junio C HamanoJul 7, 2006
  12. git-svn: migrate out of contribEric Wong, Jul 7, 2006
  13. Jakub NarebskiJul 4, 2006
  14. Johannes SchindelinJul 4, 2006
  15. Jakub NarebskiJul 3, 2006
  16. Junio C HamanoJul 3, 2006
  17. Jakub NarebskiJul 3, 2006
  18. Junio C HamanoJul 3, 2006
  19. autoconf: Use %configure in git.spec, autoconf dependency only in rpm targetJakub Narebski, Jul 4, 2006
  20. Pavel RoskinJul 6, 2006
  21. Jakub NarebskiJul 7, 2006
  22. Teach make clean about configure and autoconfJakub Narebski, Jul 8, 2006
  23. Copy description of build configuration variables to configure.acJakub Narebski, Jul 8, 2006
  24. autoconf: Preparing the way for autodetectionJakub Narebski, Jul 8, 2006
  25. autoconf: Checks for typedefs, structures, and compiler characteristics.Jakub Narebski, Jul 8, 2006
  26. autoconf: Checks for some library functions.Jakub Narebski, Jul 8, 2006
  27. autoconf: Checks for librariesJakub Narebski, Jul 8, 2006
  28. autoconf: Checks for some programsJakub Narebski, Jul 8, 2006
  29. configure.ac vertical whitespace usage cleanupJakub Narebski, Jul 8, 2006
  30. Comment on this series of patches (PATCH 2-9)Jakub Narebski, Jul 8, 2006
  31. Junio C HamanoJul 8, 2006
  32. Junio C HamanoJul 9, 2006
  33. Jakub NarebskiJul 9, 2006
  34. Junio C HamanoJul 9, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.