make/project.xml

Wed, 29 Oct 2025 22:59:23 +0100

author
Mike Becker <universe@uap-core.de>
date
Wed, 29 Oct 2025 22:59:23 +0100
changeset 284
22ff758b9fab
parent 283
a53a04d1da97
permissions
-rw-r--r--

add version requirement for UCX

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://unixwork.de/uwproj" version="0.3">
    <config>
        <var name="SRCDIR" exec="true">pwd</var>
        <var name="TOOLKIT_HOME">${TOOLKIT_HOME:=/usr}</var>
    </config>
    <dependency>
        <lang>c</lang>
        <make>srcdir=$SRCDIR</make>
        <ldflags>-lm</ldflags>
    </dependency>

    <dependency name="ucx">
        <pkgconfig atleast="3.2">ucx</pkgconfig>
    </dependency>

    <dependency name="sdl3">
        <pkgconfig>sdl3</pkgconfig>
    </dependency>

    <dependency name="sdl3_ttf">
        <pkgconfig>sdl3-ttf</pkgconfig>
    </dependency>

    <dependency name="sdl3_image">
        <pkgconfig>sdl3-image</pkgconfig>
    </dependency>

    <dependency name="glew">
        <pkgconfig>glew</pkgconfig>
    </dependency>

    <dependency name="asan" toolchain="gnuc">
        <cflags>-fsanitize=address</cflags>
        <ldflags>-fsanitize=address</ldflags>
    </dependency>

    <dependency name="toolkit">
        <test>test -n "$TOOLKIT_HOME"</test>
        <test>test -f "$TOOLKIT_HOME/lib/libuitk.a"</test>
        <test>test -f "$TOOLKIT_HOME/include/ui/ui.h"</test>
        <cflags>-I$TOOLKIT_HOME/include</cflags>
        <ldflags>$TOOLKIT_HOME/lib/libuitk.a</ldflags>
    </dependency>

    <dependency name="gtk3">
        <pkgconfig>gtk+-3.0</pkgconfig>
        <cflags>-DUI_GTK3</cflags>
        <ldflags>-lpthread</ldflags>
    </dependency>

    <target>
        <feature name="asan">
            <desc>enable address sanitization</desc>
            <dependencies>asan</dependencies>
        </feature>
        <dependencies>ucx,sdl3,sdl3_ttf,sdl3_image,glew</dependencies>
    </target>
    <target name="tools">
        <feature name="tools">
            <desc>enable compilation of tools</desc>
            <disabled>
                <make>NO_TOOLS=1</make>
            </disabled>
            <dependencies>toolkit,gtk3,ucx</dependencies>
        </feature>
    </target>
</project>

mercurial