diff --git a/dev-libs/libxml2/libxml2-2.8.0.recipe b/dev-libs/libxml2/libxml2-2.8.0.recipe index f4a143cd6..8acd7b29c 100644 --- a/dev-libs/libxml2/libxml2-2.8.0.recipe +++ b/dev-libs/libxml2/libxml2-2.8.0.recipe @@ -1,38 +1,126 @@ -DESCRIPTION="libxml2 - Version 2 of the library to manipulate XML files" +SUMMARY="The XML C parser and toolkit of Gnome" HOMEPAGE="http://www.xmlsoft.org/" +LICENSE="MIT" +COPYRIGHT="1998-2003 Daniel Veillard. All Rights Reserved." SRC_URI="ftp://xmlsoft.org/libxml2/libxml2-2.8.0.tar.gz" CHECKSUM_MD5="c62106f02ee00b6437f0fb9d370c1093" REVISION="1" -STATUS_HAIKU="stable" -DEPEND="" +ARCHITECTURES="x86_gcc2 ?x86" + +PATCHES="libxml2-2.8.0.patch" + +PROVIDES=" + libxml2 = $portVersion compat >= 2 + cmd:xml2_config = $portVersion compat >= 2 + cmd:xmlcatalog = $portVersion compat >= 2 + cmd:xmllint = $portVersion compat >= 2 + lib:libxml2 = $portVersion compat >= 2 + " +REQUIRES=" + haiku >= $haikuVersion + zlib + " +BUILD_REQUIRES=" + $REQUIRES + cmd:aclocal + cmd:autoconf + cmd:automake + cmd:gcc + cmd:ld + cmd:libtoolize + cmd:make + " +BUILD_PREREQUIRES=" + haiku_devel >= $haikuVersion + " + +SOURCE_DIR="$portVersionedName" + +PATCH() +{ + # replace hard-coded references to the development documentation dir + sed -i "s,^DEVHELP_DIR=\(.*\),DEVHELP_DIR=${developDocDir}," \ + doc/devhelp/Makefile.am + sed -i "s,%{_datadir}/gtk-doc/html/libxml2,${developDocDir},g" \ + libxml.spec.in +} + BUILD() { - cd libxml2-2.8.0 libtoolize --force --copy --install aclocal autoconf - sed -i 's/$(datadir)\/aclocal/`finddir B_COMMON_DATA_DIRECTORY`\/aclocal/g' M* automake - COMMON_DOCS=`finddir B_COMMON_DOCUMENTATION_DIRECTORY` - ./configure --prefix=`finddir B_COMMON_DIRECTORY` \ - --datarootdir=$COMMON_DOCS \ - --docdir=$COMMON_DOCS/doc \ - --mandir=$COMMON_DOCS/man - LDFLAGS="-lnetwork" - make + runConfigure ./configure LDFLAGS="-lnetwork" \ + --with-html-dir=$docDir/html \ + --with-html-subdir="" } INSTALL() { - cd libxml2-2.8.0 make install + + # prepare develop/lib + prepareInstalledDevelLibs libxml2 + fixPkgconfig + mv $libDir/xml2Conf.sh $developLibDir/ } TEST() { - cd libxml2-2.8.0 make tests } -LICENSE="MIT" -COPYRIGHT="1998-2003 Daniel Veillard. All Rights Reserved." +DESCRIPTION=" + Libxml2 is the XML C parser and toolkit developed for the Gnome project + (but usable outside of the Gnome platform), it is free software available + under the MIT License. XML itself is a metalanguage to design markup + languages, i.e. text language where semantic and structure are added to + the content using extra "markup" information enclosed between angle + brackets. HTML is the most well-known markup language. Though the library + is written in C a variety of language bindings make it available in other + environments. + + Libxml2 implements a number of existing standards related to markup + languages: + + - the XML standard: http://www.w3.org/TR/REC-xml + - Namespaces in XML: http://www.w3.org/TR/REC-xml-names/ + - XML Base: http://www.w3.org/TR/xmlbase/ + - RFC 2396 : Uniform Resource Identifiers + - XML Path Language (XPath) 1.0: http://www.w3.org/TR/xpath + - HTML4 parser: http://www.w3.org/TR/html401/ + - XML Pointer Language (XPointer) Version 1.0: http://www.w3.org/TR/xptr + - XML Inclusions (XInclude) Version 1.0: http://www.w3.org/TR/xinclude/ + - ISO-8859-x encodings, as well as rfc2044 [UTF-8] and rfc2781 [UTF-16] + Unicode encodings, and more if using iconv support part of SGML Open + Technical Resolution TR9401:1997 + - XML Catalogs Working Draft 06 August 2001: + http://www.oasis-open.org/committees/entity/spec-2001-08-06.html + - Canonical XML Version 1.0: + http://www.w3.org/TR/xml-c14n and the Exclusive XML Canonicalization + CR draft http://www.w3.org/TR/xml-exc-c14n + - Relax NG, ISO/IEC 19757-2:2003, + http://www.oasis-open.org/committees/relax-ng/spec-20011203.html + - W3C XML Schemas Part 2: Datatypes REC 02 May 2001 + - W3C xml:id Working Draft 7 April 2004 + + In most cases libxml2 tries to implement the specifications in a + relatively strictly compliant way. As of release 2.4.16, libxml2 passed + all 1800+ tests from the OASIS XML Tests Suite. + + To some extent libxml2 provides support for the following additional + specifications but doesn't claim to implement them completely: + + - Document Object Model (DOM) http://www.w3.org/TR/DOM-Level-2-Core/ + the document model, but it doesn't implement the API itself, gdome2 + does this on top of libxml2 + - RFC 959 : libxml2 implements a basic FTP client code + - RFC 1945 : HTTP/1.0, again a basic HTTP client code + - SAX: a SAX2 like interface and a minimal SAX1 implementation compatible + with early expat versions + + A partial implementation of XML Schemas Part 1: Structure is being worked + on but it would be far too early to make any conformance statement about + it at the moment. + " diff --git a/dev-libs/libxml2/patches/libxml2-2.8.0.patch b/dev-libs/libxml2/patches/libxml2-2.8.0.patch new file mode 100644 index 000000000..6973091ea --- /dev/null +++ b/dev-libs/libxml2/patches/libxml2-2.8.0.patch @@ -0,0 +1,26 @@ +diff -ur libxml2-2.8.0.orig/configure.in libxml2-2.8.0/configure.in +--- libxml2-2.8.0.orig/configure.in 2012-05-23 10:33:55.027787264 +0200 ++++ libxml2-2.8.0/configure.in 2013-04-26 13:50:43.429391872 +0200 +@@ -1,7 +1,7 @@ + dnl Process this file with autoconf to produce a configure script. + AC_PREREQ(2.59) + AC_INIT(entities.c) +-AM_CONFIG_HEADER(config.h) ++AC_CONFIG_HEADERS(config.h) + AC_CONFIG_MACRO_DIR([m4]) + AC_CANONICAL_HOST + +diff -ur libxml2-2.8.0.orig/Makefile.am libxml2-2.8.0/Makefile.am +--- libxml2-2.8.0.orig/Makefile.am 2012-05-23 10:56:18.030932992 +0200 ++++ libxml2-2.8.0/Makefile.am 2013-04-26 13:50:43.432537600 +0200 +@@ -1208,8 +1208,8 @@ + # + # Install the tests program sources as examples + # +-BASE_DIR=$(datadir)/doc +-DOC_MODULE=libxml2-$(VERSION) ++BASE_DIR=$(docdir) ++DOC_MODULE= + EXAMPLES_DIR=$(BASE_DIR)/$(DOC_MODULE)/examples + + install-data-local: