forked from Homebrew/legacy-homebrew
-
Notifications
You must be signed in to change notification settings - Fork 0
/
abuse.rb
117 lines (102 loc) · 2.76 KB
/
abuse.rb
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
require 'formula'
class AbuseGameData <Formula
url 'https://abuse.zoy.org/raw-attachment/wiki/Downloads/abuse-data-2.00.tar.gz'
md5 '2b857668849b2dc7cd29cdd84a33c19e'
end
class Abuse <Formula
url 'svn:https://svn.zoy.org/abuse/abuse/trunk'
homepage 'https://abuse.zoy.org/'
version 'trunk'
depends_on 'pkg-config' => :build
depends_on 'sdl'
depends_on 'libvorbis'
def patches
# * Add SDL.m4 to aclocal includes
# * Re-enable OpenGL detection
# * Don't try to include malloc.h
DATA
end
def startup_script
return <<-END
#!/bin/bash
#{libexec}/abuse -datadir #{libexec} $*
END
end
def install
# Copy the data files
AbuseGameData.new.brew { libexec.install Dir["*"] }
system "./bootstrap"
system "./configure", "--prefix=#{prefix}", "--disable-debug",
"--disable-dependency-tracking",
"--disable-sdltest",
"--with-sdl-prefix=#{HOMEBREW_PREFIX}"
# Use Framework OpenGL, not libGl
%w[ . src src/imlib src/lisp src/net src/sdlport ].each do |p|
inreplace "#{p}/Makefile", '-lGL', '-framework OpenGL'
end
system "make"
libexec.install "src/abuse"
# Use a startup script to find the game data
(bin+'abuse').write startup_script
end
def caveats
"Game settings and saves will be written to the ~/.abuse folder."
end
end
__END__
diff --git a/bootstrap b/bootstrap
index b22c332..7c03039 100755
--- a/bootstrap
+++ b/bootstrap
@@ -116,7 +116,7 @@ if test "$libtool" = "yes"; then
fi
fi
-aclocal${amvers} ${aclocalflags}
+aclocal${amvers} ${aclocalflags} -I /usr/local/share/aclocal
autoconf${acvers}
if test "$header" = "yes"; then
autoheader${acvers}
diff --git a/configure.ac b/configure.ac
index 52d55af..c466c4f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -65,8 +65,7 @@ AC_TRY_COMPILE([
#ifdef WIN32
#include <windows.h>
#elif defined(__APPLE__) && defined(__MACH__)
-/* #include <OpenGL/gl.h>*/
- #error /* Error so the compile fails on OSX */
+ #include <OpenGL/gl.h>
#else
#include <GL/gl.h>
#endif
diff --git a/src/compiled.cpp b/src/compiled.cpp
index 3b8047c..f944788 100644
--- a/src/compiled.cpp
+++ b/src/compiled.cpp
@@ -10,7 +10,10 @@
#include "config.h"
#include <string.h>
+
+#if !defined(__APPLE__)
#include <malloc.h>
+#endif
#include "lisp.hpp"
#include "macs.hpp"
diff --git a/src/sdlport/setup.cpp b/src/sdlport/setup.cpp
index c3bd9d6..43db2a7 100644
--- a/src/sdlport/setup.cpp
+++ b/src/sdlport/setup.cpp
@@ -24,6 +24,12 @@
#include <sys/stat.h>
#include <signal.h>
#include <SDL.h>
+
+#ifdef __APPLE__
+/* This is needed if ! HAVE_OPENGL */
+#include <CoreFoundation/CoreFoundation.h>
+#endif
+
#ifdef HAVE_OPENGL
#ifdef __APPLE__
#include <Carbon/Carbon.h>