commit 7189db4169cd9339fc918b7fe0db567bb489f3da
parent 2ff879a7df64b62b255d93607567de565eb015cf
Author: Vincent Forest <vincent.forest@meso-star.com>
Date: Thu, 4 May 2023 16:08:20 +0200
stardis: release version 0.14
Update the overview page to reflect the updates introduced by this
release. For example, the stardis program can now handle physical
properties varying in time and space.
We also remove the precompiled versions of Stardis to keep only the
installation from the sources. Note that it was already necessary to
compile Stardis if MPI support was required. In addition to unifying the
installation procedure, compiling Stardis directly on the target
machine also allows to automatically generate the profile file.
Finally, we remove the links to the git repositories from the menu: they
are now in the header of the new pages that list the release notes for
each component.
Diffstat:
7 files changed, 99 insertions(+), 157 deletions(-)
diff --git a/meso-menu.sh b/meso-menu.sh
@@ -298,18 +298,23 @@ print_stardis_sub_menu() {
else
echo " <li><a href=${root}stardis/starter-pack.html>Starter Pack</a></li>"
fi
-
- if [ "${name}" = "Downloads" ]; then
- echo " <li id=cur>Downloads</li>"
+ echo " <li>Release notes"
+ echo " <ul class=lvl2>"
+ if [ "${name}" = "Stardis Solver Release Notes" ]; then
+ echo "<li id=cur>Stardis-Solver</li>"
else
- echo " <li><a href=${root}stardis/stardis-downloads.html>Downloads</a></li>"
+ echo " <li><a href=\"${root}stardis/stardis-solver-release-notes.html\">Stardis-Solver</a></li>"
+ fi
+ if [ "${name}" = "Stardis Release Notes" ]; then
+ echo "<li id=cur>Stardis CLI</li>"
+ else
+ echo " <li><a href=\"${root}stardis/stardis-release-notes.html\">Stardis CLI</a></li>"
+ fi
+ if [ "${name}" = "Stardis Green Release Notes" ]; then
+ echo "<li id=cur>Stardis Green</li>"
+ else
+ echo " <li><a href=\"${root}stardis/sgreen-release-notes.html\">Stardis-Green</a></li>"
fi
-
- echo " <li>Git repositories"
- echo " <ul class=\"lvl2\">"
- echo " <li><a href=\"https://gitlab.com/meso-star/stardis-solver\">Stardis-Solver</a></li>"
- echo " <li><a href=\"https://gitlab.com/meso-star/stardis\">Stardis CLI</a></li>"
- echo " <li><a href=\"https://gitlab.com/meso-star/stardis-green\">Stardis Green</a></li>"
echo " </ul>"
echo " </li>"
echo " </ul>"
diff --git a/stardis/.gitignore b/stardis/.gitignore
@@ -1,10 +1,9 @@
consortium*.html
stardis.html
-stardis-downloads.html
starter-pack.html
-stardis-release-notes.html.in
-stardis-solver-release-notes.html.in
-stardis-green-release-notes.html.in
+stardis-release-notes.html
+stardis-solver-release-notes.html
+sgreen-release-notes.html
starter-pack.html
Stardis-*-GNU-Linux64/
Stardis-Starter-Pack-*/
diff --git a/stardis/Makefile b/stardis/Makefile
@@ -16,7 +16,7 @@
include ../config.mk
-STARDIS_VERSION=0.13.1
+STARDIS_VERSION=0.14.0
STARTER_PACK_VERSION=0.2.0
STARDIS_DIR=Stardis-$(STARDIS_VERSION)-GNU-Linux64
@@ -83,8 +83,10 @@ VALIDATION_IMG=\
HTML=\
consortium-fr.html\
consortium-en.html\
+ sgreen-release-notes.html\
stardis.html\
- stardis-downloads.html\
+ stardis-solver-release-notes.html\
+ stardis-release-notes.html\
starter-pack.html\
validation.html
@@ -157,17 +159,22 @@ consortium-en.html: consortium-en.html.in edf_logo.svg stardis_build.sh
@$(SHELL) stardis_build.sh consortium en > $@
################################################################################
-# Download web pages
+# Release notes
################################################################################
-stardis-downloads.html:\
- $(STARDIS_SIG) \
- $(STARDIS_SOLVER_README) \
- $(STARDIS_README) \
- $(STARDIS_GREEN_README) \
- stardis_build.sh
+stardis-release-notes.html: $(STARDIS_README) stardis_build.sh
@echo "Building $@"
- @$(SHELL) stardis_build.sh downloads $(STARDIS_SOLVER_README) $(STARDIS_README) \
- $(STARDIS_GREEN_README) > $@
+ @$(SHELL) stardis_build.sh release_notes stardis\
+ "$(STARDIS_README)" > $@
+
+sgreen-release-notes.html: $(STARDIS_GREEN_README) stardis_build.sh
+ @echo "Building $@"
+ @$(SHELL) stardis_build.sh release_notes stardis-green\
+ "$(STARDIS_GREEN_README)" > $@
+
+stardis-solver-release-notes.html: $(STARDIS_SOLVER_README) stardis_build.sh
+ @echo "Building $@"
+ @$(SHELL) stardis_build.sh release_notes stardis-solver\
+ "$(STARDIS_SOLVER_README)" > $@
$(STARDIS_ARCH_FILES):
@echo "Extracting data from $(STARDIS_ARCH)"
diff --git a/stardis/downloads/Stardis-0.14.0-GNU-Linux64.tar.gz b/stardis/downloads/Stardis-0.14.0-GNU-Linux64.tar.gz
@@ -0,0 +1 @@
+#$# git-wad 6935c5f284785aa49d235bbc61526868480f3f8a596e3f6d67412005a417a4fb 16087778
+\ No newline at end of file
diff --git a/stardis/downloads/Stardis-0.14.0-Sources.tar.gz b/stardis/downloads/Stardis-0.14.0-Sources.tar.gz
@@ -0,0 +1 @@
+#$# git-wad e702f86798586bacbd78bd889a5401d1a946506cfa01bdceb4370bb53d16959a 987497
+\ No newline at end of file
diff --git a/stardis/stardis.html.in b/stardis/stardis.html.in
@@ -9,12 +9,10 @@
<div class="news">
<p><b>Stardis ${VERSION} is available</b></p>
<ul>
- <li>GNU/Linux:
- <a href="downloads/Stardis-${VERSION}-GNU-Linux64.tar.gz">tarball</a> /
- <a href="downloads/Stardis-${VERSION}-GNU-Linux64.tar.gz.sig">pgp</a></li>
- <li>Sources:
- <a href="downloads/Stardis-${VERSION}-Sources.tar.gz">tarball</a> /
- <a href="downloads/Stardis-${VERSION}-Sources.tar.gz.sig">pgp</a></li>
+ <li>Build from sources:
+ <a href=https://gitlab.com/meso-star/star-engine/tree/Stardis-${VERSION}>
+ git</a>
+ </li>
</ul>
</div>
@@ -277,24 +275,17 @@ each step, the accumulated power and flux, etc.</p>
<a href="man/man1/stardis.1.html">
stardis</a> and <a
href="man/man1/sgreen.1.html">sgreen</a>,
-to use along with Stardis-Solver. Even if these software are intended as
-reference implementations, they allow to easily exploit some of the
-functionalities of the solver.</p>
+to use along with Stardis-Solver. They make it easy to exploit the features of
+the solver.</p>
<h3 id="stardis-cli">The stardis CLI</h3>
-<p>The main CLI tool of the Stardis framework is <b>stardis</b>. It can be seen
-as a limited but easy-to-use front-end to the stardis solver. Depending on the
-provided command line arguments, it simulates a thermal system described
-through a simple text file and geometry files and produces various types of
-output, from simple Monte-Carlo results to infrared images or Green
-functions.</p>
-
-<p>The main limitation that the <b>stardis</b> CLI adds to those of
-Stardis-Solver is that property descriptions cannot be time or space dependent:
-each region of the system, delimited by a boundary, can have its own set of
-properties, but these properties must be constant (whereas stardis-solver allows
-properties varying in time and space).</p>
+<p>The main CLI tool of the Stardis framework is <b>stardis</b>. It is a
+barebone front-end to the stardis solver. Depending on the provided command
+line arguments, it simulates a thermal system described through a simple text
+file and geometry files and produces various types of output, from simple
+Monte-Carlo results to infrared images or Green functions. Refer to its <a
+href="man/man1/stardis.1.html">manual page</a> page for more informations.</p>
<h3 id="sgreen-cli">The sgreen CLI</h3>
@@ -303,83 +294,24 @@ files produced by the stardis CLI. It allows to apply a set of values to the
initial and boundary conditions as well as the power and flux sources of the
model to produce the same result a new simulation would produce. The obvious
benefit of using the sgreen post-process instead of a new Monte-Carlo
-simulation is the tremendous improvement on computation time.</p>
-
-<h2>Quick start</h2>
-
-<p>Pre-compiled versions of Stardis are distributed for the GNU/Linux system
-but <b>to enable distributed parallelism via MPI, you must compile Stardis on the
-target machine</b> (see below). To use a precompiled version, first download the
-desired archive of Stardis and check its integrity against its <a
-href=../misc/pgp_signatures.html>PGP signature</a>. Then extract it:</p>
-
-<pre class="code">
-$ wget https://www.meso-star.com/projects/stardis/downloads/\
-Stardis-${VERSION}-GNU-Linux64.tar.gz
-$ wget https://www.meso-star.com/projects/stardis/downloads/\
-Stardis-${VERSION}-GNU-Linux64.tar.gz.sig
-$ gpg --verify Stardis-${VERSION}-GNU-Linux64.tar.gz.sig
-$ tar xzf Stardis-${VERSION}-GNU-Linux64.tar.gz
-</pre>
-
-<p>We have now to generate the <code>stardis.profile</code> POSIX shell script
-that is going to be executed in the running shell to update its environment
-variables with the install directories of <code>stardis</code> that, once done,
-can be finally be run.</p>
-
-<p>Now we need to generate the <code>stardis.profile</code> POSIX shell script
-that we run in the running shell to update its environment variables with the
-Stardis installation directory. Once this is done, we can run the
-<code>stardis</code> program.</p>
+simulation is the tremendous improvement on computation time. Refer to its <a
+href="man/man1/sgreen.1.html">manual page</a> page for more informations.</p>
-<pre class="code">
-$ sh ~/Stardis-${VERSION}-GNU-Linux64/etc/build-stardis-profile.sh
-$ . ~/Stardis-${VERSION}-GNU-Linux64/etc/stardis.profile
-$ stardis -h # Launch stardis
-</pre>
-
-<p>Note that if the <code>build-stardis-profile.sh</code> script should no
-longer be run as long as the Stardis installation directory remains the same,
-the <code>stardis.profile</code> script must be run in each new POSIX shell in
-which you want to give access to the Stardis installation.</p>
+<h2 id=build>Installation</h2>
-<p>The <b>reference documentation</b> of the Stardis CLI and of its associated
-tools and fileformats is located in the <code>share/man</code> sub-directory.
-To consult it, simply invoke the <code>man</code> command-line.</p>
-
-<pre class="code">
-$ man stardis
-$ man stardis-input
-$ man stardis-output
-$ man sgreen
-$ man sgreen-input
-$ man sgreen-output
-</pre>
-
-<p>Refer to the <a href=starter-pack.html>Stardis: Starter Pack</a> to quickly
-run a thermal simulation through the <code>stardis</code> CLI; this archive
-provides input data and scripts and is a good starting point to begin with the
-Stardis framework.</p>
-
-<h2 id=build>Build from sources</h2>
-
-<p>The Stardis framework can be built directly from its source tree. Note that
-it is actually the only way to <b>enable distributed parallelism</b> via the
-Message Passing Interface specification, precompiled version of Stardis does
-not support MPI.</p>
-
-<p>The simplest way to build Stardis from its sources is to rely on the
+<p>The installation of Stardis consists of compiling the solver and the command
+line tools directly on the target machine. The easiest way is to use the
<code>stardis</code> branch of the <a
href="https://gitlab.com/meso-star/star-engine/tree/stardis">Star-Engine</a>
project: it provides CMake scripts that automate the download, the compilation
-and the installation of Stardis. This build procedure assumes the following
-prerequisites:</p>
+and deployment of the Stardis framework. This build procedure assumes the
+following prerequisites:</p>
<ul>
<li><a href=https://git-scm.com>git</a> source control.</li>
- <li><a href=https://gcc.gnu.org>GNU Compiler Collection</a> in version 4.8.4
+ <li><a href=https://gcc.gnu.org>GNU Compiler Collection</a> in version 7
or higher.</li>
- <li><a href="https://cmake.org">CMake</a> in version 3 or higher.</li>
+ <li><a href="https://cmake.org">CMake</a> in version 3.1 or higher.</li>
<li><a href="https://www.open-mpi.org/">OpenMPI</a> 2 or higher if
distributed memory parallelism is enabled via the <code>ENABLE_MPI</code>
variable of the build system.</li>
@@ -406,14 +338,7 @@ installation of the Stardis CLI tools and support for distributed parallelism
via MPI.</p>
<p>By default Stardis is installed in the <code>local</code> subdirectory of
-<code>Stardis-${VERSION}</code>. As the last step of the installation, we need
-to generate the <code>stardis.profile</code> POSIX shell script that will be
-run in a running shell to update its environment variables with the Stardis
-installation directory.</p>
-
-<pre class="code">
-$ sh ~/Stardis-${VERSION}/local/etc/build-stardis-profile.sh
-</pre>
+<code>Stardis-${VERSION}</code>.
<h3>Run</h3>
@@ -423,14 +348,32 @@ Then you can run the stardis program and check out its reference
documentation.</p>
<pre class="code">
-$ . ~/Stardis-${VERSION}/local/etc/stardis.profile
-$ stardis -h
+~ $ . ~/Stardis-${VERSION}/local/etc/stardis.profile
+~ $ stardis -h
</pre>
<p>We point out that the <code>stardis.profile</code> script must be run in
each new POSIX shell in which you want to give access to the Stardis
installation.</p>
+<p>If the AsciiDoc tool suite was installed on make invocation, the reference
+documentation should be available through manual pages. Use the man
+command-line to consult them. For example:</p>
+
+<pre class="code">
+~ $ man stardis
+~ $ man stardis-input
+~ $ man stardis-output
+~ $ man sgreen
+~ $ man sgreen-input
+~ $ man sgreen-output
+</pre>
+
+<p>Refer to the <a href=starter-pack.html>Stardis: Starter Pack</a> to quickly
+run a thermal simulation through the <code>stardis</code> CLI; this archive
+provides input data and scripts and is a good starting point to begin with the
+Stardis framework.</p>
+
<h3>Package</h3>
<p>Once built, the Stardis installation can be packaged in an archive that can
diff --git a/stardis/stardis_build.sh b/stardis/stardis_build.sh
@@ -48,44 +48,28 @@ consortium()
print_footer
}
-downloads()
+release_notes()
{
- if [ $# -lt 3 ]; then
- printf "Usage: %s downloads <stardis-solver-release-notes> \
-<stardis-release-notes> <stardis-green-release-notes>\n" "$0" >&2
+ if [ $# -lt 2 ]; then
+ printf "Usage: %s downloads <repository> <release-notes>\n" "$0" >&2
exit 1
fi
- print_header -s Stardis -n Downloads -r ../
- echo '<header><h1>Download Stardis</h1></header>'
-
- echo "<p>The proposed archives contain precompiled version of the <a"
- echo "href=\"https://gitlab.com/meso-star/stardis-solver.git\">Stardis-Solver</a>"
- echo "library and of the <a href=\"./man/man1/stardis.1.html\">stardis</a>"
- echo "and <a href=\"./man/man1/sgreen.1.html\">sgreen</a> command line"
- echo "tools. Refer below for their associated release notes. The version of"
- echo "the archive corresponds to the version number of the Stardis-Solver"
- echo "library packaged into the archive.</p>"
-
- solver_release_notes=$(${markdown} "$1" \
- | sed -n '/^<h2>Release notes<\/h2>/,/^<h2>License<\/h2>/p' \
- | sed -e '1d' -e '$d')
- app_release_notes=$(${markdown} "$2" \
- | sed -n '/^<h2>Release notes<\/h2>/,/^<h2>License<\/h2>/p' \
- | sed -e '1d' -e '$d' \
- | sed 's/<h2>Version 0.8<\/h2>/<h3>Version 0.8<\/h3>/') # Fix formatting
- green_release_notes=$(${markdown} "$3" \
- | sed -n '/^<h2>Release notes<\/h2>/,/^<h2>License<\/h2>/p' \
+ name=$(echo "$1" | sed -e 's/^\([a-z]\)/\u\1/' -e 's/-\([a-z]\)/ \u\1/')
+ name="${name} Release Notes"
+ print_header -s Stardis -n "${name}" -r ../
+
+ echo "<header><h1>${name}"
+ echo " <span class=\"subtitle\">"
+ echo " <a href=\"https://gitlab.com/meso-star/$1\">git</a> repository"
+ echo " </span>"
+ echo "</h1></header>"
+
+ ${markdown} "$2"\
+ | sed -n '/^<h2>Release notes<\/h2>/,/^<h2>License<\/h2>/p'\
| sed -e '1d' -e '$d' \
- | sed 's/<h2>Version 0.4<\/h2>/<h3>Version 0.4<\/h3>/') # Fix formatting
-
- print_downloads Stardis "Linux"
- echo "<h2>Stardis-Solver Library release notes</h2>"
- echo "${solver_release_notes}"
- echo "<h2>Stardis CLI release notes</h2>"
- echo "${app_release_notes}"
- echo "<h2>Stardis-Green CLI release notes</h2>"
- echo "${green_release_notes}"
+ | sed 's/<h3>\(.*\)<\/h3>/<h2>\1<\/h2>/g'\
+ | sed 's/<h4>\(.*\)<\/h3>/<h3>\1<\/h3>/g'
print_footer
}