From 1b6cd937ffc8279aadeee2b262690452dea8c7d9 Mon Sep 17 00:00:00 2001
From: Ray Molenkamp <github@lazydodo.com>
Date: Sat, 25 Nov 2023 23:37:24 +0100
Subject: [PATCH] Cleanup: CMake: Modernize bf_imbuf dependencies

Pretty straightforward

- Remove any bf_imbuf paths from INC
- Add a dependency though LIB when missing

context: https://devtalk.blender.org/t/cmake-cleanup/30260

Pull Request: https://projects.blender.org/blender/blender/pulls/115425
---
 intern/ghost/CMakeLists.txt                                  | 2 +-
 source/blender/blenfont/CMakeLists.txt                       | 2 +-
 source/blender/blenkernel/CMakeLists.txt                     | 3 +--
 source/blender/blenloader/CMakeLists.txt                     | 2 +-
 source/blender/blentranslation/CMakeLists.txt                | 2 +-
 source/blender/compositor/CMakeLists.txt                     | 2 +-
 source/blender/compositor/realtime_compositor/CMakeLists.txt | 3 +--
 source/blender/draw/CMakeLists.txt                           | 2 +-
 source/blender/editors/gpencil_legacy/CMakeLists.txt         | 2 +-
 source/blender/editors/grease_pencil/CMakeLists.txt          | 2 +-
 source/blender/editors/interface/CMakeLists.txt              | 2 +-
 source/blender/editors/mesh/CMakeLists.txt                   | 2 +-
 source/blender/editors/object/CMakeLists.txt                 | 2 +-
 source/blender/editors/render/CMakeLists.txt                 | 2 +-
 source/blender/editors/screen/CMakeLists.txt                 | 2 +-
 source/blender/editors/sculpt_paint/CMakeLists.txt           | 2 +-
 source/blender/editors/space_clip/CMakeLists.txt             | 2 +-
 source/blender/editors/space_file/CMakeLists.txt             | 2 +-
 source/blender/editors/space_image/CMakeLists.txt            | 2 +-
 source/blender/editors/space_info/CMakeLists.txt             | 2 +-
 source/blender/editors/space_node/CMakeLists.txt             | 2 +-
 source/blender/editors/space_outliner/CMakeLists.txt         | 2 +-
 source/blender/editors/space_sequencer/CMakeLists.txt        | 2 +-
 source/blender/editors/space_view3d/CMakeLists.txt           | 2 +-
 source/blender/editors/util/CMakeLists.txt                   | 2 +-
 source/blender/freestyle/CMakeLists.txt                      | 2 +-
 source/blender/gpu/CMakeLists.txt                            | 2 +-
 source/blender/imbuf/CMakeLists.txt                          | 3 ++-
 source/blender/io/avi/CMakeLists.txt                         | 2 +-
 source/blender/io/collada/CMakeLists.txt                     | 2 +-
 source/blender/io/usd/CMakeLists.txt                         | 3 +--
 source/blender/nodes/CMakeLists.txt                          | 2 +-
 source/blender/nodes/composite/CMakeLists.txt                | 2 +-
 source/blender/nodes/geometry/CMakeLists.txt                 | 2 +-
 source/blender/nodes/shader/CMakeLists.txt                   | 2 +-
 source/blender/nodes/texture/CMakeLists.txt                  | 2 +-
 source/blender/python/gpu/CMakeLists.txt                     | 2 +-
 source/blender/python/intern/CMakeLists.txt                  | 2 +-
 source/blender/python/mathutils/CMakeLists.txt               | 3 +--
 source/blender/render/CMakeLists.txt                         | 2 +-
 source/blender/render/hydra/CMakeLists.txt                   | 2 +-
 source/blender/sequencer/CMakeLists.txt                      | 2 +-
 source/blender/simulation/CMakeLists.txt                     | 2 +-
 source/blender/windowmanager/CMakeLists.txt                  | 2 +-
 source/creator/CMakeLists.txt                                | 2 +-
 45 files changed, 46 insertions(+), 49 deletions(-)

