![Gwenhael Goavec-Merou](/assets/img/avatar_default.png)
By default, qwt build a shared library, but when BR2_STATIC_LIBS is set compilation failed with errors like : __uClibc_main.c:(.text+0x164): undefined reference to `__fini_array_end' __uClibc_main.c:(.text+0x168): undefined reference to `__fini_array_start' __uClibc_main.c:(.text+0x16c): undefined reference to `__fini_array_start' This patch disable QwtDll to build a static library when BR2_STATIC_LIBS=y. fix: http://autobuild.buildroot.net/results/739/739406bb8073d1861933872a47802954d9767634/ Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
74 lines
2.2 KiB
Makefile
74 lines
2.2 KiB
Makefile
################################################################################
|
|
#
|
|
# qwt
|
|
#
|
|
################################################################################
|
|
|
|
QWT_VERSION = 6.1.3
|
|
QWT_SOURCE = qwt-$(QWT_VERSION).tar.bz2
|
|
QWT_SITE = http://downloads.sourceforge.net/project/qwt/qwt/$(QWT_VERSION)
|
|
QWT_INSTALL_STAGING = YES
|
|
ifeq ($(BR2_PACKAGE_QT),y)
|
|
QWT_DEPENDENCIES = qt
|
|
QWT_QMAKE = $(QT_QMAKE)
|
|
else ifeq ($(BR2_PACKAGE_QT5),y)
|
|
QWT_DEPENDENCIES += qt5base
|
|
QWT_QMAKE = $(QT5_QMAKE)
|
|
endif
|
|
|
|
QWT_LICENSE = LGPL-2.1 with exceptions
|
|
QWT_LICENSE_FILES = COPYING
|
|
|
|
QWT_CONFIG = 's%QWT_INSTALL_PREFIX.*/usr/local/.*%QWT_INSTALL_PREFIX = /usr%'
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtDesigner.*$$/\# QWT_CONFIG += QwtDesigner/'
|
|
QWT_CONFIG += -e 's%/features%/mkspecs/features%'
|
|
|
|
ifeq ($(BR2_PACKAGE_QWT_SVG),y)
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtSvg.*$$/QWT_CONFIG += QwtSvg/'
|
|
else
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtSvg.*$$/\# QWT_CONFIG += QwtSvg/'
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QWT_MATHML),y)
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtMathML.*$$/QWT_CONFIG += QwtMathML/'
|
|
else
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtMathML.*$$/\# QWT_CONFIG += QwtMathML/'
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_QWT_OPENGL),y)
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtOpenGL.*$$/QWT_CONFIG += QwtOpenGL/'
|
|
else
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtOpenGL.*$$/\# QWT_CONFIG += QwtOpenGL/'
|
|
endif
|
|
|
|
ifeq ($(BR2_STATIC_LIBS),y)
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtDll.*$$/\# QWT_CONFIG += QwtDll/'
|
|
else
|
|
QWT_CONFIG += -e 's/^.*QWT_CONFIG.*QwtDll.*$$/QWT_CONFIG += QwtDll/'
|
|
endif
|
|
|
|
define QWT_CONFIGURE_CMDS
|
|
$(SED) $(QWT_CONFIG) $(@D)/qwtconfig.pri
|
|
(cd $(@D); $(TARGET_MAKE_ENV) $(QWT_QMAKE))
|
|
endef
|
|
|
|
define QWT_BUILD_CMDS
|
|
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
|
|
endef
|
|
|
|
# After installation, we fixup the INSTALL_PREFIX in qwtconfig.pri so
|
|
# that when building with qmake, -L$(STAGING_DIR)/usr/lib is used and
|
|
# not -L/usr/lib.
|
|
define QWT_INSTALL_STAGING_CMDS
|
|
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install INSTALL_ROOT=$(STAGING_DIR)
|
|
$(SED) "s%QWT_INSTALL_PREFIX = .*%QWT_INSTALL_PREFIX = $(STAGING_DIR)/usr%" \
|
|
$(STAGING_DIR)/usr/mkspecs/features/qwtconfig.pri
|
|
endef
|
|
|
|
define QWT_INSTALL_TARGET_CMDS
|
|
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) install INSTALL_ROOT=$(TARGET_DIR)
|
|
rm -Rf $(TARGET_DIR)/usr/mkspecs
|
|
endef
|
|
|
|
$(eval $(generic-package))
|