]> git.ipfire.org Git - thirdparty/lldpd.git/blobdiff - README.md
doc: keyword harmonization for NEWS file
[thirdparty/lldpd.git] / README.md
index b3fe604f405082505913ad507b41205b40b94733..344c35e27cfa425e82a249224219340a7b65d692 100644 (file)
--- a/README.md
+++ b/README.md
@@ -31,6 +31,10 @@ The following OS are supported:
  * OpenBSD
  * Solaris
 
+Windows is not supported but you can use
+[WinLLDPService](https://github.com/raspi/WinLLDPService/) as a
+transmit-only agent.
+
 Installation
 ------------
 
@@ -72,7 +76,7 @@ simpler alternatives:
     version of OS X:
  
         mkdir build && cd build
-        ../configure --prefix=/usr --localstatedir=/var --sysconfdir=/private/etc --with-embedded-libevent \
+        ../configure --prefix=/usr/local --localstatedir=/var --sysconfdir=/private/etc --with-embedded-libevent \
             --without-json --without-snmp
         make -C osx pkg
 
@@ -81,12 +85,26 @@ simpler alternatives:
 
         SDK=/Developer/SDKs/MacOSX10.6.sdk
         mkdir build && cd build
-        ../configure --prefix=/usr --localstatedir=/var --sysconfdir=/private/etc --with-embedded-libevent \
+        ../configure --prefix=/usr/local --localstatedir=/var --sysconfdir=/private/etc --with-embedded-libevent \
            --without-json --without-snmp \
            CFLAGS="-mmacosx-version-min=10.6 -isysroot $SDK" \
            LDFLAGS="-mmacosx-version-min=10.6 -isysroot $SDK"
         make -C osx pkg
 
+    With recent SDK, you don't need to specify an alternate SDK. They
+    are organized in a way that should enable compatibility with older
+    versions of OSX:
+
+        mkdir build && cd build
+        ../configure --prefix=/usr/local --localstatedir=/var --sysconfdir=/private/etc --with-embedded-libevent \
+           --without-json --without-snmp \
+           CFLAGS="-mmacosx-version-min=10.9" \
+           LDFLAGS="-mmacosx-version-min=10.9"
+        make -C osx pkg
+
+    You can check with `otool -l` that you got what you expected in
+    term of supported versions.
+
 If you don't follow the above procedures, you will have to create the
 user/group `_lldpd`. Have a look at how this is done in
 `osx/scripts/postinstall`.
@@ -149,7 +167,7 @@ interfaces of the bond. In this case, lldpd will affect a received
 randomly to one of the interface (so a neighbor may be affected to the
 wrong interface).
 
-On 2.6.27, we are able to receive packets on real interface for bonded
+On 2.6.27, we are able to receive packets on real interface for enslaved
 devices. This allows one to get neighbor information on active/backup
 bonds. Without the 2.6.27, lldpd won't receive any information on
 inactive slaves. Here are the patchs (thanks to Joe Eykholt):
@@ -235,10 +253,20 @@ that:
     afl-fuzz -i inputs -o outputs ./decode @@
 
 There is a general test suite with `make check`. It's also possible to
-run integration tests with `./tests/integration-tests`. Those are not
-very flexible and may or may not work depending on your platform. Also
-check the content of `tests/lldpcli.conf`. It's a configuration file
-that should cover all commands present in lldpcli.
+run integration tests. They need [py.test](http://pytest.org/latest/)
+and rely on Linux containers to be executed.
+
+To enable code coverage, use:
+
+    ../configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+                 --enable-sanitizers --enable-gcov --with-snmp \
+                 CFLAGS="-O0 -g"
+    make
+    make check
+    # maybe, run integration tests
+    lcov --base-directory $PWD/src/lib \
+         --directory src --capture --output-file gcov.info
+    genhtml gcov.info --output-directory coverage
 
 Embedding
 ---------