diff options
author | Christian Beier <dontmind@freeshell.org> | 2017-03-26 16:11:16 +0200 |
---|---|---|
committer | Christian Beier <dontmind@freeshell.org> | 2017-03-26 16:11:16 +0200 |
commit | 80ad74f7613d7d790a5152ee377af361ecd3ff9b (patch) | |
tree | 71aaa4d4d6286673f79aa109be03df70f13fc627 | |
parent | 5b920be490f49f951a99651918b2d2425a8d070c (diff) | |
download | libtdevnc-80ad74f7613d7d790a5152ee377af361ecd3ff9b.tar.gz libtdevnc-80ad74f7613d7d790a5152ee377af361ecd3ff9b.zip |
Fix building for Android and add build instructions to README
-rw-r--r-- | README | 11 | ||||
-rw-r--r-- | libvncclient/listen.c | 2 | ||||
-rw-r--r-- | rfb/rfbclient.h | 5 |
3 files changed, 17 insertions, 1 deletions
@@ -81,6 +81,17 @@ LibVNCServer uses CMake, so you can build via: For some more comprehensive examples that include installation of dependencies, see the [Unix CI](.travis.yml) and [Windows CI](.appveyor.yml) build setups. +Crosscompiling involves some more advanced command line switches but is easily possible +as well. + +For instance, building for Android (see https://developer.android.com/ndk/guides/cmake.html as a reference): + + mkdir build + cd build + cmake .. -DANDROID_NDK=<path> -DCMAKE_TOOLCHAIN_FILE=<path> -DANDROID_NATIVE_API_LEVEL=<API level you want> -DWITH_PNG=OFF # NDK not shipping png per default + cmake --build . + + How to use ---------- diff --git a/libvncclient/listen.c b/libvncclient/listen.c index 8674b3f..4ecedff 100644 --- a/libvncclient/listen.c +++ b/libvncclient/listen.c @@ -89,7 +89,7 @@ listenForIncomingConnections(rfbClient* client) int r; /* reap any zombies */ int status, pid; - while ((pid= wait3(&status, WNOHANG, (struct rusage *)0))>0); + while ((pid= wait4(-1, &status, WNOHANG, (struct rusage *)0))>0); /* TODO: callback for discard any events (like X11 events) */ diff --git a/rfb/rfbclient.h b/rfb/rfbclient.h index 505dd9c..72e7a5a 100644 --- a/rfb/rfbclient.h +++ b/rfb/rfbclient.h @@ -35,6 +35,11 @@ #define WIN32_LEAN_AND_MEAN /* Prevent loading any Winsock 1.x headers from windows.h */ #endif +#if defined(ANDROID) || defined(LIBVNCSERVER_HAVE_ANDROID) +#include <arpa/inet.h> +#include <sys/select.h> +#endif + #include <stdio.h> #include <stdlib.h> #include <string.h> |