Contents of /trunk/core/libxml2/libxml2-2.11.4-r2.smage2
Parent Directory | Revision Log
Revision 33454 -
(show annotations)
(download)
Thu Jul 20 20:37:33 2023 UTC (9 months, 3 weeks ago) by niro
File size: 1882 byte(s)
Thu Jul 20 20:37:33 2023 UTC (9 months, 3 weeks ago) by niro
File size: 1882 byte(s)
-split python package
1 | # $Id$ |
2 | |
3 | PNAME="libxml2" |
4 | PVER="2.11.4" |
5 | PBUILD="r2" |
6 | |
7 | SPLIT_PACKAGES="libxml2 python3-libxml2" |
8 | |
9 | PCAT="dev-libs" |
10 | HOMEPAGE="http://xmlsoft.org/" |
11 | |
12 | DEPEND=">= sys-libs/zlib-1.2.13" |
13 | |
14 | SRCFILE="v${PVER}.tar.gz" |
15 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" |
16 | |
17 | sminclude multilib python3 cleanutils |
18 | |
19 | SRC_URI=( |
20 | https://github.com/GNOME/${PNAME}/archive/refs/tags/${SRCFILE} |
21 | ftp://xmlsoft.org/${PNAME}/${SRCFILE} |
22 | mirror://${PNAME}/${SRCFILE} |
23 | ) |
24 | |
25 | UP2SEPERATOR="v" |
26 | UP2DATE="updatecmd https://github.com/GNOME/${PNAME}/releases | highesttarball gz" |
27 | |
28 | split_info_libxml2() |
29 | { |
30 | DESCRIPTION="Libxml2 is the XML C parser and toolkit developed for the Gnome project." |
31 | } |
32 | |
33 | split_info_python3-libxml2() |
34 | { |
35 | DESCRIPTION="XML C parser python3 bindings." |
36 | DEPEND=">= dev-lang/python3-3.11" |
37 | } |
38 | |
39 | src_prepare() |
40 | { |
41 | python3_multilib_src_prepare || die |
42 | |
43 | local abi |
44 | for abi in ${MULTILIB_ABIS} |
45 | do |
46 | cd ${MAGE_PYTHON3_SRCSUBDIR}/$(basename ${SRCDIR})-${abi} || die |
47 | MULTILIB_ENTER_SRCDIR=false oldmautoreconf || die |
48 | done |
49 | } |
50 | |
51 | src_compile() |
52 | { |
53 | PYTHONHASHSEED=0 python3_multilib_src_compile --with-zlib '$([[ ${abi} = m64 ]] && echo "--with-python=/usr/bin/python$(mget-python3-version)" || echo "--without-python")' || die |
54 | } |
55 | |
56 | src_install_libxml2() |
57 | { |
58 | PYTHONHASHSEED=0 python3_multilib_src_install || die |
59 | |
60 | # delete python bindings |
61 | mdelete -r $(dirname $(mget-python3-libdir)) || die |
62 | } |
63 | |
64 | src_install_python3-libxml2() |
65 | { |
66 | PYTHONHASHSEED=0 python3_multilib_src_install || die |
67 | |
68 | # remove / in the beginning of the path |
69 | local pylibdir=$(mget-python3-libdir) |
70 | pylibdir="${pylibdir#/*}" |
71 | |
72 | # keep only python bindings |
73 | zapmost ${BINDIR} ${pylibdir} || die |
74 | } |
75 | |
76 | postinstall_libxml2() |
77 | { |
78 | # create needed xml-catalog |
79 | CATALOG=${MROOT}/etc/xml/catalog |
80 | if [ ! -e ${CATALOG} ] |
81 | then |
82 | [ -d ${MROOT}/etc/xml ] || install -d ${MROOT}/etc/xml |
83 | ${MROOT}/usr/bin/xmlcatalog --create > ${CATALOG} |
84 | echo "Created XML catalog in ${CATALOG}" |
85 | fi |
86 | } |