Browse Source

ci: speed up code-coverage jobs

Plus some documentation updates

Change-Id: I6fd2b04e22bca6c3d6e36e78d1995220e261206b
Refs: #3809
pull/6/head
Davide Pesavento 9 years ago
parent
commit
0530b5bf86
  1. 3
      .gitignore
  2. 4
      .jenkins.d/10-build.sh
  3. 10
      .jenkins.d/README.md
  4. 2
      AUTHORS.md
  5. 2
      README-dev.md
  6. 8
      README.md
  7. 21
      docs/INSTALL.rst
  8. 2
      docs/README.rst
  9. 2
      docs/conf.py
  10. 2
      docs/index.rst
  11. 2
      docs/tutorials/security-validator-config.rst
  12. 4
      wscript

3
.gitignore vendored

@ -1,7 +1,7 @@
# Emacs temp files
*~
# Mac OSX
# macOS stuff
.DS_*
# waf build system
@ -12,6 +12,7 @@ build/
# Compiled python code
*.pyc
*.pyo
# Other
VERSION

4
.jenkins.d/10-build.sh

@ -13,7 +13,7 @@ sudo rm -f /usr/local/lib/pkgconfig/libndn-cxx*
# Cleanup
sudo ./waf -j1 --color=yes distclean
if [[ "$JOB_NAME" != *"limited-build" ]]; then
if [[ $JOB_NAME != *"code-coverage" && $JOB_NAME != *"limited-build" ]]; then
# Configure/build static library in optimized mode with tests
./waf -j1 --color=yes configure --enable-static --disable-shared --with-tests
./waf -j1 --color=yes build
@ -30,7 +30,7 @@ if [[ "$JOB_NAME" != *"limited-build" ]]; then
fi
# Configure/build shared library in debug mode with tests/examples and without precompiled headers
if [[ "$JOB_NAME" == *"code-coverage" ]]; then
if [[ $JOB_NAME == *"code-coverage" ]]; then
COVERAGE="--with-coverage"
elif ! has OSX-10.9 $NODE_LABELS && ! has OSX-10.11 $NODE_LABELS; then
ASAN="--with-sanitizer=address"

10
.jenkins.d/README.md

@ -9,17 +9,17 @@ Environment Variables Used in Build Scripts
The list should include at least `[OS_TYPE]`, `[DISTRO_TYPE]`, and `[DISTRO_VERSION]`.
Possible values for Linux OS:
Possible values for Linux:
* `[OS_TYPE]`: `Linux`
* `[DISTRO_TYPE]`: `Ubuntu`
* `[DISTRO_VERSION]`: `Ubuntu-14.04`, `Ubuntu-16.04`
Possible values of OSX OS:
Possible values for OS X / macOS:
* `[OS_TYPE]`: `OSX`
* `[DISTRO_TYPE]`: `OSX` (can be absent)
* `[DISTRO_VERSION]`: `OSX-10.11`, `OSX-10.10`, `OSX-10.9`, `OSX-10.8`
* `[DISTRO_VERSION]`: `OSX-10.10`, `OSX-10.11`, `OSX-10.12`
- `JOB_NAME`: optional variable to define type of the job. Depending on the defined job type,
the build scripts can perform different tasks.
@ -27,5 +27,5 @@ Environment Variables Used in Build Scripts
Possible values:
* empty: default build process
* `code-coverage` (Linux OS is assumed): build process with code coverage analysis
* `limited-build`: only a single build with tests
* `code-coverage` (Linux OS is assumed): debug build with tests and code coverage analysis
* `limited-build`: only a single debug build with tests

2
AUTHORS.md

@ -17,7 +17,7 @@ in the library:
* Wentao Shang <http://irl.cs.ucla.edu/~wentao/>
* Steve DiBenedetto <http://www.cs.colostate.edu/~dibenede/>
* Davide Pesavento <http://www.lip6.fr/actualite/personnes-fiche.php?ident=D1469>
* Davide Pesavento <https://www.linkedin.com/in/davidepesavento>
* Syed Obaid Amin <http://obaidamin.weebly.com/>
* Shuo Chen <chenatu2006@gmail.com>
* Hila Ben Abraham <http://research.engineering.wustl.edu/~abrahamh/>

2
README-dev.md

