CopperSpice Overview
Build Options

The CopperSpice build can be customized by passing various options to CMake as shown in the following table.

Option Description
-DWITH_MULTIMEDIA=NO Do not build CsMultimedia
-DWITH_OPENGL=NO Do not build CsOpenGL
-DWITH_SQL=NO Do not build CsSql
-DWITH_SCRIPT=NO -DWITH_WEBKIT=NO Do not build CsScript, dependencies require disabling CsWebKit
-DWITH_VULKAN=NO Do not build CsVulkan
-DWITH_WEBKIT=NO Do not build CsWebKit
-DWITH_XMLPATTERNS=NO Do not build CsXmlPatterns
-DCMAKE_DISABLE_FIND_PACKAGE_OpenSSL=TRUE Do not build CsNetwork with OpenSSL
-DCMAKE_DISABLE_FIND_PACKAGE_PostgreSQL=TRUE Do not build the CsSqlPsql plugin
-DCMAKE_DISABLE_FIND_PACKAGE_ZLIB=TRUE Do not search for zlib, use the version bundled with CS
-DOPENSSL_ROOT_DIR=/C/OPENSSL/DEPLOY Path to OpenSSL (Optional 3rd Party Library)
-DCMAKE_BUILD_TYPE=Debug Builds in debug mode
-DCMAKE_BUILD_TYPE=Release Builds in release mode
-DCMAKE_C_FLAGS="-D<define>" Add an explicit define for the preprocessor
-DCMAKE_C_FLAGS="-I<path>" Add an explicit include path
-DCMAKE_CXX_FLAGS="-m32" Compile C++ in 32-bit mode on a 64-bit system
-DCMAKE_C_FLAGS="-m32" Compile C files in 32-bit mode on a 64-bit system
-DCMAKE_SHARED_LINKER_FLAGS="-m32" Link in 32-bit mode on a 64-bit system
-DCMAKE_INSTALL_PREFIX=/c/cs_lib Path where the project will be installed


Bundled Image Libraries

The following image formats are built directly into the CopperSpice CsGui library.

  • bmp
  • gif
  • ico
  • jpeg
  • mng
  • png
  • pbm
  • pgm
  • ppm
  • tiff
  • xbm
  • xpm

Bundled DBMS Support

The QSQLITE SQL driver is embedded in the CopperSpice CsSql library.

Other SQL Drivers

The CopperSpice CMake build system will automatically detect if several other DBMS client libraries are available. If one is found the corresponding SQL driver plugin will be built. For example, if the PostgreSQL client is found then the CsSqlPsql plugin file will be built.

For more information refer to Building SQL Drivers for more information.

OpenSSL

The CopperSpice CMake build system will detect if the OpenSSL library is available on your host system. If found then support for OpenSSL will be built into the CopperSpice CsNetwork library.

Any user application which calls OpenSSL functionality such as QSslSocket, will require access to the crypto and ssl runtime libraries. This may require distributing additional files with your application.

The exact names of the files will vary depending on the operating system and the version of OpenSSL. On Windows the OpenSSL 1.1.1 run time libraries are called libcrypto-1_1-x64.dll and libssl-1_1-x64.dll