351 Commits

Author SHA1 Message Date
Florin Coras
371ca50a74 session: first approximation implementation of tls
It consists of two main parts. First, add an application transport type
whereby applications can offer transport to other applications. For
instance, a tls app can offer transport services to other applications.
And second, a tls transport app that leverages the mbedtls library for
tls protocol implementation.

Change-Id: I616996c6e6539a9e2368fab8a1ac874d7c5d9838
Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-03-02 12:54:31 +00:00
Billy McFall
28cf3b7da2 VPP-899: Run VPP under SELinux
Add an SELinux profile such that VPP can run under SELinux on RPM based
platforms. The SELinux Policy is currently only implemented for RPM
packages, specifically, Fedora, CentOS and RHEL. Doxygen User
Documentation has been included (selinux_doc.md). Once some discussion
on file locations has completed (see vpp-devlist), updates to the Debug
CLI documentation will also need to be updated.

Additional changes:
Patch Set 2:
- Rework selinux_doc.md such that each line is only 80 characters
  instead of each sentence on a line. Made additonal minor chnages
  to the text.
- Update vHost Debug CLI documentation to reflex new socket location.
  Cleaned up some text from when I originally wrote it, to better
  reflex proper use.
- Update exec Debug CLI documentation to be more inline with suggested
  helptext, added text regarding recommended script file location.
- For Debian builds, create the /var/log/vpp/ directory. I don't use
  Debian very much, so please pay extra attention to
  build-data/platforms.mk and build-root/deb/debian/.gitignore.
- Per discussion on VPP call, changed the default log location to
  /var/log/vpp/vpp.log.
- Changed the socket location for vHost in AutoConfig to
  /var/run/vpp/.
Patch Set 3:
- Update selinux_doc.md based on comments.

Change-Id: I400520dc33f1ca51012d09ef8fe5a7b7b96c631e
Signed-off-by: Billy McFall <bmcfall@redhat.com>
2018-01-30 13:26:20 +00:00
Gabriel Ganne
b295782c02 fixup python ply package name for fedora >= 25
package name is:
 * python-ply for centos7/rhel7
 * python2-ply / python3-ply for fedora >= 25

Change-Id: Id021802a46a0cc29e9db57e18841a76575437002
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2018-01-25 10:05:18 +01:00
Jon Loeliger
28227ad316 Makefile: Add python-ply to RPM_DEPENDS list.
Change-Id: I1bbb29ec2303f87c0053691fc157a747bff1626d
Signed-off-by: Jon Loeliger <jdl@netgate.com>
2018-01-24 13:47:46 -06:00
Ole Troan
9d42087149 VPPAPIGEN: vppapigen replacement in Python PLY.
This is a version of the VPP API generator in Python PLY. It supports
the existing language, and has a plugin architecture for generators.
Currently C and JSON are supported.

Changes:
 - vl_api_version to option version = "major.minor.patch"
 - enum support
 - Added error checking and reporting
 - import support (removed the C pre-processor)
 - services (tying request/reply together)

Version:
 option version = "1.0.0";

Enum:
 enum colours {
   RED,
   BLUE = 50,
 };
 define foo {
  vl_api_colours_t colours;
 };

Services:
 service {
  rpc foo returns foo_reply;
  rpc foo_dump returns stream foo_details;
  rpc want_stats returns want_stats_reply
      events ip4_counters, ip6_counters;
 };

Future planned features:
 - unions
 - bool, text
 - array support (including length)
 - proto3 output plugin
 - Refactor C/C++ generator as a plugin
 - Refactor Java generator as a plugin

Change-Id: Ifa289966c790e1b1a8e2938a91e69331e3a58bdf
Signed-off-by: Ole Troan <ot@cisco.com>
2018-01-23 13:03:53 +00:00
Marco Varlese
fedc455b6c Simplify packages dependency
Change-Id: I3d93f74419269448731e66708443625f43925baf
Signed-off-by: Marco Varlese <marco.varlese@suse.de>
2017-12-12 16:39:26 +00:00
Marco Varlese
b328f36d08 Tests clean-up when cleaning VPP code.
Tests are not cleaned when running "make wipe". However, it makes sense
to clean tests too since the "tested code" has been wiped and - likely -
will be rebuilt with new/extra features/requirements.

Change-Id: I34cc188e78f51d327f78f3d43cea5a82fdc6fb25
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-11-23 13:24:18 +00:00
Gabriel Ganne
b8bbd6521f subunit is required on centos as well as fedora
Remove fedora dependency restriction on subunit and subunit-devel packages.
libsunit is only called in test/ext/Makefile on all platforms safe opensuse.

Change-Id: I483f42f20f6ba8bd112c18a9c51753a5d816d1c1
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
Signed-off-by: Romain Ly <romain.ly@enea.com>
2017-11-17 08:39:06 +00:00
Gabriel Ganne
eb9e6b6f07 add libffi-dev to DEB_DEPENDS
Package is already in the RPM_DEPENDS list, and is required for test-* targets

Change-Id: I3846e68855402b50a51adf3daf218e0244562cd6
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2017-11-15 14:50:27 +00:00
Klement Sekera
a3d933c87f make test: add CACHE_OUTPUT option
This option allows one to toggle whether captured VPP stdout/stderr
output is printed inline (each line logged immediately after being
collected). Default setting is 0/no (behaviour same as before).

This allows one to see the output in case of vpp crashing during test
run even if test framework gets stuck waiting for shared memory mutex
(which crashed vpp can no longer unlock).

Complete stdout/stderr output is always printed as a block to the
logger after test finishes.

Change-Id: If3645a9b85562dba26ed9c87daa27ea5ef34f2e5
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-11-06 19:32:07 +00:00
Sergio Gonzalez Monroy
6184db357d dpdk: build nasm from source
As not all distros have the minimum required nasm version (2.12.01)
available, build nasm from sources when building Intel IPsec MB library.

Change-Id: Iaa9da87f612c0f84da5704162c3bf430b3351076
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
2017-11-05 11:35:12 +00:00
Neale Ranns
812ed39f9d VPP Object Model (VOM)
The VOM is a C++ library for use by clients/agents of VPP for programming
state. It uses the binary APIs to do so. Various other common client side
functions are also provided. Please see om.hpp for a more detailed description.

