make/project.xml

Wed, 27 Nov 2024 23:00:07 +0100

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Wed, 27 Nov 2024 23:00:07 +0100
changeset 563
6ca97c99173e
parent 515
2c3fe06a9210
permissions
-rw-r--r--

add TODO to use a future ucx feature

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://unixwork.de/uwproj">
	<!-- makefile config -->
	<config>
		<var name="HOST" exec="true">uname -n</var>
		<var name="PREFIX">`pwd`/work</var>
		<var name="INSTALL_DIR">$PREFIX</var>
	</config>
	
	<dependency>
		<lang>c</lang>
	</dependency>
	
	<!-- platform specific settings -->
	<dependency platform="linux">
		<cflags>-DLINUX</cflags>
		<ldflags>-lpthread -ldl -lm -lldap -llber</ldflags>
		<make>
# platform dependend source files
PLATFORM_DAEMONOBJ = event_linux.o

# platform dependend vars
OBJ_EXT = .o
LIB_EXT = .so
APP_EXT =

# ld flags
UCX_SO_NAME =
RPATH_WS_LIB_FLAG = -Wl,-rpath,'\$\$ORIGIN/../lib'
		</make>
	</dependency>
	
	<dependency platform="bsd" not="macos">
		<cflags>-DBSD -I/usr/local/include</cflags>
		<ldflags>-lpthread -lm -lldap -llber</ldflags>
		<make>
# platform dependend source files
PLATFORM_DAEMONOBJ = event_bsd.o

# platform dependend vars
OBJ_EXT = .o
LIB_EXT = .so
APP_EXT =

# ld flags
UCX_SO_NAME =
RPATH_WS_LIB_FLAG = -Wl,-rpath,'\$\$ORIGIN/../lib'
		</make>
	</dependency>
	
	<dependency platform="macos">
		<cflags>-DBSD -DOSX</cflags>
		<ldflags>-lpthread -ldl -lm -lldap -llber</ldflags>
		<make>
# platform dependend source files
PLATFORM_DAEMONOBJ = event_bsd.o

# platform dependend vars
OBJ_EXT = .o
LIB_EXT = .dylib
APP_EXT =

# ld flags
UCX_SO_NAME = -install_name @rpath/libucx.dylib
RPATH_WS_LIB_FLAG = -rpath @loader_path/../lib
		</make>
	</dependency>
	
	<dependency platform="solaris">
		<cflags>-DSOLARIS -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS</cflags>
		<ldflags>-lsocket -lnsl -lsendfile -lposix4 -lpthread -ldl -lm -lmd -lldap</ldflags>
		<make>
# platform dependend source files
PLATFORM_DAEMONOBJ = event_solaris.o

# platform dependend vars
OBJ_EXT = .o
LIB_EXT = .so
APP_EXT =
		</make>
	</dependency>

	<!-- library dependencies -->
	<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">
		<pkgconfig>openssl</pkgconfig>
	</dependency>
	
	<dependency name="openssl">
		<ldflags>-lssl -lcrypto</ldflags>
	</dependency>

	<!-- optional dependencies -->
	<dependency name="libpq">
		<pkgconfig>libpq</pkgconfig>
		<make>
CFLAGS += -DENABLE_POSTGRESQL
PLUGINS += postgresql
TEST_PLUGIN_LDFLAGS += -lwspgtest
		</make>
	</dependency>
	
	<target>
		<dependencies>libxml2,openssl</dependencies>
	</target>
	
	<target name="postgresql">
		<feature name="postgresql" default="false">
			<dependencies>libpq</dependencies>
		</feature>
	</target>
</project>

mercurial