diff --git a/projects/rocprofiler-sdk/.github/workflows/continuous_integration.yml b/projects/rocprofiler-sdk/.github/workflows/continuous_integration.yml index a2df0e6ed9..a53c5c60e4 100644 --- a/projects/rocprofiler-sdk/.github/workflows/continuous_integration.yml +++ b/projects/rocprofiler-sdk/.github/workflows/continuous_integration.yml @@ -71,8 +71,7 @@ jobs: run: | git config --global --add safe.directory '*' apt-get update - apt-get install -y cmake clang-tidy-11 g++-11 g++-12 python3-pip - update-alternatives --install /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-11 10 + apt-get install -y cmake clang-tidy g++-11 g++-12 python3-pip update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10 --slave /usr/bin/g++ g++ /usr/bin/g++-11 update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20 --slave /usr/bin/g++ g++ /usr/bin/g++-12 python3 -m pip install -r requirements.txt diff --git a/projects/rocprofiler-sdk/source/lib/rocprofiler-sdk/hsa/queue.hpp b/projects/rocprofiler-sdk/source/lib/rocprofiler-sdk/hsa/queue.hpp index cd8960cad9..284364fc4b 100644 --- a/projects/rocprofiler-sdk/source/lib/rocprofiler-sdk/hsa/queue.hpp +++ b/projects/rocprofiler-sdk/source/lib/rocprofiler-sdk/hsa/queue.hpp @@ -91,7 +91,7 @@ union rocprofiler_packet rocprofiler_packet(const rocprofiler_packet&) = default; rocprofiler_packet(rocprofiler_packet&&) noexcept = default; - rocprofiler_packet& operator=(const rocprofiler_packet&) = default; + rocprofiler_packet& operator=(const rocprofiler_packet&) = default; rocprofiler_packet& operator=(rocprofiler_packet&&) noexcept = default; }; enum class queue_state diff --git a/projects/rocprofiler-sdk/source/scripts/build.sh b/projects/rocprofiler-sdk/source/scripts/build.sh new file mode 100755 index 0000000000..e5e0adba41 --- /dev/null +++ b/projects/rocprofiler-sdk/source/scripts/build.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +sudo apt-get update +sudo apt-get install -y cmake clang-tidy g++-11 g++-12 python3-pip +sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 10 --slave /usr/bin/g++ g++ /usr/bin/g++-11 +sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20 --slave /usr/bin/g++ g++ /usr/bin/g++-12 +#python3 -m pip install -r requirements.txt +python3 -m pip install pytest pandas pyyaml +python3 -m pip install 'cmake>=3.22.0' + +ROCPROFILER_SDK_PATH="$(pwd)/$(dirname ${BASH_SOURCE[0]})/../.." + +cd ${ROCPROFILER_SDK_PATH} + +echo -e "Redirecting to location: $ROCPROFILER_SDK_PATH" + +cmake -B build -DROCPROFILER_BUILD_CI=ON -DROCPROFILER_BUILD_TESTS=ON -DROCPROFILER_BUILD_SAMPLES=ON -DROCPROFILER_ENABLE_CLANG_TIDY=ON $* +cmake --build build --target all --parallel $(nproc) +#cd -- diff --git a/projects/rocprofiler-sdk/source/scripts/format-deps.py b/projects/rocprofiler-sdk/source/scripts/format-deps.py new file mode 100644 index 0000000000..4c319ac314 --- /dev/null +++ b/projects/rocprofiler-sdk/source/scripts/format-deps.py @@ -0,0 +1,100 @@ +import argparse +import os +import sys + + +class FormatSource(argparse.Action): + def __call__(self, parser, namespace, values, option_string=None): + os.system( + "clang-format-11 -i $(find " + + os.path.dirname(__file__) + + "/../../samples " + + os.path.dirname(__file__) + + "/../../source " + + os.path.dirname(__file__) + + '/../../tests -type f -not -path "' + + os.path.dirname(__file__) + + "/../../build/*\" | egrep '\.(h|hpp|hh|c|cc|cpp)(|\.in)$')" + ) + exit(0) + + +class FormatCMake(argparse.Action): + def __call__(self, parser, namespace, values, option_string=None): + os.system( + "cmake-format -i $(find " + + os.path.dirname(__file__) + + '/../.. -type f -not -path "' + + os.path.dirname(__file__) + + '/../../build/*" -not -path "' + + os.path.dirname(__file__) + + "/../../external/*\" | egrep 'CMakeLists.txt|\.cmake$')" + ) + exit(0) + + +class FormatPython(argparse.Action): + def __call__(self, parser, namespace, values, option_string=None): + os.system("black " + os.path.dirname(__file__) + "/../..") + exit(0) + + +class FormatAll(argparse.Action): + def __call__(self, parser, namespace, values, option_string=None): + os.system( + "clang-format-11 -i $(find " + + os.path.dirname(__file__) + + "/../../samples " + + os.path.dirname(__file__) + + "/../../source " + + os.path.dirname(__file__) + + '/../../tests -type f -not -path "' + + os.path.dirname(__file__) + + "/../../build/*\" | egrep '\.(h|hpp|hh|c|cc|cpp)(|\.in)$')" + ) + os.system( + "cmake-format -i $(find " + + os.path.dirname(__file__) + + '/../.. -type f -not -path "' + + os.path.dirname(__file__) + + '/../../build/*" -not -path "' + + os.path.dirname(__file__) + + "/../../external/*\" | egrep 'CMakeLists.txt|\.cmake$')" + ) + os.system("black " + os.path.dirname(__file__) + "/../..") + exit(0) + + +class InstallDepsUbuntu(argparse.Action): + def __call__(self, parser, namespace, values, option_string=None): + os.system( + "sudo apt-get update; \ + sudo apt-get install -y python3-pip software-properties-common wget curl clang-format-11; \ + python3 -m pip install -U cmake-format; \ + python -m pip install --upgrade pip; \ + python -m pip install black" + ) + exit(0) + + +parser = argparse.ArgumentParser(description="ROCProfiler Formatter") +parser.add_argument( + "-ud", + "--ubuntu-deps", + nargs=0, + help="Install Formatting dependencies", + action=InstallDepsUbuntu, +) +parser.add_argument( + "-s", "--source", nargs=0, help="format source files", action=FormatSource +) +parser.add_argument( + "-c", "--cmake", nargs=0, help="format cmake files", action=FormatCMake +) +parser.add_argument( + "-p", "--python", nargs=0, help="format python files", action=FormatPython +) +parser.add_argument( + "-a", "--all", nargs=0, help="format cmake, source and python files", action=FormatAll +) +parser.parse_args()