kumquat-buildroot/package/sconeserver/sconeserver.mk
Yann E. MORIN 5f08ba100e package/sconeserver: fix static link with openssl
When linking statically, the order of libraries on the linker command
line is important, and sconeserver got it wrong.

Also, sconeserver does not use pkg-config, so it misses the private
libs of -lcrypto, which is linking with -lz.

Fix that:
  - add a patch to configure.in to fix the order of libraries;
  - forcibly pass -lz when linking statically with openssl.

Note: we were already reconfiguring sconeserver, because it comes from
the github repository.

Fixes:
    http://autobuild.buildroot.org/results/403/403eac974ecdaacdb66b8241fbdcf19ec5e07480

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-05-31 10:36:35 +02:00

114 lines
3.0 KiB
Makefile

################################################################################
#
# sconeserver
#
################################################################################
# Release 0.6.0 doesn't build cleanly, so use a recent
# Git commit.
SCONESERVER_VERSION = 3b886c3dda6eda39bcb27472d29ed7fd3185ba1d
SCONESERVER_SITE = $(call github,sconemad,sconeserver,$(SCONESERVER_VERSION))
SCONESERVER_LICENSE = GPLv2+
SCONESERVER_LICENSE_FILES = COPYING
SCONESERVER_AUTORECONF = YES
SCONESERVER_DEPENDENCIES += pcre
SCONESERVER_CONF_OPTS += --with-ip --with-local --with-ip6
# Sconeserver configure script fails to find the libxml2 headers.
ifeq ($(BR2_PACKAGE_LIBXML2),y)
SCONESERVER_CONF_OPTS += \
--with-xml2-config="$(STAGING_DIR)/usr/bin/xml2-config"
endif
ifeq ($(BR2_PACKAGE_OPENSSL),y)
SCONESERVER_DEPENDENCIES += openssl
SCONESERVER_CONF_OPTS += --with-ssl
ifeq ($(BR2_STATIC_LIBS),y)
SCONESERVER_CONF_ENV += SSL_LIBADD=-lz
endif
else
SCONESERVER_CONF_OPTS += --without-ssl
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_EXAMPLES),y)
SCONESERVER_CONF_OPTS += --with-examples
else
SCONESERVER_CONF_OPTS += --without-examples
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE),y)
SCONESERVER_DEPENDENCIES += libxml2
SCONESERVER_CONF_OPTS += --with-sconesite
else
SCONESERVER_CONF_OPTS += --without-sconesite
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_HTTP_SCONESITE_IMAGE),y)
SCONESERVER_DEPENDENCIES += imagemagick host-pkgconf
SCONESERVER_CONF_OPTS += \
--with-sconesite-image \
--with-Magick++-config="$(STAGING_DIR)/usr/bin/Magick++-config"
else
SCONESERVER_CONF_OPTS += --without-sconesite-image
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_MYSQL),y)
SCONESERVER_DEPENDENCIES += mysql
SCONESERVER_CONF_OPTS += \
--with-mysql \
--with-mysql_config="$(STAGING_DIR)/usr/bin/mysql_config" \
LDFLAGS="$(TARGET_LDFLAGS) -L$(STAGING_DIR)/usr/lib/mysql"
else
SCONESERVER_CONF_OPTS += --without-mysql
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_BLUETOOTH),y)
SCONESERVER_DEPENDENCIES += bluez_utils
SCONESERVER_CONF_OPTS += --with-bluetooth
else
SCONESERVER_CONF_OPTS += --without-bluetooth
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_RSS),y)
SCONESERVER_DEPENDENCIES += libxml2
SCONESERVER_CONF_OPTS += --with-rss
else
SCONESERVER_CONF_OPTS += --without-rss
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_LOCATION),y)
SCONESERVER_DEPENDENCIES += gpsd
SCONESERVER_CONF_OPTS += --with-location
else
SCONESERVER_CONF_OPTS += --without-location
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_LETTUCE),y)
SCONESERVER_CONF_OPTS += --with-lettuce
else
SCONESERVER_CONF_OPTS += --without-lettuce
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_MATHS),y)
SCONESERVER_DEPENDENCIES += mpfr
SCONESERVER_CONF_OPTS += --with-maths
else
SCONESERVER_CONF_OPTS += --without-maths
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_TESTBUILDER),y)
SCONESERVER_CONF_OPTS += --with-testbuilder
else
SCONESERVER_CONF_OPTS += --without-testbuilder
endif
ifeq ($(BR2_PACKAGE_SCONESERVER_UI),y)
SCONESERVER_DEPENDENCIES += xlib_libX11
SCONESERVER_CONF_OPTS += --with-ui
else
SCONESERVER_CONF_OPTS += --without-ui
endif
$(eval $(autotools-package))