xref: /openbmc/openbmc/meta-openembedded/meta-oe/recipes-support/libtinyxml/libtinyxml_2.6.2.bb (revision 96e4b4e121e0e2da1535d7d537d6a982a6ff5bc0)
1eb8dc403SDave Cobbley# (c) Copyright 2012  Hewlett-Packard Development Company, L.P.
2eb8dc403SDave Cobbley
3eb8dc403SDave CobbleySUMMARY = "a simple, small, minimal, C++ XML parser"
4eb8dc403SDave CobbleyHOMEPAGE = "http://www.sourceforge.net/projects/tinyxml"
5eb8dc403SDave CobbleyLICENSE = "Zlib"
6eb8dc403SDave CobbleyLIC_FILES_CHKSUM = "file://readme.txt;md5=f8f366f3370dda889f60faa7db162cf4"
7eb8dc403SDave CobbleySECTION = "libs"
8*96e4b4e1SPatrick WilliamsCVE_PRODUCT = "tinyxml"
9eb8dc403SDave Cobbley
10eb8dc403SDave Cobbley
11eb8dc403SDave CobbleySRC_URI = "${SOURCEFORGE_MIRROR}/tinyxml/tinyxml_${@'${PV}'.replace('.', '_')}.tar.gz \
12eb8dc403SDave Cobbley           file://enforce-use-stl.patch \
13*96e4b4e1SPatrick Williams           file://entity-encoding.patch \
14*96e4b4e1SPatrick Williams           file://CVE-2021-42260.patch \
15*96e4b4e1SPatrick Williams           file://CVE-2023-34194.patch \
16*96e4b4e1SPatrick Williams"
17eb8dc403SDave CobbleySRC_URI[sha256sum] = "15bdfdcec58a7da30adc87ac2b078e4417dbe5392f3afb719f9ba6d062645593"
18eb8dc403SDave Cobbley
19eb8dc403SDave CobbleyS = "${WORKDIR}/tinyxml"
20eb8dc403SDave Cobbley
21eb8dc403SDave CobbleyEXTRA_CXXFLAGS = "-I. -fPIC"
22eb8dc403SDave Cobbley
23eb8dc403SDave Cobbleydo_compile() {
24eb8dc403SDave Cobbley    ${CXX} ${CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o tinyxml.o tinyxml.cpp
25eb8dc403SDave Cobbley    ${CXX} ${CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o tinyxmlerror.o tinyxmlerror.cpp
26eb8dc403SDave Cobbley    ${CXX} ${CXXFLAGS} ${EXTRA_CXXFLAGS} -c -o tinyxmlparser.o tinyxmlparser.cpp
27eb8dc403SDave Cobbley    ${CXX} ${CXXFLAGS} \
28eb8dc403SDave Cobbley            -shared \
29eb8dc403SDave Cobbley            -Wl,-soname,libtinyxml.so.${PV} \
30eb8dc403SDave Cobbley            -o libtinyxml.so.${PV} \
31eb8dc403SDave Cobbley            ${LDFLAGS} \
32eb8dc403SDave Cobbley            tinyxml.o \
33eb8dc403SDave Cobbley            tinyxmlparser.o \
34eb8dc403SDave Cobbley            tinyxmlerror.o
35eb8dc403SDave Cobbley
36eb8dc403SDave Cobbley}
37eb8dc403SDave Cobbley
38eb8dc403SDave Cobbleydo_install() {
39eb8dc403SDave Cobbley    install -d ${D}${libdir}
40eb8dc403SDave Cobbley    install -m 0755 ${S}/libtinyxml.so.${PV} ${D}${libdir}
41eb8dc403SDave Cobbley    ln -sf libtinyxml.so.${PV} ${D}${libdir}/libtinyxml.so
42eb8dc403SDave Cobbley
43eb8dc403SDave Cobbley    install -d ${D}${includedir}
44eb8dc403SDave Cobbley    install -m 0644 ${S}/tinyxml.h ${D}${includedir}
45eb8dc403SDave Cobbley}
46eb8dc403SDave Cobbley
47eb8dc403SDave CobbleyBBCLASSEXTEND = "native"
48