148 lines
4.6 KiB
PHP
148 lines
4.6 KiB
PHP
|
SUMMARY = "HTTP and reverse proxy server"
|
||
|
|
||
|
DESCRIPTION = "Nginx is a web server and a reverse proxy server for \
|
||
|
HTTP, SMTP, POP3 and IMAP protocols, with a strong focus on high \
|
||
|
concurrency, performance and low memory usage."
|
||
|
|
||
|
HOMEPAGE = "http://nginx.org/"
|
||
|
LICENSE = "BSD-2-Clause"
|
||
|
|
||
|
SECTION = "net"
|
||
|
|
||
|
DEPENDS = "libpcre gzip openssl"
|
||
|
|
||
|
SRC_URI = " \
|
||
|
http://nginx.org/download/nginx-${PV}.tar.gz \
|
||
|
file://nginx-cross.patch \
|
||
|
file://nginx.conf \
|
||
|
file://nginx.init \
|
||
|
file://nginx-volatile.conf \
|
||
|
file://nginx.service \
|
||
|
"
|
||
|
|
||
|
inherit update-rc.d useradd
|
||
|
|
||
|
CFLAGS_append = " -fPIE -pie"
|
||
|
CXXFLAGS_append = " -fPIE -pie"
|
||
|
|
||
|
NGINX_WWWDIR ?= "${localstatedir}/www/localhost"
|
||
|
NGINX_USER ?= "www"
|
||
|
|
||
|
EXTRA_OECONF = ""
|
||
|
DISABLE_STATIC = ""
|
||
|
|
||
|
PACKAGECONFIG[http2] = "--with-http_v2_module,,"
|
||
|
|
||
|
do_configure () {
|
||
|
if [ "${SITEINFO_BITS}" = "64" ]; then
|
||
|
PTRSIZE=8
|
||
|
else
|
||
|
PTRSIZE=4
|
||
|
fi
|
||
|
|
||
|
echo $CFLAGS
|
||
|
echo $LDFLAGS
|
||
|
|
||
|
# Add the LDFLAGS to the main nginx link to avoid issues with missing GNU_HASH
|
||
|
echo "MAIN_LINK=\"\${MAIN_LINK} ${LDFLAGS}\"" >> auto/cc/conf
|
||
|
|
||
|
./configure \
|
||
|
--crossbuild=Linux:${TUNE_ARCH} \
|
||
|
--with-endian=${@base_conditional('SITEINFO_ENDIANNESS', 'le', 'little', 'big', d)} \
|
||
|
--with-int=4 \
|
||
|
--with-long=${PTRSIZE} \
|
||
|
--with-long-long=8 \
|
||
|
--with-ptr-size=${PTRSIZE} \
|
||
|
--with-sig-atomic-t=${PTRSIZE} \
|
||
|
--with-size-t=${PTRSIZE} \
|
||
|
--with-off-t=${PTRSIZE} \
|
||
|
--with-time-t=${PTRSIZE} \
|
||
|
--with-sys-nerr=132 \
|
||
|
--conf-path=${sysconfdir}/nginx/nginx.conf \
|
||
|
--http-log-path=${localstatedir}/log/nginx/access.log \
|
||
|
--error-log-path=${localstatedir}/log/nginx/error.log \
|
||
|
--pid-path=/run/nginx/nginx.pid \
|
||
|
--prefix=${prefix} \
|
||
|
--with-http_ssl_module \
|
||
|
--with-http_gzip_static_module \
|
||
|
${EXTRA_OECONF}
|
||
|
}
|
||
|
|
||
|
do_install () {
|
||
|
oe_runmake 'DESTDIR=${D}' install
|
||
|
rm -fr ${D}${localstatedir}/run ${D}/run
|
||
|
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
|
||
|
install -d ${D}${sysconfdir}/tmpfiles.d
|
||
|
echo "d /run/${BPN} - - - -" \
|
||
|
> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
|
||
|
echo "d /${localstatedir}/log/${BPN} 0755 root root -" \
|
||
|
>> ${D}${sysconfdir}/tmpfiles.d/${BPN}.conf
|
||
|
fi
|
||
|
install -d ${D}${sysconfdir}/${BPN}
|
||
|
ln -snf ${localstatedir}/run/${BPN} ${D}${sysconfdir}/${BPN}/run
|
||
|
install -d ${D}${NGINX_WWWDIR}
|
||
|
mv ${D}/usr/html ${D}${NGINX_WWWDIR}/
|
||
|
chown ${NGINX_USER}:www-data -R ${D}${NGINX_WWWDIR}
|
||
|
|
||
|
install -d ${D}${sysconfdir}/init.d
|
||
|
install -m 0755 ${WORKDIR}/nginx.init ${D}${sysconfdir}/init.d/nginx
|
||
|
sed -i 's,/usr/sbin/,${sbindir}/,g' ${D}${sysconfdir}/init.d/nginx
|
||
|
sed -i 's,/etc/,${sysconfdir}/,g' ${D}${sysconfdir}/init.d/nginx
|
||
|
|
||
|
install -d ${D}${sysconfdir}/nginx
|
||
|
install -m 0644 ${WORKDIR}/nginx.conf ${D}${sysconfdir}/nginx/nginx.conf
|
||
|
sed -i 's,/var/,${localstatedir}/,g' ${D}${sysconfdir}/nginx/nginx.conf
|
||
|
sed -i 's/^user.*/user ${NGINX_USER};/g' ${D}${sysconfdir}/nginx/nginx.conf
|
||
|
install -d ${D}${sysconfdir}/nginx/sites-enabled
|
||
|
|
||
|
install -d ${D}${sysconfdir}/default/volatiles
|
||
|
install -m 0644 ${WORKDIR}/nginx-volatile.conf ${D}${sysconfdir}/default/volatiles/99_nginx
|
||
|
sed -i 's,/var/,${localstatedir}/,g' ${D}${sysconfdir}/default/volatiles/99_nginx
|
||
|
|
||
|
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)};then
|
||
|
install -d ${D}${systemd_unitdir}/system
|
||
|
install -m 0644 ${WORKDIR}/nginx.service ${D}${systemd_unitdir}/system/
|
||
|
sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' \
|
||
|
-e 's,@LOCALSTATEDIR@,${localstatedir},g' \
|
||
|
-e 's,@SBINDIR@,${sbindir},g' \
|
||
|
${D}${systemd_unitdir}/system/nginx.service
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
pkg_postinst_${PN} () {
|
||
|
if [ -z "$D" ]; then
|
||
|
if type systemd-tmpfiles >/dev/null; then
|
||
|
systemd-tmpfiles --create
|
||
|
elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then
|
||
|
${sysconfdir}/init.d/populate-volatile.sh update
|
||
|
fi
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
FILES_${PN} += " \
|
||
|
${localstatedir}/ \
|
||
|
${systemd_unitdir}/system/nginx.service \
|
||
|
"
|
||
|
|
||
|
CONFFILES_${PN} = " \
|
||
|
${sysconfdir}/nginx/nginx.conf \
|
||
|
${sysconfdir}/nginx/fastcgi.conf \
|
||
|
${sysconfdir}/nginx/fastcgi_params \
|
||
|
${sysconfdir}/nginx/koi-utf \
|
||
|
${sysconfdir}/nginx/koi-win \
|
||
|
${sysconfdir}/nginx/mime.types \
|
||
|
${sysconfdir}/nginx/scgi_params \
|
||
|
${sysconfdir}/nginx/uwsgi_params \
|
||
|
${sysconfdir}/nginx/win-utf \
|
||
|
"
|
||
|
|
||
|
INITSCRIPT_NAME = "nginx"
|
||
|
INITSCRIPT_PARAMS = "defaults 92 20"
|
||
|
|
||
|
USERADD_PACKAGES = "${PN}"
|
||
|
USERADD_PARAM_${PN} = " \
|
||
|
--system --no-create-home \
|
||
|
--home ${NGINX_WWWDIR} \
|
||
|
--groups www-data \
|
||
|
--user-group ${NGINX_USER}"
|