blob: 949363ef30b84277e3eebd71e9cb806b17b9994d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
require "formula"
class Fpc < Formula
homepage "http://www.freepascal.org/"
url "https://downloads.sourceforge.net/project/freepascal/Source/2.6.4/fpc-2.6.4.source.tar.gz"
sha1 "60eeadf65db25b10b174627457a5799bf0fd0d52"
bottle do
cellar :any
sha1 "c77e7a5b6b9fb84b9d90bb4515a8557ccb98a253" => :mavericks
sha1 "47f760e84fc84f845718efe4737402e086de705c" => :mountain_lion
sha1 "90d3b9d4ad5e3d06efc0108e0b1dbd8e58b18034" => :lion
end
resource "bootstrap" do
url "https://downloads.sourceforge.net/project/freepascal/Bootstrap/2.6.4/universal-macosx-10.5-ppcuniversal.tar.bz2"
sha1 "1476a19ad7f901868fcbe3dc49e6d46a5865f722"
end
def install
fpc_bootstrap = buildpath/"bootstrap"
resource("bootstrap").stage { fpc_bootstrap.install Dir["*"] }
fpc_compiler = fpc_bootstrap/"ppcuniversal"
system "make", "build", "PP=#{fpc_compiler}"
system "make", "install", "PP=#{fpc_compiler}", "PREFIX=#{prefix}"
bin.install_symlink lib/"#{name}/#{version}/ppcx64"
end
test do
hello = <<-EOS.undent
program Hello;
begin
writeln('Hello Homebrew')
end.
EOS
(testpath/"hello.pas").write(hello)
system "#{bin}/fpc", "hello.pas"
assert_equal "Hello Homebrew", `./hello`.strip
end
end
|