diff --git a/CMakeLists.txt b/CMakeLists.txt index 0265c99483f..a48a3c757f4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -484,9 +484,6 @@ option(WITH_IO_STL "Enable STL 3D file format support (*.stl)" ON) option(WITH_IO_FBX "Enable FBX 3D file format support (*.fbx)" ON) option(WITH_IO_GREASE_PENCIL "Enable grease-pencil file format IO (*.svg, *.pdf)" ON) -# Csv support -option(WITH_IO_CSV "Enable CSV file format support (*.csv)" ON) - # Sound output option(WITH_SDL "Enable SDL for sound" OFF) option(WITH_OPENAL "Enable OpenAL Support (http://www.openal.org)" ON) diff --git a/build_files/cmake/config/blender_lite.cmake b/build_files/cmake/config/blender_lite.cmake index 98b8eea34ed..e0009c6b8b0 100644 --- a/build_files/cmake/config/blender_lite.cmake +++ b/build_files/cmake/config/blender_lite.cmake @@ -35,7 +35,6 @@ set(WITH_INPUT_NDOF OFF CACHE BOOL "" FORCE) set(WITH_INTERNATIONAL OFF CACHE BOOL "" FORCE) set(WITH_IO_PLY OFF CACHE BOOL "" FORCE) set(WITH_IO_STL OFF CACHE BOOL "" FORCE) -set(WITH_IO_CSV OFF CACHE BOOL "" FORCE) set(WITH_IO_WAVEFRONT_OBJ OFF CACHE BOOL "" FORCE) set(WITH_IO_GREASE_PENCIL OFF CACHE BOOL "" FORCE) set(WITH_IO_FBX OFF CACHE BOOL "" FORCE) diff --git a/source/blender/io/CMakeLists.txt b/source/blender/io/CMakeLists.txt index 29e6e2cf327..f1658459fdd 100644 --- a/source/blender/io/CMakeLists.txt +++ b/source/blender/io/CMakeLists.txt @@ -2,16 +2,9 @@ # # SPDX-License-Identifier: GPL-2.0-or-later -if(WITH_IO_WAVEFRONT_OBJ OR - WITH_IO_PLY OR - WITH_IO_STL OR - WITH_IO_GREASE_PENCIL OR - WITH_ALEMBIC OR - WITH_USD OR - WITH_IO_CSV OR - WITH_IO_FBX) - add_subdirectory(common) -endif() + +add_subdirectory(common) +add_subdirectory(csv) if(WITH_IO_WAVEFRONT_OBJ) add_subdirectory(wavefront_obj) @@ -44,7 +37,3 @@ endif() if(WITH_USD) add_subdirectory(usd) endif() - -if(WITH_IO_CSV) - add_subdirectory(csv) -endif() diff --git a/source/blender/nodes/geometry/CMakeLists.txt b/source/blender/nodes/geometry/CMakeLists.txt index c8ed3b0b8be..e6f94d04555 100644 --- a/source/blender/nodes/geometry/CMakeLists.txt +++ b/source/blender/nodes/geometry/CMakeLists.txt @@ -268,6 +268,8 @@ set(LIB PRIVATE bf::imbuf::movie PRIVATE bf::intern::guardedalloc bf_nodes + bf_io_common + bf_io_csv PRIVATE bf::intern::atomic PRIVATE bf::extern::fmtlib PRIVATE bf::extern::xxhash @@ -275,14 +277,6 @@ set(LIB PRIVATE bf::windowmanager ) -if(WITH_IO_CSV) - list(APPEND LIB - PRIVATE bf_io_common - PRIVATE bf_io_csv - ) - add_definitions(-DWITH_IO_CSV) -endif() - if(WITH_IO_STL) list(APPEND LIB PRIVATE bf_io_common diff --git a/source/blender/nodes/geometry/nodes/node_geo_import_csv.cc b/source/blender/nodes/geometry/nodes/node_geo_import_csv.cc index f4228bd5b02..c2efd71bff4 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_import_csv.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_import_csv.cc @@ -42,7 +42,6 @@ class LoadCsvCache : public memory_cache::CachedValue { static void node_geo_exec(GeoNodeExecParams params) { -#ifdef WITH_IO_CSV const std::optional path = params.ensure_absolute_path( params.extract_input("Path")); if (!path) { @@ -91,11 +90,6 @@ static void node_geo_exec(GeoNodeExecParams params) } params.set_output("Point Cloud", cached_value->geometry); -#else - params.error_message_add(NodeWarningType::Error, - TIP_("Disabled, Blender was compiled without CSV I/O")); - params.set_default_remaining_outputs(); -#endif } static void node_register() diff --git a/tests/files/modeling/geometry_nodes/import/data_files/dash_separated.csv b/tests/files/modeling/geometry_nodes/import/data_files/dash_separated.csv new file mode 100644 index 00000000000..0a651d84d5e --- /dev/null +++ b/tests/files/modeling/geometry_nodes/import/data_files/dash_separated.csv @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:514c6abc3d8586bdef7735f6ecfa490b802bf7d16ca93811befe8c53f19f64a7 +size 14 diff --git a/tests/files/modeling/geometry_nodes/import/data_files/int_and_float.csv b/tests/files/modeling/geometry_nodes/import/data_files/int_and_float.csv new file mode 100644 index 00000000000..0be75f541da --- /dev/null +++ b/tests/files/modeling/geometry_nodes/import/data_files/int_and_float.csv @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7afad0e82f6597e78a927428b594cd56f261f1d714d0e388832d35efd97f151 +size 22 diff --git a/tests/files/modeling/geometry_nodes/import/data_files/random_floats.csv b/tests/files/modeling/geometry_nodes/import/data_files/random_floats.csv new file mode 100644 index 00000000000..8ed926ee1e1 --- /dev/null +++ b/tests/files/modeling/geometry_nodes/import/data_files/random_floats.csv @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3198008c17bef3095129fce795cb46c87112f887338290d32890640192126a07 +size 20102 diff --git a/tests/files/modeling/geometry_nodes/import/data_files/simple.csv b/tests/files/modeling/geometry_nodes/import/data_files/simple.csv new file mode 100644 index 00000000000..2cbcd762f57 --- /dev/null +++ b/tests/files/modeling/geometry_nodes/import/data_files/simple.csv @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b48d9d3cdef6faabeb68beaa5ea6cfdba30544b12165a288f85645672c9cbcc +size 12 diff --git a/tests/files/modeling/geometry_nodes/import/import_csv_dash_separated.blend b/tests/files/modeling/geometry_nodes/import/import_csv_dash_separated.blend new file mode 100644 index 00000000000..cd2c27b7a22 --- /dev/null +++ b/tests/files/modeling/geometry_nodes/import/import_csv_dash_separated.blend @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:817cd0612fdc7b31cbb407270b58cd9e0de1f020f3b5d7a6c93b11b2346e78ac +size 485984 diff --git a/tests/files/modeling/geometry_nodes/import/import_csv_int_and_float.blend b/tests/files/modeling/geometry_nodes/import/import_csv_int_and_float.blend new file mode 100644 index 00000000000..47dc7849a5e --- /dev/null +++ b/tests/files/modeling/geometry_nodes/import/import_csv_int_and_float.blend @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5a5d15633c93696f401b21dd0fea4b89366c0301771e0e52e47afd38e0165c3 +size 486004 diff --git a/tests/files/modeling/geometry_nodes/import/import_csv_random_floats.blend b/tests/files/modeling/geometry_nodes/import/import_csv_random_floats.blend new file mode 100644 index 00000000000..aacf8be7d20 --- /dev/null +++ b/tests/files/modeling/geometry_nodes/import/import_csv_random_floats.blend @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1f2ca5c5f1d11acfc008005aabc87a5afcfdb4e257f15051652db97974995c7 +size 530321 diff --git a/tests/files/modeling/geometry_nodes/import/import_csv_simple.blend b/tests/files/modeling/geometry_nodes/import/import_csv_simple.blend new file mode 100644 index 00000000000..6e119b5ec44 --- /dev/null +++ b/tests/files/modeling/geometry_nodes/import/import_csv_simple.blend @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b2dae421ba7cfe591391a21a1521fb141fafbceab70d1a6eb8bfa5ee60347f3 +size 485980