Commit Graph

37 Commits

Author SHA1 Message Date
Damjan Marion
162330f25a build: rework x86 CPU variants
Type: improvement
Change-Id: Ief243f88e654e578ef9b8060fcf535b364aececb
Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-04-30 13:25:29 +02:00
Damjan Marion
4ba16a44b1 misc: switch to clang-9
Type: improvement
Change-Id: Iebf77a63c0c19b130a3fbd26b5293304a9fed4c1
Signed-off-by: Damjan Marion <damarion@cisco.com>
2020-04-29 17:20:47 +00:00
Benoît Ganne
9fb6d40eb3 misc: add address sanitizer heap instrumentation
Introduce AddressSanitizer support: https://github.com/google/sanitizers/
This starts with heap instrumentation. vlib_buffer, bihash and stack
instrumentation should follow.

Type: feature

Change-Id: I7f20e235b2f79db72efd0e756f22c75f717a9884
Signed-off-by: Benoît Ganne <bganne@cisco.com>
2019-11-27 10:50:28 +00:00
Damjan Marion
952a7b8b74 build: add build types helpstring to cmake project
Type: feature

Change-Id: Ia016fee107859d5ad22fe7959c8e9d32758e0787
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-11-22 19:01:44 +00:00
Damjan Marion
2baa115da3 build: use cmake build types
Type: make

Change-Id: If822c85d6ff26982516ea1d597ca81aa84773b2b
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-11-08 22:57:47 +00:00
Dave Barach
0729f6481d AppImage packaging
Disabled by default. To kick the the tires:

wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
sudo mv linuxdeploy-x86_64.AppImage /usr/local/bin/linuxdeploy
sudo chmod +x linuxdeploy-x86_64.AppImage

Enable VPP_BUILD_APPIMAGE e.g. in ccmake
make build | make build-release

The vpp AppImage lands in .../install-xxx-native/VPP-x86_64.AppImage. To run it:

./VPP-x86_64.AppImage vpp unix interactive

To run it (as root) and inhale the usual startup.conf:

sudo ./VPP-x86_64.AppImage \${HERE}/bin/vpp -c \${HERE}/etc/vpp/startup.conf

To run vppctl, or any of the usual vpp binaries:

./VPP-x86_64.AppImage vppctl [etc]

Change-Id: Ide8cf4658cbb56f1d36a1ce7fc8f7338f8d38278
Signed-off-by: Dave Barach <dave@barachs.net>
2019-03-28 08:18:57 +00:00
Damjan Marion
1ee346a0a6 Fix build with newer linux headers
Change-Id: Ibfdcec60567ec357205fa137257f2d8cba44b01c
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-03-18 17:13:10 +00:00
Damjan Marion
6077c97a60 cmake: fix out-of-git-tree build
Change-Id: Ib94637ec09799c23f3179599b54a2be6e2768425
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-01-29 07:47:01 +00:00
Damjan Marion
ff42693005 cmake: add support for linking with DPDK shared libs
Change-Id: I3423191c53ab6100ee9ecc4e24b06506ff1b25c8
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-01-26 14:12:25 +01:00
Damjan Marion
4d2f86a1eb Rework of debian packaging
Change-Id: Ifede85d3af36f3ee6c6f8f92dcf5db0ed8f1bfeb
Signed-off-by: Damjan Marion <damarion@cisco.com>
Signed-off-by: Dave Barach <dave@barachs.net>
2019-01-20 16:14:24 +00:00
Damjan Marion
847d528825 cmake: print all flags
Change-Id: Ie80ed430d8c9e2b8fe736402d357ac8b190ca6b7
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-01-18 22:33:26 +00:00
Damjan Marion
64911369ad Look for plugins in target triplet subdir
Change-Id: I3bab0ab05b4f552ad64392439fb48409ab0ab8c0
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-01-18 22:02:27 +00:00
Damjan Marion
dd3952923a cmake: initial cross-compilation support
Change-Id: Ib9c2aba1eda08a22465441e33553b9b744c79d56
Signed-off-by: Damjan Marion <damarion@cisco.com>
2019-01-17 20:43:27 +00:00
Damjan Marion
4a6cb83d33 rename vpp-dpdk-dev to vpp-ext-deps
We need to have new tenants in the development package.
This is first of series of patches which will allow us to have multiple
external libs and tools packaged for developer's convenience.

Change-Id: I884bd75fba96005bbf8cea92774682b2228e0e22
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-20 14:30:54 +02:00
Damjan Marion
eeadc14ee2 cpack: add deb/rpm packaging to VPP module
This allows easy packaging of external projects, including
VOM and sample plugin.

i.e.

$ make -C build-root PLATFORM=vpp TAG=vpp sample-plugin-install

$ ninja -C build-root/build-vpp-native/sample-plugin package

