Opened 7 years ago

Closed 7 years ago

#343 closed defect (fixed)

Ubuntu/Debian packages are compiled without SPDY support due to extra hyphen

Reported by: Avishai Ish-Shalom Owned by:
Priority: minor Milestone:
Component: nginx-package Version: 1.3.x
Keywords: spdy ubuntu debian Cc:
uname -a:
nginx -V: nginx version: nginx/1.4.0
built by gcc 4.7.2 (Ubuntu/Linaro 4.7.2-2ubuntu1)
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-http_ssl_module --with-http_realip_module --with-http_addition_module --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_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-mail --with-mail_ssl_module --with-file-aio --with-http_spdy_module --with-ipv6

Description

in debian/rules check for SDPY build-deps doesn't actually work due to extra hyphen:

WITH_SPDY := $(shell echo -e "Source: nginx\nBuild-Depends: libssl-dev (>= 1.0.1)\n" | \
        dpkg-checkbuilddeps - >/dev/null 2>&1 && \
        echo "--with-http_spdy_module")

should be:

WITH_SPDY := $(shell echo -e "Source: nginx\nBuild-Depends: libssl-dev (>= 1.0.1)\n" | \
        dpkg-checkbuilddeps >/dev/null 2>&1 && \
        echo "--with-http_spdy_module")

Change History (1)

comment:1 by Sergey Budnevitch, 7 years ago

Resolution: fixed
Status: newclosed

No, hyphen is necessary, since I want dpkg-checkbuilddeps to read control file from stdin. Without hyphen it will read debian/control file with more general dependencies, and this result in build failure, if openssl version is less than 1.0.1.
The problem with openssl version detection here is the non-portability of 'echo -e', and this non-portability is triggered when /bin/sh is a symlink to dash. Fix is to replace "echo -e" with printf.

Note: See TracTickets for help on using tickets.