#13795: Initial commit for sflphone-android

includes: libexpat libyaml libdbus-c++ commoncpp ccrtp
          libdbus (from android-4.0.4 sources)

TODO:
- git ignores "/jni/sflphone", sflphone repo should be cloned.
- sflphone-android only needs daemon directory. Ideally it should be possible
to clone it without cloning the whole sflphone project.
into sfl-android (commit 6a0fa7a "#13961: Fix cipher handling" has been used here)
- add pjsip-android project as a git submodule
- sflphone-android needs pjsip android project. Ideally daemon git repository
should not embed pjsip. Instead pjsip should be clone from official repositories.

Considering this, structure should have three distincts git repos:

sflphone-android/.git
sflphone-android/jni/ccrtp-1.8.0-android
sflphone-android/jni/commoncpp2-1.8.1-android
sflphone-android/jni/dbus
sflphone-android/jni/libdbus-c++-0.9.0-android
sflphone-android/jni/libexpat
sflphone-android/jni/libyaml

sflphone-android/jni/sflphone-daemon/.git
sflphone-android/jni/sflphone-daemon/src/audio
sflphone-android/jni/sflphone-daemon/src/config
sflphone-android/jni/sflphone-daemon/src/dbus
sflphone-android/jni/sflphone-daemon/src/history
sflphone-android/jni/sflphone-daemon/src/hooks
sflphone-android/jni/sflphone-daemon/src/iax
sflphone-android/jni/sflphone-daemon/src/sip
sflphone-android/jni/sflphone-daemon/src/video

sflphone-android/jni/pjsip-android/.git

Signed-off-by: Emeric Vigier <emeric.vigier@savoirfairelinux.com>
diff --git a/jni/commoncpp2-1.8.1-android/demo/serialecho.cpp b/jni/commoncpp2-1.8.1-android/demo/serialecho.cpp
new file mode 100644
index 0000000..17bbba7
--- /dev/null
+++ b/jni/commoncpp2-1.8.1-android/demo/serialecho.cpp
@@ -0,0 +1,75 @@
+/**********************************************************************
+ * C/C++ Source: serialecho.cc
+ *
+ * Defines the methods for the SerialEcho class
+ *
+ * @author:  Gary Lawrence Murphy <garym@canada.com>
+ * Copyright:  2000 TeleDynamics Communications Inc (www.teledyn.com)
+ ********************************************************************
+ */
+// Copyright (C) 1999-2000 Teledynamics Communications Inc.
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+#include "serialecho.h"
+#ifndef	WIN32
+#include <cstdlib>
+#endif
+
+using namespace std;
+
+SerialEcho::SerialEcho(const char *device,
+		   int priority, int stacksize) :
+  TTYSession( device, priority, stacksize ) {
+
+  cout << "Creating SerialEcho" << endl;
+
+  if (!(*this)) {
+	throw xError();
+	::exit(1);
+  } else {
+	cout << "modem ready" << endl;
+  }
+
+  interactive(false);
+
+  if (setSpeed(38400)) cout << getErrorString() << endl;
+  if (setCharBits(8)) cout << getErrorString() << endl;
+  if (setParity(Serial::parityNone)) cout << getErrorString() << endl;
+  if (setStopBits(1)) cout << getErrorString() << endl;
+  if (setFlowControl(Serial::flowHard)) cout << getErrorString() << endl;
+
+  cout << "config done" << endl;
+}
+
+void SerialEcho::run() {
+  char* s = new char[getBufferSize()];
+
+  cout << "start monitor" << endl;
+
+  while (s[0] != 'X') {
+	while (isPending(Serial::pendingInput)) {
+	  cout.put( TTYStream::get() );
+		}
+	sleep(500);
+  }
+
+  cout << "end of monitor" << endl;
+
+  delete [] s;
+
+  exit();
+}
+