ninja: Entering directory `build-root/build-vpp-native/sample-plugin'
[0/1] Run CPack packaging tool...
CPack: Create package using DEB
CPack: Install projects
CPack: - Install project: sample-plugin
CPack: -   Install component: vpp-plugin-sample
CPack: -   Install component: vpp-plugin-sample-dev
CPack: Create package
CPack: - package: build-root/build-vpp-native/sample-plugin/vpp-plugin-sample_18.10~rc0~413~g1433e9d1-1_amd64.deb generated.
CPack: - package: build-root/build-vpp-native/sample-plugin/vpp-plugin-sample-dev_18.10~rc0~413~g1433e9d1-1_amd64.deb generated.

Change-Id: I6b3ec2433961e53edd976b19659ce214d272c40a
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-14 14:00:51 +00:00
Damjan Marion
0fa900e482 cmake: create cmake VPP module, update sample-plugin so it uses it
Change-Id: I32e91ba8e55797ffe169f98b09bdb42caa5c7de2
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-12 17:04:36 +00:00
Damjan Marion
79dcbc74cd Always use 'lib' instead of 'lib64'
It is packaging responsibility to put libs in the right place.
Use of lib64 resulted in huge amount of files with hardcoded lib64.
This patch simplifies things...

Change-Id: Iab0dea0583e480907732c5d2379eb951a00fa9e6
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-12 16:38:59 +00:00
Damjan Marion
4dffd1c998 Compile vppinfra on macOS
Add missing calls to clib_mem_init to vppinfra test codes.

Change-Id: I53ffc6fc287d1a378065bb86c18b6e995ecdb775
Signed-off-by: Damjan Marion <damarion@cisco.com>
Signed-off-by: Dave Barach <dave@barachs.net>
2018-09-03 16:51:40 +00:00
Damjan Marion
855e26868f Switch to cmake
Change-Id: I982b69390c55b5ffbd744f355efc0aaf425b360c
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-09-02 11:24:12 +02:00
Damjan Marion
c6c0246e2e cmake: detect vpp version, set soversion, pretty config print
Change-Id: I5d0777421debe6c3e4b93d62ad6790912063a9e6
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-31 21:14:29 +02:00
Damjan Marion
43b0606301 cmake: a bit of packaging work
Change-Id: I40332c2348c4aab873d726532f2ac3c4abde7ec9
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-30 12:35:28 +00:00
Mohsin Kazmi
e04ffa4ecd cmake: Add perftool to cmake build
Change-Id: I921e92473a9dedde5952172d19676d47ffc4b53d
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-08-28 16:03:14 +02:00
Damjan Marion
e7e5de0693 cmake: add g2 and elftool tools
Change-Id: I901c5a2c0ac81421a69b8ade9307c304aa38582b
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-28 13:40:44 +02:00
Damjan Marion
0abd4a2e0e cmake: install vppapigen
Change-Id: If5bf1708a07acde73ed34639eeed95babdcf1ccd
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-28 11:02:01 +00:00
Damjan Marion
33ed3e4c7d cmake: fix clang build and few minor fixes
Change-Id: If5b850c939f7a5383f9a7eff8ac41708c3428a90
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-27 16:00:17 +02:00
Neale Ranns
917dc3b39d CMake: fix install lib and iOMA missing symbol
Change-Id: I929a5c3779cb40c9fde64e88ebe5183a95faf6ff
Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-27 08:35:25 -04:00
Damjan Marion
4c64b6edc8 cmake: add vapi build
Change-Id: Id939a0cbe35601478ad262f49bb0a1abdb62aa45
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-27 12:25:48 +00:00
Damjan Marion
4553c95ab7 cmake: add add_vpp_library and add_vpp_executable macros
Change-Id: I1382021a6f616571b4b3243ba8c8999239d10815
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-26 13:50:53 +02:00
Damjan Marion
d16004d56c cmake: move functions to src/cmake
Change-Id: Ibcb7105fa7e3c09efdce01bccd4de235fe33ea99
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-26 10:41:08 +02:00
Damjan Marion
2bfdda76d8 cmake: add more headers to the install list
Change-Id: I3a0f48381232fcac1727034aa6d2504a8d1edb04
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-25 09:55:17 +00:00
Mohsin Kazmi
99ddcc3f8b CMake: Add Cmake support for Vat
Change-Id: I3e8efce9eacba46ec9913d4024d66f00fe326095
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-08-23 13:58:06 +00:00
Neale Ranns
ffec786497 CMake: install .json files in ROOT/share/... for papi.
Change-Id: I1a5325c5f026ba5e8d89608c285e934a6e1c16e6
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-08-22 08:06:55 +00:00
Neale Ranns
5ff0e0b186 CMake: generate .json from .api files
Change-Id: Ic18aa0fb42a72b5e0ebbfbebdefc7582cb46b5ea
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-08-20 15:05:07 +00:00
Pierre Pfister
0af1852eed Detect support for memfd_create at compilation
Compilation was failing on systems without memfd_create.
This uses check_c_source_compiles to check whether the memfd_create
function is available on the system.

Credits to Damjan for his help troubleshooting.

Change-Id: I136d9504d7978e3a09438d0d76b2de1042702b2c
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2018-08-20 14:43:01 +00:00
Neale Ranns
2ddfe75240 CMakeLists file for vpp-api
Change-Id: I140e5df0a4a09dabafea8189586c3347952598a8
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-08-20 14:41:47 +00:00
Damjan Marion
9f540ed348 cmake: highlight warning and error messages
Change-Id: Id4b73368382b5e78c138987fe092429af5cb0afd
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-18 14:36:58 +02:00
Damjan Marion
612dd6a955 CMake as an alternative to autotools (experimental)
Change-Id: Ibc59323e849810531dd0963e85493efad3b86857
Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-17 22:14:39 +00:00