Skip to content

Commit 00d3a0a

Browse files
authored
Improvements to the PDF archive (#899)
* Expand PDF title/copyright pages * Manually break long code lines in installation-special-systems.md * Add absolute width to the release-strategy images
1 parent 40e660a commit 00d3a0a

3 files changed

Lines changed: 37 additions & 17 deletions

File tree

content/docs/dev-docs/release-strategy.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ permalink: dev-docs-release-strategy.html
1212

1313
## Dependency tree
1414

15-
<img class="img-responsive center-block" src="images/docs/dev-docs-release-dependencies.svg" alt="Release dependencies" style="width: 100%; margin: auto;">
15+
<img class="img-responsive center-block" src="images/docs/dev-docs-release-dependencies.svg" alt="Release dependencies" style="min-width: 100%; width:800px; margin: auto;">
1616

1717
## Release procedure
1818

@@ -67,7 +67,7 @@ Goal: Release pyprecice version `1.2.3`.
6767
Root repository: `precice/pyprecice`
6868
Name of release branch: `pyprecice-v1.2.3`
6969

70-
<img class="img-responsive center-block" src="images/docs/dev-docs-release-example.svg" alt="Release example" style="width: 100%; margin: auto;">
70+
<img class="img-responsive center-block" src="images/docs/dev-docs-release-example.svg" alt="Release example" style="min-width: 100%; width:800px; margin: auto;">
7171

7272
1. Create branch `pyprecice-v1.2.3` from `precice/pyprecice:develop`
7373
2. Prepare the release (bump version etc)

content/docs/installation/installation-special-systems.md

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,11 @@ libxml2 is part of the `-devel` packages, which are loaded by default on the log
4343
(3) Build preCICE. For PETSc, the library path and include path need to be defined explicitly:
4444

4545
```bash
46-
cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX="my/install/prefix" -DPRECICE_FEATURE_PETSC_MAPPING=ON -DPETSc_INCLUDE_DIRS="$PETSC_DIR/include" -DPETSc_LIBRARIES="$PETSC_DIR/lib/libpetsc.so" -DPRECICE_FEATURE_PYTHON_ACTIONS=OFF /path/to/precice/source
46+
cmake -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX="my/install/prefix" \
47+
-DPRECICE_FEATURE_PETSC_MAPPING=ON \
48+
-DPETSc_INCLUDE_DIRS="$PETSC_DIR/include" -DPETSc_LIBRARIES="$PETSC_DIR/lib/libpetsc.so" \
49+
-DPRECICE_FEATURE_PYTHON_ACTIONS=OFF \
50+
/path/to/precice/source
4751

4852
make install -j 16
4953
```
@@ -107,7 +111,8 @@ export EIGEN3_ROOT="$HOME/Software/eigen3"
107111
(2) [Download latest boost](https://www.boost.org/), copy it to SuperMUC and build yourself:
108112

109113
```bash
110-
./bootstrap.sh --with-libraries=log,thread,system,filesystem,program_options,test --prefix=$HOME/Software/boost-install
114+
./bootstrap.sh --with-libraries=log,thread,system,filesystem,program_options,test \
115+
--prefix=$HOME/Software/boost-install
111116
./b2 install
112117
```
113118

@@ -156,8 +161,8 @@ module load slurm_setup
156161
rm -rf tests
157162
mkdir tests
158163
cd tests
159-
mpiexec -np 4 ../../Software/precice-1.6.1/build/debug/testprecice --log_level=test_suite --run_test="\!@MPI_Ports"
160-
164+
mpiexec -np 4 ../../Software/precice-1.6.1/build/debug/testprecice \
165+
--log_level=test_suite --run_test="\!@MPI_Ports"
161166
```
162167

163168
#### Notes on OpenFOAM
@@ -319,7 +324,8 @@ This gives on `module list`:
319324

320325
```bash
321326
Currently Loaded Modulefiles:
322-
1) admin/1.0 2) tempdir/1.0 3) lrz/1.0 4) spack/21.1.1 5) gcc/8.4.0 6) intel-mpi/2019-gcc 7) precice/2.2.0-gcc8-impi
327+
1) admin/1.0 2) tempdir/1.0 3) lrz/1.0 4) spack/21.1.1
328+
5) gcc/8.4.0 6) intel-mpi/2019-gcc 7) precice/2.2.0-gcc8-impi
323329
```
324330

325331
**Note:** If you want to use FEniCS (see below), please stick to GCC from the very beginning.
@@ -359,7 +365,9 @@ Before running the command `module load mpi.intel/2019.12_gcc` the user has to r
359365

360366
```bash
361367
mkdir build && cd build
362-
cmake -DBUILD_SHARED_LIBS=ON -DPRECICE_FEATURE_PETSC_MAPPING=OFF -DPRECICE_FEATURE_PYTHON_ACTIONS=OFF -DPRECICE_FEATURE_MPI_COMMUNICATION=OFF -DCMAKE_INSTALL_PREFIX=/path/to/precice/installation -DCMAKE_BUILD_TYPE=RelWithDebInfo ..
368+
cmake -DBUILD_SHARED_LIBS=ON -DPRECICE_FEATURE_PETSC_MAPPING=OFF -DPRECICE_FEATURE_PYTHON_ACTIONS=OFF \
369+
-DPRECICE_FEATURE_MPI_COMMUNICATION=OFF -DCMAKE_INSTALL_PREFIX=/path/to/precice/installation \
370+
-DCMAKE_BUILD_TYPE=RelWithDebInfo ..
363371
make -j 12
364372
make install
365373
```
@@ -379,7 +387,8 @@ If you want to install a solver/adapter which depends on **yaml-cpp** (e.g. Open
379387
```bash
380388
tar -xzvf boost_1_65_1.tar.gz
381389
cd boost_1_65_1
382-
./bootstrap.sh --with-libraries=log,thread,system,filesystem,program_options,test --prefix=/path/to/installation/target
390+
./bootstrap.sh --with-libraries=log,thread,system,filesystem,program_options,test
391+
--prefix=/path/to/installation/target
383392
./b2 install
384393
```
385394

@@ -418,7 +427,8 @@ salloc --ntasks=12
418427
As mentioned above, we want to use `mpi.intel/2018_gcc`. You may get an error message if you run the configuration script without specifying the `mpi-dir`. If you use another version, you can look it up with `module show` under `I_MPI_ROOT`. Then, run the `configure` script and follow the instructions:
419428

420429
```bash
421-
./configure --with-mpi-dir=/lrz/sys/intel/studio2018_p4/impi/2018.4.274 --download-fblaslapack=1
430+
./configure --with-mpi-dir=/lrz/sys/intel/studio2018_p4/impi/2018.4.274
431+
--download-fblaslapack=1
422432
```
423433

424434
You may additionally specify a `--prefix` for the target directory. Then, you just need to set `PETSC_DIR= prefix`.
@@ -435,7 +445,9 @@ Afterwards, you could follow the usual building instructions:
435445

436446
```bash
437447
mkdir build && cd build
438-
CC=mpicc CXX=mpicxx cmake -DPETSC=ON -DPYTHON=OFF -DCMAKE_INSTALL_PREFIX=/path/to/precice/installation -DCMAKE_BUILD_TYPE=Release ../..
448+
CC=mpicc CXX=mpicxx cmake -DPETSC=ON -DPYTHON=OFF \
449+
-DCMAKE_INSTALL_PREFIX=/path/to/precice/installation \
450+
-DCMAKE_BUILD_TYPE=Release ../..
439451
make -j 12
440452
make install
441453
```
@@ -585,7 +597,9 @@ Type "help", "copyright", "credits" or "license" for more information.
585597
You might face this problem:
586598

587599
```bash
588-
/.../.conda/envs/precice/lib/python3.12/site-packages/dolfin/jit/jit.py:46: RuntimeWarning: mpi4py.MPI.Session size changed, may indicate binary incompatibility. Expected 32 from C header, got 40 from PyObject
600+
/.../.conda/envs/precice/lib/python3.12/site-packages/dolfin/jit/jit.py:46:
601+
RuntimeWarning: mpi4py.MPI.Session size changed, may indicate binary incompatibility.
602+
Expected 32 from C header, got 40 from PyObject
589603
```
590604

591605
Please check your `mpi4py` version via `python -c "import mpi4py; print(mpi4py.__version__)`. If you are using a version `>= 4.x`, downgrade to the `3.x` version by running
@@ -887,6 +901,7 @@ module list
887901

