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

Add Protobuf and ODE as ExternalProjects to cmake to fix platform compatibility issues #182

Merged
merged 9 commits into from
Feb 24, 2024

Commits on Feb 13, 2024

  1. build protobuf as ExternalProject if version is too new

    Since at least Protobuf 3.21 the version is incompatible causing various
    include and linker errors. Maybe the incompatibility was introduced before that,
    but I don't know. If that is the case the version number can just be set lower
    than that in the future.
    The approach is pretty much just copied from ER-Forces framework
    (https://github.com/robotics-erlangen/framework) and adapted to fit the
    structure of this repository.
    Michel Schmid committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    4f4b988 View commit details
    Browse the repository at this point in the history
  2. add option to build ODE from source

    On some systems the packaged ODE (e.g. the Manjaro ode package at time of
    writing) causes grSim to crash almost instantly.
    This *may* be caused by the package having been built without double precision
    support, but I don't know what exactly breaks.
    Additionally add this as a hint to INSTALL.md.
    Michel Schmid committed Feb 13, 2024
    Configuration menu
    Copy the full SHA
    b3a762d View commit details
    Browse the repository at this point in the history

Commits on Feb 14, 2024

  1. Configuration menu
    Copy the full SHA
    a815ec0 View commit details
    Browse the repository at this point in the history
  2. add missing include directories from ode built from source

    Michel Schmid committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    91402e2 View commit details
    Browse the repository at this point in the history
  3. fix handling of situations where protobuf is not found at all to also…

    … build protobuf correctly
    Michel Schmid committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    2f304e0 View commit details
    Browse the repository at this point in the history
  4. fix github pipeline for macos and windows

    Also changed vcpkg dependency from qt5 to qt5-base, because that should be
    enough and vcpkg seems to build from source (?) and no one has time to build Qt
    completely.
    Includes some hacks to get around the fact that the macos pipeline does not set
    the path to the QtConfig.cmake correctly.
    Michel Schmid committed Feb 14, 2024
    Configuration menu
    Copy the full SHA
    d372b59 View commit details
    Browse the repository at this point in the history

Commits on Feb 15, 2024

  1. fix ninja build for all ExternalProjects

    Apparently some weird issues are caused by using the INSTALL_DIR parameter
    of ExternalProjects when using the Ninja generator.
    Makes you wonder why that is even there, but cmake works in mysterious ways,
    I guess.
    Adding the install part as a substep and explicitly telling cmake that the
    necessary libs and executables are produced by this step fixes this issue.
    Michel Schmid committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    1c13b65 View commit details
    Browse the repository at this point in the history
  2. a few steps towards a working windows pipeline

    Windows pipeline is now doing what the samples from run-vcpkg and run-cmake
    suggest it should do and vcpkg claims that it should handle cmake find_package
    calls correctly if you use their vcpkg.cmake as the toolchain.
    It's not working, because for some reason the find_package call for Qt still
    fails with cmake claiming it can't find a Qt5config.cmake file.
    Michel Schmid committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    2312fb2 View commit details
    Browse the repository at this point in the history
  3. build ODE from source if the package is not found, even if flag is no…

    …t set
    Michel Schmid committed Feb 15, 2024
    Configuration menu
    Copy the full SHA
    9789b00 View commit details
    Browse the repository at this point in the history