86 lines
3.7 KiB
Ruby
86 lines
3.7 KiB
Ruby
class Visp < Formula
|
|
desc "Visual Servoing Platform library"
|
|
homepage "https://visp.inria.fr/"
|
|
url "https://gforge.inria.fr/frs/download.php/latestfile/475/visp-3.2.0.tar.gz"
|
|
sha256 "072237ed5c6fcbc6a87300fa036014ec574fd081724907e41ae2d6fb5a222fbc"
|
|
revision 1
|
|
|
|
bottle do
|
|
sha256 "a757a056b336ec61af0a4fff50e4450e34b7ae9a0a58898cf57b8de2ac672a85" => :mojave
|
|
sha256 "0c618abe1e923b8063e4a09ebc02120a659cf6b376380061d87f2c751ae3e5ab" => :high_sierra
|
|
sha256 "22dcf5e1add32b7838adccc9da76d2132c7fd9d0ce600b3c649824ccabbf72e7" => :sierra
|
|
end
|
|
|
|
depends_on "cmake" => :build
|
|
depends_on "eigen"
|
|
depends_on "gsl"
|
|
depends_on "jpeg"
|
|
depends_on "libdc1394"
|
|
depends_on "libpng"
|
|
depends_on "opencv"
|
|
depends_on "zbar"
|
|
|
|
def install
|
|
ENV.cxx11
|
|
|
|
sdk = MacOS::CLT.installed? ? "" : MacOS.sdk_path
|
|
|
|
system "cmake", ".", "-DBUILD_DEMOS=OFF",
|
|
"-DBUILD_EXAMPLES=OFF",
|
|
"-DBUILD_TESTS=OFF",
|
|
"-DBUILD_TUTORIALS=OFF",
|
|
"-DUSE_DC1394=ON",
|
|
"-DDC1394_INCLUDE_DIR=#{Formula["libdc1394"].opt_include}",
|
|
"-DDC1394_LIBRARY=#{Formula["libdc1394"].opt_lib}/libdc1394.dylib",
|
|
"-DUSE_EIGEN3=ON",
|
|
"-DEigen3_DIR=#{Formula["eigen"].opt_share}/eigen3/cmake",
|
|
"-DUSE_GSL=ON",
|
|
"-DGSL_INCLUDE_DIR=#{Formula["gsl"].opt_include}",
|
|
"-DGSL_cblas_LIBRARY=#{Formula["gsl"].opt_lib}/libgslcblas.dylib",
|
|
"-DGSL_gsl_LIBRARY=#{Formula["gsl"].opt_lib}/libgsl.dylib",
|
|
"-DUSE_JPEG=ON",
|
|
"-DJPEG_INCLUDE_DIR=#{Formula["jpeg"].opt_include}",
|
|
"-DJPEG_LIBRARY=#{Formula["jpeg"].opt_lib}/libjpeg.dylib",
|
|
"-DUSE_LAPACK=ON",
|
|
"-DUSE_LIBUSB_1=OFF",
|
|
"-DUSE_OPENCV=ON",
|
|
"-DOpenCV_DIR=#{Formula["opencv"].opt_share}/OpenCV",
|
|
"-DUSE_PCL=OFF",
|
|
"-DUSE_PNG=ON",
|
|
"-DPNG_PNG_INCLUDE_DIR=#{Formula["libpng"].opt_include}",
|
|
"-DPNG_LIBRARY_RELEASE=#{Formula["libpng"].opt_lib}/libpng.dylib",
|
|
"-DUSE_PTHREAD=ON",
|
|
"-DPTHREAD_INCLUDE_DIR=#{sdk}/usr/include",
|
|
"-DPTHREAD_LIBRARY=/usr/lib/libpthread.dylib",
|
|
"-DUSE_PYLON=OFF",
|
|
"-DUSE_REALSENSE=OFF",
|
|
"-DUSE_REALSENSE2=OFF",
|
|
"-DUSE_X11=OFF",
|
|
"-DUSE_XML2=ON",
|
|
"-DXML2_INCLUDE_DIR=#{sdk}/usr/include/libxml2",
|
|
"-DXML2_LIBRARY=/usr/lib/libxml2.dylib",
|
|
"-DUSE_ZBAR=ON",
|
|
"-DZBAR_INCLUDE_DIRS=#{Formula["zbar"].opt_include}",
|
|
"-DZBAR_LIBRARIES=#{Formula["zbar"].opt_lib}/libzbar.dylib",
|
|
"-DUSE_ZLIB=ON",
|
|
"-DZLIB_INCLUDE_DIR=#{sdk}/usr/include",
|
|
"-DZLIB_LIBRARY_RELEASE=/usr/lib/libz.dylib",
|
|
*std_cmake_args
|
|
system "make", "install"
|
|
end
|
|
|
|
test do
|
|
(testpath/"test.cpp").write <<~EOS
|
|
#include <visp3/core/vpConfig.h>
|
|
#include <iostream>
|
|
int main()
|
|
{
|
|
std::cout << VISP_VERSION_MAJOR << "." << VISP_VERSION_MINOR <<
|
|
"." << VISP_VERSION_PATCH << std::endl;
|
|
return 0;
|
|
}
|
|
EOS
|
|
system ENV.cxx, "test.cpp", "-I#{include}", "-L#{lib}", "-o", "test"
|
|
assert_equal version.to_s, shell_output("./test").chomp
|
|
end
|
|
end
|