Skip to content

Commit a71a020

Browse files
matthiasdienerrbuch
authored andcommitted
doc: say that CMake is the default build system (#3420)
Co-authored-by: Ronak Buch <[email protected]>
1 parent 413120d commit a71a020

File tree

3 files changed

+40
-36
lines changed

3 files changed

+40
-36
lines changed

CMakeLists.txt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@
1313
cmake_minimum_required(VERSION 3.4)
1414

1515
# Print warning
16-
message("#################################################################")
17-
message("# The CMake build system is currently a beta version. #")
18-
message("# Please let us know if you experience any problems by opening #")
19-
message("# an issue on our GitHub (https://github.com/UIUC-PPL/charm), #")
20-
message("# with the below configuration information. #")
21-
message("# You can run './buildold' to use the previous build system. #")
22-
message("#################################################################")
16+
message("##################################################################")
17+
message("# The CMake build system may not support advanced build options. #")
18+
message("# Please let us know if you experience any problems by opening #")
19+
message("# an issue on our GitHub (https://github.com/UIUC-PPL/charm), #")
20+
message("# with the below configuration information. #")
21+
message("# You can run './buildold' to use the previous build system. #")
22+
message("##################################################################")
2323

2424
if(CMAKE_VERSION VERSION_GREATER 3.12 OR CMAKE_VERSION VERSION_EQUAL 3.12)
2525
cmake_policy(SET CMP0075 OLD)

doc/charm++/manual.rst

Lines changed: 32 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -11271,9 +11271,9 @@ Downloading Charm++
1127111271

1127211272
Charm++ can be downloaded using one of the following methods:
1127311273

11274-
- From Charm++ website - The current stable version (source code and
11274+
- From the Charm++ website - The current stable version (source code and
1127511275
binaries) can be downloaded from our website at
11276-
*http://charm.cs.illinois.edu/software*.
11276+
*https://charm.cs.illinois.edu/software*.
1127711277

1127811278
- From source archive - The latest development version of Charm++ can
1127911279
be downloaded from our source archive using *git clone
@@ -11292,20 +11292,31 @@ Installation
1129211292
A typical prototype command for building Charm++ from the source code
1129311293
is:
1129411294

11295-
``./build <TARGET> <TARGET ARCHITECTURE> [OPTIONS]`` where,
11295+
.. code-block:: bash
11296+
11297+
$ ./build <TARGET> <TARGET ARCHITECTURE> [OPTIONS]
11298+
11299+
where,
1129611300

11297-
TARGET
11301+
``TARGET``
1129811302
is the framework one wants to build such as *charm++* or *AMPI*.
1129911303

11300-
TARGET ARCHITECTURE
11304+
``TARGET ARCHITECTURE``
1130111305
is the machine architecture one wants to build for such as
1130211306
*netlrts-linux-x86_64*, *pamilrts-bluegeneq* etc.
1130311307

11304-
OPTIONS
11308+
``OPTIONS``
1130511309
are additional options to the build process, e.g. *smp* is used to
1130611310
build a shared memory version, *-j8* is given to build in parallel
1130711311
etc.
1130811312

11313+
.. note::
11314+
11315+
Starting from version 7.0, Charm++ uses the CMake-based build system
11316+
when building with the ``./build`` command. To use the old configure-based
11317+
build system, you can build with the ``./buildold`` command with the same
11318+
options. We intend to remove the old build system in Charm++ 7.1.
11319+
1130911320
In Table :numref:`tab:buildlist`, a list of build
1131011321
commands is provided for some of the commonly used systems. Note that,
1131111322
in general, options such as *smp*, ``--with-production``, compiler
@@ -11362,13 +11373,13 @@ path would be ``netlrts-linux-x86_64/tmp``. On Linux and macOS, the tmp
1136211373
symlink in the top-level charm directory also points to the tmp
1136311374
directory of the most recent build.
1136411375

11365-
Alternatively, CMake can be used for configuring and building Charm++.
11376+
Alternatively, CMake can be used directly for configuring and building Charm++.
1136611377
You can use ``cmake-gui`` or ``ccmake`` for an overview of available
1136711378
options. Note that some are only effective when passed with ``-D`` from
1136811379
the command line while configuring from a blank slate. To build with all
1136911380
defaults, ``cmake .`` is sufficient, though invoking CMake from a
1137011381
separate location (ex:
11371-
``mkdir mybuild && cd mybuild && cmake ../charm``) is recommended.
11382+
``mkdir mybuild && cd mybuild && cmake ..``) is recommended.
1137211383
Please see Section :numref:`sec:cmakeinstall` for building Charm++
1137311384
directly with CMake.
1137411385

@@ -11419,9 +11430,8 @@ select another version with the ``@`` option (for example,
1141911430
Installation with CMake
1142011431
~~~~~~~~~~~~~~~~~~~~~~~
1142111432

11422-
As an experimental feature, Charm++ can be installed with the CMake tool,
11423-
version 3.4 or newer.
11424-
This is currently supported on Linux and Darwin, but not on Windows.
11433+
Charm++ can be installed directly with the CMake tool,
11434+
version 3.4 or newer, without using the ``./build`` command.
1142511435

1142611436
After downloading and unpacking Charm++, it can be installed in the following way:
1142711437

@@ -11442,46 +11452,40 @@ For example, to build Charm++ and AMPI on top of the MPI layer with SMP, the fol
1144211452

1144311453
$ cmake .. -DNETWORK=mpi -DSMP=on -DTARGET=AMPI
1144411454

11445-
To simplify building with CMake, the `buildcmake` command is a simple wrapper around cmake
11446-
that supports many of the options that `build` supports.
11447-
11448-
.. code-block:: bash
11449-
11450-
$ ./buildcmake AMPI netlrts-linux-x86_64 smp --with-production
1145111455

1145211456
Charm++ installation directories
1145311457
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1145411458

1145511459
The main directories in a Charm++ installation are:
1145611460

11457-
charm/bin
11461+
``charm/bin``
1145811462
Executables, such as charmc and charmrun, used by Charm++.
1145911463

11460-
charm/doc
11464+
``charm/doc``
1146111465
Documentation for Charm++, such as this document. Distributed as
11462-
LaTeX source code; HTML and PDF versions can be built or downloaded
11463-
from our web site.
11466+
reStructuredText (RST or ReST) source code; HTML and PDF versions can be
11467+
built or downloaded from our web site.
1146411468

11465-
charm/include
11469+
``charm/include``
1146611470
The Charm++ C++ and Fortran user include files (.h).
1146711471

11468-
charm/lib
11472+
``charm/lib``
1146911473
The static libraries (.a) that comprise Charm++.
1147011474

11471-
charm/lib_so
11475+
``charm/lib_so``
1147211476
The shared libraries (.so/.dylib) that comprise Charm++, if Charm++
1147311477
is compiled with the ``-build-shared`` option.
1147411478

11475-
charm/examples
11479+
``charm/examples``
1147611480
Example Charm++ programs.
1147711481

11478-
charm/src
11482+
``charm/src``
1147911483
Source code for Charm++ itself.
1148011484

11481-
charm/tmp
11485+
``charm/tmp``
1148211486
Directory where Charm++ is built.
1148311487

11484-
charm/tests
11488+
``charm/tests``
1148511489
Test Charm++ programs used by autobuild.
1148611490

1148711491
Reducing disk usage

doc/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
# -- Project information -----------------------------------------------------
2121

2222
project = 'Charm++'
23-
copyright = '2020, PPL'
23+
copyright = '2021, PPL'
2424
author = 'PPL'
2525

2626
# The short X.Y version

0 commit comments

Comments
 (0)