class Caffe < Formula desc "Fast open framework for deep learning" homepage "https://caffe.berkeleyvision.org/" url "https://github.com/BVLC/caffe/archive/1.0.tar.gz" sha256 "71d3c9eb8a183150f965a465824d01fe82826c22505f7aa314f700ace03fa77f" revision 8 bottle do sha256 "188ea58b0e1c5ae4b09a0a13d7bc25868cc07c92501c3e37a20eb280011db94f" => :mojave sha256 "58b54f4359b8e69167724b7831bcdc04183906af5dd1b6a8b19e3c657cc8fe19" => :high_sierra sha256 "00eb2ac54c10f9f192f4aaf0685d9e96e27eb157885f0ec7df8ef0096eb4d955" => :sierra end depends_on "cmake" => :build depends_on "boost" depends_on "gflags" depends_on "glog" depends_on "hdf5" depends_on "leveldb" depends_on "lmdb" depends_on "opencv" depends_on "protobuf" depends_on "snappy" depends_on "szip" resource "test_model_weights" do url "http://dl.caffe.berkeleyvision.org/bvlc_reference_caffenet.caffemodel" sha256 "472d4a06035497b180636d8a82667129960371375bd10fcb6df5c6c7631f25e0" end # Fix compilation with OpenCV 4 # https://github.com/BVLC/caffe/issues/6652 patch do url "https://github.com/BVLC/caffe/pull/6638.diff?full_index=1" sha256 "6a6368d715284fabfa96660b6d24d1f4f419f3e6cdddab9a7293954fee4ec2bc" end needs :cxx11 def install ENV.cxx11 args = std_cmake_args + %w[ -DALLOW_LMDB_NOLOCK=OFF -DBUILD_SHARED_LIBS=ON -DBUILD_docs=OFF -DBUILD_matlab=OFF -DBUILD_python=OFF -DBUILD_python_layer=OFF -DCPU_ONLY=ON -DUSE_LEVELDB=ON -DUSE_LMDB=ON -DUSE_NCCL=OFF -DUSE_OPENCV=ON -DUSE_OPENMP=OFF ] system "cmake", ".", *args system "make", "install" pkgshare.install "models" end test do model = "bvlc_reference_caffenet" m_path = "#{pkgshare}/models/#{model}" resource("test_model_weights").stage do system "#{bin}/caffe", "test", "-model", "#{m_path}/deploy.prototxt", "-solver", "#{m_path}/solver.prototxt", "-weights", "#{model}.caffemodel" end end end