X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=README.md;h=2637f7f811213476bfa978a54188f0a0a2473231;hb=refs%2Fchanges%2F58%2F22258%2F4;hp=d57a3187d7d60ef73e56e07646a746a9b25b2e01;hpb=0e037a2f0fac7801feaa6187b9c9bf785ffaf85f;p=apps%2Fagl-service-can-low-level.git diff --git a/README.md b/README.md index d57a3187..2637f7f8 100644 --- a/README.md +++ b/README.md @@ -1,102 +1,16 @@ -# CAN Configuration Generator - -## Abstract - -This tool is used to generate a configuration source file for the [Low Level CAN bus binding](https://github.com/iotbzh/CAN_signaling). -This binding needs a configuration provided as a C++ source file. -As long this binding is based on [OpenXC vi-firmware](https://github.com/openxc/vi-firmware), this generator use the JSON format from the [python generator](https://github.com/openxc/openxc-python). -The reference documentation of the JSON file can be found [here](https://github.com/openxc/vi-firmware/blob/master/docs/config/reference.rst). - -## Getting started -### Build requirements - -* CMake version 3.0 or later -* G++, Clang++ or any C++11 complient compiler. -* Boost - * filesystem - * program_options - * system - -You can install any of these using your package manager. For instance, inside the iotbzh's docker image, you must enter this command : - - devel@bsp-devkit:~/$ sudo apt-get install cmake libboost-system-dev libboost-filesystem-dev libboost-program-options-dev - -You may want to install `libboost-all-dev` to get all boost components even if it's not required. - -## Compile - -
-devel@bsp-devkit:~/projects/$ git clone https://github.com/iotbzh/can-config-generator.git -Cloning into 'can-config-generator'... -remote: Counting objects: 74, done. -remote: Compressing objects: 100% (42/42), done. -remote: Total 74 (delta 30), reused 67 (delta 27), pack-reused 0 -Unpacking objects: 100% (74/74), done. -Checking connectivity... done. - -devel@bsp-devkit:~/projects/$ cd can-config-generator -devel@bsp-devkit:~/projects/can-config-generator/(master)$ mkdir build -devel@bsp-devkit:~/projects/can-config-generator/build(master)$ cmake -G "Unix Makefiles" .. --- The C compiler identification is GNU 4.9.2 --- The CXX compiler identification is GNU 4.9.2 --- Check for working C compiler: /usr/bin/cc --- Check for working C compiler: /usr/bin/cc -- works --- Detecting C compiler ABI info --- Detecting C compiler ABI info - done --- Check for working CXX compiler: /usr/bin/c++ --- Check for working CXX compiler: /usr/bin/c++ -- works --- Detecting CXX compiler ABI info --- Detecting CXX compiler ABI info - done --- Boost version: 1.55.0 --- Found the following Boost libraries: --- program_options --- filesystem --- system --- Configuring done --- Generating done --- Build files have been written to: /home/devel/projects/can-config-generator/build -devel@bsp-devkit:~/projects/can-config-generator/build(master)$ make -Scanning dependencies of target can-config-generator -[ 12%] Building CXX object CMakeFiles/can-config-generator.dir/src/main.cpp.o -[ 25%] Building CXX object CMakeFiles/can-config-generator.dir/src/openxc/message_set.cpp.o -[ 37%] Building CXX object CMakeFiles/can-config-generator.dir/src/openxc/can_bus.cpp.o -[ 50%] Building CXX object CMakeFiles/can-config-generator.dir/src/openxc/can_message.cpp.o -[ 62%] Building CXX object CMakeFiles/can-config-generator.dir/src/openxc/command.cpp.o -[ 75%] Building CXX object CMakeFiles/can-config-generator.dir/src/openxc/diagnostic_message.cpp.o -[ 87%] Building CXX object CMakeFiles/can-config-generator.dir/src/openxc/mapping.cpp.o -[100%] Building CXX object CMakeFiles/can-config-generator.dir/src/openxc/signal.cpp.o -Linking CXX executable can-config-generator -[100%] Built target can-config-generator -- -## Generate your config file - -To generate your config file you just have to run the generator using the `-m` option to specify your JSON file. -
-devel@bsp-devkit:~/projects/can-config-generator/build(master)$ can-config-generator -m ../tests/basic.json -o configuration-generated.cpp -- -If you omit the `-o` option, then code is generated on the stdout. -You also can specify a header and a footer file. -These files must be valid C++ fragment as long as they will be inserted as is. -Use the `-h` option to display help. - -## Supported OpenXC items - -As long as the low level CAN signaling binding doesn't fully support OpenXC yet, this generator is also limited. -For instance, `initializers`, `loopers`, `buses`, `commands` and `handlers` nodes are ignored for now. -This generator will follow OpenXC support status of the low level CAN signaling binding. - -## Known issues - -* Each `diagnostic_message` must define the same `bus` as the binding will use only one bus. - -## Dependencies - -* [json](https://github.com/nlohmann/json) by nlohmann - -## License - -Copyright 2017 - iotbzh - -Licensed under the [Apache License 2.0](https://github.com/iotbzh/can-config-generator/blob/master/LICENSE) +# CAN signaling binder + +CAN bus binder, based upon OpenXC vi-firmware project. + +Full document can be found under `docs` directory. + +# Fast build procedure + +Just use autobuild script: + +```bash +./conf.d/autobuild/agl/autobuild build +./conf.d/autobuild/agl/autobuild package +``` + +This will build both projects under build directory for each of them with default configuration.