Change-Id: Ib756bfe99817093815a9e26ccf464aa5583fc523
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
Co-authored-by: Mohsin Kazmi <sykazmi@cisco.com>
2017-11-01 09:28:06 +00:00
Marco Varlese
db41776a92 opensuse support: reworked SUSE DEPS variables
Change-Id: I782541719db59daf02f0a7bd2842384dfe42c32a
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-10-25 23:43:41 +00:00
Thomas F Herbert
e41289115f Deps added to Makefile must also be in spec file.
Deps are required for Fedora too.

This patch is merged in version stable/17.10.
It should also be merged in master because it
fixes breaking rpm builds in some circumstances.

JIRA: VPP-1015

Cherry-picked from stable/1710

Change-Id: I10807069742cdd6b09a0f34d9d05e9cae4146ec3
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-10-14 09:12:12 +00:00
Brian Brooks
40b655c370 Use AESNI=y only on x86_64 machines
This fixes the native build on arm64 machines.

Change-Id: I89bff01beedb4c8e26ac55fab2dd1ed39754bf26
Signed-off-by: Brian Brooks <brian.brooks@arm.com>
Reviewed-by: Ola Liljedahl <ola.liljedahl@arm.com>
2017-10-14 09:09:57 +00:00
Marco Varlese
5f1231c5c2 Remove libsubunit 'dependency' for openSUSE and fix NASM
This patch addresses the unrequired dependency on libsubunit for
opensuse; it also adds the required new dependency on check (add
check-devel to the top-level Makefile).
It adds some extra logic to install the correct NASM version to support
AESNI.

Change-Id: Ie368dd8f8485a67ab125e735fd12cbe25b9b588f
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-10-12 15:08:04 +00:00
Damjan Marion
a472f868d6 test: retry 3 times if test fails during verify
Change-Id: Ib1cb7f09c444f3667904eade935eb220f327b6fe
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-10-11 20:05:34 +00:00
Marco Varlese
50ec721119 openSUSE packages fix.
Adding the capability for CLANG for various opensuse distros.
Added rpm-build package to build RPMs.
Tiny edit for correct error message.

