aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula/tiger-vnc.rb
blob: 044dc05bf135907e44e85723ee68640f66ab666f (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
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
118
119
120
require 'formula'

class TigerVnc < Formula
  homepage 'http://tigervnc.org/'
  url 'http://downloads.sourceforge.net/project/tigervnc/tigervnc/1.2.0/tigervnc-1.2.0.tar.gz'
  sha1 '0542b2549a85b6723deebc3b5ecafa4f1fbee8e6'

  depends_on 'cmake' => :build
  depends_on 'gnutls' => :recommended
  depends_on 'jpeg-turbo'
  depends_on 'gettext'
  depends_on :x11

  # Fix build of included fltk library on Mountain Lion
  # http://www.fltk.org/str.php?L2864
  # Patch for compatibility with gnutls 3
  # Fix black screen issue on Mountain Lion
  # http://permalink.gmane.org/gmane.network.vnc.tigervnc.user/544
  def patches
    { :p0 => DATA,
      :p1 => [
        "http://tigervnc.svn.sourceforge.net/viewvc/tigervnc/trunk/vncviewer/OSXPixelBuffer.cxx?r1=4646&r2=4956&view=patch",
        "http://tigervnc.svn.sourceforge.net/viewvc/tigervnc/trunk/vncviewer/OSXPixelBuffer.h?r1=4504&r2=4956&view=patch"
    ]}
  end

  def install
    gettext = Formula.factory('gettext')
    turbo   = Formula.factory('jpeg-turbo')
    args = std_cmake_args + %W[
      -DJPEG_INCLUDE_DIR=#{turbo.include}
      -DJPEG_LIBRARY=#{turbo.lib}/libjpeg.dylib
      -DCMAKE_PREFIX_PATH=#{gettext.prefix}
      .
    ]
    system 'cmake', *args
    system 'make install'
    mv (prefix+'man'), share
  end
end

__END__
Index: common/fltk/src/filename_list.cxx
===================================================================
--- common/fltk/src/filename_list.cxx (revision 9648)
+++ common/fltksrc/filename_list.cxx (revision 9649)
@@ -22,7 +22,9 @@
 #include <FL/fl_utf8.h>
 #include "flstring.h"
 #include <stdlib.h>
-
+#ifdef __APPLE__
+#include <FL/x.H>
+#endif

 extern "C" {
 #ifndef HAVE_SCANDIR
@@ -95,7 +97,7 @@
 #ifndef HAVE_SCANDIR
   // This version is when we define our own scandir
   int n = fl_scandir(dirloc, list, 0, sort);
-#elif defined(HAVE_SCANDIR_POSIX) && !defined(__APPLE__)
+#elif defined(HAVE_SCANDIR_POSIX)
   // POSIX (2008) defines the comparison function like this:
   int n = scandir(dirloc, list, 0, (int(*)(const dirent **, const dirent **))sort);
 #elif defined(__osf__)
Index: common/fltk/FL/mac.H
===================================================================
--- common/fltk/FL/mac.H  (revision 9648)
+++ common/fltk/FL/mac.H  (revision 9649)
@@ -149,6 +149,21 @@
 #ifndef MAC_OS_X_VERSION_10_6
 #define MAC_OS_X_VERSION_10_6 1060
 #endif
+#ifndef MAC_OS_X_VERSION_10_7
+#define MAC_OS_X_VERSION_10_7 1070
+#endif
+#ifndef MAC_OS_X_VERSION_10_8
+#define MAC_OS_X_VERSION_10_8 1080
+#endif
+
+#if defined(FL_LIBRARY) || defined(FL_INTERNALS)
+#ifdef HAVE_SCANDIR_POSIX
+#undef HAVE_SCANDIR_POSIX
+#endif
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_8
+#define HAVE_SCANDIR_POSIX 1
+#endif
+#endif // FL_LIBRARY || FL_INTERNALS

 typedef CGImageRef Fl_Bitmask;

Index: common/rdr/TLSInStream.cxx
===================================================================
--- /dev/null
+++ common/rdr/TLSInStream.cxx
@@ -27,9 +27,7 @@
 #include <rdr/TLSInStream.h>
 #include <errno.h>

-#ifdef HAVE_OLD_GNUTLS
 #define gnutls_transport_set_global_errno(A) do { errno = (A); } while(0)
-#endif

 #ifdef HAVE_GNUTLS
 using namespace rdr;
Index: common/rdr/TLSOutStream.cxx
===================================================================
--- /dev/null
+++ common/rdr/TLSOutStream.cxx
@@ -27,9 +27,7 @@
 #include <rdr/TLSOutStream.h>
 #include <errno.h>

-#ifdef HAVE_OLD_GNUTLS
 #define gnutls_transport_set_global_errno(A) do { errno = (A); } while(0)
-#endif

 #ifdef HAVE_GNUTLS
 using namespace rdr;