888902
rm -rf build
889903
mkdir -p build && cd build
890-
cmake -DBUILD_SHARED_LIBS=ON -DMPI_CXX_COMPILER=mpigcc -DCMAKE_BUILD_TYPE=Debug -DPRECICE_FEATURE_PYTHON_ACTIONS=OFF ..
904+
cmake -DBUILD_SHARED_LIBS=ON -DMPI_CXX_COMPILER=mpigcc -DCMAKE_BUILD_TYPE=Debug \
905+
-DPRECICE_FEATURE_PYTHON_ACTIONS=OFF ..
891906
make -j
892907
```

pdfconfigs/titlepage.html

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,22 @@
1010
<!-- </div> -->
1111
</div>
1212
<div class="printSubtitle">{{site.print_subtitle}}</div>
13-
<div class="printVersion">Documentation version {{site.precice_version}}</div>
13+
<div class="printVersion">Documentation of preCICE v{{site.precice_version}}</div>
1414
<div class="lastGeneratedDate">Generated: {{ site.time | date: '%B %d, %Y' }}</div>
1515
<hr />
1616

1717
<div class="copyrightBoilerplate">
1818
<p>
19-
preCICE is free/open-source software, using the GNU LGPL3 license. The code is publicly available and actively developed on Github at <a href="https://github.com/precice/precice">https://github.com/precice/precice</a>.
19+
This PDF document is a snapshot of the preCICE documentation hosted at <a href="https://precice.org">precice.org</a> as of {{ site.time | date: '%B %d, %Y' }}. The HTML/CSS version of the documentation is available on Github at
20+
<a href="https://github.com/precice/precice.github.io">https://github.com/precice/precice.github.io</a> and can also be built locally.
21+
More snapshots are listed on <a href="https://precice.org/fundamentals-previous-versions.html">https://precice.org/fundamentals-previous-versions.html</a>.
2022
</p>
2123
<p>
22-
This pdf document is a snapshot of the preCICE documentation hosted at <a href="https://precice.org">precice.org</a> as of {{ site.time | date: '%B %d, %Y' }}. The HTML/CSS version of the documentation is available on Github at
23-
<a href="https://github.com/precice/precice.github.io">https://github.com/precice/precice.github.io</a> and can also be built locally with Jekyll. For more information consult the <a href="https://github.com/precice/precice.github.io#readme">README</a> in this repository.
24+
This snapshot has been generated with a non-commercial license of Prince: <a href="https://www.princexml.com/">https://www.princexml.com/</a>. While we do our best to improve the quality of this PDF archive, some content is only meant for online use, or still needs typesetting adjustments. Find more details on how we generate this archive on <a href="https://precice.org/docs-meta-publish-to-pdf.html">https://precice.org/docs-meta-publish-to-pdf.html</a> and help us improve it.
25+
</p>
26+
<p>
27+
preCICE is free/open-source software. The core library is distributed under the <a href="https://www.gnu.org/licenses/lgpl-3.0.html">GNU LGPL3</a> license. The code is publicly available and actively developed on <a href="https://github.com/precice">GitHub</a>. Further components of the preCICE ecosystem are distributed under different free/open-source licenses and maintained in separate repositories, following independent release cycles and versioning systems.
28+
The documentation is licensed under the <a href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International</a> license. License information: <a href="https://precice.org/fundamentals-license.html">https://precice.org/fundamentals-license.html</a>.
2429
</p>
2530
</div>
2631

0 commit comments

Comments
 (0)