summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/pugixml/package.py
blob: cbeb6edc723024741f602ccb0fb72ba6c812830f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)


from spack.package import *


class Pugixml(CMakePackage):
    """Light-weight, simple, and fast XML parser for C++ with XPath support"""

    homepage = "https://pugixml.org/"
    url = "https://github.com/zeux/pugixml/releases/download/v1.10/pugixml-1.10.tar.gz"

    license("MIT")

    version("1.13", sha256="40c0b3914ec131485640fa57e55bf1136446026b41db91c1bef678186a12abbe")
    version("1.11.4", sha256="8ddf57b65fb860416979a3f0640c2ad45ddddbbafa82508ef0a0af3ce7061716")
    version("1.11", sha256="26913d3e63b9c07431401cf826df17ed832a20d19333d043991e611d23beaa2c")
    version("1.10", sha256="55f399fbb470942410d348584dc953bcaec926415d3462f471ef350f29b5870a")
    version("1.8.1", sha256="929c4657c207260f8cc28e5b788b7499dffdba60d83d59f55ea33d873d729cd4")

    variant("pic", default=True, description="Build position-independent code")
    variant("shared", default=True, description="Build shared libraries")

    conflicts("+shared", when="~pic")

    def cmake_args(self):
        return [
            self.define("BUILD_SHARED_AND_STATIC_LIBS", False),
            self.define_from_variant("BUILD_SHARED_LIBS", "shared"),
            self.define_from_variant("CMAKE_POSITION_INDEPENDENT_CODE", "pic"),
        ]