From: David Wells
Date: Sat, 6 Jul 2019 22:53:05 +0000 (-0400)
Subject: Add notes on packaging for distributions.
X-Git-Tag: v9.2.0-rc1~1359^2~1
X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d1e8ebab964dec90c14f66e58b9452bb46e4ef43;p=dealii.git
Add notes on packaging for distributions.
---
diff --git a/doc/developers/packaging.html b/doc/developers/packaging.html
new file mode 100644
index 0000000000..3cca7fa3a7
--- /dev/null
+++ b/doc/developers/packaging.html
@@ -0,0 +1,102 @@
+
+
+
+ Packaging deal.II
+
+
+
+
+
+
+
+
Packaging deal.II for a Unix-like distribution
+
+
Overview
+
+ This page describes how to write packaging scripts
+ for deal.II. deal.II is written in
+ C++11 and is known to work with fairly recent GCC, Clang, and Intel
+ compilers. It is licensed under the LGPL v2.1. We recommend reading
+ the porting document first for
+ a description of the requirements of the build
+ system. deal.II does not support any type of plug-in
+ architecture for dependencies: all dependencies must be provided at
+ compile-time.
+
+ The only required dependency of deal.II is boost.
+
+
+
+
Examples
+ deal.II is already available in many Linux distributions:
+ for example packaging scripts see, e.g.,
+
+ deal.II defaults to installing several
+ configuration files
+ (LICENSE.md, README.md, detailed.log,
+ and summary.log) in the installation prefix. We recommend
+ deleting these files. LICENSE.md should be installed in the
+ correct directory for software licenses.
+
+
+ By default, all examples are compiled in both debug and release mode and
+ installed in the bin subdirectory of the installation
+ prefix. We recommend disabling the examples by configuring with
+ the -DDEAL_II_COMPILE_EXAMPLES=OFF option.
+
+
+ The CMake configuration of deal.II will determine
+ what compiler is being used and pick reasonable optimization and
+ debugging flags automatically. Further flags for debug and release mode
+ may be supplied by DEAL_II_CXX_FLAGS_DEBUG
+ and DEAL_II_CXX_FLAGS_RELEASE variables passed to CMake,
+ respectively.
+
+
+ The flag DEAL_II_ALLOW_PLATFORM_INTROSPECTION (disabled by
+ default) enables (as the name implies) CPU-specific issues (usually for
+ vectorization).
+
+
+ The flag DEAL_II_WITH_64BIT_INDICES changes an integral type
+ used for indices in the library. This value should be made consistent
+ with the way PETSc is configured.
+
+
+ deal.II includes copies of boost, muParser, TBB, and
+ UMFPACK. These bundled packages should be disabled
+ via -DDEAL_II_ALLOW_BUNDLED=OFF.
+
+
+ Underlinkage with GSL may cause problems, depending on how GSL is set up.
+