aboutsummaryrefslogtreecommitdiffstats
path: root/docs/dev_guide/1_Quickstart.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/dev_guide/1_Quickstart.md')
-rw-r--r--docs/dev_guide/1_Quickstart.md97
1 files changed, 0 insertions, 97 deletions
diff --git a/docs/dev_guide/1_Quickstart.md b/docs/dev_guide/1_Quickstart.md
deleted file mode 100644
index e910178..0000000
--- a/docs/dev_guide/1_Quickstart.md
+++ /dev/null
@@ -1,97 +0,0 @@
-# Quickstart
-
-## Initialization
-
-To use these templates files on your project just install the reference files using
-**git submodule** then use `config.cmake` file to configure your project specificities :
-
-```bash
-git submodule add https://gerrit.automotivelinux.org/gerrit/p/apps/app-templates.git conf.d/app-templates
-mkdir conf.d/cmake
-cp conf.d/app-templates/samples.d/config.cmake.sample conf.d/cmake/config.cmake
-```
-
-Edit the copied config.cmake file to fit your needs.
-
-Now, create your top CMakeLists.txt file which include `config.cmake` file.
-
-An example is available in **app-templates** submodule that you can copy and
-use:
-
-```bash
-cp conf.d/app-templates/samples.d/CMakeLists.txt.sample CMakeLists.txt
-```
-
-## Create your CMake targets
-
-For each target part of your project, you need to use ***PROJECT_TARGET_ADD***
-to include this target to your project.
-
-Using it, make available the cmake variable ***TARGET_NAME*** until the next
-***PROJECT_TARGET_ADD*** is invoked with a new target name.
-
-So, typical usage defining a target is:
-
-```cmake
-PROJECT_TARGET_ADD(SuperExampleName) --> Adding target to your project
-
-add_executable/add_library(${TARGET_NAME}.... --> defining your target sources
-
-SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES.... --> fit target properties
-for macros usage
-
-INSTALL(TARGETS ${TARGET_NAME}....
-```
-
-## Targets PROPERTIES
-
-You should set properties on your targets that will be used to package your
-apps in a widget file that could be installed on an AGL system.
-
-Specify what is the type of your targets that you want to be included in the
-widget package with the property **LABELS**:
-
-Choose between:
-
-- **BINDING**: Shared library that be loaded by the AGL Application Framework
-- **BINDINGV2**: Shared library that be loaded by the AGL Application Framework
- This has to be accompagnied with a JSON file named like the
- *${OUTPUT_NAME}-apidef* of the target that describe the API with OpenAPI
- syntax (e.g: *mybinding-apidef*).
- Or Alternatively, you can choose the name, without the extension, using macro
- **set_openapi_filename**. If you use C++, you have to set **PROJECT_LANGUAGES**
- with *CXX*.
-- **BINDINGV3**: Shared library that be loaded by the AGL Application Framework
- This has to be accompagnied with a JSON file named like the
- *${OUTPUT_NAME}-apidef* of the target that describe the API with OpenAPI
- syntax (e.g: *mybinding-apidef*).
- Or Alternatively, you can choose the name, without the extension, using macro
- **set_openapi_filename**. If you use C++, you have to set **PROJECT_LANGUAGES**
- with *CXX*.
-- **PLUGIN**: Shared library meant to be used as a binding plugin. Binding
- would load it as a plugin to extend its functionnalities. It should be named
- with a special extension that you choose with SUFFIX cmake target property or
- it'd be **.ctlso** by default.
-- **HTDOCS**: Root directory of a web app. This target has to build its
- directory and puts its files in the ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_NAME}
-- **DATA**: Resources used by your application. This target has to build its
- directory and puts its files in the ${CMAKE_CURRENT_BINARY_DIR}/${TARGET_NAME}
-- **EXECUTABLE**: Entry point of your application executed by the AGL
- Application Framework
-- **LIBRARY**: An external 3rd party library bundled with the binding for its
- own purpose because platform doesn't provide it.
-- **BINDING-CONFIG**: Any files used as configuration by your binding.
-
-> **TIP** you should use the prefix _afb-_ with your **BINDING* targets which
-> stand for **Application Framework Binding**.
-
-```cmake
-SET_TARGET_PROPERTIES(${TARGET_NAME}
- PREFIX "afb-"
- LABELS "BINDINGV3"
- OUTPUT_NAME "file_output_name")
-```
-
-> **NOTE**: You doesn't need to specify an **INSTALL** command for these
-> targets. This is already handle by template and will be installed in the
-> following path : **${CMAKE_INSTALL_PREFIX}/${PROJECT_NAME}**