make/project.xml

Mon, 19 May 2025 15:09:33 +0200

author
Mike Becker <universe@uap-core.de>
date
Mon, 19 May 2025 15:09:33 +0200
changeset 48
c7b37d5e26cf
parent 34
cc9d74d5eb46
permissions
-rw-r--r--

add asan and ubsan features

<?xml version="1.0" encoding="UTF-8"?>
<project version="0.3" xmlns="http://unixwork.de/uwproj">
    <dependency>
        <lang>cpp</lang>
        <cxxflags>-std=c++23</cxxflags>
    </dependency>
    <dependency name="static" toolchain="gnuc">
        <ldflags>-static</ldflags>
    </dependency>
    <dependency name="asan" toolchain="gnuc">
        <cxxflags>-fsanitize=address</cxxflags>
        <ldflags>-fsanitize=address</ldflags>
    </dependency>
    <dependency name="ubsan" toolchain="gnuc">
        <cxxflags>-fsanitize=undefined</cxxflags>
        <ldflags>-fsanitize=undefined</ldflags>
    </dependency>
    <target>
        <feature name="static">
            <desc>statically link libstdc++</desc>
            <dependencies>static</dependencies>
        </feature>
        <feature name="asan">
            <desc>compile with address sanitizer</desc>
            <dependencies>asan</dependencies>
        </feature>
        <feature name="ubsan">
            <desc>compile with undefined behavior sanitizer</desc>
            <dependencies>ubsan</dependencies>
        </feature>
    </target>
</project>

mercurial