ropencv 0.0.30 → 0.0.31
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 +4 -4
- data/ext/helper.rb +7 -27
- data/ext/rbind.rb +2 -1
- data/ext/src/CMakeLists.txt +3 -7
- data/ropencv.gemspec +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3073df080a121954576e8a096fc5a4bfe2684363a2f6554641af8a76da7aa840
|
4
|
+
data.tar.gz: fbf9cd96f2b98d720ecc70b9d9607ae7e91c5abb2ca176243afc28ac4e93e459
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aa4b09d8430c6d04fdc92add7669a68b9e9715b282ae89473db297b4b43b941a6cf3dbe5627c097e6922be18574fd84c13c71321f30d93b75f6fb51570ac405d
|
7
|
+
data.tar.gz: 34c09dca2cd49806d72d75bb34711a3d29373258855bce7c0dd18c7c317ade9fe3663429133627912922dca14e806fdb399ce5ead5c0966baa622c80b486c454
|
data/ext/helper.rb
CHANGED
@@ -92,26 +92,15 @@ class Vec < Rbind::RClass
|
|
92
92
|
end
|
93
93
|
|
94
94
|
# find opencv version and headers needed to be parsed by rbind
|
95
|
-
def find_opencv
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
out = IO.popen("pkg-config --cflags-only-I #{p}")
|
102
|
-
paths = out.read.split("-I").delete_if(&:empty?).map do |i|
|
103
|
-
i.gsub("\n","").gsub(" ","")
|
104
|
-
end
|
105
|
-
if !paths.empty?
|
106
|
-
pkg = p
|
107
|
-
break
|
108
|
-
end
|
95
|
+
def find_opencv(hint)
|
96
|
+
hint =~ /\[(.*)\]\[v(.*)\(\)\]/
|
97
|
+
paths = [$1]
|
98
|
+
opencv_version = $2
|
99
|
+
if !opencv_version || !paths
|
100
|
+
raise "hint #{hint} is not encoding opencv loaction and version. It must have the format [PATH][vMAJOR.MINRO.REVISION()]"
|
109
101
|
end
|
110
|
-
|
102
|
+
paths << File.join(paths.first,"include")
|
111
103
|
|
112
|
-
#check opencv version
|
113
|
-
out = IO.popen("pkg-config --modversion #{pkg}")
|
114
|
-
opencv_version = out.read.chomp;
|
115
104
|
opencv_version =~ /(\d+).(\d+).(\d+)/
|
116
105
|
major = $1.to_i; minor = $2.to_i; revision = $3.to_i
|
117
106
|
|
@@ -154,15 +143,6 @@ def find_opencv
|
|
154
143
|
raise "OpenCV version #{opencv_version} is currently not supported"
|
155
144
|
end
|
156
145
|
|
157
|
-
temp = paths.clone
|
158
|
-
temp.each do |path|
|
159
|
-
if path =~ /(.*)opencv$/
|
160
|
-
paths << $1
|
161
|
-
elsif path =~ /(.*)opencv2$/
|
162
|
-
paths << $1
|
163
|
-
end
|
164
|
-
end
|
165
|
-
|
166
146
|
# check that all headers are available
|
167
147
|
headers = headers.map do |i|
|
168
148
|
path = paths.find do |p|
|
data/ext/rbind.rb
CHANGED
@@ -3,7 +3,8 @@ require 'pp'
|
|
3
3
|
require 'yaml'
|
4
4
|
|
5
5
|
require File.join(File.dirname(__FILE__),'helper.rb')
|
6
|
-
|
6
|
+
|
7
|
+
major,minor,revision,opencv_headers = find_opencv(ARGV[0])
|
7
8
|
opencv_version = "#{major}.#{minor}.#{revision}"
|
8
9
|
Rbind.log.warn "found opencv #{opencv_version}"
|
9
10
|
|
data/ext/src/CMakeLists.txt
CHANGED
@@ -5,11 +5,8 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
|
5
5
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
|
6
6
|
|
7
7
|
include(FindPkgConfig)
|
8
|
-
|
9
|
-
add_definitions(${OPENCV_CFLAGS})
|
8
|
+
find_package(OpenCV REQUIRED)
|
10
9
|
include_directories(${OPENCV_INCLUDE_DIRS})
|
11
|
-
link_directories(${OPENCV_LIBRARY_DIRS})
|
12
|
-
|
13
10
|
|
14
11
|
# use, i.e. don't skip the full RPATH for the build tree
|
15
12
|
SET(CMAKE_SKIP_BUILD_RPATH FALSE)
|
@@ -42,10 +39,9 @@ SET(RBIND_SRC
|
|
42
39
|
"${CMAKE_CURRENT_SOURCE_DIR}/conversions.cc")
|
43
40
|
|
44
41
|
add_custom_command(OUTPUT ${RBIND_SRC}
|
45
|
-
|
46
|
-
|
42
|
+
COMMAND ruby "${CMAKE_CURRENT_SOURCE_DIR}/../rbind.rb" ARGS "\"${FIND_PACKAGE_MESSAGE_DETAILS_OpenCV}\"")
|
47
43
|
ADD_LIBRARY(rbind_opencv SHARED ${RBIND_SRC})
|
48
|
-
TARGET_LINK_LIBRARIES(rbind_opencv ${
|
44
|
+
TARGET_LINK_LIBRARIES(rbind_opencv ${OpenCV_LIBS})
|
49
45
|
|
50
46
|
set(ROOT_FOLDER ${CMAKE_CURRENT_SOURCE_DIR}/../..)
|
51
47
|
install(TARGETS rbind_opencv LIBRARY DESTINATION ${ROOT_FOLDER}/lib/ropencv)
|
data/ropencv.gemspec
CHANGED