openbabel 2.3.1.9 → 2.3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/ext/openbabel/extconf.rb +43 -23
- data/lib/openbabel.rb +2 -0
- data/lib/openbabel/version.rb +2 -2
- metadata +12 -11
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: cddb2ede193a07ad6d35d1c99ae5a544ec81883b
|
4
|
+
data.tar.gz: a9dbe5168fe13176b055ebad6599708db272ad85
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: b0670741fd4c602e1258fbd5014da664541b9ea37f773d35665ec9da67f89555a70c3493ef5f1d6d1e2e5ef1726afa198ddd185212d0e6fc0e421c7e1586016f
|
7
|
+
data.tar.gz: 732079f24513e2b06226243e807b7ecc51d1a73e4cd41fa37a4315d32f4d6606cc518866591d6d7677c4c2d0fd6ecafdfe6fd819f4b10ee48e12107f77b7ce63
|
data/ext/openbabel/extconf.rb
CHANGED
@@ -1,48 +1,68 @@
|
|
1
1
|
require 'fileutils'
|
2
|
-
require 'tmpdir'
|
3
2
|
require 'mkmf'
|
3
|
+
require 'rbconfig'
|
4
4
|
$:.unshift File.expand_path('../../../lib', __FILE__)
|
5
5
|
require 'openbabel/version'
|
6
6
|
|
7
7
|
ob_num_ver = OpenBabel::VERSION
|
8
8
|
ob_ver = "openbabel-"+ob_num_ver
|
9
9
|
|
10
|
-
RUBY=File.join(RbConfig::CONFIG['bindir'],
|
11
|
-
RbConfig::CONFIG['ruby_install_name'])
|
10
|
+
RUBY=File.join(RbConfig::CONFIG['bindir'], RbConfig::CONFIG['ruby_install_name'])
|
12
11
|
|
13
|
-
main_dir = File.expand_path(File.join(File.dirname(__FILE__),"..",".."
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
12
|
+
main_dir = File.expand_path(File.join(File.dirname(__FILE__),"..",".."))
|
13
|
+
src_dir = File.join main_dir, ob_ver
|
14
|
+
build_dir = File.join main_dir, "build"
|
15
|
+
install_dir = main_dir
|
16
|
+
install_lib_dir = File.join install_dir, "lib"
|
17
|
+
lib_dir = File.join main_dir, "lib", "openbabel"
|
18
|
+
ruby_src_dir = File.join src_dir, "scripts", "ruby"
|
19
|
+
|
20
|
+
begin
|
21
|
+
nr_processors = `grep processor /proc/cpuinfo | wc -l` # speed up compilation, Linux only
|
22
|
+
rescue
|
23
|
+
nr_processors = 1
|
24
|
+
end
|
18
25
|
|
19
26
|
begin
|
20
27
|
Dir.chdir main_dir do
|
21
|
-
FileUtils.rm_rf
|
28
|
+
FileUtils.rm_rf src_dir
|
22
29
|
puts "Downloading OpenBabel sources"
|
23
30
|
system "curl -L -d use_mirror=netcologne 'http://downloads.sourceforge.net/project/openbabel/openbabel/#{ob_num_ver}/openbabel-#{ob_num_ver}.tar.gz' | tar xz"
|
31
|
+
system "sed -i -e 's/-Wl,-flat_namespace//;s/-flat_namespace//' #{File.join ruby_src_dir, "extconf.rb"}" # remove unrecognized compiler option
|
32
|
+
system "sed -i -e 's/Init_OpenBabel/Init_openbabel/g' #{File.join ruby_src_dir,"*cpp"}" # fix swig bindings
|
24
33
|
end
|
25
|
-
|
34
|
+
FileUtils.mkdir_p build_dir
|
35
|
+
FileUtils.mkdir_p install_dir
|
36
|
+
Dir.chdir build_dir do
|
26
37
|
puts "Configuring OpenBabel"
|
27
|
-
|
28
|
-
|
29
|
-
|
38
|
+
cmake = "cmake #{src_dir} -DCMAKE_INSTALL_PREFIX=#{install_dir} -DBUILD_GUI=OFF -DENABLE_TESTS=OFF -DRUBY_BINDINGS=ON"
|
39
|
+
# set rpath for local installations
|
40
|
+
# http://www.cmake.org/Wiki/CMake_RPATH_handling
|
41
|
+
# http://vtk.1045678.n5.nabble.com/How-to-force-cmake-not-to-remove-install-rpath-td5721193.html
|
42
|
+
cmake += " -DCMAKE_INSTALL_RPATH:STRING=\"#{install_lib_dir}\"" unless have_library('openbabel')
|
43
|
+
system cmake
|
44
|
+
end
|
45
|
+
unless have_library('openbabel')
|
46
|
+
# local installation in gem directory
|
47
|
+
Dir.chdir build_dir do
|
30
48
|
puts "OpenBabel not installed. Compiling sources."
|
31
|
-
system "make"
|
49
|
+
system "make -j#{nr_processors}"
|
32
50
|
system "make install"
|
51
|
+
ENV["PKG_CONFIG_PATH"] = File.dirname(File.expand_path(Dir["#{install_dir}/**/openbabel*pc"].first))
|
33
52
|
end
|
34
53
|
end
|
35
|
-
|
36
|
-
|
37
|
-
|
54
|
+
# compile ruby bindings
|
55
|
+
puts "Compiling and installing OpenBabel Ruby bindings."
|
56
|
+
Dir.chdir ruby_src_dir do
|
57
|
+
# fix rpath
|
58
|
+
system "sed -i 's|with_ldflags.*$|with_ldflags(\"#\$LDFLAGS -dynamic -Wl,-rpath,#{install_lib_dir}\") do|' #{File.join(ruby_src_dir,'extconf.rb')}" unless have_library('openbabel')
|
38
59
|
# get include and lib from pkg-config
|
39
60
|
ob_include=`pkg-config openbabel-2.0 --cflags-only-I`.sub(/\s+/,'').sub(/-I/,'')
|
40
61
|
ob_lib=`pkg-config openbabel-2.0 --libs-only-L`.sub(/\s+/,'').sub(/-L/,'')
|
41
62
|
system "#{RUBY} extconf.rb --with-openbabel-include=#{ob_include} --with-openbabel-lib=#{ob_lib}"
|
42
|
-
system "
|
43
|
-
system "make"
|
63
|
+
system "make -j#{nr_processors}"
|
44
64
|
end
|
45
|
-
FileUtils.cp(
|
65
|
+
FileUtils.cp(ruby_src_dir+"/openbabel.#{RbConfig::CONFIG["DLEXT"]}", "./")
|
46
66
|
File.open('Makefile', 'w') do |makefile|
|
47
67
|
makefile.write <<"EOF"
|
48
68
|
.PHONY: openbabel.#{RbConfig::CONFIG["DLEXT"]}
|
@@ -51,10 +71,10 @@ openbabel.#{RbConfig::CONFIG["DLEXT"]}:
|
|
51
71
|
|
52
72
|
.PHONY: install
|
53
73
|
install:
|
54
|
-
mkdir -p
|
55
|
-
mv openbabel.#{RbConfig::CONFIG["DLEXT"]}
|
74
|
+
mkdir -p #{lib_dir}
|
75
|
+
mv openbabel.#{RbConfig::CONFIG["DLEXT"]} #{lib_dir}
|
56
76
|
EOF
|
57
77
|
end
|
58
78
|
ensure
|
59
|
-
FileUtils.remove_entry_secure
|
79
|
+
FileUtils.remove_entry_secure src_dir, build_dir
|
60
80
|
end
|
data/lib/openbabel.rb
CHANGED
data/lib/openbabel/version.rb
CHANGED
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: openbabel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
5
|
-
prerelease:
|
4
|
+
version: 2.3.2.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Andreas Maunz, Christoph Helma, Katsuhiko Nishimra
|
@@ -12,7 +11,9 @@ cert_chain: []
|
|
12
11
|
date: 2012-04-03 00:00:00.000000000 Z
|
13
12
|
dependencies: []
|
14
13
|
description: OpenBabel as a GEM
|
15
|
-
email:
|
14
|
+
email:
|
15
|
+
- andreas@maunz.de
|
16
|
+
- helma@in-silico.ch
|
16
17
|
executables: []
|
17
18
|
extensions:
|
18
19
|
- ext/openbabel/extconf.rb
|
@@ -23,29 +24,29 @@ files:
|
|
23
24
|
- lib/openbabel/version.rb
|
24
25
|
- test/test_openbabel.rb
|
25
26
|
- ext/openbabel/extconf.rb
|
26
|
-
homepage: http://
|
27
|
-
licenses:
|
27
|
+
homepage: http://github.com/opentox/openbabel-gem
|
28
|
+
licenses:
|
29
|
+
- GPL-3
|
30
|
+
metadata: {}
|
28
31
|
post_install_message:
|
29
32
|
rdoc_options: []
|
30
33
|
require_paths:
|
31
34
|
- lib
|
32
35
|
required_ruby_version: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
36
|
requirements:
|
35
|
-
- -
|
37
|
+
- - '>='
|
36
38
|
- !ruby/object:Gem::Version
|
37
39
|
version: '0'
|
38
40
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
39
|
-
none: false
|
40
41
|
requirements:
|
41
|
-
- -
|
42
|
+
- - '>='
|
42
43
|
- !ruby/object:Gem::Version
|
43
44
|
version: '0'
|
44
45
|
requirements: []
|
45
46
|
rubyforge_project:
|
46
|
-
rubygems_version:
|
47
|
+
rubygems_version: 2.0.2
|
47
48
|
signing_key:
|
48
|
-
specification_version:
|
49
|
+
specification_version: 4
|
49
50
|
summary: OpenBabel!
|
50
51
|
test_files:
|
51
52
|
- test/test_openbabel.rb
|