qt5base-lts/examples/network
Craig Scott d97fd7af2b Build examples in isolated sub-builds using ExternalProject
Examples are intended to show how to build against an installed Qt.
Building them as part of the main build means the way the Qt targets
are defined and created are not representative of an end user's build.
By building them as separate projects using ExternalProject, we can
more closely replicate the intended audience's environment. This
should allow us to catch more problems earlier.

Having examples built as part of the main build also creates problems
with some static builds where a tool built by the main build is needed
during configure time. This happens with other repos like qtdeclarative
but not (currently) with qtbase. Converting the examples in qtbase to
be built using ExternalProject is intended as a demonstrator for how
other repos can do similar. Until other repos are converted, they will
continue to work as they did before, with examples as part of the main
build for non-static builds only.

The new build-externally behavior is only supported for non-prefix
builds with this change. Prefix builds will continue to use the old
non-external method. Support for building examples externally in
prefix builds will be a separate change.

Task-number: QTBUG-90820
Fixes: QTBUG-91068
Change-Id: I2304329940568dbdb7da18d54d5595ea7d8668bc
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2021-05-26 13:33:29 +02:00
..
blockingfortuneclient CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
broadcastreceiver CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
broadcastsender CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
dnslookup CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
doc Update the HTTP example 2020-10-28 08:48:26 +02:00
download CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
downloadmanager CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
fortuneclient CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
fortuneserver Remove unnecessary int() casting in QRandomGenerator::bounded 2021-03-17 06:21:52 +00:00
googlesuggest CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
http Update the HTTP example 2020-10-28 08:48:26 +02:00
loopback CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
multicastreceiver CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
multicastsender CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
multistreamclient CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
multistreamserver CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
network-chat CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
securesocketclient CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
secureudpclient secureudpclient - a speculative fix for non-reproducible crash 2020-12-10 22:07:12 +01:00
secureudpserver CMake: Regenerate examples to set the WIN32_EXECUTABLE property 2020-10-27 12:49:39 +01:00
shared Polish SCTP examples 2016-08-03 11:46:21 +00:00
threadedfortuneserver Remove unnecessary int() casting in QRandomGenerator::bounded 2021-03-17 06:21:52 +00:00
torrent Remove unnecessary int() casting in QRandomGenerator::bounded 2021-03-17 06:21:52 +00:00
.prev_CMakeLists.txt CMake: Regenerate examples 2020-07-09 09:38:28 +02:00
CMakeLists.txt Build examples in isolated sub-builds using ExternalProject 2021-05-26 13:33:29 +02:00
network.pro Remove bearer management from remaining network examples 2020-02-19 13:28:00 +01:00
README Remove references to demos from docs. 2011-07-05 19:57:54 +02:00

Qt is provided with an extensive set of network classes to support both
client-based and server side network programming.

These examples demonstrate the fundamental aspects of network programming
with Qt.


Documentation for these examples can be found via the Examples
link in the main Qt documentation.