blob: c2c0ade59916d198d3def53f22a795f40b55ae6c [file] [log] [blame]
Igor Sysoev6d2a14a2004-09-27 16:03:21 +00001
Igor Sysoevff8da912004-09-29 16:00:49 +00002# Copyright (C) Igor Sysoev
Maxim Konovalovf8d59e32012-01-18 15:07:43 +00003# Copyright (C) Nginx, Inc.
Igor Sysoevff8da912004-09-29 16:00:49 +00004
5
Igor Sysoev9bf11aa2006-01-16 14:56:53 +00006if [ $USE_PERL = YES ]; then
7
8 cat << END >> $NGX_MAKEFILE
9
10install_perl_modules:
11 cd $NGX_OBJS/src/http/modules/perl && make install
12END
13
14 NGX_INSTALL_PERL_MODULES=install_perl_modules
15
16fi
17
18
Igor Sysoev5ef370d2009-04-27 11:32:33 +000019case ".$NGX_SBIN_PATH" in
20 ./*)
21 ;;
22
23 .)
24 NGX_SBIN_PATH=$NGX_PREFIX/sbin/nginx
25 ;;
26
27 *)
28 NGX_SBIN_PATH=$NGX_PREFIX/$NGX_SBIN_PATH
29 ;;
30esac
31
32
33case ".$NGX_CONF_PATH" in
34 ./*)
35 ;;
36
37 *)
38 NGX_CONF_PATH=$NGX_PREFIX/$NGX_CONF_PATH
39 ;;
40esac
41
42
43NGX_CONF_PREFIX=`dirname $NGX_CONF_PATH`
44
45
46case ".$NGX_PID_PATH" in
47 ./*)
48 ;;
49
50 *)
51 NGX_PID_PATH=$NGX_PREFIX/$NGX_PID_PATH
52 ;;
53esac
54
55
56case ".$NGX_ERROR_LOG_PATH" in
Ruslan Ermilov88ca6082011-10-12 09:04:59 +000057 ./* | .)
Igor Sysoev5ef370d2009-04-27 11:32:33 +000058 ;;
59
60 *)
61 NGX_ERROR_LOG_PATH=$NGX_PREFIX/$NGX_ERROR_LOG_PATH
62 ;;
63esac
64
65
66case ".$NGX_HTTP_LOG_PATH" in
67 ./*)
68 ;;
69
70 *)
71 NGX_HTTP_LOG_PATH=$NGX_PREFIX/$NGX_HTTP_LOG_PATH
72 ;;
73esac
74
75
Sergey Budnevitch2f6e2432011-12-20 16:20:23 +000076if test -f man/nginx.8 ; then
Ruslan Ermilov7cd93c62011-11-22 13:26:44 +000077 NGX_MAN=man/nginx.8
78else
79 NGX_MAN=docs/man/nginx.8
80fi
81
82if test -d html ; then
83 NGX_HTML=html
84else
85 NGX_HTML=docs/html
86fi
87
Igor Sysoevf6906042004-11-25 16:17:31 +000088cat << END >> $NGX_MAKEFILE
Igor Sysoevd43bee82004-11-20 19:52:20 +000089
Maxim Dounin400de572011-08-18 15:57:59 +000090manpage: $NGX_OBJS/nginx.8
91
Ruslan Ermilov7cd93c62011-11-22 13:26:44 +000092$NGX_OBJS/nginx.8: $NGX_MAN $NGX_AUTO_CONFIG_H
Igor Sysoeve1a30b42010-11-25 14:12:31 +000093 sed -e "s|%%PREFIX%%|$NGX_PREFIX|" \\
94 -e "s|%%PID_PATH%%|$NGX_PID_PATH|" \\
95 -e "s|%%CONF_PATH%%|$NGX_CONF_PATH|" \\
Ruslan Ermilov88ca6082011-10-12 09:04:59 +000096 -e "s|%%ERROR_LOG_PATH%%|${NGX_ERROR_LOG_PATH:-stderr}|" \\
Ruslan Ermilov7cd93c62011-11-22 13:26:44 +000097 < $NGX_MAN > \$@
Igor Sysoeve1a30b42010-11-25 14:12:31 +000098
Igor Sysoevd1c01502008-05-16 13:29:19 +000099install: $NGX_OBJS${ngx_dirsep}nginx${ngx_binext} \
Igor Sysoev9bf11aa2006-01-16 14:56:53 +0000100 $NGX_INSTALL_PERL_MODULES
Igor Sysoevd1c01502008-05-16 13:29:19 +0000101 test -d '\$(DESTDIR)$NGX_PREFIX' || mkdir -p '\$(DESTDIR)$NGX_PREFIX'
Igor Sysoev6d2a14a2004-09-27 16:03:21 +0000102
Igor Sysoevd1c01502008-05-16 13:29:19 +0000103 test -d '\$(DESTDIR)`dirname "$NGX_SBIN_PATH"`' \
104 || mkdir -p '\$(DESTDIR)`dirname "$NGX_SBIN_PATH"`'
105 test ! -f '\$(DESTDIR)$NGX_SBIN_PATH' \
106 || mv '\$(DESTDIR)$NGX_SBIN_PATH' \
107 '\$(DESTDIR)$NGX_SBIN_PATH.old'
108 cp $NGX_OBJS/nginx '\$(DESTDIR)$NGX_SBIN_PATH'
Igor Sysoev6d2a14a2004-09-27 16:03:21 +0000109
Igor Sysoevd1c01502008-05-16 13:29:19 +0000110 test -d '\$(DESTDIR)$NGX_CONF_PREFIX' \
111 || mkdir -p '\$(DESTDIR)$NGX_CONF_PREFIX'
Igor Sysoev6d2a14a2004-09-27 16:03:21 +0000112
Igor Sysoevd1c01502008-05-16 13:29:19 +0000113 cp conf/koi-win '\$(DESTDIR)$NGX_CONF_PREFIX'
114 cp conf/koi-utf '\$(DESTDIR)$NGX_CONF_PREFIX'
115 cp conf/win-utf '\$(DESTDIR)$NGX_CONF_PREFIX'
Igor Sysoev6d2a14a2004-09-27 16:03:21 +0000116
Igor Sysoevd1c01502008-05-16 13:29:19 +0000117 test -f '\$(DESTDIR)$NGX_CONF_PREFIX/mime.types' \
118 || cp conf/mime.types '\$(DESTDIR)$NGX_CONF_PREFIX'
119 cp conf/mime.types '\$(DESTDIR)$NGX_CONF_PREFIX/mime.types.default'
Igor Sysoev6d2a14a2004-09-27 16:03:21 +0000120
Igor Sysoevd1c01502008-05-16 13:29:19 +0000121 test -f '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi_params' \
122 || cp conf/fastcgi_params '\$(DESTDIR)$NGX_CONF_PREFIX'
123 cp conf/fastcgi_params \
124 '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi_params.default'
Igor Sysoeva1df4162007-07-29 18:05:45 +0000125
Igor Sysoev49554392009-12-15 13:54:41 +0000126 test -f '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi.conf' \
127 || cp conf/fastcgi.conf '\$(DESTDIR)$NGX_CONF_PREFIX'
128 cp conf/fastcgi.conf '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi.conf.default'
129
Igor Sysoev2b92c282010-06-08 15:25:48 +0000130 test -f '\$(DESTDIR)$NGX_CONF_PREFIX/uwsgi_params' \
131 || cp conf/uwsgi_params '\$(DESTDIR)$NGX_CONF_PREFIX'
132 cp conf/uwsgi_params \
133 '\$(DESTDIR)$NGX_CONF_PREFIX/uwsgi_params.default'
134
Igor Sysoevee5f9e52010-06-18 15:51:14 +0000135 test -f '\$(DESTDIR)$NGX_CONF_PREFIX/scgi_params' \
136 || cp conf/scgi_params '\$(DESTDIR)$NGX_CONF_PREFIX'
137 cp conf/scgi_params \
138 '\$(DESTDIR)$NGX_CONF_PREFIX/scgi_params.default'
139
Igor Sysoevd1c01502008-05-16 13:29:19 +0000140 test -f '\$(DESTDIR)$NGX_CONF_PATH' \
Igor Sysoeve9b01c02009-07-14 09:41:18 +0000141 || cp conf/nginx.conf '\$(DESTDIR)$NGX_CONF_PATH'
Igor Sysoevd1c01502008-05-16 13:29:19 +0000142 cp conf/nginx.conf '\$(DESTDIR)$NGX_CONF_PREFIX/nginx.conf.default'
Igor Sysoev6d2a14a2004-09-27 16:03:21 +0000143
Igor Sysoevd1c01502008-05-16 13:29:19 +0000144 test -d '\$(DESTDIR)`dirname "$NGX_PID_PATH"`' \
145 || mkdir -p '\$(DESTDIR)`dirname "$NGX_PID_PATH"`'
Igor Sysoevff8da912004-09-29 16:00:49 +0000146
Igor Sysoevd1c01502008-05-16 13:29:19 +0000147 test -d '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`' || \
148 mkdir -p '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`'
Igor Sysoev6d2a14a2004-09-27 16:03:21 +0000149
Igor Sysoevd1c01502008-05-16 13:29:19 +0000150 test -d '\$(DESTDIR)$NGX_PREFIX/html' \
Ruslan Ermilov7cd93c62011-11-22 13:26:44 +0000151 || cp -R $NGX_HTML '\$(DESTDIR)$NGX_PREFIX'
Igor Sysoev6d2a14a2004-09-27 16:03:21 +0000152END
153
154
Ruslan Ermilov88ca6082011-10-12 09:04:59 +0000155if test -n "$NGX_ERROR_LOG_PATH"; then
Igor Sysoevf6906042004-11-25 16:17:31 +0000156 cat << END >> $NGX_MAKEFILE
Igor Sysoevff8da912004-09-29 16:00:49 +0000157
Igor Sysoevd1c01502008-05-16 13:29:19 +0000158 test -d '\$(DESTDIR)`dirname "$NGX_ERROR_LOG_PATH"`' || \
159 mkdir -p '\$(DESTDIR)`dirname "$NGX_ERROR_LOG_PATH"`'
Igor Sysoevff8da912004-09-29 16:00:49 +0000160END
161
162fi
Igor Sysoev419c7362009-05-17 19:22:08 +0000163
164
165# create Makefile
166
167cat << END >> Makefile
168
169build:
170 \$(MAKE) -f $NGX_MAKEFILE
Igor Sysoev71948cc2010-11-29 15:23:06 +0000171 \$(MAKE) -f $NGX_MAKEFILE manpage
Igor Sysoev419c7362009-05-17 19:22:08 +0000172
173install:
174 \$(MAKE) -f $NGX_MAKEFILE install
175
176upgrade:
177 $NGX_SBIN_PATH -t
178
179 kill -USR2 \`cat $NGX_PID_PATH\`
180 sleep 1
181 test -f $NGX_PID_PATH.oldbin
182
183 kill -QUIT \`cat $NGX_PID_PATH.oldbin\`
Igor Sysoev419c7362009-05-17 19:22:08 +0000184END