3
0
mirror of https://github.com/triqs/dft_tools synced 2024-12-22 20:34:38 +01:00
Go to file
2023-06-07 16:18:59 -04:00
.github [ghactions] Update osx build to use gcc 12 2023-06-05 10:54:13 -04:00
c++/app4triqs Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
deps Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
doc [doc] Update sphinxext.numpydoc.plot_directive to latest version 2023-06-07 16:18:59 -04:00
packaging Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
python/app4triqs Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
share Set CPLUS_INCLUDE_PATH and LIBRARY_PATH in app4triqsvars.sh 2022-05-24 16:12:56 -04:00
test Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
.clang-format Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
.clang-tidy Synchronize clang-tidy config file with triqs 2023-06-06 10:46:39 -04:00
.dockerignore Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
.gitignore Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
ChangeLog.md Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
CMakeLists.txt Add Wfloat-conversion to warning list 2023-06-06 10:43:32 -04:00
COPYING.txt Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
Dockerfile Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
Jenkinsfile [jenkins] Move to gcc 13 for osx builds 2023-06-06 11:19:21 -04:00
LICENSE.txt Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
README.md Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00
requirements.txt Squash app4triqs/3.1.x to reduce skeleton history when tracking 2022-02-17 17:04:28 -05:00

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',