1
0
mirror of https://git.openwrt.org/feed/packages.git synced 2024-06-13 10:59:13 +02:00
openwrt-packages/libs/libxml2/Makefile
Michael Heimpold 290e23ac61 libxml2: add -dev and -utils packages (closes #8591)
This introduces a libxml2-dev package which contains most stuff
required for developing against libxml2 (on the target), and
the libxml2-utils package which contains the xmllint and xmlcatalog
command line binaries which are provided by libxml2.

Reported-by: Valentín Kivachuk <vk18496@gmail.com>
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
2019-06-13 23:19:24 +02:00

198 lines
4.7 KiB
Makefile

#
# Copyright (C) 2006-2016 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libxml2
PKG_VERSION:=2.9.9
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://xmlsoft.org/sources/
PKG_HASH:=94fb70890143e3c6549f265cee93ec064c80a84c42ad0f23e85ee1fd6540a871
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:xmlsoft:libxml2
PKG_MAINTAINER:=Michael Heimpold <mhei@heimpold.de>
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=0
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
define Package/libxml2
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Gnome XML library
URL:=http://xmlsoft.org/
DEPENDS:=+libpthread +zlib
endef
define Package/libxml2/description
A library for manipulating XML and HTML resources.
endef
define Package/libxml2-dev
SECTION:=devel
CATEGORY:=Development
SUBMENU:=Libraries
TITLE:=Development files for libxml2
URL:=http://xmlsoft.org/
DEPENDS:=+libxml2
endef
define Package/libxml2-dev/description
A library for manipulating XML and HTML resources.
This package contains the headers and xml2-config binary.
endef
define Package/libxml2-utils
SECTION:=utils
CATEGORY:=Utilities
TITLE:=XML command line utilities (xmllint...)
URL:=http://xmlsoft.org/
DEPENDS:=+libxml2
endef
define Package/libxml2-utils/description
This package contains the binaries xmllint and xmlcatalog
from libxml2, a library for manipulating XML and HTML resources.
endef
TARGET_CFLAGS += $(FPIC)
CONFIGURE_ARGS += \
--enable-shared \
--enable-static \
--with-c14n \
--without-catalog \
--with-debug \
--without-docbook \
--with-html \
--without-ftp \
--without-http \
--without-iconv \
--without-iso8859x \
--without-legacy \
--with-output \
--without-pattern \
--without-push \
--without-python \
--with-reader \
--without-readline \
--without-regexps \
--with-sax1 \
--with-schemas \
--with-threads \
--with-tree \
--with-valid \
--with-writer \
--with-xinclude \
--with-xpath \
--with-xptr \
--with-zlib=$(STAGING_DIR)/usr \
--without-lzma
HOST_CONFIGURE_ARGS += \
--enable-shared \
--enable-static \
--with-c14n \
--without-catalog \
--with-debug \
--without-docbook \
--with-html \
--without-ftp \
--without-http \
--without-iconv \
--without-iso8859x \
--without-legacy \
--with-output \
--without-pattern \
--without-push \
--without-python \
--with-reader \
--without-readline \
--without-regexps \
--with-sax1 \
--with-schemas \
--with-threads \
--with-tree \
--with-valid \
--with-writer \
--with-xinclude \
--with-xpath \
--with-xptr \
--with-zlib \
--without-lzma
define Build/InstallDev
$(INSTALL_DIR) $(2)/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/xml2-config $(2)/bin/
$(SED) 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' $(2)/bin/xml2-config
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/libxml2 $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libxml2.{la,a,so*} $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/cmake/libxml2
$(CP) $(PKG_INSTALL_DIR)/usr/lib/cmake/libxml2/libxml2-config.cmake \
$(1)/usr/lib/cmake/libxml2
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libxml-2.0.pc $(1)/usr/lib/pkgconfig/
$(INSTALL_DIR) $(2)/share/aclocal/
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/* $(2)/share/aclocal
endef
define Package/libxml2/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libxml2.so.* $(1)/usr/lib/
endef
define Package/libxml2-dev/install
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/bin/xml2-config $(1)/usr/bin/
$(SED) "s,$(STAGING_DIR),,g" $(1)/usr/bin/xml2-config
$(INSTALL_DIR) $(1)/usr/include/
$(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libxml2.so $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/{cmake,pkgconfig}
$(CP) $(PKG_INSTALL_DIR)/usr/lib/{cmake,pkgconfig} $(1)/usr/lib/
$(SED) "s,$(STAGING_DIR),,g" $(1)/usr/lib/pkgconfig/*.pc
$(INSTALL_DIR) $(1)/usr/share/aclocal
$(CP) $(PKG_INSTALL_DIR)/usr/share/aclocal/* $(1)/usr/share/aclocal
endef
define Package/libxml2-utils/install
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/bin/xmllint $(1)/usr/bin/
$(CP) $(PKG_INSTALL_DIR)/usr/bin/xmlcatalog $(1)/usr/bin/
endef
define Host/Install
$(SED) 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' $(HOST_BUILD_DIR)/xml2-config
$(call Host/Install/Default)
endef
$(eval $(call HostBuild))
$(eval $(call BuildPackage,libxml2))
$(eval $(call BuildPackage,libxml2-dev))
$(eval $(call BuildPackage,libxml2-utils))