Loading pkgs/by-name/im/imgui/0001-imgui-allow-installing-into-split-outputs.patch 0 → 100644 +198 −0 Original line number Diff line number Diff line From c5fe9a321d83fc70cf30ef999c24377869cedbd8 Mon Sep 17 00:00:00 2001 From: SomeoneSerge <else@someonex.net> Date: Thu, 27 Jun 2024 11:15:38 +0000 Subject: [PATCH] imgui: allow installing into split outputs --- ports/imgui/CMakeLists.txt | 74 +++++++++++++++++++++++--------------- 1 file changed, 45 insertions(+), 29 deletions(-) diff --git a/ports/imgui/CMakeLists.txt b/ports/imgui/CMakeLists.txt index 1502a5aff2..be05d29f4f 100644 --- a/ports/imgui/CMakeLists.txt +++ b/ports/imgui/CMakeLists.txt @@ -8,13 +8,15 @@ if(APPLE) enable_language(OBJCXX) endif() +include(GNUInstallDirs) # Defines CMAKE_INSTALL_INCLUDEDIR if not set + add_library(${PROJECT_NAME} "") add_library(${PROJECT_NAME}::${PROJECT_NAME} ALIAS ${PROJECT_NAME}) target_include_directories( ${PROJECT_NAME} PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR};${CMAKE_CURRENT_SOURCE_DIR}/test-engine>" - $<INSTALL_INTERFACE:include> + $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> ) target_sources( @@ -154,18 +156,32 @@ list(REMOVE_DUPLICATES BINDINGS_SOURCES) install( TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}_target - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib - RUNTIME DESTINATION bin + ARCHIVE + COMPONENT Development + DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY + COMPONENT Runtime + NAMELINK_COMPONENT Development + DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME + COMPONENT Runtime + DESTINATION ${CMAKE_INSTALL_BINDIR} ) foreach(BINDING_TARGET ${BINDING_TARGETS}) install( TARGETS ${BINDING_TARGET} EXPORT ${PROJECT_NAME}_target - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib - RUNTIME DESTINATION bin + ARCHIVE + COMPONENT Development + DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY + COMPONENT Runtime + NAMELINK_COMPONENT Development + DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME + COMPONENT Runtime + DESTINATION ${CMAKE_INSTALL_BINDIR} ) endforeach() @@ -178,47 +194,47 @@ if(NOT IMGUI_SKIP_HEADERS) ${CMAKE_CURRENT_SOURCE_DIR}/imstb_rectpack.h ${CMAKE_CURRENT_SOURCE_DIR}/imstb_truetype.h ${CMAKE_CURRENT_SOURCE_DIR}/misc/cpp/imgui_stdlib.h - DESTINATION include + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} ) if(IMGUI_BUILD_ALLEGRO5_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_allegro5.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_allegro5.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if (IMGUI_BUILD_ANDROID_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_android.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_android.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_DX9_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx9.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx9.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_DX10_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx10.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx10.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_DX11_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx11.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx11.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_DX12_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx12.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx12.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_GLFW_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_glfw.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_glfw.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_GLUT_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_glut.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_glut.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_METAL_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_metal.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_metal.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_OPENGL2_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl2.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl2.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_OPENGL3_BINDING) @@ -227,16 +243,16 @@ if(NOT IMGUI_SKIP_HEADERS) ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl3.h ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl3_loader.h DESTINATION - include + ${CMAKE_INSTALL_INCLUDEDIR} ) endif() if(IMGUI_BUILD_OSX_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_osx.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_osx.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_SDL3_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdl3.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdl3.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_SDLGPU3_BINDING) @@ -245,24 +261,24 @@ if(NOT IMGUI_SKIP_HEADERS) ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdlgpu3.h ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdlgpu3_shaders.h DESTINATION - include + ${CMAKE_INSTALL_INCLUDEDIR} ) endif() if(IMGUI_BUILD_SDL3_RENDERER_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdlrenderer3.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdlrenderer3.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_VULKAN_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_vulkan.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_vulkan.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_WIN32_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_win32.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_win32.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_FREETYPE) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/misc/freetype/imgui_freetype.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/misc/freetype/imgui_freetype.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_TEST_ENGINE) @@ -285,13 +301,13 @@ if(NOT IMGUI_SKIP_HEADERS) endif() include(CMakePackageConfigHelpers) -configure_package_config_file(imgui-config.cmake.in imgui-config.cmake INSTALL_DESTINATION share/imgui) +configure_package_config_file(imgui-config.cmake.in imgui-config.cmake INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/imgui) -install(FILES ${CMAKE_CURRENT_BINARY_DIR}/imgui-config.cmake DESTINATION share/imgui) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/imgui-config.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/imgui) install( EXPORT ${PROJECT_NAME}_target NAMESPACE ${PROJECT_NAME}:: FILE ${PROJECT_NAME}-targets.cmake - DESTINATION share/${PROJECT_NAME} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} ) -- 2.47.2 pkgs/by-name/im/imgui/package.nix +34 −13 Original line number Diff line number Diff line Loading @@ -9,9 +9,11 @@ glfw, libGL, SDL2, sdl3, vcpkg, vulkan-headers, vulkan-loader, imgui, # NOTE: Not coming from vcpkg IMGUI_LINK_GLVND ? Loading @@ -31,26 +33,39 @@ IMGUI_BUILD_METAL_BINDING ? stdenv.hostPlatform.isDarwin, IMGUI_BUILD_OPENGL2_BINDING ? false, IMGUI_BUILD_OPENGL3_BINDING ? IMGUI_BUILD_SDL2_BINDING || IMGUI_BUILD_GLFW_BINDING || IMGUI_BUILD_GLUT_BINDING, IMGUI_BUILD_SDL3_BINDING || IMGUI_BUILD_GLFW_BINDING || IMGUI_BUILD_GLUT_BINDING, IMGUI_BUILD_OSX_BINDING ? stdenv.hostPlatform.isDarwin, IMGUI_BUILD_SDL2_BINDING ? !IMGUI_BUILD_GLFW_BINDING && !stdenv.hostPlatform.isDarwin, IMGUI_BUILD_SDL2_RENDERER_BINDING ? IMGUI_BUILD_SDL2_BINDING, IMGUI_BUILD_SDL3_BINDING ? !IMGUI_BUILD_GLFW_BINDING && !stdenv.hostPlatform.isDarwin, IMGUI_BUILD_SDL3_RENDERER_BINDING ? IMGUI_BUILD_SDL3_BINDING, IMGUI_BUILD_SDL2_BINDING ? false, IMGUI_BUILD_SDL2_RENDERER_BINDING ? false, IMGUI_BUILD_SDLGPU3_BINDING ? IMGUI_BUILD_SDL3_BINDING && lib.versionAtLeast imgui.version "1.91.8", IMGUI_BUILD_VULKAN_BINDING ? false, IMGUI_BUILD_WIN32_BINDING ? false, IMGUI_FREETYPE ? false, IMGUI_FREETYPE_LUNASVG ? false, IMGUI_USE_WCHAR32 ? false, }@args: }: let vcpkgRevs.postSdl3 = lib.versionAtLeast vcpkg.version "2025.03.19"; vcpkgRevs.others = !vcpkgRevs.postSdl3; vcpkgSource = applyPatches { inherit (vcpkg) src; patches = [ # Install imgui into split outputs: (fetchpatch { patches = lib.optionals vcpkgRevs.postSdl3 [ # This patch was not accepted mainstream, as out-of-scope # and also to not encourage dependencies between Nixpkgs and Vcpkg. # Currently @SomeoneSerge is responsible for rebasing it when necessary. # Consider vendoring instead? ./0001-imgui-allow-installing-into-split-outputs.patch ] ++ lib.optionals vcpkgRevs.others [ # Original version of the split-outputs patch fetchpatch { url = "https://github.com/microsoft/vcpkg/commit/4108dd75ce9731a4fdcf50fd05034405156eaddf.patch"; hash = "sha256-jXbR0NfyuO8EESmva5A+H3WmBfCG83OiA8ZCcWsRhQA="; }) } ]; }; in Loading Loading @@ -82,6 +97,7 @@ stdenv.mkDerivation rec { propagatedBuildInputs = lib.optionals IMGUI_LINK_GLVND [ libGL ] ++ lib.optionals IMGUI_BUILD_GLFW_BINDING [ glfw ] ++ lib.optionals IMGUI_BUILD_SDL3_BINDING [ sdl3 ] ++ lib.optionals IMGUI_BUILD_SDL2_BINDING [ SDL2 ] ++ lib.optionals IMGUI_BUILD_VULKAN_BINDING [ vulkan-headers Loading @@ -103,7 +119,10 @@ stdenv.mkDerivation rec { (lib.cmakeBool "IMGUI_BUILD_OPENGL3_BINDING" IMGUI_BUILD_OPENGL3_BINDING) (lib.cmakeBool "IMGUI_BUILD_OSX_BINDING" IMGUI_BUILD_OSX_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDL2_BINDING" IMGUI_BUILD_SDL2_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDL3_BINDING" IMGUI_BUILD_SDL3_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDL2_RENDERER_BINDING" IMGUI_BUILD_SDL2_RENDERER_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDL3_RENDERER_BINDING" IMGUI_BUILD_SDL3_RENDERER_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDLGPU3_BINDING" IMGUI_BUILD_SDLGPU3_BINDING) (lib.cmakeBool "IMGUI_BUILD_VULKAN_BINDING" IMGUI_BUILD_VULKAN_BINDING) (lib.cmakeBool "IMGUI_BUILD_WIN32_BINDING" IMGUI_BUILD_WIN32_BINDING) (lib.cmakeBool "IMGUI_FREETYPE" IMGUI_FREETYPE) Loading @@ -120,7 +139,9 @@ stdenv.mkDerivation rec { meta = { # These flags haven't been tested: broken = IMGUI_FREETYPE IMGUI_BUILD_SDL2_BINDING # Option removed from Vcpkg' CMakeLists || IMGUI_BUILD_SDL2_RENDERER_BINDING || IMGUI_FREETYPE || IMGUI_FREETYPE_LUNASVG || IMGUI_BUILD_DX9_BINDING || IMGUI_BUILD_DX10_BINDING Loading pkgs/by-name/vc/vcpkg/package.nix +2 −2 Original line number Diff line number Diff line Loading @@ -9,13 +9,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "vcpkg"; version = "2025.02.14"; version = "2025.04.09"; src = fetchFromGitHub { owner = "microsoft"; repo = "vcpkg"; rev = finalAttrs.version; hash = "sha256-HmaP1WKl8s5eKAC32nTALFd4gbqKnzWnJn6L0/fFmqk="; hash = "sha256-ZJu3dFsKc7L2THgGXNtBszXUbEEoM3bnLxtf5x5UPTM="; leaveDotGit = true; postFetch = '' cd "$out" Loading Loading
pkgs/by-name/im/imgui/0001-imgui-allow-installing-into-split-outputs.patch 0 → 100644 +198 −0 Original line number Diff line number Diff line From c5fe9a321d83fc70cf30ef999c24377869cedbd8 Mon Sep 17 00:00:00 2001 From: SomeoneSerge <else@someonex.net> Date: Thu, 27 Jun 2024 11:15:38 +0000 Subject: [PATCH] imgui: allow installing into split outputs --- ports/imgui/CMakeLists.txt | 74 +++++++++++++++++++++++--------------- 1 file changed, 45 insertions(+), 29 deletions(-) diff --git a/ports/imgui/CMakeLists.txt b/ports/imgui/CMakeLists.txt index 1502a5aff2..be05d29f4f 100644 --- a/ports/imgui/CMakeLists.txt +++ b/ports/imgui/CMakeLists.txt @@ -8,13 +8,15 @@ if(APPLE) enable_language(OBJCXX) endif() +include(GNUInstallDirs) # Defines CMAKE_INSTALL_INCLUDEDIR if not set + add_library(${PROJECT_NAME} "") add_library(${PROJECT_NAME}::${PROJECT_NAME} ALIAS ${PROJECT_NAME}) target_include_directories( ${PROJECT_NAME} PUBLIC "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR};${CMAKE_CURRENT_SOURCE_DIR}/test-engine>" - $<INSTALL_INTERFACE:include> + $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> ) target_sources( @@ -154,18 +156,32 @@ list(REMOVE_DUPLICATES BINDINGS_SOURCES) install( TARGETS ${PROJECT_NAME} EXPORT ${PROJECT_NAME}_target - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib - RUNTIME DESTINATION bin + ARCHIVE + COMPONENT Development + DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY + COMPONENT Runtime + NAMELINK_COMPONENT Development + DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME + COMPONENT Runtime + DESTINATION ${CMAKE_INSTALL_BINDIR} ) foreach(BINDING_TARGET ${BINDING_TARGETS}) install( TARGETS ${BINDING_TARGET} EXPORT ${PROJECT_NAME}_target - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib - RUNTIME DESTINATION bin + ARCHIVE + COMPONENT Development + DESTINATION ${CMAKE_INSTALL_LIBDIR} + LIBRARY + COMPONENT Runtime + NAMELINK_COMPONENT Development + DESTINATION ${CMAKE_INSTALL_LIBDIR} + RUNTIME + COMPONENT Runtime + DESTINATION ${CMAKE_INSTALL_BINDIR} ) endforeach() @@ -178,47 +194,47 @@ if(NOT IMGUI_SKIP_HEADERS) ${CMAKE_CURRENT_SOURCE_DIR}/imstb_rectpack.h ${CMAKE_CURRENT_SOURCE_DIR}/imstb_truetype.h ${CMAKE_CURRENT_SOURCE_DIR}/misc/cpp/imgui_stdlib.h - DESTINATION include + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} ) if(IMGUI_BUILD_ALLEGRO5_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_allegro5.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_allegro5.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if (IMGUI_BUILD_ANDROID_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_android.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_android.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_DX9_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx9.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx9.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_DX10_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx10.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx10.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_DX11_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx11.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx11.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_DX12_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx12.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_dx12.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_GLFW_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_glfw.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_glfw.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_GLUT_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_glut.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_glut.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_METAL_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_metal.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_metal.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_OPENGL2_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl2.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl2.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_OPENGL3_BINDING) @@ -227,16 +243,16 @@ if(NOT IMGUI_SKIP_HEADERS) ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl3.h ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_opengl3_loader.h DESTINATION - include + ${CMAKE_INSTALL_INCLUDEDIR} ) endif() if(IMGUI_BUILD_OSX_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_osx.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_osx.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_SDL3_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdl3.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdl3.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_SDLGPU3_BINDING) @@ -245,24 +261,24 @@ if(NOT IMGUI_SKIP_HEADERS) ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdlgpu3.h ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdlgpu3_shaders.h DESTINATION - include + ${CMAKE_INSTALL_INCLUDEDIR} ) endif() if(IMGUI_BUILD_SDL3_RENDERER_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdlrenderer3.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_sdlrenderer3.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_VULKAN_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_vulkan.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_vulkan.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_BUILD_WIN32_BINDING) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_win32.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/backends/imgui_impl_win32.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_FREETYPE) - install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/misc/freetype/imgui_freetype.h DESTINATION include) + install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/misc/freetype/imgui_freetype.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) endif() if(IMGUI_TEST_ENGINE) @@ -285,13 +301,13 @@ if(NOT IMGUI_SKIP_HEADERS) endif() include(CMakePackageConfigHelpers) -configure_package_config_file(imgui-config.cmake.in imgui-config.cmake INSTALL_DESTINATION share/imgui) +configure_package_config_file(imgui-config.cmake.in imgui-config.cmake INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/imgui) -install(FILES ${CMAKE_CURRENT_BINARY_DIR}/imgui-config.cmake DESTINATION share/imgui) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/imgui-config.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/imgui) install( EXPORT ${PROJECT_NAME}_target NAMESPACE ${PROJECT_NAME}:: FILE ${PROJECT_NAME}-targets.cmake - DESTINATION share/${PROJECT_NAME} + DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} ) -- 2.47.2
pkgs/by-name/im/imgui/package.nix +34 −13 Original line number Diff line number Diff line Loading @@ -9,9 +9,11 @@ glfw, libGL, SDL2, sdl3, vcpkg, vulkan-headers, vulkan-loader, imgui, # NOTE: Not coming from vcpkg IMGUI_LINK_GLVND ? Loading @@ -31,26 +33,39 @@ IMGUI_BUILD_METAL_BINDING ? stdenv.hostPlatform.isDarwin, IMGUI_BUILD_OPENGL2_BINDING ? false, IMGUI_BUILD_OPENGL3_BINDING ? IMGUI_BUILD_SDL2_BINDING || IMGUI_BUILD_GLFW_BINDING || IMGUI_BUILD_GLUT_BINDING, IMGUI_BUILD_SDL3_BINDING || IMGUI_BUILD_GLFW_BINDING || IMGUI_BUILD_GLUT_BINDING, IMGUI_BUILD_OSX_BINDING ? stdenv.hostPlatform.isDarwin, IMGUI_BUILD_SDL2_BINDING ? !IMGUI_BUILD_GLFW_BINDING && !stdenv.hostPlatform.isDarwin, IMGUI_BUILD_SDL2_RENDERER_BINDING ? IMGUI_BUILD_SDL2_BINDING, IMGUI_BUILD_SDL3_BINDING ? !IMGUI_BUILD_GLFW_BINDING && !stdenv.hostPlatform.isDarwin, IMGUI_BUILD_SDL3_RENDERER_BINDING ? IMGUI_BUILD_SDL3_BINDING, IMGUI_BUILD_SDL2_BINDING ? false, IMGUI_BUILD_SDL2_RENDERER_BINDING ? false, IMGUI_BUILD_SDLGPU3_BINDING ? IMGUI_BUILD_SDL3_BINDING && lib.versionAtLeast imgui.version "1.91.8", IMGUI_BUILD_VULKAN_BINDING ? false, IMGUI_BUILD_WIN32_BINDING ? false, IMGUI_FREETYPE ? false, IMGUI_FREETYPE_LUNASVG ? false, IMGUI_USE_WCHAR32 ? false, }@args: }: let vcpkgRevs.postSdl3 = lib.versionAtLeast vcpkg.version "2025.03.19"; vcpkgRevs.others = !vcpkgRevs.postSdl3; vcpkgSource = applyPatches { inherit (vcpkg) src; patches = [ # Install imgui into split outputs: (fetchpatch { patches = lib.optionals vcpkgRevs.postSdl3 [ # This patch was not accepted mainstream, as out-of-scope # and also to not encourage dependencies between Nixpkgs and Vcpkg. # Currently @SomeoneSerge is responsible for rebasing it when necessary. # Consider vendoring instead? ./0001-imgui-allow-installing-into-split-outputs.patch ] ++ lib.optionals vcpkgRevs.others [ # Original version of the split-outputs patch fetchpatch { url = "https://github.com/microsoft/vcpkg/commit/4108dd75ce9731a4fdcf50fd05034405156eaddf.patch"; hash = "sha256-jXbR0NfyuO8EESmva5A+H3WmBfCG83OiA8ZCcWsRhQA="; }) } ]; }; in Loading Loading @@ -82,6 +97,7 @@ stdenv.mkDerivation rec { propagatedBuildInputs = lib.optionals IMGUI_LINK_GLVND [ libGL ] ++ lib.optionals IMGUI_BUILD_GLFW_BINDING [ glfw ] ++ lib.optionals IMGUI_BUILD_SDL3_BINDING [ sdl3 ] ++ lib.optionals IMGUI_BUILD_SDL2_BINDING [ SDL2 ] ++ lib.optionals IMGUI_BUILD_VULKAN_BINDING [ vulkan-headers Loading @@ -103,7 +119,10 @@ stdenv.mkDerivation rec { (lib.cmakeBool "IMGUI_BUILD_OPENGL3_BINDING" IMGUI_BUILD_OPENGL3_BINDING) (lib.cmakeBool "IMGUI_BUILD_OSX_BINDING" IMGUI_BUILD_OSX_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDL2_BINDING" IMGUI_BUILD_SDL2_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDL3_BINDING" IMGUI_BUILD_SDL3_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDL2_RENDERER_BINDING" IMGUI_BUILD_SDL2_RENDERER_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDL3_RENDERER_BINDING" IMGUI_BUILD_SDL3_RENDERER_BINDING) (lib.cmakeBool "IMGUI_BUILD_SDLGPU3_BINDING" IMGUI_BUILD_SDLGPU3_BINDING) (lib.cmakeBool "IMGUI_BUILD_VULKAN_BINDING" IMGUI_BUILD_VULKAN_BINDING) (lib.cmakeBool "IMGUI_BUILD_WIN32_BINDING" IMGUI_BUILD_WIN32_BINDING) (lib.cmakeBool "IMGUI_FREETYPE" IMGUI_FREETYPE) Loading @@ -120,7 +139,9 @@ stdenv.mkDerivation rec { meta = { # These flags haven't been tested: broken = IMGUI_FREETYPE IMGUI_BUILD_SDL2_BINDING # Option removed from Vcpkg' CMakeLists || IMGUI_BUILD_SDL2_RENDERER_BINDING || IMGUI_FREETYPE || IMGUI_FREETYPE_LUNASVG || IMGUI_BUILD_DX9_BINDING || IMGUI_BUILD_DX10_BINDING Loading
pkgs/by-name/vc/vcpkg/package.nix +2 −2 Original line number Diff line number Diff line Loading @@ -9,13 +9,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "vcpkg"; version = "2025.02.14"; version = "2025.04.09"; src = fetchFromGitHub { owner = "microsoft"; repo = "vcpkg"; rev = finalAttrs.version; hash = "sha256-HmaP1WKl8s5eKAC32nTALFd4gbqKnzWnJn6L0/fFmqk="; hash = "sha256-ZJu3dFsKc7L2THgGXNtBszXUbEEoM3bnLxtf5x5UPTM="; leaveDotGit = true; postFetch = '' cd "$out" Loading