aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula/nginx.rb
blob: 795ebf6518e438180171e48b6868523b139c3e7c (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
require 'formula'

class Nginx < Formula
  url 'http://nginx.org/download/nginx-0.7.65.tar.gz'
  head 'http://nginx.org/download/nginx-0.8.36.tar.gz'
  homepage 'http://nginx.org/'

  if ARGV.include? '--HEAD'
    @md5='171d88e44be3025a0bdac48c4eecd743'
  else
    @md5='abc4f76af450eedeb063158bd963feaa'
  end

  depends_on 'pcre'
  
  skip_clean 'logs'

  def patches
    # Changes default port to 8080
    # Adds code to detect PCRE installed in a non-standard HOMEBREW_PREFIX
    DATA
  end

  def options
    [
      ['--with-passenger', "Compile with support for Phusion Passenger module"]
    ]
  end
  
  def passenger_config_args
      passenger_root = `passenger-config --root`.chomp
      
      if File.directory?(passenger_root)
        return "--add-module=#{passenger_root}/ext/nginx"
      end
      
      puts "Unable to install nginx with passenger support. The passenger"
      puts "gem must be installed and passenger-config must be in your path"
      puts "in order to continue."
      exit
  end
    
  def install
    configure_args = [
      "--prefix=#{prefix}",
      "--with-http_ssl_module"
    ]
    
    configure_args << passenger_config_args if ARGV.include? '--with-passenger'
    
    system "./configure", *configure_args
    system "make install"
  end
  
  def caveats
    <<-CAVEATS
In the interest of allowing you to run `nginx` without `sudo`, the default 
port is set to localhost:8080.

If you want to host pages on your local machine to the public, you should
change that to localhost:80, and run `sudo nginx`. You'll need to turn off
any other web servers running port 80, of course.
    CAVEATS
  end
end

__END__
--- a/auto/lib/pcre/conf
+++ b/auto/lib/pcre/conf
@@ -155,6 +155,22 @@ else
             . auto/feature
         fi
 
+        if [ $ngx_found = no ]; then
+
+            # Homebrew
+           HOMEBREW_PREFIX=${NGX_PREFIX%Cellar*}
+            ngx_feature="PCRE library in ${HOMEBREW_PREFIX}"
+            ngx_feature_path="${HOMEBREW_PREFIX}/include"
+
+            if [ $NGX_RPATH = YES ]; then
+                ngx_feature_libs="-R#{HOMEBREW_PREFIX}/lib -L#{HOMEBREW_PREFIX}/lib -lpcre"
+            else
+                ngx_feature_libs="-L#{HOMEBREW_PREFIX}/lib -lpcre"
+            fi
+
+            . auto/feature
+        fi
+
         if [ $ngx_found = yes ]; then
             CORE_DEPS="$CORE_DEPS $REGEX_DEPS"
             CORE_SRCS="$CORE_SRCS $REGEX_SRCS"
--- a/conf/nginx.conf
+++ b/conf/nginx.conf
@@ -33,7 +33,7 @@
     #gzip  on;
 
     server {
-        listen       80;
+        listen       8080;
         server_name  localhost;
 
         #charset koi8-r;