Change-Id: I96a1e009d1daa44cbf8d0df60fc24091a50688d7
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-10-10 13:28:13 +00:00
Marco Varlese
9bce0f6d7c Packages dependencies: added clang3_8 and indent packages
Change-Id: I4ed2d5f7e743369e2a41cfcb93b016d928cfed95
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-10-04 15:03:12 +00:00
Klement Sekera
6b6bd9d0b2 checkstyle: add clang-format dependency, fix bug
Change-Id: I608d3b73700d57652b015a9fc09300e99386a37f
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-10-04 15:02:29 +00:00
Klement Sekera
d3e671e0db make test: fix/disable VAPI tests on centos
Workaround old `check' library on centos.
Disable building/running of C++ VAPI test as centos's gcc can't compile
our C++ code (vapi.hpp) due to bug.

Change-Id: If9da9c7f1bc076f7cdfb9bd3016dfe60a08afa36
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-09-29 12:59:19 +02:00
Klement Sekera
958b750cea drop python3 dependency
Change-Id: I99c2c1d0d5b96f33efdb58dd3a2897a752e65349
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-09-28 06:31:53 +02:00
Marco Varlese
625a9fac50 Fix SUSE dependencies to contemplate both python and python3 scripts.
Change-Id: Ib677955448833dfeb1291490340f5ea1e417213b
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-09-26 22:25:07 +00:00
Dave Wallace
f91fe3b060 Fix Ubuntu java dependency regression.
- introduced by e6f3b467 "Fix for ssl dependency on debian 9"

Change-Id: If41e517b2a55d2028ade6671f407831cfcf205c4
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-09-25 22:10:02 +00:00
Marco Varlese
dc33d4ccb3 openSUSE build fix
* Fixed package dependency
* Fixed bash unary operation error

Change-Id: I782dda8ffd807931241fa6034c110f5fedbeca8e
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-09-22 20:53:59 +00:00
Anton Ivanov
e6f3b46794 Fix for ssl dependency on debian 9
Change-Id: I32f46c5a6f0e43e7f3e38b05d9607d43faf41501
Signed-off-by: Anton Ivanov <anton.ivanov@cambridgegreys.com>
2017-09-21 16:10:48 +00:00
Thomas F Herbert
440751b918 Use openssl 1.0 compat RPM for Fedora 26 and newer.
This is just a workaround until VPP is compatible with OpenSSL 1.1.

JIRA: VPP-569

Change-Id: I8d2a113dc9400fd7e8e6850de5d91f40380455ce
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-09-20 13:40:04 +00:00
Klement Sekera
8f2a4eafea Add new C API
Change-Id: I717ce3cd7c867c155de149ec56623269d26d0ff7
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-09-19 12:23:44 +00:00
Thomas F Herbert
4b0ac82a73 Add option to build without multi-buffer crypto.
JIRA VPP-498

This patch also allows RPMs to be built without multi-
buffer crypto for some RPM based downstream distros that
don't have sufficiently new nasm or don't have an USA
export license for multi-buffer crypto.

The default is to build WITH multi-buffer crypto
for x86-64. This patch allows optional building without
multi-buffer crypto.

To build without multi-buffer crypto, set the AESNI
environment variable to n.
To build rpm packages without multi-buffer crypto,
build the rpms with the option turned off.

make build AESNI=n

or..

make pkg-rpm --without aesni

---How to test this patch on a Centos build.---

Build as above and verify that nasm isn't executed during
the build process.
vpp may be installed and the dpdk plugin may be inspected to
verify that the multi-buffer code isn't present.

Change-Id: I8c5cfd4cdd9eb2b96772a687eaa54560806e001b
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-09-12 18:42:32 +00:00
Gabriel Ganne
555d920301 add apr-devel to rpm dependency list for centos-7
Error mesasge:
...
rpmbuild -bb \
  --define "_topdir /home/gannega/vpp" \
  --define "_version 17.10" \
  --define "_release rc0~269_g030ab48" \
  vpp.spec
error: Failed build dependencies:
        apr-devel is needed by vpp-17.10-rc0~269_g030ab48.x86_64

Change-Id: I7c09b65dcc9e57cae3da396c0165b8a4c85a8c2b
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2017-09-08 18:13:44 +00:00
Thomas F Herbert
da78c85c55 Add explicit check for Fedora.
Change-Id: I0a5aece190ccc82f0f840e3bc75e1d27433f5b47
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-08-31 12:31:52 -04:00
Damjan Marion
3ea5eeb352 Do arithemtric comparison in Makefile without using bc
Change-Id: I245f56814ba3911b832e7450d42c58f235bc6dc2
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-31 12:05:47 +00:00
Damjan Marion
1211beb572 Revert "add bc to dependency list"
Adding new dependency is not right solution to this problem.

This reverts commit e58c93b2764eb306d286531a2b920c6de080cb77.

Change-Id: I08f2af5cf9c26c4302b0dbaccebbb52f0614f80f
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-08-31 12:05:33 +00:00
Gabriel Ganne
e58c93b276 add bc to dependency list
replace $(echo "..." | bc) by `echo ... | bc` as they do not seem to
behave the same way.

Change-Id: Ib8f13f0c8213aaae89d65559427e01bc40f4e8d1
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2017-08-30 19:44:56 +02:00
Gabriel Ganne
78d5abea85 silence makefile warning on ubuntu
shell error on ubuntu when OS_VERSION_ID == 16.04:
/bin/sh: 1: [: Illegal number: 16.04

Change-Id: I8db55f751ad7fb677a6565cbbce93a9bc08060b7
Signed-off-by: Gabriel Ganne <gabriel.ganne@enea.com>
2017-08-29 17:19:59 +02:00
Thomas F Herbert
bd8e242024 Add Build Requirements from Makefile to spec file.
JIRA: VPP-498

Changes to build to help with downstream distro builds
for Fedora, Centos and RHEL distros.
Add nasm, automake, libtool, byacc, bison and flex.
Remove libconfuse and dependencies.
Remove epel-release rpm and dependencies.
Add conditionals to work around Python 2 packaging
inconsistency in Fed 25.
Add numactl to rpm requirements.

Change-Id: Ia39f8b931dc87e42df56414d38662eb33c7a4ca7
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-08-26 18:27:06 -04:00
Marco Varlese
27de761048 Fixed the SUSE dependency on libnuma
Change-Id: I0de13c7fac91c7fc2fcbc9e765ae37720a583aaf
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-08-25 16:32:52 +00:00
Sergio Gonzalez Monroy
acdc306093 dpdk: required changes for 17.08
DPDK 17.08 breaks ethdev and cryptodev APIs.

Address those changes while keeping backwards compatibility for
DPDK 17.02 and 17.05.

Change-Id: Idd6ac264d0d047fe586c41d4c4ca74e8fc778a54
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
2017-08-25 14:24:53 +00:00
Klement Sekera
f413bef135 make test: collect symlinks to failed tests
Compress files in temporary directories of failed tests and symlink
the directories under /tmp/vpp-failed-unittests location - preparation
for jenkins archivation. Automatically cleanup the directory at start
of test run.

The compression is performed only when environment variable
COMPRESS_FAILED_TEST_LOGS is set to one of "yes", "y", "1".
This is set in verify target, but left unset by default, so when
invoking make test by hand, files won't be compressed.

Change-Id: I84c8f1c6aa79aa9c0b753357022b1f195f17a283
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-08-17 14:44:05 +00:00
Thomas F Herbert
b60f4965bf Create source rpm.
Use actual file name for tarball.
Includes required modifications in spec file for unpacking srpm.
Spec file source references actual dist tarball name
so it matches the revision and release while building from srpm.

JIRA: VPP-498

Change-Id: I8b55a69f060b7864527b94d8c5b0a2ebccc306b1
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-08-08 15:29:11 +00:00
Thomas F Herbert
33129bb9a3 Fix nasm deps for Fedora.
Fedora 24 and 25 distro already includes nasm 2.12 but Centos does not as yet.

Change-Id: I060ea8b7b7892ac8444d850398ed1c9100631fbc
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-08-04 07:12:06 +00:00
Marco Varlese
024e23ddd9 Added NASM package to support SW crypto
Change-Id: Idd6614b80e456eb40c760024b563ffd0e5c313ec
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-08-02 13:16:19 +00:00
Thomas F Herbert
8d48722b09 Enable build from dist tarball independent of git.
This is necessary for downstream builds from
source rpm.

JIRA: VPP-498

Change-Id: I30ea51a19b153dc35ececbbca79b940fe4e3bc8a
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-07-20 20:10:09 +00:00
Dave Wallace
d756b35032 Fix unlinking of /dev/shm files.
- api-segment prefix not used when unlinking shm files
- unlink root region on exit if no clients referenced
- stale reference to freed segment name
- don't add fake client to /db unless CLIB_DEBUG > 2
- turn off the gmond plugin
- clean up unused vars in vpp/api

Change-Id: I66451fcfd6ee64a12466c2d6c209050e3cdb74b7
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Signed-off-by: Dave Barach <dave@barachs.net>
2017-07-17 21:00:52 -04:00
Damjan Marion
b1dab65a08 top-level Makefile improvements
- auto-execute startup.vpp file if exists
- add DPDK_CONFIG=<string> to speficy custom config for autogenerated
  startup.conf, e.g. DPDK_CONFIG="no-pci"
- add DISABLED_PLUGINS=<comma separated list> option

e.g.

make DISABLED_PLUGINS=dpdk,acl run

or
export DISABLED_PLUGINS=dpdk,acl
make run

Change-Id: Ib0891d27aeae16b69b67c4c3e893bb3dbde5e7e1
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-06-30 18:17:43 +00:00
Damjan Marion
aad20988b6 Rewrite vppctl in C
- removes python dependency
- removes vpp_api_test dependency
- communicates over unix socket
- properly detects terminal size and type
- responds on terminal resize

Change-Id: I46c0a49f9b5f9ef8a0a31faec4fc5d49aa3ee02e
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-06-24 15:14:14 +00:00
Damjan Marion
0dc3f19194 Add option to build sample plugin in top-level makefile
Change-Id: Ibf15eeb5fef2a3761089e6386783a1606d2e2b79
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-06-02 10:58:46 +00:00
Marco Varlese
d6ad5a5113 Support to install dependencies on openSUSE distribution
This patch allows to use the "make install-dep" on openSUSE.

Change-Id: Ib0586ffebbf882032468e4f4c0df2d5d8e99d7c9
Signed-off-by: Marco Varlese <marco.varlese@suse.com>
2017-06-01 17:16:11 +00:00
Peter Mikus
ad625f55db Revert "dpdk: build sw cryptodev support with make verify"
This reverts commit 0e2e10b77d63196bfb93ae5be1251bbc1a1b561a.

Change-Id: I3c1737f391b6ed127f92416f06449216e79859bb
Signed-off-by: Peter Mikus <pmikus@cisco.com>
2017-05-31 15:45:25 +00:00
Sergio Gonzalez Monroy
0e2e10b77d dpdk: build sw cryptodev support with make verify
Change-Id: Ica95b5d3d44563c93c89b2a3233171c3aa1f048d
Signed-off-by: Sergio Gonzalez Monroy <sergio.gonzalez.monroy@intel.com>
2017-05-30 09:31:29 +00:00
Damjan Marion
9b6463d72d Add Debian Jessie support in toplevel makefile
Change-Id: I805800503f5330c14d2e654c02bf43e21e7ce917
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-05-29 13:35:46 +00:00
Damjan Marion
aade2c5a70 Disable "make test" for CentOS
Due to issues with python on centos we cannot reliably
execute "make test". To be removed after problem is solved.

Change-Id: I92d2b647c72a8ba58cf8a9d4b443357e61ef403f
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-05-22 16:59:05 +02:00
Thomas F Herbert
bc1c848772 Remove specific versions of some packages.
Add lcov for rhel.
Correct fedora Development tools group and rpm-build.

Change-Id: I0a19e239e6bc4f34f3aacfbb7e08e2abbdc061ed
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-05-20 10:55:16 +00:00
Dave Wallace
fa7f9fddf2 Add indent to DEB_DEPENDS missing in vagrant box.
Change-Id: Icb9412ed09095443c20ae1fe2b71b646bbe580b0
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2017-05-19 09:01:20 +00:00
Igor Mikhailov (imichail)
ee29dd2811 Generate test paths for lib and lib64 subdirectories
wildcard produces empty paths when 'make test' is run
from a clean tree: install-<tag>-native directories
don't exist yet.

Change-Id: I3b3bbd86cf7eda18f2c698f85b834f82b1a19065
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2017-05-09 23:27:14 -07:00
Damjan Marion
7bee80c823 Fix remaining 32-bit compile issues
Change-Id: I9664214652229b663c3e3ba7406b4ede96bfb123
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-05-09 17:52:43 +00:00
Igor Mikhailov (imichail)
1989bce006 lcov is an EPEL rpm (at least for Centos)
Change-Id: I064a78df6a2cf734bb7c54f80682690c203a0a98
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2017-05-06 01:46:42 +00:00
Igor Mikhailov (imichail)
342089672d Fix RPM_DEPENDS for all rpm distros after 28ea251
Change-Id: I58ffdf75f361ff830c2b0c6400ccd012a4d16d3d
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2017-05-04 01:19:15 +00:00
Damjan Marion
686c1c8454 Extend ebuild to specify "configure" subdir, enable verify for sample-plugin
Change-Id: I2056e5d19bc3713e7a13e015dabf3b2431800973
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-04-20 11:30:28 +00:00
Klement Sekera
0bc5063ae9 disable extended BFD tests in verify job
Change-Id: I14484137fde8d6e77fc5905943657089347629fb
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-04-19 20:24:21 +00:00
Damjan Marion
c06eeb0e3c Fix "make dist" to include version number, docouple it from rpm packaging
Change-Id: If2f9976d668089026c97b897cf449bff09050631
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-04-19 20:16:14 +00:00
vagrant
937bf30183 make test: python interpreter customization
Allow using custom python interpreter via 'PYTHON' env variable.
E.g. env PYTHON=pypy make test.
Get latest pip automatically to properly function in environments,
where old pip is available and a proxy is required. This allows
testing pypy in a centos vagrant-provided vm.

Change-Id: I67a658fc927303468cc67f0ac192317ca2907625
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-04-19 07:12:23 +00:00
Thomas F Herbert
28ea2515e5 Fix for dependency problem with Fedora 25
Change-Id: I0e86f8eb6d62c6a109876b5bf35cc62ab617608e
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-03-29 21:48:22 +00:00
Thomas F Herbert
70efbfcd49 Check for missing deps on bootstrap target for Centos and Fedora.
Change-Id: I823a066417fb6205d1e6b0fdf1de17b054f6d312
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-03-27 15:00:57 +00:00
Ole Troan
9f81d4fe5c Python-API: debian packaging now depends on python-all (for pybuild)
Change-Id: I6b1dd6bdf03fa506c4b114d15800d9fe03e36395
Signed-off-by: Ole Troan <ot@cisco.com>
2017-03-27 12:27:28 +00:00
Klement Sekera
88d38c4f01 make test: run all tests in test-cov target
Change-Id: I7040c1ecc8b6e5e883420c1c81aa8b70e56263e5
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-03-22 10:56:02 +00:00
Klement Sekera
993e0edf4e make test: support out-of-tree tests
env EXTERN_TESTS="/path/to/extra/tests" make test

causes to run the default test set and tests collected from
test_*.py files under subtree specified in EXTERN_TESTS.

Change-Id: I58c5471dd6010730278a5b47d4318737d920bc28
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-03-22 10:48:26 +00:00
Alexander Popovsky (apopovsk)
d2b792b778 Add epel-rpm-macros for CentOS/RHEL install-dep
%py2_install is required by vpp-api-python and is not available on
bare CentOS/RHEL install, causing 'fg: no job control' error.
Added 'epel-rpm-macros' to the list of EPEL dependencies

Change-Id: I1e09d7d825d9d8db06e7385d2b8d5579c8ce748b
Signed-off-by: Alexander Popovsky (apopovsk) <apopovsk@cisco.com>
2017-03-16 18:36:42 -07:00
Ole Troan
3cc4971882 Python API: Change from cPython to CFFI.
Change-Id: I03e52466fb3f909ae52b8fba601168f3eadbd972
Signed-off-by: Ole Troan <ot@cisco.com>
2017-03-15 21:43:30 +01:00
Thomas F Herbert
c563e0e11e Nasm > 2.11.06 required for sw_crypto.
Change-Id: I7583d3074478579a841c7827a12a4a8fc74d9d61
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2017-03-14 12:06:06 +00:00
Damjan Marion
374e2c5fc3 Retire vpp_lite
vpp_lite platform is not needed anymore as same efect can be
achieved with following startup.conf config:

plugins {
	plugin dpdk_plugin.so { disable }
}

Change-Id: I690ea8ceb1c6e1fe32e01e7da54e9958019a93bf
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-03-10 19:35:49 +00:00
Klement Sekera
a86e289570 make test: add make test-shell[-debug] targets
This starts a bash with the same environment as the test framework
uses, allowing easy debugging.

Change-Id: I956deda913b73dae5b1e1976417834ae4731f88a
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-03-09 20:06:58 +00:00
Klement Sekera
871349371a make test: split into basic and extended tests
Implement plumbing to allow decorating tests as extended, e.g.:

@unittest.skipUnless(running_extended_tests(), "part of extended tests")

both methods and classes can be decorated this way.

Change make test and make test-debug to run only non-extended tests.
Introduce make test-all and make test-all-debug to run the full suite.
Run full suite as part of make verify.
Decorate most BFD tests as extended.

Change-Id: I3bc64f59e9fe238f7f767d7e043dc165d03e9dfa
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-03-08 21:56:59 +00:00
Filip Tehlar
974cdc6faa Fix LISP and ONE crc marcos
Change-Id: Icd0dba04d8929456228136d1f25c459bffcc6a7a
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2017-02-22 19:17:34 +00:00
Radu Nicolau
6ca42d333b dpdk: updated build to automatically download Intel(R) Multi-Buffer Crypto for IPsec Library
Change-Id: I58182edb7b0d314bb6dfa1daf7b00012196fd3e1
Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
2017-02-20 10:53:37 +00:00
Klement Sekera
104543fa6a make test: improve test filtering
Implement fine-grained test filtering by supporting more complicated
filters beside the original file name suffix filter.

Change-Id: If5a166d08cffe8c58cc6cf174e6df861c34dbaa6
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-02-06 23:33:52 +00:00
Ed Warnicke
eb82e7f27c
Fix issue with apt-get update not being run on Ubuntu 16.04
Change-Id: Ic05b86c4ea9b62afbf03a2a36c4a2ef45f5c140b
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2017-02-01 16:08:51 -08:00
Dave Barach
3ad7704fbb Prep work for Coverity upload processing via Jenkins
Change-Id: I2575d780d19e12ddf8a77e5596e5d7cc3dbf4233
Signed-off-by: Dave Barach <dave@barachs.net>
2017-01-31 20:40:11 +00:00
Gabriel Ganne
898171afd9 fix OS_ID test in root Makefile
fixup for 2ce7f9834ab55728520bff0dd15f8d82c10b95a0

redhat, centos -> rpm
debian, ubuntu -> deb

Change-Id: I0a07d3689b2bb5656d1bc688677680f83ac2e0bb
Signed-off-by: Gabriel Ganne <gabriel.ganne@qosmos.com>
2017-01-24 16:11:44 +00:00
Damjan Marion
2ce7f9834a Add dpdk development packaging
Change-Id: I6aa2a6709241d99ce734c29e47487eb456907351
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-01-20 15:02:12 +00:00
Klement Sekera
72715ee4e2 make test: add checkstyle target
Change-Id: I59d3c3bc77474c96e1d6fa51811c1b13fb9a6c5b
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2017-01-17 18:35:21 +00:00
Damjan Marion
51a7c8b762 Add 'make test' to verify job
Change-Id: Iaab9c1a1c691a613d25ea28a22ac5db5943d8892
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-01-16 17:19:17 +00:00
Damjan Marion
6484b3baa3 Toplevel Makefile cleanup
Change-Id: I2f4cb267dbb4d6e6fc6bef908c4bb548c5f37b35
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-01-16 14:43:19 +00:00
Damjan Marion
6bbf83a01b Revert "vppctl: bash completion for vppctl commands"
This patch is causing build failures

This reverts commit d995c757f05f78aa759b0a65c0a7e38088e690a9.

Change-Id: I0c8d5a4208135d77aaa3a6a470d26140f7b74733
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-01-10 09:40:45 +00:00
Padraig Connolly
d995c757f0 vppctl: bash completion for vppctl commands
Added bash completion that will include all commands from build time
*Script takes list of commands generated by doxygen-siphon-list
*Configured doxygen-siphon makefile to generate just cli commands
*List of cli commands put in /usr/share/vpp
*Stopped siphon using doxygen bootstrap, uses main bootstrap instead
*Added rpm/deb check for installation of packages, separate from bootstrap
*NOTE: Once you have installed the vpp .deb/.rpm package you will have to
 restart bash

Change-Id: Ie503e80d5177481f6e7dbe59378f2e0d76f29152
Signed-off-by: Padraig Connolly <padraig.connolly@intel.com>
2017-01-09 15:20:49 +00:00
Gabriel Ganne
b17402ecd0 preserve environment when make install-dep
for those who work behind a firewall/proxy-server

Change-Id: I099830d2da05296b2f109ca25576a1e865ddcce6
Signed-off-by: Gabriel Ganne <gabriel.ganne@qosmos.com>
2017-01-03 18:24:20 +00:00
Matus Fabian
5d22448922 fix run-vat path
Change-Id: Idfe5050b2db35794687da797afdca60a707aa42c
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2017-01-02 14:25:12 +00:00
Damjan Marion
cb034b9b37 Move java,lua api and remaining plugins to src/
Change-Id: I1c3b87e886603678368428ae56a6bd3327cbc90d
Signed-off-by: Damjan Marion <damarion@cisco.com>
2017-01-01 18:11:43 +01:00
Damjan Marion
37d77e9edb test: fix paths after source code move
Change-Id: I3100260bb697f9af2f73ad3777e8b27069c5babe
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-12-28 15:21:59 +01:00
Damjan Marion
7cd468a3d7 Reorganize source tree to use single autotools instance
Change-Id: I7b51f88292e057c6443b12224486f2d0c9f8ae23
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-12-28 12:25:14 +01:00
Ray Kinsella
1a9b5b71cd vagrant: Fixing sudo related vagrant errors
The dpkg sudo trigger appears to want to run interactively despite the noninteractive
debconf setting. This is a problem upstream for vagrant also, see.

https://github.com/hashicorp/terraform/issues/9763

Incorporating the recommended fix to Vagrantfile from upstream

https://github.com/hashicorp/terraform/pull/9783

Change-Id: I8da8522fc9e80fc3bd268b347a786054ad019170
Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
2016-12-21 17:05:27 +00:00
Damjan Marion
a1bd0230d2 Remove RPATH from binaries before creating .deb and .rpm packages
Change-Id: I684d4eabac03e049524204864c985e14eea8d92e
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-12-20 13:43:21 +00:00
Klement Sekera
9225dee965 make test: improve robustness and performance
Introduce an API which asserts empty capture for interface.
Throw exception in old API if the capture does not exist, thus
making it clear if the test expects packets to arrive or not.
Improve performance by not doing sleeps after starting the packet
generator, rather lazily deleting captures when needed.
Fix wrong usage of packet.show() in various tests.

Change-Id: I456cb23316eef99b3f35f80344fe595c4db9a21c
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-12-16 08:09:40 +00:00
Juraj Sloboda
0279b29f32 Add make test code coverage reporting using gcov
Change-Id: Ia8247841fdbe76e1d888aab49ae213b4216af273
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-12-09 20:09:35 +00:00
Klement Sekera
0e3c0de1ed BFD: basic asynchronous session up/down
This is a work-in-progress basic BFD session handling. Only
asynchronous mode is supported at the moment. Setting the session flags
doesn't work.

Change-Id: Idba27f721b5c35be5a66a6d202a63d23ff7ecf6f
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-12-07 19:54:12 +00:00
Ole Troan
7e3a875c94 API: Adapt make test to Python API changes.
Change the test wrapper script for the updated Python API.
All tests but the L2BD multi instance runs fine.
That is currently skipped.

I see intermittent failures when an MLD message is received
before the ND NA in MPLS and IPV6 FIB tests.

Change-Id: If809877c9abdf596dbb0a419ce5429552f63d212
Signed-off-by: Ole Troan <ot@cisco.com>
2016-12-06 21:17:45 +00:00
Ed Warnicke
10389371b3 Add banner for building deb and rpm packages to verify
Change-Id: I03fd6f32ad720a6a2443c6b350c8890dec579229
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-12-01 09:32:23 +00:00
Ed Warnicke
31a64e55c2
Temporarily remove make test
Change-Id: I2b8c3c99f1358c53721790f8c6aefa7123c4959d
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-11-30 16:53:58 -06:00
Ed Warnicke
ddff8a4ee4 Have make verify check deb and rpm builds
Change-Id: I7fe3558118835240ecd155609821f9de2d609553
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
2016-11-29 17:35:44 +00:00
Ed Warnicke
cfce8fa443 Added make test to make verify
Change-Id: If5dcfc330a7df69b2c811ce5a8a48c2e0f968270
Signed-off-by: Ed Warnicke <hagbard@gmail.com>
2016-11-29 17:35:44 +00:00
Damjan Marion
c21d59fa33 make: call install-dep on unatteded invocation
Change-Id: I7a3c21c47f49b56b6435397e731d4da961ef8ffd
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-19 12:15:52 +01:00
Matej Klotton
86d87c40dd Update test documentation.
- update IRB, IPv4, ipv6 doc
- revert 778c2765c8ea5c6628f6d668847f0b9ae06dbf3d

Change-Id: I9af5ed9329ce5fe01392cf28d5bf321cfc647e48
Signed-off-by: Matej Klotton <mklotton@cisco.com>
2016-11-15 15:32:48 +00:00
Damjan Marion
e30872e660 Add clang to 'make verify'
Change-Id: I9ba84632da93ffb7713064db51f2888fc212713a
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-12 18:55:49 +00:00
Damjan Marion
7f3c36bb85 Use gcc for start in 'make verify'
Change-Id: I8ef5f8aeb9af5127337163c4767bfa92b62f8175
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-12 00:11:20 +00:00
Damjan Marion
4cecc611be Add 'make verify' target to top-level makefile
Change-Id: I992df2b6ded9533d32f5f936e6d651055061f054
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-11 23:31:55 +01:00
Klement Sekera
778c2765c8 Improve test framework documentation
Change-Id: I06f0cbbbdd29e04a07f1db6807b3e16f1d41e8d2
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-11-09 12:00:18 +00:00
Thomas F Herbert
20a29c7b4d VPP-498: Prepare vpp RPM packaging for use by downstream distros.
Change spec to add new macros to get rid of relative dir reference and
use vpp version. Store version string in .version to store metadata in
dist archive. New script to create dist archive.
Add dist and wipedist targets to Makefile for builds of source RPMs.

Change-Id: I7cf0164f0cb094ec70f3dc323ed7fa2ee82bd902
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2016-11-04 22:22:53 +00:00
Klement Sekera
277b89c946 add vpp debugging support to test framework
improve test documentation

Change-Id: Ia9678aa2532ecb4cb33736aedb4a31aa3f2a3f93
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-10-31 23:48:25 +00:00
Klement Sekera
f62ae1288a refactor test framework
Change-Id: I31da3b1857b6399f9899276a2d99cdd19436296c
Signed-off-by: Klement Sekera <ksekera@cisco.com>
Signed-off-by: Matej Klotton <mklotton@cisco.com>
Signed-off-by: Jan Gelety <jgelety@cisco.com>
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-10-26 17:42:19 +02:00
Peter Ginchev
53194292b0 Fix test target build
Change-Id: Ib06b40292858f32df9c62e747808e0ef140bd9dd
Signed-off-by: Peter Ginchev <pginchev@cisco.com>
2016-10-18 14:36:19 +00:00
Pierre Pfister
cd8e318a76 Test Infra: Add plugin support
This patch adds plugin path to vpp commandline arguments
when 'make test' is run.
Hence, test cases can test plugins.

Change-Id: Ib90efa1f62e03b45b84533c49c7a5d040aa8cddf
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-10-07 21:34:59 +00:00
Klement Sekera
b80f9d1b73 don't require root privileges when running the tests
Change-Id: Ib67bf1a898e3c1e4038698f1cb068ae9099d7921
Signed-off-by: Klement Sekera <ksekera@cisco.com>
2016-10-05 16:43:25 +00:00
Damjan Marion
f56b77a076 test: new test infrastructure
Change-Id: I73ca19c431743f6b39669c583d9222a6559346ef
Signed-off-by: Jan Gelety <jgelety@cisco.com>
Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
Signed-off-by: Stefan Kobza <skobza@cisco.com>
Signed-off-by: Matej Klotton <mklotton@cisco.com>
Signed-off-by: Maciek Konstantynowicz <mkonstan@cisco.com>
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-03 19:58:19 +00:00
Chris Luke
36d2506382 Enable doc building on MacOS
Simple tweak to the Makefiles to allow "make doxygen" to work
natively on Macs - assuming the appropriate things have been
installed first, which it tests for.

Change-Id: I1a3e72759d533270a0512de38595c3bc3f71dee0
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-09-23 07:52:28 +00:00
Damjan Marion
2470485158 checkstyle: improve speed by checking only recently changed files
This change makes checkstyle much faster by checking only recently
changed files. It only checks files changed in last commit and files
which are localy modified. Old behavior is preserved by specifying
argument "--full" when invoking script.

In addition "make checkstyle" and "make "fixstyle" actions are added
to the top-level Makefile.

Change-Id: I7d86225bd282f32ee508e7f52692a3778ac8dcda
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-09-07 15:50:36 +02:00
Chris Luke
e0d802bc53 VPP-221 Loosen Doxygen CLI command struct parser
Make the struct parser slighty slightly more accomodating of
whitespace in places it has no business being.

Also add missing OS_ID thing to Doxygen makefile.

Change-Id: Id3d198fd926f7a6c2ed40bc2d08907aad5d5ac33
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-08-31 10:07:45 -04:00
Chris Luke
54ccf2261c VPP-221 CLI auto-documentation infrastructure
As a step before Doxygen, extract CLI-related struct initializers
from the code and parse that into a summary of the CLI commands
available with the provided help text, such as it is. At the moment
this only renders this into an indexed Markdown file that Doxygen
then picks up but later we can use this information to enrich the
existing VLIB_CLI_COMMAND macro documentor as well as provide
runtime documentation to VPP that is stored on disk outside the
binary image.

Additionally support a comment block immediately prior to
VLIB_CLI_COMMAND CLI command definitions in the form /*? ... ?*/
that can be used to include long-form documentation without having
it compiled into VPP.

Examples of documenting CLI commands can be found in
vlib/vlib/unix/cli.c which, whilst not perfect, should provide a
starting point. Screen captures of sample output can be seen at
https://chrisy.flirble.org/vpp/doxy-cli-example.png and
https://chrisy.flirble.org/vpp/doxy-cli-index.png .

Next, shift the Doxygen root makefile targets to their own Makefile.
The primary reason for this is that the siphon targets do dependency
tracking which means it needs to generate those dependencies whenever
make is run; that is pointless if we're not going to generate any
documentation. This includes the package dependencies since they since
they sometimes unnecessarily interfere with the code build in some cases
at the moment; later we will look to building a Python venv to host the
Python modules we use.

One final remark: In future we may consider deprecating .long_help
in the VLIB_CLI_COMMAND structure entirely but add perhaps .usage_help.
.short_help would be reserved for a summary of the command function
and .usage_help provide the syntax of that command. These changes would
provide great semantic value to the automaticly generated CLI
documentation. I could also see having .long_help replaced by a
mechanism that reads it from disk at runtime with a rudimentary
Markdown/Doxygen filter so that we can use the same text that is used in
the published documentation.

Change-Id: I80d6fe349b47dce649fa77d21ffec0ddb45c7bbf
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-08-31 12:56:56 +00:00
Ole Troan
1557dfe844 Adding python-dev dependency to main Makefile.
Change-Id: I9968015acfc2cc63f97dee25538a9b3e61fac5b6
Signed-off-by: Ole Troan <ot@cisco.com>
2016-08-25 13:01:22 +00:00
Ole Troan
5f9dcff39d VPP Python language binding - plugin support
- Moved Python generator tool to tools directory
- Added build-vpp-api Makefile target
- Generator now only creates a Python representation of the .api
  the rest of the framework is in the vpp_papi script
- Each plugin has its own namespace.
- Plugin Python files are installed in vpp_papi_plugins for easy
  use inside the build tree.

Change-Id: I272c83bb7e5d5e416bdbd8a790a3cc35c5a04e38
Signed-off-by: Ole Troan <ot@cisco.com>
2016-08-25 00:29:40 +00:00
Chris Luke
4aa76c1c16 Fix missing include dirs in doxygen
Also allow a developer to alter the directories scanned at runtime to
facilitate shorter run-times when writing documentation.

Change-Id: I2a09519661a3abe1fbc0cfc294000934852af951
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-07-26 17:04:19 +00:00
Damjan Marion
905a7f5520 Multiple changes in the plugin build infra
- configure.ac - some plugins are enabled by default
- Plugin .so files are placed into corresponding subdirs
- WITH_PLUGIN_TOOLKIT macro is retired - not needed anymore
- plugins/build-data is removed
- plugin makefiles are not building static libs anymore
- plugin makefiles are not installing header files to /usr/include
  anymore

Change-Id: I55681bd9ce34811f7eb1b2b24d9f0ca42df1cf04
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-08 10:43:38 +00:00
Damjan Marion
a7775387b1 Set plugin path properly when using toplevel makefile to run/debug vpp
Change-Id: Ib6f7dd9d7e1d9f2f2108a8b89421149e4435d5ec
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-08 00:19:12 +00:00
Keith Burns (alagalah)
4b72a5812c Add gtags option to use ctags. Hidden option in Makefile
Change-Id: I6b01c1f2beec37d7aaad1ab9dab303835a9feb49
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-07-02 17:54:36 -07:00
Keith Burns (alagalah)
f289ca6bc6 Updated Makefile so install-dep doesn't prompt
Change-Id: I8e5f4d120c9add636054e740f2a8aa3a0f8bb7d1
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-06-17 22:11:04 +00:00
Ole Troan
3b3688f9d3 6rd: Move to plugin
- Change toplevel plugins make target. Now builds all plugins under
  plugins/. (Apart from sample-plugin).
- Move sixrd code to plugins directory and make necessary changes to
  make it a plugin
- Remove 6rd hooks from IP lookup code

Change-Id: I447e92e3bee240cd8de01d0abac2e1708e8c27d1
Signed-off-by: Ole Troan <ot@cisco.com>
2016-06-15 16:10:08 +02:00
Damjan Marion
1aa310fe3f Cleanup /dev/shm before starting VPP from top-level Makefile
Change-Id: I3a8b85ad033707552b9df7d0d08548517a8571ce
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-14 13:35:58 +00:00
Pierre Pfister
3535222f97 VPP-94: Add build-data directory for plugins and Makefile target
Commit e36af5f3153 moved sample-plugin a dedicated directory.
The build system could not find sources for sample-plugin-* targets.
This commit adds a dedicated build-data/packages directory for
plugins and moves sample-plugin.mk there.

Change-Id: I9e3ee8858580e86ff6d4f7317300df0a5e239a01
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-06-05 13:56:19 +00:00
Dave Wallace
ed18a1c840 VPP-65: Fix top-level "make install-dep" to work behind a firewall /
proxy-server on Ubuntu.


Change-Id: I3f662455728adb81ca5a079540d8a9c615a5b977
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2016-05-16 11:46:28 +00:00
Chris Luke
1d1644c260 VPP-57 Add doxygen build dependencies
Change-Id: I764d8a440c050d753e0380e139f489d3085f17f4
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-13 19:28:39 +00:00
Chris Luke
b585097048 VPP-57 Add Doxygen to VPP
- Configures Doxygen.
- Adds a source filter to do magic on our use of the preprocessor to do
  constructor stuff to make Doxygen grok it better.
- Adds a convenience helper to the root Makefile.
- Adds a README.md to the root directory (and which Doxygem uses as its
  "mainpage".
- Add several other documentative files.
- Currently using SVG for call graphs, though this may have a
  load-time performance impact in browsers.

Change-Id: I25fc6fb5bf634319dcb36a7f0e32031921c125ac
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-13 17:23:36 +00:00
Ed Warnicke
027103e561 Switch to using -headless JDK
By default, jdks bring a bunch of UI related things
we don't need, so switch to headeless.

Also, use default-jdk-headless for Ubuntu after 14.04.
Use openjdk-8-jdk-headless for Ubuntu 14.04.

Change-Id: I3cf14c39c9f59dc2f1beba8dfb19971f4b67f5a6
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-07 13:03:22 +00:00
Ed Warnicke
d6a779c411 Fix for unattended in Makefile
Also works around verify

Change-Id: I79ac470ec3fa9943c3a0913ebfaaf91176eb9a81
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-04 01:50:47 +00:00
Damjan Marion
c5e8681b32 Re-do java-8 handling, add unattended switch to toplevel Makefile
Change-Id: Ifaea353be5b42bb6edbcfa0506d02b721c00e392
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-02 19:35:11 +00:00
Keith Burns (alagalah)
f86abbb936 VPP-33 Removing javah from Makefile. Merged as fix for Gerrit 884
Change-Id: I2d9d6a607ffa1a8788c1ce79770db8b2b9bae6fb
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-05-02 10:20:53 -07:00
Maros Marsalek
45a42b5d7f
HONEYCOMB-10: jVpp - the new java API. Java code generation
The old japi has two main drawbacks:

* it is not fully generated (requres manual coding for
every new api call that returns data other thanstatus code)

* it is not asynchronous from Java perspective (requires
active wait loops - big overhead due to JNI boundary being
crossed lots of times).

The new api is lightweight (fully generated except for connect,
disconenct and ping) and truly asynchronous (uses callbacks,
utilities that offer java.util.concurrent.Future interface
are also provided).

Change-Id: I531080ef651e8a74f19210490c71d161221ab600
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-02 08:46:21 -05:00
Ed Warnicke
7226b84d74 Fix for java8 releated breakage in make install-dep
Change-Id: I17ae3c7031a820746a3785a35b440e17430d0ac5
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-04-28 22:44:26 +00:00
Marek Gradzki
60c63c7b53 VPP-8: Set java-8 for JNI
Change-Id: Ia81713a72e3c48b1d97bbf3f20a908bbc4ebd3b1
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-04-28 16:23:35 +00:00
Thomas F Herbert
473bf23be8 Update Makefile to add debuginfo RPMs for gdb
Change-Id: I29d8cc839565999e2fabe09d29c40e09aa1ea784
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
2016-04-28 10:59:26 +00:00
Damjan Marion
6b1d7c55d6 Make automake silent rules default
Change-Id: Ia504ccdac1deac20f20cf7fb76f78b2d8c505474
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-26 19:36:59 +00:00
Srivatsa Sangli
0777915b2a ubuntu 16.04 build support. Supporting systemd with vpp.service files.
Incorporating review comments : modified debian/control dependencies

Change-Id: Ib2fe85d81eb7f1803ef8f54294c7c18cd07c61ba
Signed-off-by: Srivatsa Sangli <srivrama@cisco.com>
2016-04-20 18:44:41 +00:00
Ole Troan
6855f6cdfe Python-API: Inital commit of Python bindings for the VPP API.
See: https://wiki.fd.io/view/VPP/Python_API

Change-Id: If135fc32208c7031787e1935b399d930e0e1ea1f
Signed-off-by: Ole Troan <ot@cisco.com>
2016-04-20 16:50:29 +00:00
Damjan Marion
7a2a378d2d dpdk socket-mem handling optimizations
- introduces default socket-mem size of 512 MB per socket
 - default socket-mem value is applied to all discovered CPU sockets
 - fixes bug when < 1024 socket-mem parameter is specified
 - for socket-mem < 1024 code prefers 2 MB pages
 - improves handling of manualy specified socket-mem values

Change-Id: I9ef848108d7dd1228fbd82a5be49eb5277a93683
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-17 18:26:17 +02:00
Damjan Marion
95db563571 Fix dependency install on Ubuntu 16.04
Change-Id: I2a915a64c65ee78658ee782c0f16963024b8b2eb
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-14 23:29:48 +00:00
Damjan Marion
0df78dda5a Add DPDK 16.04-rc2 support
Can be used by specifying DPDK_VERSION=16.04-rc2 in the make command line

Change-Id: I657b44d7ca22f1ef57756e7703088020fab12bc6
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-03-29 21:25:12 +00:00
Ed Warnicke
3c79e65bd6 Fix epl-release in make install-dep for rpm
Change-Id: I01a7421dc58ee6683eb84482bb92dd6a519a21e8
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-03-29 09:00:29 +00:00
Ed Warnicke
84eda9de0b Add build-root/*.rpm to .gitignore
Change-Id: I88398b5e538271efa4657851bf53c9b76a56b432
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-03-25 20:28:48 +00:00
Ed Warnicke
76a66c1f06 Add -y to apt-get install for install-dep target
This allows install-dep to be run non-interactively

Change-Id: I5c3e55958ed16dd3d128bbad9f317d9f2428d41a
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-03-18 15:02:24 +00:00
Damjan Marion
e6f9023ff0 Few additions to top-level Makefile
* Added option to specify target platform (e.g. export PLATFORM=vpp_lite)
* Added ctags targed to (re)build ctags database
* Added cscope targed to (re)build cscope database

Change-Id: I93feb7b458abe9fbd93000f75b7be24e3865f089
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-03-17 09:16:47 +00:00
Damjan Marion
ebb27fb480 add install-dep target to toplevel Makefile
Change-Id: I9dbe6676086ef083729bec1774f544498d1ec3e5
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-25 15:55:23 +00:00
Damjan Marion
eef4d99bcd Few improvements in toplevel Makefile
Change-Id: I896aed32499cd7159c4b6f3b165cab4e579f6153
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-23 22:05:49 +01:00
Damjan Marion
e17fdb5ddf Add Top-Level Wrapper Makefile
Change-Id: Ie3431986ddb42db8d331fcb3d34250a6ec9d9a02
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-10 13:14:39 +00:00