Go to file
Nils Wentzell 5dbd12f165 [cmake] Use FindGit.cmake in external_dependency.cmake, Improve error message on clone failure 2020-09-09 15:51:00 -04:00
.github Fix osx build environment in github actions workflow 2020-08-08 20:47:23 -04:00
c++/app4triqs [cmake] Disable setting c++ standard using target_compile_features 2020-05-28 11:50:35 -04:00
deps [cmake] Use FindGit.cmake in external_dependency.cmake, Improve error message on clone failure 2020-09-09 15:51:00 -04:00
doc [doc] Revert to cloudflare mathjax url 2020-08-10 11:13:14 -04:00
packaging Fix in easybuild template, check for static lib by default 2020-08-13 09:28:47 -04:00
python/app4triqs [cmake] Make sure to install python modules into their proper subdirectories 2020-06-10 18:30:49 -04:00
share [cmake] Make sure imported targets are always global, some copyright header adjustments 2020-08-07 10:53:16 -04:00
test Revert "[jenkins] inject test failure to test email" 2020-08-03 11:32:27 -04:00
.clang-format First draft of the triqs application skeleton 2018-03-22 18:16:10 +01:00
.clang-tidy [clang-tidy] Disable modernize-use-trailing-return-type 2019-09-13 17:09:53 -04:00
.dockerignore [jenkins] try to exclude large git packs from build 2019-07-31 12:13:08 -04:00
.gitignore [doc] Add doc/cpp2rst_generated to gitignore 2019-10-11 14:54:16 -04:00
CMakeLists.txt [cmake] Do not warn about unkown warning options 2020-09-09 12:03:55 -04:00
COPYING.txt Major cleaning, Synchronize project structure with qmc codes 2019-04-12 16:36:03 -04:00
ChangeLog.md [doc] Fix few doc problems, add changelog 2018-06-03 22:28:55 -04:00
Dockerfile [jenkins] align Dockerfile to triqs, too 2020-06-15 10:35:10 -04:00
Jenkinsfile [jenkins] send email on test failure too 2020-08-03 11:24:17 -04:00
LICENSE.txt Update License file initially copied from triqs project 2019-04-26 10:00:58 -04:00
README.md [doc] Update status badge for GH Actions 2020-08-08 15:24:13 -04:00
requirements.txt Add requirements.txt for python package dependencies 2019-07-29 14:42:20 -04:00

README.md

build

app4triqs - A skeleton for a TRIQS application

Initial Setup

To adapt this skeleton for a new TRIQS application, the following steps are necessary:

git clone https://github.com/triqs/app4triqs --branch unstable appname
cd appname
./share/squash_history.sh
./share/replace_and_rename.py appname
git add -A && git commit -m "Adjust app4triqs skeleton for appname"

You can now add your github repository and push to it

git remote add origin https://github.com/username/appname
git remote update
git push origin unstable

If you prefer to use the SSH interface to the remote repository, replace the http link with e.g. git@github.com:username/appname.

Merging app4triqs skeleton updates

You can merge future changes to the app4triqs skeleton into your project with the following commands

git remote update
git merge app4triqs_remote/unstable -m "Merge latest app4triqs skeleton changes"

If you should encounter any conflicts resolve them and git commit. Finally we repeat the replace and rename command from the initial setup.

./share/replace_and_rename.py appname
git commit --amend

Getting Started

After setting up your application as described above you should customize the following files and directories according to your needs (replace app4triqs in the following by the name of your application)

  • Adjust or remove the README.md and doc/ChangeLog.md file
  • In the c++/app4triqs subdirectory adjust the example files app4triqs.hpp and app4triqs.cpp or add your own source files.
  • In the test/c++ subdirectory adjust the example test basic.cpp or add your own tests.
  • In the python/app4triqs subdirectory add your Python source files. Be sure to remove the app4triqs_module_desc.py file unless you want to generate a Python module from your C++ source code.
  • In the test/python subdirectory adjust the example test Basic.py or add your own tests.
  • Adjust any documentation examples given as *.rst files in the doc directory.
  • Adjust the sphinx configuration in doc/conf.py.in as necessary.
  • The build and install process is identical to the one outline here.

### Optional ###

  • If you want to wrap C++ classes and/or functions provided in the c++/app4triqs/app4triqs.hpp rerun the c++2py tool with
c++2py -r app4triqs_module_desc.py
  • Add your email address to the bottom section of Jenkinsfile for Jenkins CI notification emails
End of build log:
\${BUILD_LOG,maxLines=60}
    """,
    to: 'user@domain.org',