From 5f974df01ce89320925498ce59eb354b8db42c95 Mon Sep 17 00:00:00 2001 From: eyck Date: Wed, 23 Dec 2020 16:26:34 +0000 Subject: [PATCH] Initial version --- .cproject | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++ .gitignore | 3 +++ .gitmodules | 9 +++++++ .project | 27 +++++++++++++++++++ CMakeLists.txt | 60 ++++++++++++++++++++++++++++++++++++++++++ conanfile.txt | 26 ++++++++++++++++++ dbt-core | 1 + scc | 1 + tgfs | 1 + 9 files changed, 199 insertions(+) create mode 100644 .cproject create mode 100644 .gitignore create mode 100644 .gitmodules create mode 100644 .project create mode 100644 CMakeLists.txt create mode 100644 conanfile.txt create mode 160000 dbt-core create mode 160000 scc create mode 160000 tgfs diff --git a/.cproject b/.cproject new file mode 100644 index 0000000..1cb85cc --- /dev/null +++ b/.cproject @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..80910c6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/build/ +/Debug/ +.settings \ No newline at end of file diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..587d5d6 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,9 @@ +[submodule "scc"] + path = scc + url = https://github.com/Minres/SystemC-Components.git +[submodule "tgfs"] + path = tgfs + url = https://git.minres.com/DBT-RISE/DBT-RISE-TGFS.git +[submodule "dbt-core"] + path = dbt-core + url = https://git.minres.com/DBT-RISE/DBT-RISE-Core.git diff --git a/.project b/.project new file mode 100644 index 0000000..bccc870 --- /dev/null +++ b/.project @@ -0,0 +1,27 @@ + + + TGFS-ISS + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.core.ccnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + + diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..79d8ceb --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,60 @@ +cmake_minimum_required(VERSION 3.12) +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${CMAKE_CURRENT_SOURCE_DIR}/scc/cmake) + +project(TGFS-ISS VERSION 1.0.0 LANGUAGES CXX) + +set(WITH_LLVM FALSE CACHE BOOL "Build LLVM based backend") + +include(GNUInstallDirs) +include(Conan) + +set(CMAKE_CXX_STANDARD 14) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) +set(CMAKE_POSITION_INDEPENDENT_CODE ON) +include(CheckCXXCompilerFlag) + +CHECK_CXX_COMPILER_FLAG("-march=native" COMPILER_SUPPORTS_MARCH_NATIVE) +if(COMPILER_SUPPORTS_MARCH_NATIVE) + if("${CMAKE_BUILD_TYPE}" STREQUAL "") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native") + elseif(NOT(${CMAKE_BUILD_TYPE} STREQUAL "RelWithDebInfo")) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native") + endif() +endif() + +if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + set(warnings "-Wall -Wextra -Werror") + #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_GLIBCXX_USE_CXX11_ABI=0") + set(CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG") + set(CMAKE_C_FLAGS_RELEASE "-O3 -DNDEBUG") +elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") + set(warnings "/W4 /WX /EHsc") +endif() + +setup_conan(TARGETS) + +# This line finds the boost lib and headers. +set(Boost_NO_BOOST_CMAKE ON) # Don't do a find_package in config mode before searching for a regular boost install. +set(BOOST_ROOT ${CONAN_BOOST_ROOT}) +find_package(Threads) +find_package(ZLIB) + +include(clang-format) +set(ENABLE_CLANG_TIDY OFF CACHE BOOL "Add clang-tidy automatically to builds") +if (ENABLE_CLANG_TIDY) + find_program (CLANG_TIDY_EXE NAMES "clang-tidy" PATHS /usr/local/opt/llvm/bin ) + if (CLANG_TIDY_EXE) + message(STATUS "clang-tidy found: ${CLANG_TIDY_EXE}") + set(CLANG_TIDY_CHECKS "-*,modernize-*") + set(CMAKE_CXX_CLANG_TIDY "${CLANG_TIDY_EXE};-checks=${CLANG_TIDY_CHECKS};-header-filter='${CMAKE_SOURCE_DIR}/*';-fix" + CACHE STRING "" FORCE) + else() + message(AUTHOR_WARNING "clang-tidy not found!") + set(CMAKE_CXX_CLANG_TIDY "" CACHE STRING "" FORCE) # delete it + endif() +endif() + +add_subdirectory(dbt-core) +add_subdirectory(scc) +add_subdirectory(tgfs) diff --git a/conanfile.txt b/conanfile.txt new file mode 100644 index 0000000..ba30cd2 --- /dev/null +++ b/conanfile.txt @@ -0,0 +1,26 @@ +[requires] + gsl_microsoft/20180102@bincrafters/stable + fmt/6.1.2 +# SystemC/2.3.3@minres/stable +# SystemCVerification/2.0.1@minres/stable +# SystemC-CCI/1.0.0@minres/stable + tcc/0.9.27@minres/stable + boost/1.71.0@conan/stable + zlib/1.2.11 + elfio/3.4@minres/stable + +[generators] + cmake + +[options] + seasocks:shared=True + boost:fPIC=True + boost:shared=False + boost:header_only=False + fmt:header_only=True +# SystemC:stdcxx=11 +# SystemC:shared=True +# SystemCVerification:stdcxx=11 +# SystemCVerification:shared=True +# SystemC-CCI:stdcxx=11 +# SystemC-CCI:shared=True diff --git a/dbt-core b/dbt-core new file mode 160000 index 0000000..d87dfff --- /dev/null +++ b/dbt-core @@ -0,0 +1 @@ +Subproject commit d87dfff430e9ff3d394327bbf649a9f1bb05e396 diff --git a/scc b/scc new file mode 160000 index 0000000..d0f2f55 --- /dev/null +++ b/scc @@ -0,0 +1 @@ +Subproject commit d0f2f5599787149be8dbd1e17f5aa6caaa2e3140 diff --git a/tgfs b/tgfs new file mode 160000 index 0000000..d43b359 --- /dev/null +++ b/tgfs @@ -0,0 +1 @@ +Subproject commit d43b35949e60c45e45ec43af1977478d0f93869d