Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
..
Failed to load latest commit information.
avcodec
fast
lbfgs
lmfit
opencv
pylon
webcam
3rdparty.pro
README

README

This directory contains 3rd party modules that can be conditionally
enabled and disabled at build time.

IMPORTANT NOTE

THIRD PARTY EXTENSIONS MUST BE EVALUATED FOR QUALITY AND LICENSE
COMPATIBILITY! IT IS STRICTLY PROHIBITED TO INCLUDE CODE THAT HAS NOT
BEEN VALIDATED. ALL EXTENSIONS MUST HAVE THEIR LICENSE TERMS STORED IN
A FILE CALLED license (ALL LOWER CASE) IN THE EXTENSION FOLDER.


Code that depends on or can make use of a 3rd party extension should
check the existence of the extension in the project. This process is
largely automated (example taken from visualization plug-in):

PLUGIN = Visualization
EXTENSIONS = qwt
include(../piiplugin.pri)

If the component depends on multiple extensions, separate them with
spaces.

The build system checks that the qwt component isn't explicitly
disabled and that it really exists. A 3rd party extension exists if
a) there is a folder called 3rdparty/X/include under the source root
b) the 3rdparty/X folder contains header files.
X is the name of the component, in this case "qwt".

If the file 3rdparty/X/config.pri exists, it will be included into
project settings. This makes it possible to add custom compiler/linker
options. 3rdparty/X/include will be automatically added to include
path, and 3rdparty/X/lib to library search path. Furthermore, if there
is a folder called X under the current build directory (e.g. 
plugins/visualization/qwt), it will get special treatment:

1. if there is a file called config.pri in this folder, it will be
included in project settings.

2. If config.pri does not exist, all source (.cc) and header (.h)
files will be included into the project.

If the extension is explicitly disabled or cannot be found, PII_NO_X
(e.g. PII_NO_QWT) will be added to defines. Qmake will also display a
warning message.

To compile the plug-in without qwt support, type

$ make clean
$ qmake DISABLE=qwt
$ make

In a source file, you may protect qwt-dependent parts like this:

#ifndef PII_NO_QWT
#  include "qwt/PiiQwtExploiter.h"
#endif