Project

General

Profile

Actions

Bug #13402

closed

[PATCH] fix --with-gmp (broken by r57490)

Added by shyouhei (Shyouhei Urabe) over 7 years ago. Updated about 7 years ago.

Status:
Closed
Target version:
-
ruby -v:
ruby 2.5.0dev (2017-04-05 trunk 58250) [x86_64-darwin15]
[ruby-core:80569]

Description

From 1ff8c57aee9d777d114a0f961139510ee93dc9c5 Mon Sep 17 00:00:00 2001
From: "Urabe, Shyouhei" <shyouhei@ruby-lang.org>
Date: Wed, 5 Apr 2017 09:56:09 +0900
Subject: [PATCH] fix --with-gmp (broken by r57490)

Looking at the generated shell script (also the autoconf manual), it
seems AC_SEARCH_LIBS() m4 macro does not define HAVE_LIBsomething C
preprocessor macros, unlike AC_CHECK_LIB() which does define them.
This previous change effectively killed building with GMP because
building that mode depends on existence of HAVE_LIBGMP.

Signed-off-by: Urabe, Shyouhei <shyouhei@ruby-lang.org>
---
 configure.in | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/configure.in b/configure.in
index 48a10811a0..1dfec8b2d3 100644
--- a/configure.in
+++ b/configure.in
@@ -1386,13 +1386,15 @@ AC_ARG_WITH([gmp],
 AS_IF([test "x$with_gmp" != xno],
   [AC_CHECK_HEADERS(gmp.h)
    AS_IF([test "x$ac_cv_header_gmp_h" != xno],
-     AC_SEARCH_LIBS([__gmpz_init], [gmp]))])
+     AC_SEARCH_LIBS([__gmpz_init], [gmp],
+       [AC_DEFINE(HAVE_LIBGMP, 1)]))])
 
 AC_ARG_WITH([jemalloc],
   [AS_HELP_STRING([--with-jemalloc],[use jemalloc allocator])],
   [with_jemalloc=$withval], [with_jemalloc=no])
 AS_IF([test "x$with_jemalloc" = xyes],[
-  AC_SEARCH_LIBS([malloc_conf], [jemalloc], [], [with_jemalloc=no])
+  AC_SEARCH_LIBS([malloc_conf], [jemalloc],
+    [AC_DEFINE(HAVE_LIBJEMALLOC, 1)], [with_jemalloc=no])
   AC_CHECK_HEADER(jemalloc/jemalloc.h, [
     AC_DEFINE(RUBY_ALTERNATIVE_MALLOC_HEADER, [<jemalloc/jemalloc.h>])
   ])
-- 
2.12.2


Related issues 2 (0 open2 closed)

Related to Ruby master - Bug #13175: Building --with-jemalloc on FreeBSD failsClosedActions
Related to Ruby master - Bug #13899: Ruby 2.4.2 and 2.3.5 cannot link with libgmp nor jemallocClosedActions

Updated by shyouhei (Shyouhei Urabe) over 7 years ago

  • Status changed from Open to Assigned
  • Assignee set to nobu (Nobuyoshi Nakada)
  • ruby -v set to ruby 2.5.0dev (2017-04-05 trunk 58250) [x86_64-darwin15]
  • Backport changed from 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN to 2.2: DONTNEED, 2.3: DONTNEED, 2.4: DONTNEED

Updated by nobu (Nobuyoshi Nakada) over 7 years ago

Indeed.
Please commit it.

Actions #3

Updated by shyouhei (Shyouhei Urabe) over 7 years ago

  • Status changed from Assigned to Closed

Applied in changeset trunk|r58254.


fix --with-gmp (broken by r57490)

Looking at the generated shell script (also the autoconf manual), it
seems AC_SEARCH_LIBS() m4 macro does not define HAVE_LIBsomething C
preprocessor macros, unlike AC_CHECK_LIB() which does define them.
This previous change effectively killed building with GMP because
building that mode depends on existence of HAVE_LIBGMP. [Bug #13402]

Actions #4

Updated by usa (Usaku NAKAMURA) about 7 years ago

  • Related to Bug #13175: Building --with-jemalloc on FreeBSD fails added
Actions #5

Updated by usa (Usaku NAKAMURA) about 7 years ago

  • Backport changed from 2.2: DONTNEED, 2.3: DONTNEED, 2.4: DONTNEED to 2.2: DONTNEED, 2.3: REQUIRED, 2.4: REQUIRED

Updated by usa (Usaku NAKAMURA) about 7 years ago

  • Backport changed from 2.2: DONTNEED, 2.3: REQUIRED, 2.4: REQUIRED to 2.2: DONTNEED, 2.3: DONE, 2.4: REQUIRED

ruby_2_3 r59912 merged revision(s) 58254.

Updated by nagachika (Tomoyuki Chikanaga) about 7 years ago

  • Backport changed from 2.2: DONTNEED, 2.3: DONE, 2.4: REQUIRED to 2.2: DONTNEED, 2.3: DONE, 2.4: DONE

ruby_2_4 r59914 merged revision(s) 58254.

Actions #8

Updated by usa (Usaku NAKAMURA) about 7 years ago

  • Related to Bug #13899: Ruby 2.4.2 and 2.3.5 cannot link with libgmp nor jemalloc added
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0