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 imgui 1.74 #625

Merged
merged 8 commits into from
Jan 17, 2020
Merged

Add imgui 1.74 #625

merged 8 commits into from
Jan 17, 2020

Conversation

Hopobcn
Copy link
Contributor

@Hopobcn Hopobcn commented Jan 8, 2020

Specify library name and version: imgui/1.74 https://github.com/ocornut/imgui

  • I've read the guidelines for contributing.
  • I've followed the PEP8 style guides for Python code in the recipes.
  • I've used the latest Conan client version.
  • I've tried at least one configuration locally with the
    conan-center hook activated.

Recipy based on https://github.com/bincrafters/conan-imgui
Tested on a Ubuntu 18.04. Also tested modifying conan-examples/libs/dear-imgui (had to change the imports from misc to res)

@conan-center-bot
Copy link
Collaborator

All green! 😊

uilianries
uilianries previously approved these changes Jan 9, 2020
Copy link
Member

@uilianries uilianries left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

The CMake file is better than that one in VCPKG: https://github.com/microsoft/vcpkg/blob/master/ports/imgui/CMakeLists.txt

Co-Authored-By: Uilian Ries <uilianries@gmail.com>
@conan-center-bot
Copy link
Collaborator

All green in build 2 (1a8557debac7dfe9b4c26b640a6780ce215cdacd)! 😊

uilianries
uilianries previously approved these changes Jan 9, 2020
uilianries
uilianries previously approved these changes Jan 9, 2020
@conan-center-bot
Copy link
Collaborator

All green in build 3 (5704f1d0bab3130399180782af13214d1bd8ac37)! 😊

SSE4
SSE4 previously approved these changes Jan 10, 2020
czoido
czoido previously approved these changes Jan 15, 2020
Copy link
Member

@danimtb danimtb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would like to clarify the usage of the CMakeLists.txt file, it it needed to build the bindings?

recipes/imgui/all/CMakeLists.txt Show resolved Hide resolved
@danimtb danimtb requested a review from jgsogo January 15, 2020 12:16
@Hopobcn Hopobcn dismissed stale reviews from czoido, SSE4, and uilianries via 688d04d January 15, 2020 20:39
@conan-center-bot
Copy link
Collaborator

All green in build 5 (688d04de4b4f2a8af6bd376ee56064988b7dd30b)! 😊

@Hopobcn
Copy link
Contributor Author

Hopobcn commented Jan 15, 2020

I would like to clarify the usage of the CMakeLists.txt file, it it needed to build the bindings?

imgui does not provide any associated build script. It delegates the task of compiling the library to their users.
From the readme:

The core of Dear ImGui is self-contained within a few platform-agnostic files which you can easily compile in your application/engine. They are all the files in the root folder of the repository (imgui.cpp, imgui.h, imgui_demo.cpp, imgui_draw.cpp etc.).

No specific build process is required. You can add the .cpp files to your existing project.

You will need a backend to integrate Dear ImGui in your app. The backend passes mouse/keyboard/gamepad inputs and variety of settings to Dear ImGui, and is in charge of rendering the resulting vertices.

So the CMakeLists.txt is necessary to compile the cpp files (imgui.cpp, imgui_demo.cpp, imgui_draw.cpp & imgui_widgets.cpp) into a imgui library.

Then the platform backends are provided to the user inside the res/bindings folder. It's the consumer responsibility to cherry-pick which platform binding to use (via imports):

[imports]
./res/bindings, imgui_impl_glfw.cpp -> ../bindings
./res/bindings, imgui_impl_opengl3.cpp -> ../bindings
./res/bindings, imgui_impl_glfw.h -> ../bindings
./res/bindings, imgui_impl_opengl3.h -> ../bindings

I don't know if this is up to conan-center-index standards but at least this is how it is done in the bincrafters recipy.

@danimtb danimtb assigned danimtb and unassigned czoido Jan 16, 2020
Copy link
Member

@uilianries uilianries left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The cmakefile loooks compatible with other package managers

@danimtb danimtb merged commit 4df9738 into conan-io:master Jan 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants