view libfdproto/CMakeLists.txt @ 1534:c83e60f28632

dict_dcca_3gpp: simplify rule creation Refactor local_rules_definition to simplify rule creation (to avoid c99 struct initialisers that result in long lines). No change to generated rules.
author Luke Mewburn <luke@mewburn.net>
date Mon, 20 Apr 2020 12:12:42 +1000
parents ecb844d6d87d
children 9084c6f94a0a
line wrap: on
line source

# Name of the subproject
Project("libfdproto" C)

# Configuration for newer cmake
cmake_policy(VERSION 2.6)
if (POLICY CMP0022)
	cmake_policy(SET CMP0022 OLD)
endif (POLICY CMP0022)

# List of source files for the library
SET(LFDPROTO_SRC
	fdproto-internal.h
	dictionary.c
	dictionary_functions.c
	dispatch.c
	fifo.c
	init.c
	lists.c
	log.c
	messages.c
	ostr.c
	portability.c
	rt_data.c
	sessions.c
	utils.c
	version.c
	)


# Save the list of files for testcases in the core's directory
SET(LFDPROTO_SRC ${LFDPROTO_SRC} PARENT_SCOPE)

# Include path
INCLUDE_DIRECTORIES(${LFDPROTO_INCLUDES})

# Build as a shared library
ADD_LIBRARY(libfdproto SHARED ${LFDPROTO_SRC})

ADD_DEPENDENCIES(libfdproto version_information)

# Avoid the liblib name, and set the version
SET_TARGET_PROPERTIES(libfdproto PROPERTIES 
	OUTPUT_NAME "fdproto"
	SOVERSION ${FD_PROJECT_VERSION_API}
	VERSION ${FD_PROJECT_VERSION_MAJOR}.${FD_PROJECT_VERSION_MINOR}.${FD_PROJECT_VERSION_REV}
	LINK_INTERFACE_LIBRARIES "${LFDPROTO_LINK_INTERFACES}")

# The library itself needs other libraries 
TARGET_LINK_LIBRARIES(libfdproto ${LFDPROTO_LIBS})


####
## INSTALL section ##

INSTALL(TARGETS libfdproto
	LIBRARY DESTINATION ${INSTALL_LIBRARY_SUFFIX}
	COMPONENT freeDiameter-common)

"Welcome to our mercurial repository"