@ -41,7 +41,7 @@ you are choosing LGPL 3.0, please use the following license boilerplate in all `
*/
If you are affiliated to an NSF-supported NDN project institution, please use the [NDN Team License
Boilerplate](http://redmine.named-data.net/projects/ndn-cxx/wiki/NDN_Team_License_Boilerplate_(ndn-cxx)).
Boilerplate](https://redmine.named-data.net/projects/ndn-cxx/wiki/NDN_Team_License_Boilerplate_(ndn-cxx)).
Running unit-tests
------------------

8
README.md

@ -4,8 +4,8 @@ ndn-cxx: NDN C++ library with eXperimental eXtensions
[![Build Status](https://travis-ci.org/named-data/ndn-cxx.svg?branch=master)](https://travis-ci.org/named-data/ndn-cxx)
ndn-cxx is a C++ library, implementing Named Data Networking (NDN) primitives that can be
used to implement various NDN applications. The library is currently being used as part
of the following projects:
used to implement various NDN applications. The library is currently being used as part of
the following projects:
* [NFD - NDN Forwarding Daemon](https://github.com/named-data/NFD)
* [NLSR - Named-data Link-State Routing protocol](https://github.com/named-data/NLSR)
@ -15,11 +15,11 @@ of the following projects:
* [ndn-tools - NDN Essential Tools](https://github.com/named-data/ndn-tools)
* [ndn-traffic-generator - Traffic Generator For NDN](https://github.com/named-data/ndn-traffic-generator)
See the file [`docs/INSTALL.rst`](https://github.com/cawka/ndn-cxx/blob/master/docs/INSTALL.rst)
See the file [`docs/INSTALL.rst`](https://github.com/named-data/ndn-cxx/blob/master/docs/INSTALL.rst)
for build and install instructions.
Please submit any bugs or issues to the ndn-cxx issue tracker:
http://redmine.named-data.net/projects/ndn-cxx/issues
https://redmine.named-data.net/projects/ndn-cxx/issues
## More documentation

21
docs/INSTALL.rst

@ -11,10 +11,10 @@ platforms:
- Ubuntu 14.04 (64-bit and 32-bit)
- Ubuntu 16.04 (64-bit and 32-bit)
- OS X 10.8
- OS X 10.9
- OS X 10.10
- OS X 10.11
- macOS 10.12
ndn-cxx is known to work on the following platforms, although they are not officially
supported:
@ -34,15 +34,15 @@ Required:
- ``python`` >= 2.6
- ``libsqlite3``
- ``libcrypto++``
- OpenSSL version >= 1.0
- OpenSSL >= 1.0.1
- ``pkg-config``
- Boost libraries >= 1.54
- OSX Security framework (on OSX platform only)
- OSX Security framework (on OSX/macOS platform only)
Following are the detailed steps for each platform to install the compiler, all necessary
development tools and libraries, and ndn-cxx prerequisites.
- OS X
- OS X / macOS
Install Xcode from AppStore or at least Command Line Tools (``xcode-select --install``)
@ -57,11 +57,10 @@ development tools and libraries, and ndn-cxx prerequisites.
In a terminal, enter::
brew install boost pkg-config cryptopp openssl
brew link --force openssl
.. note::
If a major OS X system upgrade is performed after installing dependencies with
If a major OS upgrade is performed after installing dependencies with
MacPorts or Homebrew, remember to reinstall all packages.
- Ubuntu
@ -90,7 +89,7 @@ dependencies need to be installed:
The following lists steps for common platforms to install these prerequisites:
- On OS X with MacPorts::
- On OS X / macOS with MacPorts::
sudo port install doxygen graphviz py27-sphinx sphinx_select
sudo port select sphinx py27-sphinx
@ -323,10 +322,10 @@ running ``./waf configure``:
Customize Compiler
------------------
To customize compiler, set ``CXX`` environment variable to point to compiler binary and, in
some case, specify type of the compiler using ``--check-cxx-compiler``. For example, when
using clang compiler on Linux system, use the following:
To choose a custom C++ compiler for building ndn-cxx, set ``CXX`` environment
variable to point to the compiler binary. For example, to build with clang on
Linux, use the following:
::
CXX=clang++ ./waf configure --check-cxx-compiler=clang++
CXX=clang++ ./waf configure

2
docs/README.rst

@ -19,4 +19,4 @@ the following projects:
NDN <https://github.com/named-data/ndn-traffic-generator>`__
Please submit any bugs or issues to the `ndn-cxx issue tracker
<http://redmine.named-data.net/projects/ndn-cxx/issues>`__.
<https://redmine.named-data.net/projects/ndn-cxx/issues>`__.

2
docs/conf.py

@ -274,4 +274,4 @@ if os.getenv('GOOGLE_ANALYTICS', None):
# exclude_patterns = ['RELEASE_NOTES.rst']
redmine_project_url = "http://redmine.named-data.net/"
redmine_project_url = "https://redmine.named-data.net/"

2
docs/index.rst

@ -5,7 +5,7 @@ ndn-cxx is a C++ library, implementing Named Data Networking (NDN) primitives th
used to implement various NDN applications.
Please submit any bugs or issues to the `ndn-cxx issue tracker
<http://redmine.named-data.net/projects/ndn-cxx/issues>`__.
<https://redmine.named-data.net/projects/ndn-cxx/issues>`__.
ndn-cxx Documentation
---------------------

2
docs/tutorials/security-validator-config.rst

@ -578,7 +578,7 @@ And here is the configuration file:
Example Configuration For NFD RIB Management
--------------------------------------------
Assume `NFD RIB Management <http://redmine.named-data.net/projects/nfd/wiki/RibMgmt>`_
Assume `NFD RIB Management <https://redmine.named-data.net/projects/nfd/wiki/RibMgmt>`_
allows any valid testbed certificate to register prefix, the configuration file could be
written as:

4
wscript

@ -5,7 +5,7 @@ import os
VERSION = "0.5.0"
APPNAME = "ndn-cxx"
PACKAGE_BUGREPORT = "http://redmine.named-data.net/projects/ndn-cxx"
PACKAGE_BUGREPORT = "https://redmine.named-data.net/projects/ndn-cxx"
PACKAGE_URL = "http://named-data.net/doc/ndn-cxx/"
GIT_TAG_PREFIX = "ndn-cxx-"
@ -114,7 +114,7 @@ main(int, char**)
if conf.env.BOOST_VERSION_NUMBER < 105400:
Logs.error("Minimum required boost version is 1.54.0")
Logs.error("Please upgrade your distribution or install custom boost libraries" +
" (http://redmine.named-data.net/projects/nfd/wiki/Boost_FAQ)")
" (https://redmine.named-data.net/projects/nfd/wiki/Boost_FAQ)")
return
if not conf.options.with_sqlite_locking:

Loading…
Cancel
Save