Initial commit
Change-Id: I6a4444e3c193dae437cd7929f4c39aba7b749efa
diff --git a/libfdcore/CMakeLists.txt b/libfdcore/CMakeLists.txt
new file mode 100644
index 0000000..503437d
--- /dev/null
+++ b/libfdcore/CMakeLists.txt
@@ -0,0 +1,85 @@
+# 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)