make/project.xml

Sun, 17 Dec 2023 14:25:34 +0100

author
Mike Becker <universe@uap-core.de>
date
Sun, 17 Dec 2023 14:25:34 +0100
changeset 797
edbb20b1438d
parent 787
bd96cbb0e205
child 802
16e5b9d32754
permissions
-rw-r--r--

[Makefile] fix missing rules preventing dry-runs

We have to support dry-runs, because many IDEs are using
dry-runs to collect build information.

Some rules have dependencies that expect certain files or
directories to be just present. We added respective build
rules which invoke the test program. This way, the behavior
when running make normally is exactly the same, but dry-runs
are also not failing now.

<?xml version="1.0" encoding="UTF-8"?>
<project>
	<dependency name="curl" platform="windows">
		<cflags>-I/mingw/include</cflags>
		<ldflags>-lcurl</ldflags>
	</dependency>
	<dependency name="curl" platform="macos">
		<cflags exec="true">curl-config --cflags</cflags>
		<ldflags exec="true">curl-config --ldflags</ldflags>
	</dependency>
	<dependency name="curl">
		<pkgconfig>libcurl</pkgconfig>
	</dependency>
	<dependency name="curl">
		<cflags exec="true">curl-config --cflags</cflags>
		<ldflags exec="true">curl-config --libs</ldflags>
	</dependency>
	
	<dependency name="libxml2" platform="windows">
		<cflags exec="true">xml2-config --cflags</cflags>
		<ldflags exec="true">xml2-config --libs</ldflags>
	</dependency>
	<dependency name="libxml2" platform="macos">
		<cflags exec="true">xml2-config --cflags</cflags>
		<ldflags exec="true">xml2-config --libs</ldflags>
	</dependency>
	<dependency name="libxml2">
		<pkgconfig>libxml-2.0</pkgconfig>
	</dependency>
	<dependency name="libxml2">
		<cflags exec="true">xml2-config --cflags</cflags>
		<ldflags exec="true">xml2-config --libs</ldflags>
	</dependency>
	
	<dependency name="openssl" platform="windows">
		<ldflags>-lssl -lcrypto</ldflags>
	</dependency>
	<dependency name="openssl" platform="macos">
		<ldflags>-framework CoreFoundation</ldflags>
	</dependency>
	<dependency name="openssl" platform="bsd" not="macos">
		<ldflags>-lssl -lcrypto</ldflags>
	</dependency>
	<dependency name="openssl">
		<pkgconfig>openssl</pkgconfig>
	</dependency>

	<dependency>
		<ldflags>-lm -lpthread</ldflags>
	</dependency>
	
	<dependency platform="bsd" not="macos">
		<cflags>-I/usr/local/include</cflags>
		<ldflags>-L/usr/local/lib</ldflags>
	</dependency>

	<dependency platform="macos">
		<make>OBJ_EXT = .o</make>
		<make>LIB_EXT = .a</make>
	</dependency>
	<dependency platform="unix" not="macos">
		<make>OBJ_EXT = .o</make>
		<make>LIB_EXT = .a</make>
	</dependency>


	<target name="dav">
		<dependencies>curl,libxml2,openssl</dependencies>
	</target>
</project>

mercurial