Add new libraries to the toolkit
Contents
Add new libraries to the toolkit#
A toolkit library is the external library plus wrapper that follows the interface definition in our framework. The folder structure of a toolkit library should always look like this:
README.md
.gitignore
CMakeLists.txt
some source codes
external
CMakeLists.txt
name-version.tar.gz
Rules you must follow#
When we review your pull request for a new toolkit library, we will look into the following things.
README.md#
You must have a README.md file that explain basic things about your code.
Modern cmake#
You must use the modern cmake build system. Notice, it’s not just cmake but you have to use modern cmake.
It is recommended to use the CMake macro provided by us, such as ocp_toolkit
, to help you setup a standard library target. Check here for more information of available CMake macros.
The CMakeLists.txt file should create a target following the naming convention of “OCP::toolkit_{toolkit_folder_name}” that linked to the imported target from the external folder. The target should also be linked to the OCP::Interface, and the wrapper functions should follow the interface defined in the framework.
external folder#
The external library must be places in the external folder, and
No source code should be included
You should only include a compress source code following the convention of “name-version.tar.gz” in the external folder
The external folder should contain a CMakeLists.txt file that create an imported target to fulfill all requirements, such as linking libraries, include folders, compiler options, and etc., when using this external library.
It is recommended to use the CMake macro provided by us, such as ocp_toolkit_external
, to help you setup a external library target. Check here for more information of available CMake macros.
Things to notice for each toolkit#
Qt#
You need to set the QT_EMAIL and QT_PASSWORD environment variables.
On MacOS, you need to manually click the dmg and install Qt. Here are the steps:
Select
Custom installation
and set the installation folder to~/ocp/cache/Qt/5.12.10/install
. Then NextSelect
Archive
andLTS
then select 5.12.10