Force the build of libcurl instead of using system one.

On ubuntu, the libcurl package is compiled with libkrb (kerberos).
However, no libkrb5.a is provided and so, we cannot link statically.

As we are not using kerberos, we can (and must) compile ourselves libcurl.
This commit is contained in:
Matthieu Gautier 2018-10-31 15:33:12 +01:00
parent 5a97ec28ca
commit 0600be96ac
4 changed files with 9 additions and 12 deletions

View File

@ -92,7 +92,6 @@ matrix:
- zlib1g-dev - zlib1g-dev
- uuid-dev - uuid-dev
- libctpp2-dev - libctpp2-dev
- libcurl4-openssl-dev
- env: PLATFORM="win32_dyn" - env: PLATFORM="win32_dyn"
addons: &win32_addons addons: &win32_addons
apt: apt:
@ -115,7 +114,6 @@ matrix:
- g++-multilib - g++-multilib
- libc6-dev:i386 - libc6-dev:i386
- libstdc++-6-dev:i386 - libstdc++-6-dev:i386
- libcurl4-openssl-dev:i386
- env: PLATFORM="i586_static" - env: PLATFORM="i586_static"
addons: *i586_addons addons: *i586_addons
- env: PLATFORM="android" - env: PLATFORM="android"

View File

@ -18,4 +18,12 @@ class LibCurl(Dependency):
'ef6e55192d04713673b4409ccbcb4cb6cd723137d6e10ca45b0c593a454e1720', 'ef6e55192d04713673b4409ccbcb4cb6cd723137d6e10ca45b0c593a454e1720',
'https://curl.haxx.se/download/curl-7.61.0.tar.xz') 'https://curl.haxx.se/download/curl-7.61.0.tar.xz')
Builder = MakeBuilder class Builder(MakeBuilder):
dependencies = ['zlib']
configure_option = " ".join(
["--without-{}".format(p)
for p in ('libssh2', 'ssl', 'libmetalink', 'librtmp')] +
["--disable-{}".format(p)
for p in ('ftp', 'file', 'ldap', 'ldaps', 'rtsp', 'dict',
'telnet', 'tftp', 'pop3', 'imap', 'smb', 'smtp',
'gopher', 'manual')])

View File

