-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 2a9504c
Showing
316 changed files
with
120,463 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
BasedOnStyle: LLVM | ||
|
||
AccessModifierOffset: 0 | ||
AlignAfterOpenBracket: Align | ||
AlignConsecutiveAssignments: true | ||
AlignConsecutiveDeclarations: false | ||
AlignEscapedNewlinesLeft: false | ||
AlignOperands: false | ||
AlignTrailingComments: true | ||
AllowAllParametersOfDeclarationOnNextLine: false | ||
AllowShortBlocksOnASingleLine: true | ||
AllowShortCaseLabelsOnASingleLine: true | ||
AllowShortFunctionsOnASingleLine: All | ||
AllowShortIfStatementsOnASingleLine: true | ||
AllowShortLoopsOnASingleLine: true | ||
AlwaysBreakBeforeMultilineStrings: true | ||
AlwaysBreakTemplateDeclarations: false | ||
BinPackArguments: true | ||
BinPackParameters: true | ||
BreakBeforeBinaryOperators: NonAssignment | ||
BreakBeforeBraces: Attach | ||
BreakBeforeTernaryOperators: false | ||
BreakConstructorInitializersBeforeComma: false | ||
BreakStringLiterals: false | ||
ColumnLimit: 150 | ||
ConstructorInitializerAllOnOneLineOrOnePerLine: true | ||
ConstructorInitializerIndentWidth: 3 | ||
ContinuationIndentWidth: 3 | ||
Cpp11BracedListStyle: true | ||
DerivePointerBinding : false | ||
IndentCaseLabels: true | ||
IndentWidth: 2 | ||
Language: Cpp | ||
MaxEmptyLinesToKeep: 1 | ||
NamespaceIndentation : All | ||
PointerAlignment: Right | ||
ReflowComments: false | ||
SortIncludes: false | ||
SpaceAfterControlStatementKeyword: true | ||
SpaceBeforeAssignmentOperators: true | ||
SpaceInEmptyParentheses: false | ||
SpacesInParentheses: false | ||
Standard: Cpp11 | ||
TabWidth: 2 | ||
UseTab: Never |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
Checks: '-*,modernize-*,cppcoreguidelines-*,-modernize-use-trailing-return-type' | ||
HeaderFilterRegex: 'ctint_tutorial' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
.travis.yml | ||
Dockerfile | ||
Jenkinsfile | ||
.git/objects/pack |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
--- | ||
name: Bug report | ||
about: Create a report to help us improve | ||
title: Bug report | ||
labels: bug | ||
|
||
--- | ||
|
||
### Prerequisites | ||
|
||
* Please check that a similar issue isn't already filed: https://github.com/issues?q=is%3Aissue+user%3Atriqs | ||
|
||
### Description | ||
|
||
[Description of the issue] | ||
|
||
### Steps to Reproduce | ||
|
||
1. [First Step] | ||
2. [Second Step] | ||
3. [and so on...] | ||
|
||
or paste a minimal code example to reproduce the issue. | ||
|
||
**Expected behavior:** [What you expect to happen] | ||
|
||
**Actual behavior:** [What actually happens] | ||
|
||
### Versions | ||
|
||
Please provide the application version that you used. | ||
|
||
You can get this information from copy and pasting the output of | ||
```bash | ||
python -c "from ctint_tutorial.version import *; show_version(); show_git_hash();" | ||
``` | ||
from the command line. Also, please include the OS you are running and its version. | ||
|
||
### Formatting | ||
|
||
Please use markdown in your issue message. A useful summary of commands can be found [here](https://guides.github.com/pdfs/markdown-cheatsheet-online.pdf). | ||
|
||
### Additional Information | ||
|
||
Any additional information, configuration or data that might be necessary to reproduce the issue. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
--- | ||
name: Feature request | ||
about: Suggest an idea for this project | ||
title: Feature request | ||
labels: feature | ||
|
||
--- | ||
|
||
### Summary | ||
|
||
One paragraph explanation of the feature. | ||
|
||
### Motivation | ||
|
||
Why is this feature of general interest? | ||
|
||
### Implementation | ||
|
||
What user interface do you suggest? | ||
|
||
### Formatting | ||
|
||
Please use markdown in your issue message. A useful summary of commands can be found [here](https://guides.github.com/pdfs/markdown-cheatsheet-online.pdf). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
compile_commands.json | ||
doc/cpp2rst_generated |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
|
||
language: cpp | ||
sudo: required | ||
dist: xenial | ||
|
||
compiler: | ||
#- gcc | ||
- clang | ||
|
||
before_install: | ||
- sudo add-apt-repository 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main' -y | ||
- wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add - | ||
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y | ||
- sudo apt-get update | ||
- sudo rm -f /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock # Avoid the occasional apt-get install failure for xenial image | ||
- sudo apt-get install -y --allow-unauthenticated g++-8 clang-8 | ||
- export LIBRARY_PATH=/usr/lib/llvm-8/lib:$LIBRARY_PATH | ||
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 60 --slave /usr/bin/g++ g++ /usr/bin/g++-8 | ||
- sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-8 60 --slave /usr/bin/clang++ clang++ /usr/bin/clang++-8 | ||
- sudo apt-get install -y --allow-unauthenticated cmake git hdf5-tools libblas-dev libboost-all-dev libfftw3-dev libgfortran3 libhdf5-serial-dev libgmp-dev liblapack-dev libopenmpi-dev libclang-8-dev python-clang-8 python-dev python-h5py python-mako python-matplotlib python-mpi4py python-numpy python-scipy python-sphinx libjs-mathjax libnfft3-dev | ||
|
||
install: true | ||
|
||
script: | ||
- export INSTALL_DIR=$HOME/root_install # We should install outside the repository | ||
# ===== Set up TRIQS | ||
- cd $TRAVIS_BUILD_DIR | ||
- git clone https://github.com/TRIQS/triqs --branch unstable | ||
- mkdir triqs/build && cd triqs/build | ||
- cmake .. -DCMAKE_CXX_COMPILER=/usr/bin/${CXX} -DBuild_Tests=OFF -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR -DASAN=ON -DUBSAN=ON | ||
- make -j2 install | ||
- source $INSTALL_DIR/share/triqsvars.sh | ||
# ===== Set up ctint_tutorial and test | ||
- cd $TRAVIS_BUILD_DIR | ||
- mkdir build && cd build | ||
- cmake .. -DCMAKE_CXX_COMPILER=/usr/bin/${CXX} -DASAN=ON -DUBSAN=ON | ||
- export UBSAN_SYMBOLIZER_PATH=/usr/lib/llvm-8/bin/llvm-symbolizer | ||
- export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-8/bin/llvm-symbolizer | ||
- export UBSAN_OPTIONS=symbolize=1:print_stacktrace=1 | ||
- export ASAN_OPTIONS=symbolize=1:detect_leaks=0 | ||
- export CTEST_OUTPUT_ON_FAILURE=1 | ||
- make -j2 && make test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,140 @@ | ||
# ############################################################################## | ||
# | ||
# ctint_tutorial - An example application using triqs and cpp2py | ||
# | ||
# Copyright (C) ... | ||
# | ||
# ctint_tutorial is free software: you can redistribute it and/or modify it under the | ||
# terms of the GNU General Public License as published by the Free Software | ||
# Foundation, either version 3 of the License, or (at your option) any later | ||
# version. | ||
# | ||
# ctint_tutorial is distributed in the hope that it will be useful, but WITHOUT ANY | ||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR | ||
# A PARTICULAR PURPOSE. See the GNU General Public License for more details. | ||
# | ||
# You should have received a copy of the GNU General Public License along with | ||
# ctint_tutorial (in the file COPYING.txt in this directory). If not, see | ||
# <http://www.gnu.org/licenses/>. | ||
# | ||
# ############################################################################## | ||
|
||
cmake_minimum_required(VERSION 3.0.2 FATAL_ERROR) | ||
if(POLICY CMP0074) | ||
cmake_policy(SET CMP0074 NEW) | ||
endif() | ||
|
||
# ############ | ||
# Define Project | ||
project(CTINT_TUTORIAL VERSION 2.2.0 LANGUAGES C CXX) | ||
|
||
# ############ | ||
# Load TRIQS and CPP2PY | ||
find_package(TRIQS 2.2 REQUIRED) | ||
find_package(Cpp2Py 1.6 REQUIRED) | ||
|
||
# Get the git hash & print status | ||
triqs_get_git_hash_of_source_dir(PROJECT_GIT_HASH) | ||
message(STATUS "${PROJECT_NAME} version : ${PROJECT_VERSION}") | ||
message(STATUS "${PROJECT_NAME} Git hash: ${PROJECT_GIT_HASH}") | ||
|
||
# Enforce Consistent Versioning | ||
if(NOT ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} VERSION_EQUAL ${TRIQS_VERSION_MAJOR}.${TRIQS_VERSION_MINOR}) | ||
message(FATAL_ERROR "The ${PROJECT_NAME} version ${PROJECT_VERSION} is not compatible with TRIQS version ${TRIQS_VERSION}.") | ||
endif() | ||
|
||
# Default Install directory to TRIQS_ROOT if not given or invalid. | ||
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT OR (NOT IS_ABSOLUTE ${CMAKE_INSTALL_PREFIX})) | ||
message(STATUS "No install prefix given (or invalid). Defaulting to TRIQS_ROOT") | ||
set(CMAKE_INSTALL_PREFIX ${TRIQS_ROOT} CACHE PATH "default install path" FORCE) | ||
endif() | ||
message(STATUS "-------- CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX} --------") | ||
|
||
# ############ | ||
# Options | ||
|
||
# Default to Release build type | ||
if(NOT CMAKE_BUILD_TYPE) | ||
set(CMAKE_BUILD_TYPE Release CACHE STRING "Type of build" FORCE) | ||
endif() | ||
message(STATUS "-------- BUILD-TYPE: ${CMAKE_BUILD_TYPE} --------") | ||
|
||
# Build static libraries | ||
set(BUILD_SHARED_LIBS OFF) | ||
|
||
# Export the list of compile-commands into compile_commands.json | ||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON) | ||
|
||
# Global compiler options | ||
add_compile_options( | ||
$<$<CONFIG:Debug>:-Og> | ||
$<$<CONFIG:Debug>:-ggdb3> | ||
) | ||
|
||
# Create an Interface target for compiler warnings | ||
add_library(project_warnings INTERFACE) | ||
install(TARGETS project_warnings EXPORT ctint_tutorial-targets) | ||
target_compile_options(project_warnings | ||
INTERFACE | ||
-Wall | ||
-Wextra | ||
-Wpedantic | ||
-Wno-sign-compare | ||
$<$<CXX_COMPILER_ID:GNU>:-Wshadow=local> | ||
$<$<CXX_COMPILER_ID:Clang>:-Wshadow> | ||
$<$<CXX_COMPILER_ID:Clang>:-Wno-gcc-compat> | ||
) | ||
|
||
# ############# | ||
# Build Project | ||
|
||
# Build and install the ctint_tutorial library | ||
add_subdirectory(c++/ctint_tutorial) | ||
|
||
# Tests | ||
option(Build_Tests "Build tests" ON) | ||
if(Build_Tests) | ||
enable_testing() | ||
add_subdirectory(test) | ||
endif() | ||
|
||
if(TRIQS_WITH_PYTHON_SUPPORT) | ||
# Python interface | ||
add_subdirectory(python/ctint_tutorial) | ||
|
||
# Build the documentation | ||
option(Build_Documentation "Build documentation" OFF) | ||
if(Build_Documentation) | ||
if(NOT TRIQS_WITH_DOCUMENTATION) | ||
message(WARNING "TRIQS was installed without documentation! Cannot build documentation.") | ||
else() | ||
message(STATUS "Documentation Build enabled") | ||
add_subdirectory(doc) | ||
endif() | ||
endif() | ||
else() | ||
message(WARNING "TRIQS was installed without Python support. Cannot build the Python Interface and Documentation.") | ||
endif() | ||
|
||
# Additional configuration files | ||
add_subdirectory(share) | ||
|
||
# ############# | ||
# Debian Package | ||
|
||
option(BUILD_DEBIAN_PACKAGE "Build a deb package" OFF) | ||
if(BUILD_DEBIAN_PACKAGE) | ||
if(NOT CMAKE_INSTALL_PREFIX STREQUAL "/usr") | ||
message(FATAL_ERROR "CMAKE_INSTALL_PREFIX must be /usr for packaging") | ||
endif() | ||
set(CPACK_PACKAGE_NAME ctint_tutorial) | ||
set(CPACK_GENERATOR "DEB") | ||
set(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) | ||
set(CPACK_PACKAGE_CONTACT "https://github.com/TRIQS/ctint_tutorial") | ||
execute_process(COMMAND dpkg --print-architecture OUTPUT_VARIABLE CMAKE_DEBIAN_PACKAGE_ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE) | ||
set(CPACK_DEBIAN_PACKAGE_DEPENDS "triqs (>= 2.2)") | ||
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) | ||
set(CPACK_DEBIAN_PACKAGE_GENERATE_SHLIBS ON) | ||
include(CPack) | ||
endif() | ||
|
Oops, something went wrong.