1*3da8d17dSfengbojiang(姜凤波) 2*3da8d17dSfengbojiang(姜凤波)# Copyright (C) Igor Sysoev 3*3da8d17dSfengbojiang(姜凤波)# Copyright (C) Nginx, Inc. 4*3da8d17dSfengbojiang(姜凤波) 5*3da8d17dSfengbojiang(姜凤波) 6*3da8d17dSfengbojiang(姜凤波)if [ $USE_PERL != NO ]; then 7*3da8d17dSfengbojiang(姜凤波) 8*3da8d17dSfengbojiang(姜凤波) cat << END >> $NGX_MAKEFILE 9*3da8d17dSfengbojiang(姜凤波) 10*3da8d17dSfengbojiang(姜凤波)install_perl_modules: 11*3da8d17dSfengbojiang(姜凤波) cd $NGX_OBJS/src/http/modules/perl && \$(MAKE) install 12*3da8d17dSfengbojiang(姜凤波)END 13*3da8d17dSfengbojiang(姜凤波) 14*3da8d17dSfengbojiang(姜凤波) NGX_INSTALL_PERL_MODULES=install_perl_modules 15*3da8d17dSfengbojiang(姜凤波) 16*3da8d17dSfengbojiang(姜凤波)fi 17*3da8d17dSfengbojiang(姜凤波) 18*3da8d17dSfengbojiang(姜凤波) 19*3da8d17dSfengbojiang(姜凤波)case ".$NGX_SBIN_PATH" in 20*3da8d17dSfengbojiang(姜凤波) ./*) 21*3da8d17dSfengbojiang(姜凤波) ;; 22*3da8d17dSfengbojiang(姜凤波) 23*3da8d17dSfengbojiang(姜凤波) *) 24*3da8d17dSfengbojiang(姜凤波) NGX_SBIN_PATH=$NGX_PREFIX/$NGX_SBIN_PATH 25*3da8d17dSfengbojiang(姜凤波) ;; 26*3da8d17dSfengbojiang(姜凤波)esac 27*3da8d17dSfengbojiang(姜凤波) 28*3da8d17dSfengbojiang(姜凤波) 29*3da8d17dSfengbojiang(姜凤波)case ".$NGX_MODULES_PATH" in 30*3da8d17dSfengbojiang(姜凤波) ./*) 31*3da8d17dSfengbojiang(姜凤波) ;; 32*3da8d17dSfengbojiang(姜凤波) 33*3da8d17dSfengbojiang(姜凤波) *) 34*3da8d17dSfengbojiang(姜凤波) NGX_MODULES_PATH=$NGX_PREFIX/$NGX_MODULES_PATH 35*3da8d17dSfengbojiang(姜凤波) ;; 36*3da8d17dSfengbojiang(姜凤波)esac 37*3da8d17dSfengbojiang(姜凤波) 38*3da8d17dSfengbojiang(姜凤波)NGX_MODULES_PATH=`dirname $NGX_MODULES_PATH/.` 39*3da8d17dSfengbojiang(姜凤波) 40*3da8d17dSfengbojiang(姜凤波) 41*3da8d17dSfengbojiang(姜凤波)case ".$NGX_CONF_PATH" in 42*3da8d17dSfengbojiang(姜凤波) ./*) 43*3da8d17dSfengbojiang(姜凤波) ;; 44*3da8d17dSfengbojiang(姜凤波) 45*3da8d17dSfengbojiang(姜凤波) *) 46*3da8d17dSfengbojiang(姜凤波) NGX_CONF_PATH=$NGX_PREFIX/$NGX_CONF_PATH 47*3da8d17dSfengbojiang(姜凤波) ;; 48*3da8d17dSfengbojiang(姜凤波)esac 49*3da8d17dSfengbojiang(姜凤波) 50*3da8d17dSfengbojiang(姜凤波) 51*3da8d17dSfengbojiang(姜凤波)NGX_CONF_PREFIX=`dirname $NGX_CONF_PATH` 52*3da8d17dSfengbojiang(姜凤波) 53*3da8d17dSfengbojiang(姜凤波) 54*3da8d17dSfengbojiang(姜凤波)case ".$NGX_PID_PATH" in 55*3da8d17dSfengbojiang(姜凤波) ./*) 56*3da8d17dSfengbojiang(姜凤波) ;; 57*3da8d17dSfengbojiang(姜凤波) 58*3da8d17dSfengbojiang(姜凤波) *) 59*3da8d17dSfengbojiang(姜凤波) NGX_PID_PATH=$NGX_PREFIX/$NGX_PID_PATH 60*3da8d17dSfengbojiang(姜凤波) ;; 61*3da8d17dSfengbojiang(姜凤波)esac 62*3da8d17dSfengbojiang(姜凤波) 63*3da8d17dSfengbojiang(姜凤波) 64*3da8d17dSfengbojiang(姜凤波)case ".$NGX_ERROR_LOG_PATH" in 65*3da8d17dSfengbojiang(姜凤波) ./* | .) 66*3da8d17dSfengbojiang(姜凤波) ;; 67*3da8d17dSfengbojiang(姜凤波) 68*3da8d17dSfengbojiang(姜凤波) *) 69*3da8d17dSfengbojiang(姜凤波) NGX_ERROR_LOG_PATH=$NGX_PREFIX/$NGX_ERROR_LOG_PATH 70*3da8d17dSfengbojiang(姜凤波) ;; 71*3da8d17dSfengbojiang(姜凤波)esac 72*3da8d17dSfengbojiang(姜凤波) 73*3da8d17dSfengbojiang(姜凤波) 74*3da8d17dSfengbojiang(姜凤波)case ".$NGX_HTTP_LOG_PATH" in 75*3da8d17dSfengbojiang(姜凤波) ./*) 76*3da8d17dSfengbojiang(姜凤波) ;; 77*3da8d17dSfengbojiang(姜凤波) 78*3da8d17dSfengbojiang(姜凤波) *) 79*3da8d17dSfengbojiang(姜凤波) NGX_HTTP_LOG_PATH=$NGX_PREFIX/$NGX_HTTP_LOG_PATH 80*3da8d17dSfengbojiang(姜凤波) ;; 81*3da8d17dSfengbojiang(姜凤波)esac 82*3da8d17dSfengbojiang(姜凤波) 83*3da8d17dSfengbojiang(姜凤波) 84*3da8d17dSfengbojiang(姜凤波)if test -f man/nginx.8 ; then 85*3da8d17dSfengbojiang(姜凤波) NGX_MAN=man/nginx.8 86*3da8d17dSfengbojiang(姜凤波)else 87*3da8d17dSfengbojiang(姜凤波) NGX_MAN=docs/man/nginx.8 88*3da8d17dSfengbojiang(姜凤波)fi 89*3da8d17dSfengbojiang(姜凤波) 90*3da8d17dSfengbojiang(姜凤波)if test -d html ; then 91*3da8d17dSfengbojiang(姜凤波) NGX_HTML=html 92*3da8d17dSfengbojiang(姜凤波)else 93*3da8d17dSfengbojiang(姜凤波) NGX_HTML=docs/html 94*3da8d17dSfengbojiang(姜凤波)fi 95*3da8d17dSfengbojiang(姜凤波) 96*3da8d17dSfengbojiang(姜凤波)cat << END >> $NGX_MAKEFILE 97*3da8d17dSfengbojiang(姜凤波) 98*3da8d17dSfengbojiang(姜凤波)manpage: $NGX_OBJS/nginx.8 99*3da8d17dSfengbojiang(姜凤波) 100*3da8d17dSfengbojiang(姜凤波)$NGX_OBJS/nginx.8: $NGX_MAN $NGX_AUTO_CONFIG_H 101*3da8d17dSfengbojiang(姜凤波) sed -e "s|%%PREFIX%%|$NGX_PREFIX|" \\ 102*3da8d17dSfengbojiang(姜凤波) -e "s|%%PID_PATH%%|$NGX_PID_PATH|" \\ 103*3da8d17dSfengbojiang(姜凤波) -e "s|%%CONF_PATH%%|$NGX_CONF_PATH|" \\ 104*3da8d17dSfengbojiang(姜凤波) -e "s|%%ERROR_LOG_PATH%%|${NGX_ERROR_LOG_PATH:-stderr}|" \\ 105*3da8d17dSfengbojiang(姜凤波) < $NGX_MAN > \$@ 106*3da8d17dSfengbojiang(姜凤波) 107*3da8d17dSfengbojiang(姜凤波)install: build $NGX_INSTALL_PERL_MODULES 108*3da8d17dSfengbojiang(姜凤波) test -d '\$(DESTDIR)$NGX_PREFIX' || mkdir -p '\$(DESTDIR)$NGX_PREFIX' 109*3da8d17dSfengbojiang(姜凤波) 110*3da8d17dSfengbojiang(姜凤波) test -d '\$(DESTDIR)`dirname "$NGX_SBIN_PATH"`' \\ 111*3da8d17dSfengbojiang(姜凤波) || mkdir -p '\$(DESTDIR)`dirname "$NGX_SBIN_PATH"`' 112*3da8d17dSfengbojiang(姜凤波) test ! -f '\$(DESTDIR)$NGX_SBIN_PATH' \\ 113*3da8d17dSfengbojiang(姜凤波) || mv '\$(DESTDIR)$NGX_SBIN_PATH' \\ 114*3da8d17dSfengbojiang(姜凤波) '\$(DESTDIR)$NGX_SBIN_PATH.old' 115*3da8d17dSfengbojiang(姜凤波) cp $NGX_OBJS/nginx '\$(DESTDIR)$NGX_SBIN_PATH' 116*3da8d17dSfengbojiang(姜凤波) 117*3da8d17dSfengbojiang(姜凤波) test -d '\$(DESTDIR)$NGX_CONF_PREFIX' \\ 118*3da8d17dSfengbojiang(姜凤波) || mkdir -p '\$(DESTDIR)$NGX_CONF_PREFIX' 119*3da8d17dSfengbojiang(姜凤波) 120*3da8d17dSfengbojiang(姜凤波) cp conf/koi-win '\$(DESTDIR)$NGX_CONF_PREFIX' 121*3da8d17dSfengbojiang(姜凤波) cp conf/koi-utf '\$(DESTDIR)$NGX_CONF_PREFIX' 122*3da8d17dSfengbojiang(姜凤波) cp conf/win-utf '\$(DESTDIR)$NGX_CONF_PREFIX' 123*3da8d17dSfengbojiang(姜凤波) 124*3da8d17dSfengbojiang(姜凤波) test -f '\$(DESTDIR)$NGX_CONF_PREFIX/mime.types' \\ 125*3da8d17dSfengbojiang(姜凤波) || cp conf/mime.types '\$(DESTDIR)$NGX_CONF_PREFIX' 126*3da8d17dSfengbojiang(姜凤波) cp conf/mime.types '\$(DESTDIR)$NGX_CONF_PREFIX/mime.types.default' 127*3da8d17dSfengbojiang(姜凤波) 128*3da8d17dSfengbojiang(姜凤波) test -f '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi_params' \\ 129*3da8d17dSfengbojiang(姜凤波) || cp conf/fastcgi_params '\$(DESTDIR)$NGX_CONF_PREFIX' 130*3da8d17dSfengbojiang(姜凤波) cp conf/fastcgi_params \\ 131*3da8d17dSfengbojiang(姜凤波) '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi_params.default' 132*3da8d17dSfengbojiang(姜凤波) 133*3da8d17dSfengbojiang(姜凤波) test -f '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi.conf' \\ 134*3da8d17dSfengbojiang(姜凤波) || cp conf/fastcgi.conf '\$(DESTDIR)$NGX_CONF_PREFIX' 135*3da8d17dSfengbojiang(姜凤波) cp conf/fastcgi.conf '\$(DESTDIR)$NGX_CONF_PREFIX/fastcgi.conf.default' 136*3da8d17dSfengbojiang(姜凤波) 137*3da8d17dSfengbojiang(姜凤波) test -f '\$(DESTDIR)$NGX_CONF_PREFIX/uwsgi_params' \\ 138*3da8d17dSfengbojiang(姜凤波) || cp conf/uwsgi_params '\$(DESTDIR)$NGX_CONF_PREFIX' 139*3da8d17dSfengbojiang(姜凤波) cp conf/uwsgi_params \\ 140*3da8d17dSfengbojiang(姜凤波) '\$(DESTDIR)$NGX_CONF_PREFIX/uwsgi_params.default' 141*3da8d17dSfengbojiang(姜凤波) 142*3da8d17dSfengbojiang(姜凤波) test -f '\$(DESTDIR)$NGX_CONF_PREFIX/scgi_params' \\ 143*3da8d17dSfengbojiang(姜凤波) || cp conf/scgi_params '\$(DESTDIR)$NGX_CONF_PREFIX' 144*3da8d17dSfengbojiang(姜凤波) cp conf/scgi_params \\ 145*3da8d17dSfengbojiang(姜凤波) '\$(DESTDIR)$NGX_CONF_PREFIX/scgi_params.default' 146*3da8d17dSfengbojiang(姜凤波) 147*3da8d17dSfengbojiang(姜凤波) test -f '\$(DESTDIR)$NGX_CONF_PATH' \\ 148*3da8d17dSfengbojiang(姜凤波) || cp conf/nginx.conf '\$(DESTDIR)$NGX_CONF_PATH' 149*3da8d17dSfengbojiang(姜凤波) cp conf/nginx.conf '\$(DESTDIR)$NGX_CONF_PREFIX/nginx.conf.default' 150*3da8d17dSfengbojiang(姜凤波) 151*3da8d17dSfengbojiang(姜凤波) test -f '\$(DESTDIR)$NGX_CONF_PREFIX/f-stack.conf' \\ 152*3da8d17dSfengbojiang(姜凤波) || cp conf/f-stack.conf '\$(DESTDIR)$NGX_CONF_PREFIX' 153*3da8d17dSfengbojiang(姜凤波) 154*3da8d17dSfengbojiang(姜凤波) test -d '\$(DESTDIR)`dirname "$NGX_PID_PATH"`' \\ 155*3da8d17dSfengbojiang(姜凤波) || mkdir -p '\$(DESTDIR)`dirname "$NGX_PID_PATH"`' 156*3da8d17dSfengbojiang(姜凤波) 157*3da8d17dSfengbojiang(姜凤波) test -d '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`' \\ 158*3da8d17dSfengbojiang(姜凤波) || mkdir -p '\$(DESTDIR)`dirname "$NGX_HTTP_LOG_PATH"`' 159*3da8d17dSfengbojiang(姜凤波) 160*3da8d17dSfengbojiang(姜凤波) test -d '\$(DESTDIR)$NGX_PREFIX/html' \\ 161*3da8d17dSfengbojiang(姜凤波) || cp -R $NGX_HTML '\$(DESTDIR)$NGX_PREFIX' 162*3da8d17dSfengbojiang(姜凤波)END 163*3da8d17dSfengbojiang(姜凤波) 164*3da8d17dSfengbojiang(姜凤波) 165*3da8d17dSfengbojiang(姜凤波)if test -n "$NGX_ERROR_LOG_PATH"; then 166*3da8d17dSfengbojiang(姜凤波) cat << END >> $NGX_MAKEFILE 167*3da8d17dSfengbojiang(姜凤波) 168*3da8d17dSfengbojiang(姜凤波) test -d '\$(DESTDIR)`dirname "$NGX_ERROR_LOG_PATH"`' \\ 169*3da8d17dSfengbojiang(姜凤波) || mkdir -p '\$(DESTDIR)`dirname "$NGX_ERROR_LOG_PATH"`' 170*3da8d17dSfengbojiang(姜凤波)END 171*3da8d17dSfengbojiang(姜凤波) 172*3da8d17dSfengbojiang(姜凤波)fi 173*3da8d17dSfengbojiang(姜凤波) 174*3da8d17dSfengbojiang(姜凤波) 175*3da8d17dSfengbojiang(姜凤波)if test -n "$DYNAMIC_MODULES"; then 176*3da8d17dSfengbojiang(姜凤波) cat << END >> $NGX_MAKEFILE 177*3da8d17dSfengbojiang(姜凤波) 178*3da8d17dSfengbojiang(姜凤波) test -d '\$(DESTDIR)$NGX_MODULES_PATH' \\ 179*3da8d17dSfengbojiang(姜凤波) || mkdir -p '\$(DESTDIR)$NGX_MODULES_PATH' 180*3da8d17dSfengbojiang(姜凤波)END 181*3da8d17dSfengbojiang(姜凤波) 182*3da8d17dSfengbojiang(姜凤波)fi 183*3da8d17dSfengbojiang(姜凤波) 184*3da8d17dSfengbojiang(姜凤波) 185*3da8d17dSfengbojiang(姜凤波)for ngx_module in $DYNAMIC_MODULES 186*3da8d17dSfengbojiang(姜凤波)do 187*3da8d17dSfengbojiang(姜凤波) ngx_module=$ngx_module$ngx_modext 188*3da8d17dSfengbojiang(姜凤波) 189*3da8d17dSfengbojiang(姜凤波) cat << END >> $NGX_MAKEFILE 190*3da8d17dSfengbojiang(姜凤波) 191*3da8d17dSfengbojiang(姜凤波) test ! -f '\$(DESTDIR)$NGX_MODULES_PATH/$ngx_module' \\ 192*3da8d17dSfengbojiang(姜凤波) || mv '\$(DESTDIR)$NGX_MODULES_PATH/$ngx_module' \\ 193*3da8d17dSfengbojiang(姜凤波) '\$(DESTDIR)$NGX_MODULES_PATH/$ngx_module.old' 194*3da8d17dSfengbojiang(姜凤波) cp $NGX_OBJS/$ngx_module '\$(DESTDIR)$NGX_MODULES_PATH/$ngx_module' 195*3da8d17dSfengbojiang(姜凤波)END 196*3da8d17dSfengbojiang(姜凤波) 197*3da8d17dSfengbojiang(姜凤波)done 198*3da8d17dSfengbojiang(姜凤波) 199*3da8d17dSfengbojiang(姜凤波) 200*3da8d17dSfengbojiang(姜凤波)# create Makefile 201*3da8d17dSfengbojiang(姜凤波) 202*3da8d17dSfengbojiang(姜凤波)cat << END >> Makefile 203*3da8d17dSfengbojiang(姜凤波) 204*3da8d17dSfengbojiang(姜凤波)build: 205*3da8d17dSfengbojiang(姜凤波) \$(MAKE) -f $NGX_MAKEFILE 206*3da8d17dSfengbojiang(姜凤波) 207*3da8d17dSfengbojiang(姜凤波)install: 208*3da8d17dSfengbojiang(姜凤波) \$(MAKE) -f $NGX_MAKEFILE install 209*3da8d17dSfengbojiang(姜凤波) 210*3da8d17dSfengbojiang(姜凤波)modules: 211*3da8d17dSfengbojiang(姜凤波) \$(MAKE) -f $NGX_MAKEFILE modules 212*3da8d17dSfengbojiang(姜凤波) 213*3da8d17dSfengbojiang(姜凤波)upgrade: 214*3da8d17dSfengbojiang(姜凤波) $NGX_SBIN_PATH -t 215*3da8d17dSfengbojiang(姜凤波) 216*3da8d17dSfengbojiang(姜凤波) kill -USR2 \`cat $NGX_PID_PATH\` 217*3da8d17dSfengbojiang(姜凤波) sleep 1 218*3da8d17dSfengbojiang(姜凤波) test -f $NGX_PID_PATH.oldbin 219*3da8d17dSfengbojiang(姜凤波) 220*3da8d17dSfengbojiang(姜凤波) kill -QUIT \`cat $NGX_PID_PATH.oldbin\` 221*3da8d17dSfengbojiang(姜凤波)END 222