mirror of
https://github.com/ruby-opencv/ruby-opencv
synced 2023-03-27 23:22:12 -04:00
find OpenCV version suffix from opencv2/core/version.hpp
This commit is contained in:
parent
b7c305c837
commit
7d326dcb17
1 changed files with 16 additions and 4 deletions
20
extconf.rb
20
extconf.rb
|
@ -1,6 +1,18 @@
|
|||
#!/usr/bin/env ruby
|
||||
require "mkmf"
|
||||
|
||||
def cv_version_suffix(incdir)
|
||||
major, minor, subminor = nil, nil, nil
|
||||
open("#{incdir}/opencv2/core/version.hpp", 'r') { |f|
|
||||
f.read.lines.each { |line|
|
||||
major = $1.to_s if line =~ /\A#define\s+CV_MAJOR_VERSION\s+(\d+)\s*\Z/
|
||||
minor = $1.to_s if line =~ /\A#define\s+CV_MINOR_VERSION\s+(\d+)\s*\Z/
|
||||
subminor = $1.to_s if line =~ /\A#define\s+CV_SUBMINOR_VERSION\s+(\d+)\s*\Z/
|
||||
}
|
||||
}
|
||||
major + minor + subminor
|
||||
end
|
||||
|
||||
incdir, libdir = dir_config("opencv", "/usr/local/include", "/usr/local/lib")
|
||||
dir_config("libxml2", "/usr/include", "/usr/lib")
|
||||
|
||||
|
@ -17,18 +29,18 @@ opencv_libraries = ["opencv_calib3d", "opencv_contrib", "opencv_core", "opencv_f
|
|||
|
||||
|
||||
puts ">> Check the required libraries..."
|
||||
|
||||
OPENCV_VERSION_SUFFIX = '242'
|
||||
case CONFIG["arch"]
|
||||
when /mswin32/
|
||||
opencv_libraries.map! {|lib| lib + OPENCV_VERSION_SUFFIX }
|
||||
suffix = cv_version_suffix(incdir)
|
||||
opencv_libraries.map! {|lib| lib + suffix }
|
||||
have_library("msvcrt")
|
||||
opencv_libraries.each {|lib|
|
||||
raise "#{lib}.lib not found." unless have_library(lib)
|
||||
}
|
||||
$CFLAGS << ' /EHsc'
|
||||
when /mingw32/
|
||||
opencv_libraries.map! {|lib| lib + OPENCV_VERSION_SUFFIX }
|
||||
suffix = cv_version_suffix(incdir)
|
||||
opencv_libraries.map! {|lib| lib + suffix }
|
||||
have_library("msvcrt")
|
||||
opencv_libraries.each {|lib|
|
||||
raise "lib#{lib} not found." unless have_library(lib)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue