diff --git a/.github/workflows/Win_Mac_Linux.yml b/.github/workflows/Win_Mac_Linux.yml index 9fe928b4..3b08aa48 100644 --- a/.github/workflows/Win_Mac_Linux.yml +++ b/.github/workflows/Win_Mac_Linux.yml @@ -23,7 +23,7 @@ jobs: with: submodules: true - - name: apt install xorg-dev libglfw3-dev libsdl2-dev libfreetype-dev (ubuntu only) + - name: apt install xorg-dev libglfw3-dev libsdl2-dev libfreetype-dev (ubuntu only) if: ${{ matrix.platform == 'ubuntu-latest' }} run: sudo apt-get update && sudo apt-get install -y xorg-dev libglfw3-dev libsdl2-dev libfreetype-dev diff --git a/CMakeLists.txt b/CMakeLists.txt index 962f67a1..5674596e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -45,12 +45,14 @@ include(hello_imgui_add_app) # On desktop platforms, it will install the "app exe" and the "assets" folder in the install folder. option(HELLOIMGUI_ADD_APP_WITH_INSTALL "Add cmake install() instructions with hello_imgui_add_app" ON) +# # do not remove this line (used by the script that generates the documentation) ############################################################################### # HelloImGui Build options ############################################################################### ################################################################################ +# # do not remove this line (used by the script that generates the documentation) # Available backends combinations: HelloImGui needs to use at least one of them. # If you specify no option: # - HELLOIMGUI_USE_GLFW_OPENGL3 will be used for Windows, Linux, and macOS @@ -58,8 +60,10 @@ option(HELLOIMGUI_ADD_APP_WITH_INSTALL "Add cmake install() instructions with he # # Note: # - Only one rendering backend can be used at a time (OpenGL3, Metal or Vulkan)! -# - You may select multiple platform backends (for example, you may select both SDL and Glfw3) -# - Combinations using OpenGL3 as a renderer are easier to use, and are recommended, especially for beginners. +# - You may select multiple platform backends +# (for example, you may select both SDL and Glfw3) +# - Combinations using OpenGL3 as a renderer are easier to use, +# and are recommended, especially for beginners. ################################################################################ # Standard backends: # Use Glfw3 + OpenGl3 @@ -86,6 +90,9 @@ option(HELLOIMGUI_USE_GLFW_DIRECTX11 "Build HelloImGui for Glfw3+DirectX11" OFF) # Experimental! DirectX12 was not tested, although it does compile! option(HELLOIMGUI_USE_SDL_DIRECTX12 "Build HelloImGui for SDL2+DirectX12" OFF) +# # do not remove this line (used by the script that generates the documentation) + + #------------------------------------------------------------------------------ # Options / Freetype #------------------------------------------------------------------------------ @@ -99,19 +106,38 @@ endif() option(HELLOIMGUI_USE_FREETYPE "Use freetype for text rendering" ${freetype_default}) #------------------------------------------------------------------------------ +# # do not remove this line (used by the script that generates the documentation) # Automatic download of Glfw3, SDL2, and Freetype (provided as a convenience) -# (disabled by default on Linux, which prefers to use the system libraries, +# +# (this is disabled by default on Linux, which prefers to use the system libraries, # enabled by default on other platforms) +# # Note: -# - SDL and Glfw3 will be downloaded if: +# +# SDL and Glfw3 will be downloaded only if: +# ----------------------------------------- # - HELLOIMGUI_DOWNLOAD_GLFW_IF_NEEDED or HELLOIMGUI_DOWNLOAD_SDL_IF_NEEDED is ON # - HELLOIMGUI_USE_SDL_XXXX or HELLOIMGUI_USE_GLFW_XXXX is ON -# - find_package(glfw3 or SDL2) fails. If a system library is found, or a user library provided -# in a path added to CMAKE_PREFIX_PATH, it will be used instead -# - In the case of Glfw3, if a target named glfw is already defined, it will be used instead -# - Freetype will be downloaded if: -# - HELLOIMGUI_DOWNLOAD_FREETYPE is ON, HELLOIMGUI_USE_FREETYPE is ON, and find_package(freetype) fails -# - Or of HELLOIMGUI_FREETYPE_STATIC is ON +# - SDL and/or Glfw3 were not added as CMake target +# (add_subdirectory(external/SDL) or add_subdirectory(external/glfw) for example) +# - find_package(glfw3 or SDL2) fails. If a system library is found, +# or a user library provided in a path added to CMAKE_PREFIX_PATH, +# it will be used instead +# +# - Freetype will be downloaded only if: +# -------------------------------------- +# - HELLOIMGUI_DOWNLOAD_FREETYPE is ON, HELLOIMGUI_USE_FREETYPE is ON +# - Freetype was not added as a CMake target +# (add_subdirectory(external/freetype) for example) +# - find_package(freetype) fails +# (it will also be forcibly downloaded if HELLOIMGUI_FREETYPE_STATIC is ON) +# +# +# Automatic download of SDL2, Glfw3, and Freetype is disabled by default on Linux, +# because it is recommended to use the system libraries instead: +# On ubuntu, you can install them with: +# sudo apt install libglfw3-dev libsdl2-dev libfreetype-dev +# #------------------------------------------------------------------------------ if(CMAKE_SYSTEM_NAME MATCHES "Linux") set(autodownload_default OFF) @@ -123,6 +149,7 @@ option(HELLOIMGUI_DOWNLOAD_SDL_IF_NEEDED "Download and build GLFW if needed" ${a option(HELLOIMGUI_DOWNLOAD_FREETYPE_IF_NEEDED "Download and build Freetype if needed" ${autodownload_default}) option(HELLOIMGUI_FREETYPE_STATIC "Force static linking of freetype (only used for python bindings)" OFF) +# # do not remove this line (used by the script that generates the documentation) #------------------------------------------------------------------------------ # Options / Windows: provide WinMain automatically diff --git a/README.md b/README.md index db9bd441..df5214d7 100644 --- a/README.md +++ b/README.md @@ -1,35 +1,2 @@ - -# Hello ImGui - - - - - -
-
10' demo video showcasing multi-platform support
and rapid development with Hello ImGui
- - - - - - -------------------- -__Table of contents__ - - - -* [Hello ImGui](#hello-imgui) -* [Online interactive development platform](#online-interactive-development-platform) - --------------------- - - - - ---- - -# Online interactive development platform - -You can test developing with Hello ImGui in 1 minute, *without even installing anything*, thanks to [Gitpod.io](https://gitpod.io)'s online development platform: [Open Hello ImGui inside Gitpod](https://gitpod.io/#https://github.com/pthom/hello_imgui/) (58 seconds [demo video](https://www.youtube.com/watch?v=1cgemZQ2CMc) on youtube) diff --git a/_example_integration b/_example_integration index 29fad579..6b953c2b 160000 --- a/_example_integration +++ b/_example_integration @@ -1 +1 @@ -Subproject commit 29fad579ba590ba05dce1aa2eaec20765129564f +Subproject commit 6b953c2b756190784d836bf346e26c11f5dff26a diff --git a/docs/book/60_05_build.html b/docs/book/60_05_build.html index 444221d7..5223be9b 100644 --- a/docs/book/60_05_build.html +++ b/docs/book/60_05_build.html @@ -390,23 +390,17 @@

Contents