From 94817f64b9780287be94f9c7a46257709622497d Mon Sep 17 00:00:00 2001 From: Ray molenkamp Date: Tue, 28 Nov 2023 01:11:15 +0100 Subject: [PATCH] Cleanup: CMake: Modernize bf_intern_utfconv dependencies - Remove any bf_intern_utfconv paths from INC - Add a dependency though LIB when missing - an empty target is created for non windows builds, so we don't have to if(WIN32) this all over the place context: https://devtalk.blender.org/t/cmake-cleanup/30260 Pull Request: https://projects.blender.org/blender/blender/pulls/115373 --- intern/CMakeLists.txt | 5 +---- intern/utfconv/CMakeLists.txt | 12 +++++++----- source/blender/imbuf/intern/oiio/CMakeLists.txt | 2 +- source/blender/imbuf/intern/openexr/CMakeLists.txt | 2 +- source/blender/io/alembic/CMakeLists.txt | 2 +- source/blender/io/gpencil/CMakeLists.txt | 2 +- source/blender/io/usd/CMakeLists.txt | 2 +- 7 files changed, 13 insertions(+), 14 deletions(-) diff --git a/intern/CMakeLists.txt b/intern/CMakeLists.txt index 7b900d3beea..f9814033a97 100644 --- a/intern/CMakeLists.txt +++ b/intern/CMakeLists.txt @@ -43,10 +43,7 @@ if(WITH_BULLET) add_subdirectory(rigidbody) endif() -# only windows needs utf16 converter -if(WIN32) - add_subdirectory(utfconv) -endif() +add_subdirectory(utfconv) if(WITH_MOD_FLUID) add_subdirectory(mantaflow) diff --git a/intern/utfconv/CMakeLists.txt b/intern/utfconv/CMakeLists.txt index 0f567f13a7c..17b9e96751d 100644 --- a/intern/utfconv/CMakeLists.txt +++ b/intern/utfconv/CMakeLists.txt @@ -3,7 +3,7 @@ # SPDX-License-Identifier: GPL-2.0-or-later set(INC - . + PUBLIC . ) set(INC_SYS @@ -19,14 +19,16 @@ set(SRC set(LIB ) -# This is odd but leave it for now... -# Why have win32 check here? - this is only used for windows. -# ... because one day we might want to use it on other platforms. +# This library is currently windows only, for the other platforms an empty target is created this +# way we don't have to clutter if(WIN32) ... endif() all over the place to use this library. if(WIN32) list(APPEND SRC utf_winfunc.cc utf_winfunc.hh ) + blender_add_lib(bf_intern_utfconv "${SRC}" "${INC}" "${INC_SYS}" "${LIB}") +else() + add_library(bf_intern_utfconv INTERFACE) endif() -blender_add_lib(bf_intern_utfconv "${SRC}" "${INC}" "${INC_SYS}" "${LIB}") +add_library(bf::intern::utfconv ALIAS bf_intern_utfconv) diff --git a/source/blender/imbuf/intern/oiio/CMakeLists.txt b/source/blender/imbuf/intern/oiio/CMakeLists.txt index 3ed76ccd1ea..e85b83da551 100644 --- a/source/blender/imbuf/intern/oiio/CMakeLists.txt +++ b/source/blender/imbuf/intern/oiio/CMakeLists.txt @@ -7,7 +7,6 @@ set(INC .. ../.. ../../../blenkernel - ../../../../../intern/utfconv ) set(INC_SYS @@ -27,6 +26,7 @@ set(LIB PRIVATE bf::blenlib PRIVATE bf::dna PRIVATE bf::intern::guardedalloc + PRIVATE bf::intern::utfconv ) if(WITH_PUGIXML) diff --git a/source/blender/imbuf/intern/openexr/CMakeLists.txt b/source/blender/imbuf/intern/openexr/CMakeLists.txt index c9a6eb5c732..a7163d98342 100644 --- a/source/blender/imbuf/intern/openexr/CMakeLists.txt +++ b/source/blender/imbuf/intern/openexr/CMakeLists.txt @@ -7,7 +7,6 @@ set(INC .. ../.. ../../../blenkernel - ../../../../../intern/utfconv ) set(INC_SYS @@ -23,6 +22,7 @@ set(LIB PRIVATE bf::blenlib PRIVATE bf::dna PRIVATE bf::intern::guardedalloc + PRIVATE bf::intern::utfconv ) if(WITH_IMAGE_OPENEXR) diff --git a/source/blender/io/alembic/CMakeLists.txt b/source/blender/io/alembic/CMakeLists.txt index 9287fc546c9..574dd0cfda4 100644 --- a/source/blender/io/alembic/CMakeLists.txt +++ b/source/blender/io/alembic/CMakeLists.txt @@ -12,7 +12,6 @@ set(INC ../../editors/include ../../makesrna ../../windowmanager - ../../../../intern/utfconv ) set(INC_SYS @@ -92,6 +91,7 @@ set(LIB PRIVATE bf::dna PRIVATE bf::intern::clog PRIVATE bf::intern::guardedalloc + PRIVATE bf::intern::utfconv bf_io_common ${ALEMBIC_LIBRARIES} diff --git a/source/blender/io/gpencil/CMakeLists.txt b/source/blender/io/gpencil/CMakeLists.txt index a9bf90a7190..38ab950fe01 100644 --- a/source/blender/io/gpencil/CMakeLists.txt +++ b/source/blender/io/gpencil/CMakeLists.txt @@ -13,7 +13,6 @@ set(INC ../../makesrna ../../windowmanager ../../../../intern/guardedalloc - ../../../../intern/utfconv ) set(INC_SYS @@ -40,6 +39,7 @@ set(LIB PRIVATE bf::extern::nanosvg PRIVATE bf::intern::clog PRIVATE bf::intern::guardedalloc + PRIVATE bf::intern::utfconv bf_io_common ) diff --git a/source/blender/io/usd/CMakeLists.txt b/source/blender/io/usd/CMakeLists.txt index bf26de8ac08..1eb854470eb 100644 --- a/source/blender/io/usd/CMakeLists.txt +++ b/source/blender/io/usd/CMakeLists.txt @@ -66,7 +66,6 @@ set(INC ../../nodes ../../python/intern ../../windowmanager - ../../../../intern/utfconv # RNA_prototypes.h ${CMAKE_BINARY_DIR}/source/blender/makesrna ) @@ -186,6 +185,7 @@ set(LIB PRIVATE bf::imbuf PRIVATE bf::intern::clog PRIVATE bf::intern::guardedalloc + PRIVATE bf::intern::utfconv bf_io_common )