Sync from Azure to LF
[ric-plt/e2.git] / RIC-E2-TERMINATION / CMakeLists.txt
1 # Copyright 2019 AT&T Intellectual Property
2 # Copyright 2019 Nokia
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #      http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15
16 cmake_minimum_required(VERSION 3.13)
17 project(e2)
18
19 set(CMAKE_VERBOSE_MAKEFILE on)
20
21 set(CMAKE_CXX_STANDARD 17)
22
23 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DDEV_PKG=1")
24
25 #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DASN_DISABLE_OER_SUPPORT -DASN_PDU_COLLECTION -L. -LRIC-E2-TERMINATION/tracelibcpp/build -ggdb3 -Wall -W -Wpedantic")
26 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DASN_DISABLE_OER_SUPPORT -DASN_PDU_COLLECTION -L. -LRIC-E2-TERMINATION/base64/lib -O3 -Wall -Wpedantic")
27 #only c code with -O3
28 set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DASN_DISABLE_OER_SUPPORT -DASN_PDU_COLLECTION -L. -LRIC-E2-TERMINATION/base64/lib -O3 -Wall -W -Wpedantic")
29
30 include_directories(RIC-E2-TERMINATION)
31 include_directories(RIC-E2-TERMINATION/asn1cFiles)
32
33 file(GLOB ASN_MODULE_SRCS "RIC-E2-TERMINATION/asn1cFiles/*.c")
34 file(GLOB ASN_MODULE_HDRS "RIC-E2-TERMINATION/asn1cFiles/*.h")
35
36 add_library(asn1codec ${ASN_MODULE_SRCS} ${ASN_MODULE_HDRS})
37
38 install(TARGETS asn1codec DESTINATION /usr/lib)
39 install(FILES ${ASN_MODULE_HDRS} DESTINATION /usr/include/asn1c)
40
41
42 #include_directories(RIC-E2-TERMINATION/TEST/asn1c)
43 #
44 #file(GLOB ASNE2SMC "RIC-E2-TERMINATION/TEST/asn1c/*.c")
45 #file(GLOB ASNE2SMH "RIC-E2-TERMINATION/TEST/asn1c/*.h")
46 #RIC-E2-TERMINATION/
47 #add_library(asne2smcodec ${ASNE2SMC})
48
49
50 include_directories(RIC-E2-TERMINATION/TEST)
51 include_directories(RIC-E2-TERMINATION/TEST/e2smTest)
52 include_directories(RIC-E2-TERMINATION/TEST/T1)
53 include_directories(RIC-E2-TERMINATION/TEST/T2)
54 include_directories(RIC-E2-TERMINATION/base64/include)
55 include_directories(RIC-E2-TERMINATION/base64/lib)
56
57 add_library(e2sm
58         RIC-E2-TERMINATION/TEST/e2sm.c
59         RIC-E2-TERMINATION/TEST/e2sm.h
60         ${ASN_MODULE_HDRS})
61 add_definitions(-DBOOST_LOG_DYN_LINK)
62
63 link_libraries(nsl sctp c m dl mdclog rmr_nng nng e2sm asn1codec boost_system boost_log_setup boost_log boost_date_time boost_thread rt boost_filesystem  pthread)
64
65 add_executable(e2 RIC-E2-TERMINATION/sctpThread.cpp
66         RIC-E2-TERMINATION/sctpThread.h
67         RIC-E2-TERMINATION/openTracing.h
68         RIC-E2-TERMINATION/mapWrapper.h
69         RIC-E2-TERMINATION/base64.h
70         RIC-E2-TERMINATION/base64.cpp
71         )
72
73 add_executable(e2smtest
74         RIC-E2-TERMINATION/TEST/e2smTest/e2smtest.cpp)