Skip to content
This repository has been archived by the owner on Jul 4, 2023. It is now read-only.

povray 3.7.0.RC6 #15093

Closed
wants to merge 4 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
67 changes: 50 additions & 17 deletions Library/Formula/povray.rb
@@ -1,37 +1,70 @@
require 'formula'

class NeedsLion < Requirement
def satisfied?
MacOS.version >= :lion
end
def message
"PovRay 3.7.0.RC6 requires Mac OS X 10.7 or newer"
end
def fatal?
true
end
end

class Povray < Formula
url 'http://www.povray.org/ftp/pub/povray/Official/Unix/povray-3.6.1.tar.bz2'
homepage 'http://www.povray.org/'
sha1 '1fab3ccbdedafbf77e3a66087709bbdf60bc643d'
url 'http://www.povray.org/beta/source/povray-3.7.0.RC6.tar.gz'
sha256 '374957bdb90fb7be5f36f839b3f04ab0a4340f6e8cf369f658d6592a342803e3'
version '3.7.0.RC6'

depends_on 'libtiff' => :optional
depends_on 'jpeg' => :optional
option 'use-openexr', 'Compile with OpenEXR support.'
option 'use-zlib', 'Compile with zlib support.'

# TODO give this a build number (2326?)
fails_with :llvm do
cause "povray fails with 'terminate called after throwing an instance of int'"
end if MacOS.version == :leopard
depends_on NeedsLion.new
depends_on 'boost'
depends_on 'jpeg'
depends_on 'libpng'
depends_on 'libtiff'
depends_on 'openexr' => :optional if build.include? 'use-openexr'

def patches
# povray has issues determining libpng version; can't get it to compile
# against system libpng, but it works with its internal libpng.
# Look at this again on the next povray version bump!
{:p0 => "https://trac.macports.org/export/97719/trunk/dports/graphics/povray/files/patch-configure"}
{:p0 => [
"http://svn.macports.org/repository/macports/trunk/dports/graphics/povray/files/patch-boost-1.50.diff",
"http://svn.macports.org/repository/macports/trunk/dports/graphics/povray/files/patch-configure-stat.diff",
"http://svn.macports.org/repository/macports/trunk/dports/graphics/povray/files/patch-lseek64.diff",
"http://svn.macports.org/repository/macports/trunk/dports/graphics/povray/files/patch-vfe-uint.diff"
]}

end

def install
system "./configure", "--disable-debug", "--disable-dependency-tracking",
"COMPILED_BY=homebrew",
"--prefix=#{prefix}",
"--mandir=#{man}"

# while this is RC6, the code still says RC5, so update to reflect that
inreplace [ 'VERSION', 'configure' ], '3.7.0.RC5', '3.7.0.RC6'

# include the boost system library to resolve compilation conflicts
ENV["LIBS"] = "-lboost_system-mt"

args = [
"COMPILED_BY=homebrew",
"--disable-debug",
"--disable-dependency-tracking",
"--prefix=#{prefix}",
"--mandir=#{man}",
]

args << "--with-openexr=${HOMEBREW_PREFIX}" if build.include? "use-openexr"
args << "--with-zlib=${HOMEBREW_PREFIX}" if build.include? "use-zlib"

system "./configure", *args
system "make install"
end

def test
ohai "Rendering all test scenes; this may take a while"
mktemp do
system "#{share}/povray-3.6/scripts/allscene.sh", "-o", "."
system "#{share}/povray-3.7.0.RC6/scripts/allscene.sh", "-o", "."
end
end
end