[patch v3 3/4] build/ruby: use notmuch configure script values for shared lib

Subject: [patch v3 3/4] build/ruby: use notmuch configure script values for shared lib

Date: Mon, 1 Jun 2015 09:09:01 +0200

To: David Bremner, notmuch@notmuchmail.org

Cc:

From: David Bremner


This is supposed to help build on systems like MacOS with different
conventions for naming shared libraries. We have already computed the
relevant names, so doing it again in ruby seems like a bad idea.
---
 bindings/Makefile.local  |  1 +
 bindings/ruby/extconf.rb | 13 +++----------
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/bindings/Makefile.local b/bindings/Makefile.local
index 2ad0b86..8b1ff83 100644
--- a/bindings/Makefile.local
+++ b/bindings/Makefile.local
@@ -7,6 +7,7 @@ ruby-bindings: lib/libnotmuch.so
 ifeq ($(HAVE_RUBY_DEV),1)
 	cd $(dir)/ruby && \
 		EXTRA_LDFLAGS="$(NO_UNDEFINED_LDFLAGS)" \
+		LIBNOTMUCH="../../lib/$(LINKER_NAME)" \
 		ruby extconf.rb --vendor
 	$(MAKE) -C $(dir)/ruby
 else
diff --git a/bindings/ruby/extconf.rb b/bindings/ruby/extconf.rb
index 6d5607e..ddaa684 100644
--- a/bindings/ruby/extconf.rb
+++ b/bindings/ruby/extconf.rb
@@ -14,19 +14,12 @@ if ENV['EXTRA_LDFLAGS']
   $LDFLAGS += " " + ENV['EXTRA_LDFLAGS']
 end
 
-def have_local_library(lib, path, func, headers = nil)
-  checking_for checking_message(func, lib) do
-    lib = File.join(path, lib)
-    if try_func(func, lib, headers)
-      $LOCAL_LIBS += lib
-    end
-  end
-end
-
-if not have_local_library('libnotmuch.so', dir, 'notmuch_database_create', 'notmuch.h')
+if not ENV['LIBNOTMUCH']
   exit 1
 end
 
+$LOCAL_LIBS += ENV['LIBNOTMUCH']
+
 # Create Makefile
 dir_config('notmuch')
 create_makefile('notmuch')
-- 
2.1.4


Thread: