Skip to content

Commit

Permalink
ruby: Add workarounds to use in-tree build not the installed one
Browse files Browse the repository at this point in the history
- Make mkmf use the notmuch.h under ../../lib
- Use libnotmuch.a instead of linking to the installed libnotmuch.so
  • Loading branch information
alip authored and bremner committed May 8, 2012
1 parent 92680f1 commit 82b73ff
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 6 deletions.
4 changes: 2 additions & 2 deletions bindings/ruby/defs.h
@@ -1,6 +1,6 @@
/* The Ruby interface to the notmuch mail library
*
* Copyright © 2010, 2011 Ali Polatel
* Copyright © 2010, 2011, 2012 Ali Polatel
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand All @@ -21,8 +21,8 @@
#ifndef DEFS_H
#define DEFS_H

#include <notmuch.h>
#include <ruby.h>
#include "notmuch.h"

VALUE notmuch_rb_cDatabase;
VALUE notmuch_rb_cDirectory;
Expand Down
26 changes: 22 additions & 4 deletions bindings/ruby/extconf.rb
@@ -1,13 +1,31 @@
#!/usr/bin/env ruby
# coding: utf-8
# Copyright 2010, 2011 Ali Polatel <alip@exherbo.org>
# Copyright 2010, 2011, 2012 Ali Polatel <alip@exherbo.org>
# Distributed under the terms of the GNU General Public License v3

require 'mkmf'

# Notmuch Library
find_header('notmuch.h', '../../lib')
find_library('notmuch', 'notmuch_database_create', '../../lib')
NOTDIR = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'lib'))
NOTHDR = File.join(NOTDIR, 'notmuch.h')
NOTLIB = File.join(NOTDIR, 'libnotmuch.a')

unless File.exists? NOTHDR
$stderr.puts "notmuch.h is missing under #{NOTDIR}"
exit 1
end

unless File.exists? NOTLIB
$stderr.puts "libnotmuch.a is missing under #{NOTDIR}"
exit 1
end

# Small hack to build with in-tree version not the installed one.
# find_header() and friends use standard include/library paths first.
$stderr.puts "Added -I#{NOTDIR} to $INCFLAGS"
$INCFLAGS = "-I#{NOTDIR}".quote + " " + $INCFLAGS
find_header('notmuch.h', NOTDIR)

$LOCAL_LIBS += NOTLIB

# Create Makefile
dir_config('notmuch')
Expand Down

0 comments on commit 82b73ff

Please sign in to comment.