@ -16,7 +16,6 @@ PACKAGE_NAME_MAPPERS = {
'zimlib': None, 'zimlib': None,
'file' : ['file-devel'], 'file' : ['file-devel'],
'gumbo' : ['gumbo-parser-devel'], 'gumbo' : ['gumbo-parser-devel'],
'libcurl' : ['libcurl-devel'],
}, },
'fedora_native_static': { 'fedora_native_static': {
'COMMON': _fedora_common + ['glibc-static', 'libstdc++-static'], 'COMMON': _fedora_common + ['glibc-static', 'libstdc++-static'],
@ -26,7 +25,6 @@ PACKAGE_NAME_MAPPERS = {
}, },
'fedora_i586_dyn': { 'fedora_i586_dyn': {
'COMMON': _fedora_common + ['glibc-devel.i686', 'libstdc++-devel.i686'], 'COMMON': _fedora_common + ['glibc-devel.i686', 'libstdc++-devel.i686'],
'libcurl': ['libcurl-devel.i686'],
}, },
'fedora_i586_static': { 'fedora_i586_static': {
'COMMON': _fedora_common + ['glibc-devel.i686'], 'COMMON': _fedora_common + ['glibc-devel.i686'],
@ -36,7 +34,6 @@ PACKAGE_NAME_MAPPERS = {
'zlib': ['mingw32-zlib'], 'zlib': ['mingw32-zlib'],
'lzma': ['mingw32-xz-libs'], 'lzma': ['mingw32-xz-libs'],
'libmicrohttpd': ['mingw32-libmicrohttpd'], 'libmicrohttpd': ['mingw32-libmicrohttpd'],
'libcurl': ['mingw32-curl'],
}, },
'fedora_win32_static': { 'fedora_win32_static': {
'COMMON': _fedora_common + ['mingw32-gcc-c++', 'mingw32-bzip2-static', 'mingw32-win-iconv-static', 'mingw32-winpthreads-static', 'wine'], 'COMMON': _fedora_common + ['mingw32-gcc-c++', 'mingw32-bzip2-static', 'mingw32-win-iconv-static', 'mingw32-winpthreads-static', 'wine'],
@ -44,7 +41,6 @@ PACKAGE_NAME_MAPPERS = {
'lzma': ['mingw32-xz-libs-static'], 'lzma': ['mingw32-xz-libs-static'],
'libmicrohttpd': None, # ['mingw32-libmicrohttpd-static'] packaging dependecy seems buggy, and some static lib are name libfoo.dll.a and 'libmicrohttpd': None, # ['mingw32-libmicrohttpd-static'] packaging dependecy seems buggy, and some static lib are name libfoo.dll.a and
# gcc cannot found them. # gcc cannot found them.
'libcurl': ['mingw32-curl-static'],
}, },
'fedora_armhf_static': { 'fedora_armhf_static': {
'COMMON': _fedora_common 'COMMON': _fedora_common
@ -64,7 +60,6 @@ PACKAGE_NAME_MAPPERS = {
'libmicrohttpd': ['libmicrohttpd-dev', 'ccache'], 'libmicrohttpd': ['libmicrohttpd-dev', 'ccache'],
'qt' : ['libqt5gui5', 'qtbase5-dev', 'qt5-default'], 'qt' : ['libqt5gui5', 'qtbase5-dev', 'qt5-default'],
'qtwebengine' : ['qtwebengine5-dev'], 'qtwebengine' : ['qtwebengine5-dev'],
'libcurl': ['libcurl4-openssl-dev'],
}, },
'debian_native_static': { 'debian_native_static': {
'COMMON': _debian_common + ['libbz2-dev', 'libmagic-dev'], 'COMMON': _debian_common + ['libbz2-dev', 'libmagic-dev'],
@ -72,15 +67,12 @@ PACKAGE_NAME_MAPPERS = {
'uuid': ['uuid-dev'], 'uuid': ['uuid-dev'],
'ctpp2': ['libctpp2-dev'], 'ctpp2': ['libctpp2-dev'],
'ctpp2c': ['ctpp2-utils'], 'ctpp2c': ['ctpp2-utils'],
'libcurl': ['libcurl4-openssl-dev'],
}, },
'debian_i586_dyn': { 'debian_i586_dyn': {
'COMMON': _debian_common + ['libc6-dev:i386', 'libstdc++-6-dev:i386', 'gcc-multilib', 'g++-multilib'], 'COMMON': _debian_common + ['libc6-dev:i386', 'libstdc++-6-dev:i386', 'gcc-multilib', 'g++-multilib'],
'libcurl': ['libcurl4-openssl-dev:i386'],
}, },
'debian_i586_static': { 'debian_i586_static': {
'COMMON': _debian_common + ['libc6-dev:i386', 'libstdc++-6-dev:i386', 'gcc-multilib', 'g++-multilib'], 'COMMON': _debian_common + ['libc6-dev:i386', 'libstdc++-6-dev:i386', 'gcc-multilib', 'g++-multilib'],
'libcurl': ['libcurl4-openssl-dev:i386'],
}, },
'debian_win32_dyn': { 'debian_win32_dyn': {
'COMMON': _debian_common + ['g++-mingw-w64-i686', 'gcc-mingw-w64-i686', 'gcc-mingw-w64-base', 'mingw-w64-tools'], 'COMMON': _debian_common + ['g++-mingw-w64-i686', 'gcc-mingw-w64-i686', 'gcc-mingw-w64-base', 'mingw-w64-tools'],

View File

@ -33,7 +33,6 @@ RUN \
ctpp2-utils \ ctpp2-utils \
libctpp2-dev \ libctpp2-dev \
libmicrohttpd-dev \ libmicrohttpd-dev \
libcurl4-openssl-dev \
# Qt packages # Qt packages
libqt5gui5 \ libqt5gui5 \
qtbase5-dev \ qtbase5-dev \