view libfdcore/CMakeLists.txt @ 1513:73e563165594

Add 3GPP TS 29.468 V15.8.0 (2019-12) Add AVPs: - BMSC-Address, Address, code 3500, section 6.4.2 - BMSC-Port, Unsigned32, code 3501, section 6.4.3 - Common-Tunnel-Endpoint-Identifier, OctetString, code 3524, section 6.4.26 - FEC-Request, OctetString, code 3525, section 6.4.27 - FEC-Result, Unsigned32, code 3531, section 6.4.33 - Local-M1-Information, Grouped, code 3518, section 6.4.20 - Local-MB2-U-Information, Grouped, code 3519, section 6.4.21 - MB2U-Security, Unsigned32, code 3517, section 6.4.19 - MBMS-Bearer-Event, Unsigned32, code 3502, section 6.4.4 - MBMS-Bearer-Event-Notification, Grouped, code 3503, section 6.4.5 - MBMS-Bearer-Request, Grouped, code 3504, section 6.4.6 - MBMS-Bearer-Response, Grouped, code 3505, section 6.4.7 - MBMS-Bearer-Result, Unsigned32, code 3506, section 6.4.8 - MBMS-eNB-IP-Multicast-Address, Address, code 3520, section 6.4.22 - MBMS-eNB-IPv6-Multicast-Address, Address, code 3521, section 6.4.23 - MBMS-GW-SSM-IP-Address-29.468, Address, code 3522, section 6.4.24 - MBMS-GW-SSM-IPv6-Address-29.468, Address, code 3523, section 6.4.25 - MBMS-Start-Time, Time, code 3507, section 6.4.9 - Radio-Frequency-29.468, Unsigned32, code 3508, section 6.4.10 - ROHC-Full-Header-Periodicity, Float32, code 3527, section 6.4.29 - ROHC-Max-CID, Unsigned32, code 3532, section 6.4.34 - ROHC-Profile, Unsigned32, code 3528, section 6.4.30 - ROHC-Request, Grouped, code 3526, section 6.4.28 - ROHC-Result, Unsigned32, code 3530, section 6.4.32 - TMGI-Allocation-Request, Grouped, code 3509, section 6.4.11 - TMGI-Allocation-Response, Grouped, code 3510, section 6.4.12 - TMGI-Allocation-Result, Unsigned32, code 3511, section 6.4.13 - TMGI-Deallocation-Request, Grouped, code 3512, section 6.4.14 - TMGI-Deallocation-Response, Grouped, code 3513, section 6.4.15 - TMGI-Deallocation-Result, Unsigned32, code 3514, section 6.4.16 - TMGI-Expiry, Grouped, code 3515, section 6.4.17 - TMGI-Number, Unsigned32, code 3516, section 6.4.18 - Userplane-Protocol-Result, Grouped, code 3529, section 6.4.31 Note: Name conflict with 3GPP TS 29.061 MBMS-GW-SSM-IP-Address (924). 3GPP TS 29.061 V10.4.0 (2011-09) CR 0355 added MBMS-GW-SSM-IP-Address (924). 3GPP TS 29.468 V14.0.0 (2016-12) CR 0021 added MBMS-GW-SSM-IP-Address (3522). Fix: MBMS-GW-SSM-IP-Address (3522) renamed to MBMS-GW-SSM-IP-Address-29.468 (3522). Note: Name conflict with 3GPP TS 29.061 MBMS-GW-SSM-IPv6-Address (925). 3GPP TS 29.061 V10.4.0 (2011-09) CR 0355 added MBMS-GW-SSM-IPv6-Address (925). 3GPP TS 29.468 V14.0.0 (2016-12) CR 0021 added MBMS-GW-SSM-IPv6-Address (3523). Fix: MBMS-GW-SSM-IPv6-Address (3523) renamed to MBMS-GW-SSM-IPv6-Address-29.468 (3523). Note: Name conflict with 3GPP TS 32.299 Radio-Frequency (3462). 3GPP TS 29.468 V12.0.0 (2014-09) added Radio-Frequency (3508). 3GPP TS 32.299 V13.1.0 (2015-06) CR 0638 added Radio-Frequency (3462). Fix: Radio-Frequency (3508) renamed to Radio-Frequency-29.468 (3508).
author Luke Mewburn <luke@mewburn.net>
date Tue, 07 Apr 2020 19:38:33 +1000
parents ecb844d6d87d
children 9084c6f94a0a
line wrap: on
line source

# The subproject name
Project("freeDiameter core library" C)

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

# Configuration parser
BISON_FILE(fdd.y)
FLEX_FILE(fdd.l)
SET_SOURCE_FILES_PROPERTIES(lex.fdd.c fdd.tab.c PROPERTIES COMPILE_FLAGS "-I ${CMAKE_CURRENT_SOURCE_DIR}")

# List of source files
SET(FDCORE_SRC
	fdcore-internal.h
	apps.c
	cnxctx.h
	config.c
	core.c
	cnxctx.c
	endpoints.c
	events.c
	extensions.c
	fifo_stats.c
	hooks.c
	dict_base_proto.c
	messages.c
	queues.c
	peers.c
	p_ce.c
	p_cnx.c
	p_dw.c
	p_dp.c
	p_expiry.c
	p_out.c
	p_psm.c
	p_sr.c
	routing_dispatch.c
	server.c
	tcp.c
	version.c
	)

IF(NOT DISABLE_SCTP)
	SET(FDCORE_SRC ${FDCORE_SRC} sctp.c sctp3436.c)
ENDIF(NOT DISABLE_SCTP)

SET(FDCORE_GEN_SRC
		lex.fdd.c
		fdd.tab.c
		fdd.tab.h
	)
	
# Save the list of files for the tests 
SET(FDCORE_SRC ${FDCORE_SRC} PARENT_SCOPE)
SET(FDCORE_GEN_SRC ${FDCORE_GEN_SRC} PARENT_SCOPE)

# Include path
INCLUDE_DIRECTORIES(${LFDCORE_INCLUDES})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})

# Build the executable
ADD_LIBRARY(libfdcore SHARED ${FDCORE_SRC} ${FDCORE_GEN_SRC})
ADD_DEPENDENCIES(libfdcore version_information)

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

# The library itself needs other libraries 
LINK_DIRECTORIES(${CURRENT_BINARY_DIR}/../libfdproto)
TARGET_LINK_LIBRARIES(libfdcore libfdproto ${LFDCORE_LIBS})


####
## INSTALL section ##

INSTALL(TARGETS libfdcore
	LIBRARY DESTINATION ${INSTALL_LIBRARY_SUFFIX}
	COMPONENT freeDiameter-common)
"Welcome to our mercurial repository"