1
1
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
2
- index 68d0a4fe6..9bf7adede 100644
2
+ index 71f0010bb..377fe1a56 100644
3
3
--- a/src/CMakeLists.txt
4
4
+++ b/src/CMakeLists.txt
5
- @@ -50 ,13 +50,8 @@ include(cmake/ccache.cmake)
5
+ @@ -35 ,13 +35,7 @@ include(cmake/ccache.cmake)
6
6
##############################################################################
7
7
# VPP Version
8
8
##############################################################################
@@ -12,21 +12,19 @@ index 68d0a4fe6..9bf7adede 100644
12
12
- OUTPUT_VARIABLE VPP_VERSION
13
13
- OUTPUT_STRIP_TRAILING_WHITESPACE
14
14
- )
15
-
16
- + set(VPP_VERSION 24.03 -dev)
15
+ -
16
+ + set(VPP_VERSION 25.06 -dev)
17
17
if (VPP_PLATFORM)
18
18
set(VPP_VERSION ${VPP_VERSION}-${VPP_PLATFORM_NAME})
19
19
endif()
20
- @@ -277,8 +272,7 @@ elseif(${CMAKE_SYSTEM_NAME} MATCHES "Linux|FreeBSD")
20
+ @@ -264,7 +258,6 @@ elseif(${CMAKE_SYSTEM_NAME} MATCHES "Linux|FreeBSD")
21
21
find_package(OpenSSL)
22
22
set(SUBDIRS
23
23
vppinfra svm vlib vlibmemory vlibapi vnet vpp vat vat2 vcl vpp-api
24
- - plugins tools/vppapigen tools/g2 tools/perftool cmake pkg
25
- - tools/appimage
26
- + tools/vppapigen cmake pkg
24
+ - plugins crypto_engines tools/vppapigen tools/g2 tools/perftool cmake pkg
25
+ tools/appimage
27
26
)
28
27
elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
29
- set(SUBDIRS vppinfra)
30
28
diff --git a/src/cmake/ccache.cmake b/src/cmake/ccache.cmake
31
29
index a7b395bc6..d6a4c5b30 100644
32
30
--- a/src/cmake/ccache.cmake
@@ -41,7 +39,7 @@ index a7b395bc6..d6a4c5b30 100644
41
39
find_program(CCACHE_FOUND ccache)
42
40
message(STATUS "Looking for ccache")
43
41
diff --git a/src/cmake/library.cmake b/src/cmake/library.cmake
44
- index 45b3944eb..b1dcc56e1 100644
42
+ index a06a795c6..eea0c73d3 100644
45
43
--- a/src/cmake/library.cmake
46
44
+++ b/src/cmake/library.cmake
47
45
@@ -24,7 +24,7 @@ macro(add_vpp_library lib)
@@ -54,7 +52,7 @@ index 45b3944eb..b1dcc56e1 100644
54
52
55
53
if(VPP_LIB_VERSION)
56
54
diff --git a/src/tools/vppapigen/CMakeLists.txt b/src/tools/vppapigen/CMakeLists.txt
57
- index 04ebed548..bfabc3a67 100644
55
+ index 97a6d35f9..55b662a8d 100644
58
56
--- a/src/tools/vppapigen/CMakeLists.txt
59
57
+++ b/src/tools/vppapigen/CMakeLists.txt
60
58
@@ -11,22 +11,6 @@
@@ -81,15 +79,14 @@ index 04ebed548..bfabc3a67 100644
81
79
FILES vppapigen.py
82
80
RENAME vppapigen
83
81
diff --git a/src/tools/vppapigen/vppapigen.py b/src/tools/vppapigen/vppapigen.py
84
- index 2b0ce9999..f8a7586ea 100755
82
+ index 0bed578eb..ed5b2ce75 100755
85
83
--- a/src/tools/vppapigen/vppapigen.py
86
84
+++ b/src/tools/vppapigen/vppapigen.py
87
- @@ -7,6 +7,14 @@ import logging
85
+ @@ -7,6 +7,13 @@ import logging
88
86
import binascii
89
87
import os
90
88
from subprocess import Popen, PIPE
91
89
+
92
- +
93
90
+ # Put ply on the path ...
94
91
+ plypath = os.path.join(
95
92
+ os.environ["EXT_BUILD_ROOT"],
@@ -98,57 +95,64 @@ index 2b0ce9999..f8a7586ea 100755
98
95
+
99
96
import ply.lex as lex
100
97
import ply.yacc as yacc
101
-
98
+ from io import TextIOWrapper
102
99
diff --git a/src/vcl/CMakeLists.txt b/src/vcl/CMakeLists.txt
103
- index 610b422d1..c5e6f8ca8 100644
100
+ index 2787ce678..8cbe2b4fc 100644
104
101
--- a/src/vcl/CMakeLists.txt
105
102
+++ b/src/vcl/CMakeLists.txt
106
- @@ -35 ,6 +35 ,8 @@ if (LDP_HAS_GNU_SOURCE)
103
+ @@ -41 ,6 +41 ,8 @@ if (LDP_HAS_GNU_SOURCE)
107
104
add_compile_definitions(HAVE_GNU_SOURCE)
108
105
endif(LDP_HAS_GNU_SOURCE)
109
106
110
107
+ file(COPY vppcom.h DESTINATION ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
111
108
+
112
- add_vpp_library(vcl_ldpreload
113
- SOURCES
114
- ldp_socket_wrapper.c
109
+ if("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD")
110
+ message("WARNING: vcl_ldpreload isn't supported on FreeBSD - disabled")
111
+ else()
115
112
diff --git a/src/vppinfra/CMakeLists.txt b/src/vppinfra/CMakeLists.txt
116
- index f34ceed9d..51fd2becf 100644
113
+ index 131f5a5b5..06fe42179 100644
117
114
--- a/src/vppinfra/CMakeLists.txt
118
115
+++ b/src/vppinfra/CMakeLists.txt
119
- @@ -233,13 +233,28 @@ option(VPP_USE_EXTERNAL_LIBEXECINFO "Use external libexecinfo (useful for non-gl
120
- if(VPP_USE_EXTERNAL_LIBEXECINFO)
121
- set(EXECINFO_LIB execinfo)
116
+ @@ -27,7 +27,7 @@ vpp_find_library(LIBUNWIND_LIB NAMES unwind libunwind)
117
+ if (LIBUNWIND_INCLUDE_DIR AND LIBUNWIND_LIB)
118
+ message(STATUS "libunwind found at ${LIBUNWIND_LIB}")
119
+ list(APPEND VPPINFRA_LIBS ${LIBUNWIND_LIB})
120
+ - add_definitions(-DHAVE_LIBUNWIND=1)
121
+ + add_definitions(-DHAVE_LIBUNWIND=0)
122
+ else()
123
+ message(WARNING "libunwind not found - stack traces disabled")
124
+ add_definitions(-DHAVE_LIBUNWIND=0)
125
+ @@ -253,13 +253,26 @@ elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD")
126
+ )
122
127
endif()
128
+
123
129
- add_vpp_library(vppinfra
124
130
- SOURCES ${VPPINFRA_SRCS}
125
- - LINK_LIBRARIES m ${EXECINFO_LIB }
131
+ - LINK_LIBRARIES m ${VPPINFRA_LIBS }
126
132
- INSTALL_HEADERS ${VPPINFRA_HEADERS}
127
133
- COMPONENT libvppinfra
128
134
- LTO
129
135
- )
130
- +
131
136
+ # GCC versions 11 and 12 at least have some kind of bug when
132
137
+ # LTO runs out of memory and breaking Envoy builds with gcc
133
138
+ # as a result. So we conditionally disable LTO on GCC builds
134
139
+ # to workaround the issue.
135
140
+ if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
136
141
+ add_vpp_library(vppinfra
137
142
+ SOURCES ${VPPINFRA_SRCS}
138
- + LINK_LIBRARIES m ${EXECINFO_LIB }
143
+ + LINK_LIBRARIES m ${VPPINFRA_LIBS }
139
144
+ INSTALL_HEADERS ${VPPINFRA_HEADERS}
140
145
+ COMPONENT libvppinfra
141
146
+ )
142
147
+ else()
143
148
+ add_vpp_library(vppinfra
144
149
+ SOURCES ${VPPINFRA_SRCS}
145
- + LINK_LIBRARIES m ${EXECINFO_LIB }
150
+ + LINK_LIBRARIES m ${VPPINFRA_LIBS }
146
151
+ INSTALL_HEADERS ${VPPINFRA_HEADERS}
147
152
+ COMPONENT libvppinfra
148
153
+ LTO
149
154
+ )
150
155
+ endif()
151
- +
152
156
153
157
##############################################################################
154
158
# vppinfra headers
0 commit comments