Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Streamline kernelshark cmake setup #18

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Commits on Nov 28, 2020

  1. Streamline kernelshark cmake setup

    Makefile:
    Create a build directory for kernelshark when building it. Provide
    standardized CMAKE_BUILD_TYPE, CMAKE_INSTALL_PREFIX and
    CMAKE_INSTALL_BINDIR instead of custom parameters.
    Instead of calling custom scripts, remove the created build directory in
    clean target.
    
    kernel-sharek/CMakeLists.txt:
    Raise minimum required cmake version to 3.4.3 to have some sane default
    behavior and not support versions of cmake that are not even supported
    by upstream anymore.
    Remove all custom variables that can be replaced with standardized cmake
    specific variables.
    Use project() to get the name and version of the project.
    Include GNUInstallDirs for standardized installation directories and
    variables [1].
    Include `../lib/trace-cmd/include/private` because `trace-filter-hash.h`
    is included by `src/libkshark.h`.
    Instead of hardcoding the build directory, rely on
    CMAKE_CURRENT_BINARY_DIR.
    Remove empty message() calls.
    Move documentation related instructions to Documentation/CMakeLists.txt.
    Replace all custom templated preprocessor definitions (from deff.h.in)
    with cmake's `add_definitions()`.
    
    kernel-shark/Documentation/doxygen/dox_config:
    Update paths to images used by doxygen.
    
    kernel-shark/README:
    Update build and clean instructions.
    
    cmake/*.cmake:
    Move all actual .cmake files from build/ to cmake/ for clear separation
    from template files.
    
    build/*.sh:
    Remove unneeded cleanup and uninstallation scripts.
    
    contrib/*:
    Introduce a contrib directory for the XDG desktop integration template,
    all icons (in a subdirectory) and the polkit policy template.
    Install XDG desktop integration and one scalable icon (the latter to the
    default hicolor icon theme location).
    The naming of the XDG desktop file does not yet adhere to the file
    naming conventions.
    Install polkit policy to default system-wide location.
    
    contrib/icons/kernelshark.svg:
    Rename from kernel-shark/icons/KS_icon_shark.svg, as it is much more straight
    forward to name the icon after the application it is being used for (in
    an XDG application context).
    
    kernel-shark/bin/CMakeLists.txt:
    Add specificly included file to install kshark-su-record.
    
    kernel-shark/bin/kshark-su-record:
    Set shebang to /usr/bin/env bash to be more flexible.
    Quote variables that may contain spaces.
    
    kernel-shark/src/KsMainWindow.cpp:
    Remove overly explicit instructions on how to build kernelshark (that
    may change at any time and are documented in the project) from the
    source code of the application.
    
    kernel-shark/src/deff.h.in:
    Remove all in-file definitions (they are added via `add_definitions()`
    instead). The plugin list remains, as it is probably not trivial to
    replace that way.
    
    kernel-shark/src/libkshark.h:
    Fix include of `trace-filter-hash.h`, which can be included directly,
    due to the proper definition of `include_directories()`.
    
    kernel-shark/src/plugins/CMakeLists.txt:
    Do not use all-caps in function naming.
    
    [1] https://cmake.org/cmake/help/v3.4/module/GNUInstallDirs.html?highlight=gnuinstalldirs
    dvzrv committed Nov 28, 2020
    Configuration menu
    Copy the full SHA
    6ed2350 View commit details
    Browse the repository at this point in the history