summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorJohannes Schanda <schanda@itestra.de>2013-01-21 13:04:33 +0100
committerJohannes Schanda <schanda@itestra.de>2013-01-21 13:04:33 +0100
commit7c12a872a9a8adf20bb4a0e01dd9c2e4eb674924 (patch)
treea22067956295a30a25de7165bbf53216605339cf /README
parente896ce9351b426dd3bafb17f7aa899c872dbb1cd (diff)
downloadgenivi-common-api-dbus-runtime-7c12a872a9a8adf20bb4a0e01dd9c2e4eb674924.tar.gz
Expanded readme
Diffstat (limited to 'README')
-rwxr-xr-xREADME109
1 files changed, 98 insertions, 11 deletions
diff --git a/README b/README
index cac05e9..d62bec3 100755
--- a/README
+++ b/README
@@ -1,21 +1,108 @@
-To build this package CommonAPI and a version of libdbus patched with the marshaling patch must be available.
+GENIVI_CommonAPI-D-Bus
+======================
+:Author: Juergen Gehring - juergen.gehring@bmw.de, Manfred Bathelt - manfred.bathelt@bmw.de
+:doctitle: GENIVI_CommonAPI-D-Bus
+
+Copyright
+---------
+Copyright (C) 2013, GENIVI Alliance, Inc.
+Copyright (C) 2013, BMW AG
+
+This file is part of GENIVI Project IPC Common API.
+
+Contributions are licensed to the GENIVI Alliance under one or more
+Contribution License Agreements or MPL 2.0 .
+
+(C) Copyright
+This Source Code Form is subject to the terms of the
+Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
+this file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+For further information see https://collab.genivi.org/wiki/display/genivi/SysInfraEGCommonIDLCommonAPIGuide
+
+== License
+This project is licensed under MPL 2.0
+
+Contribution is done under GENIVI CLA or MPL2.0.
+
+== Version
+The current version can be taken from the git.
+
+== Common API Overview
+
+Common API and its machanism specific bindings (e.g. Common API D-Bus) provide a set of libraries and tools to work with
+RPC communication in a way independent of wich mechanism is used. It consist currently consists of four subprojects:
+----
+CommonAPI - This is the base C++ library, which provides the application interface for users and can
+ load runtime bindings such as dbus.
+CommonAPI-Tools - The eclipse based tools for CommonAPI. This is essentially the code generator for
+ Franca -> Common API C++ code.
+CommonAPI-D-Bus - This is the D-Bus binding C++ library, which provides the necesary code to communicate
+ over D-Bus. This is invisible to the application code, and simply needs to be linked against.
+ (This is the current package.)
+CommonAPI-D-Bus-Tools - The eclipse based tools for CommonAPI D-Bus. This is the code generator for
+ Franca -> Common API D-Bus C++ code.
+----
+== Build Instructions
+
+=== Requirements
+
+To build this package the CommonAPI library and a version of libdbus patched with the marshaling patch must be available through PkgConfig.
Instructions for making a patched version of libdbus available in /usr/local:
+----
+# wget http://dbus.freedesktop.org/releases/dbus/dbus-1.4.16.tar.gz
+
+# tar -xzf dbus-1.4.16.tar.gz
+
+# cd dbus-1.4.16
+
+# patch -p1 < /path/to/dbus-DBusMessage-add-support-for-custom-marshaling.patch
+
+# ./configure --prefix=/usr/local
+
+# make -C dbus
+
+# sudo make -C dbus install
+# sudo make install-pkgconfigDATA
+----
+The path to CommonAPI and patched libdbus pkgconfig files must be added to the PKG_CONFIG_PATH for the entire build process.
+
+For example, if CommonAPI and patched dbus are available in /usr/local, set the PKG_CONFIG_PATH variable as follows:
+----
+# export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
+----
+
+=== Instructions
+Use autotools to build this package withthe above requirements available through Pkgconfig :
+----
+# ./autoreconf -i
+# ./configure
+# make
+# sudo make install (or alternative install process, eg. checkinstall on debian-based distributions, such as Ubuntu)
+----
+If the environment variable GTEST_CONFIG is set to the path of the gtest-config script in a Gtest tree test will also be built.
+
+== Working on the code & contribution
-$ wget http://dbus.freedesktop.org/releases/dbus/dbus-1.4.16.tar.gz
+.First get the code from the git:
+ git clone
-$ tar -xzf dbus-1.4.16.tar.gz
+.Get an overview of all branches:
+ git branch
-$ cd dbus-1.4.16
+.Switch to the branch you want to work on (master is the feature branch) and verify that it has switched (* changed)
+ git checkout <your branch>
+ git branch
-$ patch -p1 <
-/path/to/dbus-DBusMessage-add-support-for-custom-marshaling.patch
+.Best practice is to create a local branch based on the current branch:
+ git branch working_branch
-$ ./configure --prefix=/usr/local
+Start working, best practice is to commit smaller, compilable pieces during the development process that makes it easier to handle later on.
-$ make -C dbus
+.If you want to commit you changes, send them to the author, you can create a patch like this:
+ git format-patch working_branch <your branch>
-$ sudo make -C dbus install
-$ sudo make install-pkgconfigDATA
+This creates a set of patches that are published via the mailing list.The patches will be discussed and then merged & uploaded on the git by the maintainer.
-The path to CommonAPI and patched libdbus pkgconfig files must be added to the PKG_CONFIG_PATH for the entire build process. \ No newline at end of file
+Patches can be accepted either under GENIVI Cla or MPL 2.0 (see section License). Please be sure that the signed-off-by is set correctly. For more, check out http://gerrit.googlecode.com/svn/documentation/2.0/user-signedoffby.html