class Pyexiv2 < Formula desc "Python binding to exiv2 for manipulation of image metadata" homepage "https://launchpad.net/pyexiv2" url "https://launchpad.net/pyexiv2/0.3.x/0.3.2/+download/pyexiv2-0.3.2.tar.bz2" sha256 "0abc117c6afa71f54266cb91979a5227f60361db1fcfdb68ae9615398d7a2127" revision 4 bottle do sha256 "5562c48fe257fb472957019ee435d38bc2b3d593dd4e202e3422f6547d9a91c5" => :high_sierra sha256 "64135edcb3cf14cb4a474f70d3ce648623baa0651d065e3b806ed43627745568" => :sierra sha256 "c3b60685fd5fa3c8506818896d79bb66a729e6d0c462dc6066674d3f1e08d8d8" => :el_capitan sha256 "52f3c9edc324a15b023e5b9256f6ffbce4e2319f0223b97bd41321a31b526c43" => :yosemite end depends_on "scons" => :build depends_on "exiv2" depends_on "boost" depends_on "boost-python" def install # this build script ignores CPPFLAGS, but it honors CXXFLAGS ENV.append "CXXFLAGS", ENV.cppflags ENV.append "CXXFLAGS", "-I#{Formula["boost"].include}" ENV.append "CXXFLAGS", "-I#{Formula["exiv2"].include}" ENV.append "LDFLAGS", "-undefined dynamic_lookup" scons "BOOSTLIB=boost_python-mt" # let's install manually mv "build/libexiv2python.dylib", "build/libexiv2python.so" (lib+"python2.7/site-packages").install "build/libexiv2python.so", "src/pyexiv2" pkgshare.install "test/data/smiley1.jpg" end test do (testpath/"test.py").write <<~EOS import pyexiv2 metadata = pyexiv2.ImageMetadata("#{pkgshare}/smiley1.jpg") metadata.read() assert "Exif.Image.ImageDescription" in metadata.exif_keys EOS system "python", testpath/"test.py" end end