-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.sh
38 lines (30 loc) · 1.02 KB
/
build.sh
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
#!/bin/sh
workspace_dir=$1
output_dir=$2
cache_dir=$3
nginx_tarball="nginx-$VERSION.tar.gz"
ngx_mruby_dir="ngx_mruby"
ngx_mruby_version=$(grep -oP '(?<=MODULE_VERSION ")(\d+\.\d+\.\d+)(?=")' $cache_dir/$ngx_mruby_dir/src/http/ngx_http_mruby_module.h | tr -d '\n')
cd $cache_dir
if [ ! -f $nginx_tarball ]; then
echo "Downloading $nginx_tarball"
curl -s -O -L "http://nginx.org/download/nginx-$VERSION.tar.gz"
fi
cd $workspace_dir
tar zxf $cache_dir/$nginx_tarball
cp -rf $cache_dir/$ngx_mruby_dir .
nginx_src="$workspace_dir/nginx-$VERSION"
ngx_mruby_src="$workspace_dir/$ngx_mruby_dir"
pushd $ngx_mruby_dir
./configure --with-ngx-src-root=$nginx_src
make build_mruby
make generate_gems_config
popd
cd $nginx_src
./configure --prefix=$workspace_dir/build --with-http_ssl_module --with-debug --add-module=$ngx_mruby_src --add-module=$ngx_mruby_src/dependence/ngx_devel_kit
make
make install
cd $workspace_dir/build/sbin
strip nginx
mkdir -p $output_dir
tar ckzf $output_dir/nginx-$VERSION-ngx_mruby-$ngx_mruby_version.tgz nginx