ruby: Add workarounds to use in-tree build not the installed one

- Make mkmf use the notmuch.h under ../../lib
- Use libnotmuch.a instead of linking to the installed libnotmuch.so
This commit is contained in:
Ali Polatel 2012-05-07 18:02:45 +03:00 committed by David Bremner
parent 92680f12eb
commit 82b73ffd73
2 changed files with 24 additions and 6 deletions

View file

@ -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
@ -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;

View file

@ -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')