Re: [ITA] nginx
Brian Inglis via Cygwin-apps <[email protected]> Thu, 26 Feb 2026 11:23:10 -0700
| Newsgroups | gmane.os.cygwin.applications |
|---|---|
| Organization | Systematic Software |
| Message-ID | <[email protected]> |
Please attach the cygport so we can be sure it is all there and read it without
any MUA artifacts!
On 2026-02-26 03:28, xumouren225588--- via Cygwin-apps wrote:
> I edited the nginx.cygport, and then run these command:
> cygport nginx.cygport download
> cygport nginx.cygport all
>
>>>> Checking packages for unexpected, missing or duplicate files
> *** Warning: Packages are missing files:
> -usr/lib/perl5/vendor_perl/5.40/x86_64-cygwin-threads/auto/nginx/nginx.dll
> -usr/lib/perl5/vendor_perl/5.40/x86_64-cygwin-threads/nginx.pm
> *** ERROR: Packages are missing files:
Normal build run is `cygport nginx get all check`
> This is my nginx.cygport:
> NAME="nginx"
> VERSION=1.28.2
> RELEASE=1
You need to add back *here*:
inherit perl
as it can set variables already defined below, as it assumes you *ONLY* want to
build a perl CPAN module, which is not all this package does;
it also sets the PERL_{{,ARCH,SITE,VENDOR}LIB,VENDORARCH} and other variables
which you need;
that avoids the later *missing packages* messages.
You also need to provide access to the contents of the package dist directory by
uploading to a public file sharing site, as previously stated:
nginx-1.28.2-1.x86_64/dist/nginx/...
.../nginx-1.28.2-1-src.tar.xz
.../nginx-1.28.2-1-src.hint
.../nginx-1.28.2-1-x86_64.tar.xz
.../nginx-1.28.2-1-x86_64.hint
.../nginx-mod_http_image_filter/nginx-mod_http_image_filter-1.28.2-1-x86_64.tar.xz
.../nginx-mod_http_image_filter/nginx-mod_http_image_filter-1.28.2-1-x86_64.hint
.../nginx-mod_http_perl/nginx-mod_http_perl-1.28.2-1-x86_64.tar.xz
.../nginx-mod_http_perl/nginx-mod_http_perl-1.28.2-1-x86_64.hint
.../nginx-mod_http_xslt_filter/nginx-mod_http_xslt_filter-1.28.2-1-x86_64.tar.xz
.../nginx-mod_http_xslt_filter/nginx-mod_http_xslt_filter-1.28.2-1-x86_64.hint
.../nginx-mod_mail/nginx-mod_mail-1.28.2-1-x86_64.tar.xz
.../nginx-mod_mail/nginx-mod_mail-1.28.2-1-x86_64.hint
.../nginx-mod_stream/nginx-mod_stream-1.28.2-1-x86_64.tar.xz
.../nginx-mod_stream/nginx-mod_stream-1.28.2-1-x86_64.hint
the same as cygport nginx upload but to a site where you have upload access!
> CATEGORY="Web"
> SUMMARY="Web and mail proxy server"
> DESCRIPTION="nginx [engine x] is an HTTP and reverse proxy server, a mail proxy
> server, and a generic TCP/UDP proxy server."
> HOMEPAGE="https://nginx.org/"
> LICENSE="BSD-2-Clause"
>
> SRC_URI="http://nginx.org/download/${NAME}-${VERSION}.tar.gz"
> SRC_URI+=" nginx.init"
> PATCH_URI="
> 1.10.0-auto-os-cygwin.patch
> 1.10.0-conf-modules.patch
> 1.12.1-module-deps.patch
> 1.10.0-perl.patch
> "
> BUILD_REQUIRES="libcrypt-devel libgd-devel libpcre2-devel libssl-devel libxslt-devel perl zlib-devel"
>
> PKG_NAMES="nginx"
> nginx_OBSOLETES="nginx-mod_http_geoip nginx-mod_stream_geoip" # GeoIP Legacy
> nginx_CONTENTS="
> etc/defaults/etc/nginx/
> etc/p*/*
> etc/rc.d/init.d/nginx
> usr/sbin/nginx.exe
> usr/share/doc/${NAME}
> usr/share/man/
> usr/share/nginx/html/
> var/lib/nginx/tmp
> var/log/nginx
> "
>
> modules=(http_image_filter http_perl http_xslt_filter mail stream)
> for mod in ${modules[*]}
> do
> PKG_NAMES+=" nginx-mod_${mod}"
> declare nginx_mod_${mod}_CONTENTS="
> usr/lib/nginx/modules/ngx_${mod}_module.so
> usr/share/nginx/modules/mod_${mod}.conf
> "
> done
> nginx_mod_http_perl_CONTENTS+=" ${PERL_VENDORARCH#/}"
>
> DEPS_PATH="/usr/sbin:/usr/lib/nginx/modules"
>
> src_compile() {
> lndirs
> cd ${B}
> ./configure \
> --prefix=/usr/share/nginx \
> --sbin-path=/usr/sbin/nginx.exe \
> --modules-path=/usr/lib/nginx/modules \
> --conf-path=/etc/nginx/nginx.conf \
> --lock-path=/var/run/nginx.lock \
> --pid-path=/var/run/nginx.pid \
> --error-log-path=/var/log/nginx/error.log \
> --http-log-path=/var/log/nginx/access.log \
> --http-client-body-temp-path=/var/lib/nginx/tmp/client_body \
> --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi \
> --http-proxy-temp-path=/var/lib/nginx/tmp/proxy \
> --http-scgi-temp-path=/var/lib/nginx/tmp/scgi \
> --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi \
> --with-http_ssl_module \
> --with-http_v2_module \
> --with-http_realip_module \
> --with-http_addition_module \
> --with-http_xslt_module=dynamic \
> --with-http_image_filter_module=dynamic \
> --with-http_sub_module \
> --with-http_dav_module \
> --with-http_flv_module \
> --with-http_mp4_module \
> --with-http_gunzip_module \
> --with-http_gzip_static_module \
> --with-http_auth_request_module \
> --with-http_random_index_module \
> --with-http_secure_link_module \
> --with-http_degradation_module \
> --with-http_slice_module \
> --with-http_stub_status_module \
> --with-http_perl_module=dynamic \
> --with-mail=dynamic \
> --with-mail_ssl_module \
> --with-pcre \
> --with-pcre-jit \
> --with-stream=dynamic \
> --with-stream_realip_module \
> --with-stream_ssl_module \
> --with-stream_ssl_preread_module \
> --with-ipv6 \
> --with-cc-opt="-DFD_SETSIZE=2048 -D_GNU_SOURCE"
>
> cygmake -f objs/Makefile binary
> cygmake -f objs/Makefile
> cygmake -f objs/Makefile objs/src/http/modules/perl/blib/arch/auto/nginx/nginx.dll
> }
>
> src_install() {
> cd ${B}
> cyginstall
> doman objs/nginx.8
>
> rm ${D}/etc/nginx/*.default
> make_etc_defaults /etc/nginx
>
> exeinto /etc/rc.d/init.d
> newexe ${S}/nginx.init nginx
>
> dodir /usr/share/nginx/modules
> for mod in ${modules[*]}
> do
> echo "load_module \"/usr/lib/nginx/modules/ngx_${mod}_module.so\";" \
> > ${D}/usr/share/nginx/modules/mod_${mod}.conf
> done
> }
>
> src_test() {
> :
> }
>
> KEEPDIRS="/var/lib/nginx/tmp /var/log/nginx"
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retrancher but when there is no more to cut
-- Antoine de Saint-Exupéry