diff --git a/intern/ghost/CMakeLists.txt b/intern/ghost/CMakeLists.txt
index 296f5b3c5e0..816a428c6b5 100644
--- a/intern/ghost/CMakeLists.txt
+++ b/intern/ghost/CMakeLists.txt
@@ -4,7 +4,6 @@
 
 set(INC
   PUBLIC .
-  ../../source/blender/imbuf
 )
 
 set(INC_SYS
@@ -72,6 +71,7 @@ set(SRC
 set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
 )
 
diff --git a/source/blender/blenfont/CMakeLists.txt b/source/blender/blenfont/CMakeLists.txt
index ea8c5b856f5..eb548c2522b 100644
--- a/source/blender/blenfont/CMakeLists.txt
+++ b/source/blender/blenfont/CMakeLists.txt
@@ -7,7 +7,6 @@ set(INC
   ../blenkernel
   ../blentranslation
   ../gpu
-  ../imbuf
   ../makesrna
 )
 
@@ -34,6 +33,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::dna
   bf_gpu
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 
   ${FREETYPE_LIBRARIES} ${BROTLI_LIBRARIES}
diff --git a/source/blender/blenkernel/CMakeLists.txt b/source/blender/blenkernel/CMakeLists.txt
index 07e4b04fcc6..620e58cad3b 100644
--- a/source/blender/blenkernel/CMakeLists.txt
+++ b/source/blender/blenkernel/CMakeLists.txt
@@ -13,7 +13,6 @@ set(INC
   ../gpencil_modifiers_legacy
   ../gpu
   ../ikplugin
-  ../imbuf
   ../makesrna
   ../modifiers
   ../nodes
@@ -550,7 +549,7 @@ set(LIB
   bf_gpencil_modifiers_legacy
   bf_gpu
   bf_ikplugin
-  bf_imbuf
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   bf_intern_ghost
   PRIVATE bf::intern::guardedalloc
diff --git a/source/blender/blenloader/CMakeLists.txt b/source/blender/blenloader/CMakeLists.txt
index 3f1faf7b9c6..5207f029167 100644
--- a/source/blender/blenloader/CMakeLists.txt
+++ b/source/blender/blenloader/CMakeLists.txt
@@ -9,7 +9,6 @@ set(INC
   ../draw
   ../editors/include
   ../gpu
-  ../imbuf
   ../makesrna
   ../nodes
   ../render
@@ -63,6 +62,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
 )
diff --git a/source/blender/blentranslation/CMakeLists.txt b/source/blender/blentranslation/CMakeLists.txt
index 841bc181912..a1d655233d7 100644
--- a/source/blender/blentranslation/CMakeLists.txt
+++ b/source/blender/blentranslation/CMakeLists.txt
@@ -5,7 +5,6 @@
 set(INC
   .
   ../blenkernel
-  ../imbuf
   ../makesrna
   ../../../intern/locale
 )
@@ -25,6 +24,7 @@ set(LIB
   bf_blenkernel
   PRIVATE bf::blenlib
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/compositor/CMakeLists.txt b/source/blender/compositor/CMakeLists.txt
index dfaa4c91ed2..9976ffcb40d 100644
--- a/source/blender/compositor/CMakeLists.txt
+++ b/source/blender/compositor/CMakeLists.txt
@@ -12,7 +12,6 @@ if(WITH_COMPOSITOR_CPU)
     operations
     ../blenkernel
     ../blentranslation
-    ../imbuf
     ../makesrna
     ../nodes
     ../windowmanager
@@ -600,6 +599,7 @@ if(WITH_COMPOSITOR_CPU)
     PRIVATE bf::blenlib
     PRIVATE bf::depsgraph
     PRIVATE bf::dna
+    PRIVATE bf::imbuf
     PRIVATE bf::intern::clog
     PRIVATE bf::intern::guardedalloc
     extern_clew
diff --git a/source/blender/compositor/realtime_compositor/CMakeLists.txt b/source/blender/compositor/realtime_compositor/CMakeLists.txt
index 904b1891046..862a8d31265 100644
--- a/source/blender/compositor/realtime_compositor/CMakeLists.txt
+++ b/source/blender/compositor/realtime_compositor/CMakeLists.txt
@@ -10,7 +10,6 @@ set(INC
   ../../blentranslation
   ../../draw
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../nodes
   ../../render
@@ -112,7 +111,7 @@ set(LIB
   bf_gpu
   PRIVATE bf::intern::guardedalloc
   bf_nodes
-  bf_imbuf
+  PRIVATE bf::imbuf
   bf_render
   PRIVATE bf::blenlib
   bf_blenkernel
diff --git a/source/blender/draw/CMakeLists.txt b/source/blender/draw/CMakeLists.txt
index 94d12c36828..953084554b6 100644
--- a/source/blender/draw/CMakeLists.txt
+++ b/source/blender/draw/CMakeLists.txt
@@ -15,7 +15,6 @@ set(INC
   ../functions
   ../gpu
   ../gpu/intern
-  ../imbuf
   ../makesrna
   ../nodes
   ../render
@@ -352,6 +351,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
   bf_realtime_compositor
diff --git a/source/blender/editors/gpencil_legacy/CMakeLists.txt b/source/blender/editors/gpencil_legacy/CMakeLists.txt
index 5a1d4e0b605..3cad3cae98e 100644
--- a/source/blender/editors/gpencil_legacy/CMakeLists.txt
+++ b/source/blender/editors/gpencil_legacy/CMakeLists.txt
@@ -8,7 +8,6 @@ set(INC
   ../../blentranslation
   ../../bmesh
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../windowmanager
   # RNA_prototypes.h
@@ -61,6 +60,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/editors/grease_pencil/CMakeLists.txt b/source/blender/editors/grease_pencil/CMakeLists.txt
index e9c644863b1..affe0af50f5 100644
--- a/source/blender/editors/grease_pencil/CMakeLists.txt
+++ b/source/blender/editors/grease_pencil/CMakeLists.txt
@@ -8,7 +8,6 @@ set(INC
   ../../blentranslation
   ../../bmesh
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../windowmanager
   ../../../../extern/curve_fit_nd
@@ -36,6 +35,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   extern_curve_fit_nd
 )
diff --git a/source/blender/editors/interface/CMakeLists.txt b/source/blender/editors/interface/CMakeLists.txt
index 3dca992a8ce..797e4078e60 100644
--- a/source/blender/editors/interface/CMakeLists.txt
+++ b/source/blender/editors/interface/CMakeLists.txt
@@ -12,7 +12,6 @@ set(INC
   ../../draw
   ../../functions
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../nodes
   ../../python
@@ -101,6 +100,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   bf_editor_datafiles
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   PRIVATE bf::animrig
 )
diff --git a/source/blender/editors/mesh/CMakeLists.txt b/source/blender/editors/mesh/CMakeLists.txt
index a6e7001299c..adadfb97669 100644
--- a/source/blender/editors/mesh/CMakeLists.txt
+++ b/source/blender/editors/mesh/CMakeLists.txt
@@ -12,7 +12,6 @@ set(INC
   ../../functions
   ../../geometry
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../render
   ../../windowmanager
@@ -66,6 +65,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
   bf_windowmanager
diff --git a/source/blender/editors/object/CMakeLists.txt b/source/blender/editors/object/CMakeLists.txt
index 69c63252ae8..db6bb5afac4 100644
--- a/source/blender/editors/object/CMakeLists.txt
+++ b/source/blender/editors/object/CMakeLists.txt
@@ -12,7 +12,6 @@ set(INC
   ../../gpencil_modifiers_legacy
   ../../gpu
   ../../ikplugin
-  ../../imbuf
   ../../makesrna
   ../../modifiers
   ../../python
@@ -68,6 +67,7 @@ set(LIB
   PRIVATE bf::dna
   bf_editor_mesh
   bf_editor_grease_pencil
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
   bf_render
diff --git a/source/blender/editors/render/CMakeLists.txt b/source/blender/editors/render/CMakeLists.txt
index 20eab2ce2ee..4e0d88c3814 100644
--- a/source/blender/editors/render/CMakeLists.txt
+++ b/source/blender/editors/render/CMakeLists.txt
@@ -10,7 +10,6 @@ set(INC
   ../../bmesh
   ../../draw
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../nodes
   ../../render
@@ -40,6 +39,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   bf_draw
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/editors/screen/CMakeLists.txt b/source/blender/editors/screen/CMakeLists.txt
index 8daaa7e05e4..73678c61cdc 100644
--- a/source/blender/editors/screen/CMakeLists.txt
+++ b/source/blender/editors/screen/CMakeLists.txt
@@ -11,7 +11,6 @@ set(INC
   ../../blentranslation
   ../../bmesh
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../sequencer
   ../../windowmanager
@@ -49,6 +48,7 @@ set(LIB
   PRIVATE bf::dna
   bf_editor_datafiles
   bf_editor_space_sequencer
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/editors/sculpt_paint/CMakeLists.txt b/source/blender/editors/sculpt_paint/CMakeLists.txt
index 56c73553576..08efb916052 100644
--- a/source/blender/editors/sculpt_paint/CMakeLists.txt
+++ b/source/blender/editors/sculpt_paint/CMakeLists.txt
@@ -12,7 +12,6 @@ set(INC
   ../../functions
   ../../geometry
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../nodes
   ../../render
@@ -99,6 +98,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::atomic
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
diff --git a/source/blender/editors/space_clip/CMakeLists.txt b/source/blender/editors/space_clip/CMakeLists.txt
index dbd0bb6a993..d685025a06e 100644
--- a/source/blender/editors/space_clip/CMakeLists.txt
+++ b/source/blender/editors/space_clip/CMakeLists.txt
@@ -8,7 +8,6 @@ set(INC
   ../../blenloader
   ../../blentranslation
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../windowmanager
 
@@ -50,6 +49,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/editors/space_file/CMakeLists.txt b/source/blender/editors/space_file/CMakeLists.txt
index 18dac396a49..8371edaa98e 100644
--- a/source/blender/editors/space_file/CMakeLists.txt
+++ b/source/blender/editors/space_file/CMakeLists.txt
@@ -10,7 +10,6 @@ set(INC
   ../../blenloader
   ../../blentranslation
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../render
   ../../windowmanager
@@ -49,6 +48,7 @@ set(LIB
   bf_blenkernel
   PRIVATE bf::blenlib
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   extern_fmtlib
   PRIVATE bf::intern::atomic
diff --git a/source/blender/editors/space_image/CMakeLists.txt b/source/blender/editors/space_image/CMakeLists.txt
index 6e7fc792a20..5cc9777074c 100644
--- a/source/blender/editors/space_image/CMakeLists.txt
+++ b/source/blender/editors/space_image/CMakeLists.txt
@@ -10,7 +10,6 @@ set(INC
   ../../bmesh
   ../../draw
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../render
   ../../windowmanager
@@ -41,6 +40,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   bf_editor_uvedit
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
 )
diff --git a/source/blender/editors/space_info/CMakeLists.txt b/source/blender/editors/space_info/CMakeLists.txt
index 49df2011f40..89f5867023d 100644
--- a/source/blender/editors/space_info/CMakeLists.txt
+++ b/source/blender/editors/space_info/CMakeLists.txt
@@ -9,7 +9,6 @@ set(INC
   ../../blentranslation
   ../../bmesh
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../windowmanager
 
@@ -37,6 +36,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/editors/space_node/CMakeLists.txt b/source/blender/editors/space_node/CMakeLists.txt
index f1d25b7e929..6cde5dfe6d6 100644
--- a/source/blender/editors/space_node/CMakeLists.txt
+++ b/source/blender/editors/space_node/CMakeLists.txt
@@ -13,7 +13,6 @@ set(INC
   ../../functions
   ../../geometry
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../nodes
   ../../render
@@ -57,6 +56,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   bf_editor_screen
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   extern_fmtlib
 )
diff --git a/source/blender/editors/space_outliner/CMakeLists.txt b/source/blender/editors/space_outliner/CMakeLists.txt
index 26df8082a1c..42e7c031321 100644
--- a/source/blender/editors/space_outliner/CMakeLists.txt
+++ b/source/blender/editors/space_outliner/CMakeLists.txt
@@ -8,7 +8,6 @@ set(INC
   ../../blenloader
   ../../blentranslation
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../sequencer
   ../../windowmanager
@@ -135,6 +134,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   bf_editor_undo
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
 )
diff --git a/source/blender/editors/space_sequencer/CMakeLists.txt b/source/blender/editors/space_sequencer/CMakeLists.txt
index 3f72e5f6616..ca6a2da3901 100644
--- a/source/blender/editors/space_sequencer/CMakeLists.txt
+++ b/source/blender/editors/space_sequencer/CMakeLists.txt
@@ -9,7 +9,6 @@ set(INC
   ../../blentranslation
   ../../draw
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../sequencer
   ../../windowmanager
@@ -52,6 +51,7 @@ set(LIB
   PRIVATE bf::dna
   bf_editor_interface
   bf_editor_util
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::atomic
   PRIVATE bf::intern::guardedalloc
 )
diff --git a/source/blender/editors/space_view3d/CMakeLists.txt b/source/blender/editors/space_view3d/CMakeLists.txt
index 52945d2d5c0..b66a2383aac 100644
--- a/source/blender/editors/space_view3d/CMakeLists.txt
+++ b/source/blender/editors/space_view3d/CMakeLists.txt
@@ -12,7 +12,6 @@ set(INC
   ../../bmesh
   ../../draw
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../render
   ../../windowmanager
@@ -86,6 +85,7 @@ set(LIB
   bf_editor_curves
   bf_editor_lattice
   bf_editor_mesh
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/editors/util/CMakeLists.txt b/source/blender/editors/util/CMakeLists.txt
index a43fd1bf0b8..fef9a241a5b 100644
--- a/source/blender/editors/util/CMakeLists.txt
+++ b/source/blender/editors/util/CMakeLists.txt
@@ -10,7 +10,6 @@ set(INC
   ../../blentranslation
   ../../bmesh
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../sequencer
   ../../windowmanager
@@ -112,6 +111,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
 )
diff --git a/source/blender/freestyle/CMakeLists.txt b/source/blender/freestyle/CMakeLists.txt
index b2cd7a51347..084d79e1065 100644
--- a/source/blender/freestyle/CMakeLists.txt
+++ b/source/blender/freestyle/CMakeLists.txt
@@ -533,6 +533,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   bf_python_mathutils
 
@@ -544,7 +545,6 @@ set(INC
   .
   ../blenkernel
   ../blentranslation
-  ../imbuf
   ../makesrna
   ../python
   ../python/intern
diff --git a/source/blender/gpu/CMakeLists.txt b/source/blender/gpu/CMakeLists.txt
index 5143bc26a99..eadeec9d0d3 100644
--- a/source/blender/gpu/CMakeLists.txt
+++ b/source/blender/gpu/CMakeLists.txt
@@ -12,7 +12,6 @@ set(INC
   ../blenkernel
   ../bmesh
   ../draw
-  ../imbuf
   ../makesrna
 
   # For theme color access.
@@ -330,6 +329,7 @@ set(METAL_SRC
 set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::atomic
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
diff --git a/source/blender/imbuf/CMakeLists.txt b/source/blender/imbuf/CMakeLists.txt
index 62f9310355a..7af2e7cdb58 100644
--- a/source/blender/imbuf/CMakeLists.txt
+++ b/source/blender/imbuf/CMakeLists.txt
@@ -3,7 +3,7 @@
 # SPDX-License-Identifier: GPL-2.0-or-later
 
 set(INC
-  .
+  PUBLIC .
   ../blenkernel
   ../blenloader
   ../gpu
@@ -188,3 +188,4 @@ set_source_files_properties(
 )
 
 blender_add_lib(bf_imbuf "${SRC}" "${INC}" "${INC_SYS}" "${LIB}")
+add_library(bf::imbuf ALIAS bf_imbuf)
diff --git a/source/blender/io/avi/CMakeLists.txt b/source/blender/io/avi/CMakeLists.txt
index a64b9826f2b..61f73162b98 100644
--- a/source/blender/io/avi/CMakeLists.txt
+++ b/source/blender/io/avi/CMakeLists.txt
@@ -4,7 +4,6 @@
 
 set(INC
   .
-  ../../imbuf
 )
 
 set(INC_SYS
@@ -32,6 +31,7 @@ set(LIB
   ${JPEG_LIBRARIES}
   PRIVATE bf::blenlib
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/io/collada/CMakeLists.txt b/source/blender/io/collada/CMakeLists.txt
index 32c5e0e877d..9585c915bcd 100644
--- a/source/blender/io/collada/CMakeLists.txt
+++ b/source/blender/io/collada/CMakeLists.txt
@@ -25,7 +25,6 @@ set(INC
   ../../blentranslation
   ../../editors/include
   ../../ikplugin
-  ../../imbuf
   ../../makesrna
   ../../windowmanager
   ../../../../intern/iksolver/extern
@@ -117,6 +116,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/io/usd/CMakeLists.txt b/source/blender/io/usd/CMakeLists.txt
index cc35680b152..bf26de8ac08 100644
--- a/source/blender/io/usd/CMakeLists.txt
+++ b/source/blender/io/usd/CMakeLists.txt
@@ -62,7 +62,6 @@ set(INC
   ../../blentranslation
   ../../bmesh
   ../../editors/include
-  ../../imbuf
   ../../makesrna
   ../../nodes
   ../../python/intern
@@ -184,7 +183,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   PRIVATE bf::animrig
-  bf_imbuf
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
   bf_io_common
diff --git a/source/blender/nodes/CMakeLists.txt b/source/blender/nodes/CMakeLists.txt
index 21c76090975..9850d1cdbd4 100644
--- a/source/blender/nodes/CMakeLists.txt
+++ b/source/blender/nodes/CMakeLists.txt
@@ -61,7 +61,6 @@ set(INC
   ../functions
   ../geometry
   ../gpu
-  ../imbuf
   ../makesrna
   ../modifiers
   ../render
@@ -127,6 +126,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   bf_functions
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   bf_nodes_composite
   bf_nodes_function
diff --git a/source/blender/nodes/composite/CMakeLists.txt b/source/blender/nodes/composite/CMakeLists.txt
index 7edb0de8278..c10cb2e8d88 100644
--- a/source/blender/nodes/composite/CMakeLists.txt
+++ b/source/blender/nodes/composite/CMakeLists.txt
@@ -11,7 +11,6 @@ set(INC
   ../../blentranslation
   ../../functions
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../render
   ../../windowmanager
@@ -129,6 +128,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   bf_realtime_compositor
 )
diff --git a/source/blender/nodes/geometry/CMakeLists.txt b/source/blender/nodes/geometry/CMakeLists.txt
index 70fd56b94e3..5d304d9def2 100644
--- a/source/blender/nodes/geometry/CMakeLists.txt
+++ b/source/blender/nodes/geometry/CMakeLists.txt
@@ -13,7 +13,6 @@ set(INC
   ../../functions
   ../../geometry
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../modifiers
   ../../render
@@ -216,6 +215,7 @@ set(LIB
   PRIVATE bf::dna
   bf_functions
   bf_geometry
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   bf_nodes
   extern_fmtlib
diff --git a/source/blender/nodes/shader/CMakeLists.txt b/source/blender/nodes/shader/CMakeLists.txt
index 845fe16a420..4385cd1be60 100644
--- a/source/blender/nodes/shader/CMakeLists.txt
+++ b/source/blender/nodes/shader/CMakeLists.txt
@@ -11,7 +11,6 @@ set(INC
   ../../editors/include
   ../../functions
   ../../gpu
-  ../../imbuf
   ../../makesrna
   ../../render
   ../../windowmanager
@@ -130,6 +129,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   bf_functions
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
   bf_intern_sky
diff --git a/source/blender/nodes/texture/CMakeLists.txt b/source/blender/nodes/texture/CMakeLists.txt
index 71734e76e2b..ed4c7501c89 100644
--- a/source/blender/nodes/texture/CMakeLists.txt
+++ b/source/blender/nodes/texture/CMakeLists.txt
@@ -10,7 +10,6 @@ set(INC
   ../../blenkernel
   ../../blentranslation
   ../../bmesh
-  ../../imbuf
   ../../makesrna
   ../../render
   ../../windowmanager
@@ -60,6 +59,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   bf_nodes
 )
diff --git a/source/blender/python/gpu/CMakeLists.txt b/source/blender/python/gpu/CMakeLists.txt
index d3fad4318c3..0260024d407 100644
--- a/source/blender/python/gpu/CMakeLists.txt
+++ b/source/blender/python/gpu/CMakeLists.txt
@@ -7,7 +7,6 @@ set(INC
   ../../blenkernel
   ../../editors/include
   ../../gpu
-  ../../imbuf
 )
 
 set(INC_SYS
@@ -62,6 +61,7 @@ set(LIB
   ${PYTHON_LIBRARIES}
   PRIVATE bf::blenlib
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/python/intern/CMakeLists.txt b/source/blender/python/intern/CMakeLists.txt
index 84b16de91a4..c510c79da68 100644
--- a/source/blender/python/intern/CMakeLists.txt
+++ b/source/blender/python/intern/CMakeLists.txt
@@ -9,7 +9,6 @@ set(INC
   ../../blentranslation
   ../../editors/include
   ../../gpu
-  ../../imbuf
   ../../imbuf/intern/oiio
   ../../makesrna
   ../../windowmanager
@@ -124,6 +123,7 @@ set(LIB
   bf_editor_animation
   bf_editor_interface
   bf_editor_space_api
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
   PRIVATE bf::animrig
diff --git a/source/blender/python/mathutils/CMakeLists.txt b/source/blender/python/mathutils/CMakeLists.txt
index 45693def4a7..15d525bb040 100644
--- a/source/blender/python/mathutils/CMakeLists.txt
+++ b/source/blender/python/mathutils/CMakeLists.txt
@@ -6,7 +6,6 @@ set(INC
   .
   ../../blenkernel
   ../../bmesh
-  ../../imbuf
 )
 
 set(INC_SYS
@@ -43,7 +42,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
-  bf_imbuf
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   bf_python_ext
 
diff --git a/source/blender/render/CMakeLists.txt b/source/blender/render/CMakeLists.txt
index 7faa4393627..57e08031f3d 100644
--- a/source/blender/render/CMakeLists.txt
+++ b/source/blender/render/CMakeLists.txt
@@ -13,7 +13,6 @@ set(INC
   ../draw
   ../gpu
   ../gpu/intern
-  ../imbuf
   ../makesrna
   ../nodes
   ../sequencer
@@ -62,6 +61,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
   bf_realtime_compositor
   PRIVATE bf::intern::atomic
diff --git a/source/blender/render/hydra/CMakeLists.txt b/source/blender/render/hydra/CMakeLists.txt
index d9740ef1231..8bf56942c25 100644
--- a/source/blender/render/hydra/CMakeLists.txt
+++ b/source/blender/render/hydra/CMakeLists.txt
@@ -39,7 +39,6 @@ set(INC
   ../../../../intern/guardedalloc
   ../../blenkernel
   ../../blenlib
-  ../../imbuf
   ../../makesdna
   ../../makesrna
   ../../nodes
@@ -69,6 +68,7 @@ set(LIB
   ${USD_LIBRARIES}
   ${TBB_LIBRARIES}
   PRIVATE bf::depsgraph
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   bf_io_usd
 )
diff --git a/source/blender/sequencer/CMakeLists.txt b/source/blender/sequencer/CMakeLists.txt
index 70cdfc60886..3737b32e623 100644
--- a/source/blender/sequencer/CMakeLists.txt
+++ b/source/blender/sequencer/CMakeLists.txt
@@ -8,7 +8,6 @@ set(INC
   ../blenkernel
   ../blenloader
   ../blentranslation
-  ../imbuf
   ../makesrna
   ../render
   ../windowmanager
@@ -84,6 +83,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::atomic
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
diff --git a/source/blender/simulation/CMakeLists.txt b/source/blender/simulation/CMakeLists.txt
index e32dfb319e3..dc60d0a137a 100644
--- a/source/blender/simulation/CMakeLists.txt
+++ b/source/blender/simulation/CMakeLists.txt
@@ -7,7 +7,6 @@ set(INC
   intern
   ../blenkernel
   ../functions
-  ../imbuf
   ../makesrna
   ../nodes
 )
@@ -34,6 +33,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::guardedalloc
 )
 
diff --git a/source/blender/windowmanager/CMakeLists.txt b/source/blender/windowmanager/CMakeLists.txt
index 6737ddeb6fd..77a423783aa 100644
--- a/source/blender/windowmanager/CMakeLists.txt
+++ b/source/blender/windowmanager/CMakeLists.txt
@@ -14,7 +14,6 @@ set(INC
   ../editors/include
   ../draw
   ../gpu
-  ../imbuf
   ../makesrna
   ../nodes
   ../render
@@ -101,6 +100,7 @@ set(LIB
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
   bf_editor_screen
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
   PRIVATE bf::animrig
diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt
index 6d35edb5268..9ec40f1d4e8 100644
--- a/source/creator/CMakeLists.txt
+++ b/source/creator/CMakeLists.txt
@@ -6,7 +6,6 @@ set(INC
   ../blender/blenkernel
   ../blender/editors/include
   ../blender/gpu
-  ../blender/imbuf
   ../blender/io/usd
   ../blender/bmesh
   ../blender/makesrna
@@ -18,6 +17,7 @@ set(LIB
   PRIVATE bf::blenlib
   PRIVATE bf::depsgraph
   PRIVATE bf::dna
+  PRIVATE bf::imbuf
   PRIVATE bf::intern::clog
   PRIVATE bf::intern::guardedalloc
   bf_windowmanager
-- 
GitLab