Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacques Lucke <jacques@blender.org>2021-12-06 19:30:42 +0300
committerJacques Lucke <jacques@blender.org>2021-12-06 19:31:42 +0300
commitc2292b2cd62ae3155928385251bbcb1a00c29ad1 (patch)
tree8b54551d43b07de62ccf5cfdb1f138871c62e938
parent7d1a10a9bbf38cca571f56d32c799d9740d07423 (diff)
Cleanup: remove unnecessary extern template implementations
This technique isn't really necessary anymore, because unity builds avoid instantiating the same template too many times already.
-rw-r--r--source/blender/blenkernel/BKE_attribute_access.hh16
-rw-r--r--source/blender/blenkernel/CMakeLists.txt1
-rw-r--r--source/blender/blenkernel/intern/extern_implementations.cc27
-rw-r--r--source/blender/nodes/CMakeLists.txt1
-rw-r--r--source/blender/nodes/NOD_socket_declarations.hh23
-rw-r--r--source/blender/nodes/NOD_socket_declarations_geometry.hh4
-rw-r--r--source/blender/nodes/intern/extern_implementations.cc35
7 files changed, 0 insertions, 107 deletions
diff --git a/source/blender/blenkernel/BKE_attribute_access.hh b/source/blender/blenkernel/BKE_attribute_access.hh
index 4402f6fbf74..b39d3c69bfd 100644
--- a/source/blender/blenkernel/BKE_attribute_access.hh
+++ b/source/blender/blenkernel/BKE_attribute_access.hh
@@ -516,19 +516,3 @@ template<typename T> inline MutableSpan<T> OutputAttribute::as_span()
/** \} */
} // namespace blender::bke
-
-/* -------------------------------------------------------------------- */
-/** \name External Template Instantiations
- *
- * Defined in `intern/extern_implementations.cc`.
- * \{ */
-
-namespace blender::bke {
-extern template class OutputAttribute_Typed<float>;
-extern template class OutputAttribute_Typed<int>;
-extern template class OutputAttribute_Typed<float3>;
-extern template class OutputAttribute_Typed<bool>;
-extern template class OutputAttribute_Typed<ColorGeometry4f>;
-} // namespace blender::bke
-
-/** \} */
diff --git a/source/blender/blenkernel/CMakeLists.txt b/source/blender/blenkernel/CMakeLists.txt
index c7e3a993ace..a2179a42520 100644
--- a/source/blender/blenkernel/CMakeLists.txt
+++ b/source/blender/blenkernel/CMakeLists.txt
@@ -139,7 +139,6 @@ set(SRC
intern/editmesh_cache.c
intern/editmesh_tangent.c
intern/effect.c
- intern/extern_implementations.cc
intern/fcurve.c
intern/fcurve_cache.c
intern/fcurve_driver.c
diff --git a/source/blender/blenkernel/intern/extern_implementations.cc b/source/blender/blenkernel/intern/extern_implementations.cc
deleted file mode 100644
index 07a4b6fc455..00000000000
--- a/source/blender/blenkernel/intern/extern_implementations.cc
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "BKE_attribute_access.hh"
-
-namespace blender::bke {
-
-template class OutputAttribute_Typed<float>;
-template class OutputAttribute_Typed<int>;
-template class OutputAttribute_Typed<float3>;
-template class OutputAttribute_Typed<bool>;
-template class OutputAttribute_Typed<ColorGeometry4f>;
-
-} // namespace blender::bke
diff --git a/source/blender/nodes/CMakeLists.txt b/source/blender/nodes/CMakeLists.txt
index 88a851cfecb..a05063af067 100644
--- a/source/blender/nodes/CMakeLists.txt
+++ b/source/blender/nodes/CMakeLists.txt
@@ -277,7 +277,6 @@ set(SRC
texture/node_texture_util.c
intern/derived_node_tree.cc
- intern/extern_implementations.cc
intern/geometry_nodes_eval_log.cc
intern/math_functions.cc
intern/node_common.cc
diff --git a/source/blender/nodes/NOD_socket_declarations.hh b/source/blender/nodes/NOD_socket_declarations.hh
index f7aea212f73..7cb32a37ae2 100644
--- a/source/blender/nodes/NOD_socket_declarations.hh
+++ b/source/blender/nodes/NOD_socket_declarations.hh
@@ -369,26 +369,3 @@ inline Image::Image() : IDSocketDeclaration("NodeSocketImage")
/** \} */
} // namespace blender::nodes::decl
-
-/* -------------------------------------------------------------------- */
-/** \name External Template Instantiations
- *
- * Defined in `intern/extern_implementations.cc`.
- * \{ */
-
-namespace blender::nodes {
-#define MAKE_EXTERN_SOCKET_DECLARATION(TYPE) \
- extern template class SocketDeclarationBuilder<TYPE>; \
- extern template TYPE::Builder &NodeDeclarationBuilder::add_input<TYPE>(StringRef, StringRef); \
- extern template TYPE::Builder &NodeDeclarationBuilder::add_output<TYPE>(StringRef, StringRef);
-
-MAKE_EXTERN_SOCKET_DECLARATION(decl::Float)
-MAKE_EXTERN_SOCKET_DECLARATION(decl::Int)
-MAKE_EXTERN_SOCKET_DECLARATION(decl::Vector)
-MAKE_EXTERN_SOCKET_DECLARATION(decl::Bool)
-MAKE_EXTERN_SOCKET_DECLARATION(decl::Color)
-MAKE_EXTERN_SOCKET_DECLARATION(decl::String)
-
-} // namespace blender::nodes
-
-/** \} */
diff --git a/source/blender/nodes/NOD_socket_declarations_geometry.hh b/source/blender/nodes/NOD_socket_declarations_geometry.hh
index 1531f82d67d..3c919729da9 100644
--- a/source/blender/nodes/NOD_socket_declarations_geometry.hh
+++ b/source/blender/nodes/NOD_socket_declarations_geometry.hh
@@ -52,7 +52,3 @@ class GeometryBuilder : public SocketDeclarationBuilder<Geometry> {
};
} // namespace blender::nodes::decl
-
-namespace blender::nodes {
-MAKE_EXTERN_SOCKET_DECLARATION(decl::Geometry)
-}
diff --git a/source/blender/nodes/intern/extern_implementations.cc b/source/blender/nodes/intern/extern_implementations.cc
deleted file mode 100644
index 35de319f20b..00000000000
--- a/source/blender/nodes/intern/extern_implementations.cc
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "NOD_socket_declarations.hh"
-#include "NOD_socket_declarations_geometry.hh"
-
-namespace blender::nodes {
-#define MAKE_EXTERN_SOCKET_IMPLEMENTATION(TYPE) \
- template class SocketDeclarationBuilder<TYPE>; \
- template TYPE::Builder &NodeDeclarationBuilder::add_input<TYPE>(StringRef, StringRef); \
- template TYPE::Builder &NodeDeclarationBuilder::add_output<TYPE>(StringRef, StringRef);
-
-MAKE_EXTERN_SOCKET_IMPLEMENTATION(decl::Float)
-MAKE_EXTERN_SOCKET_IMPLEMENTATION(decl::Int)
-MAKE_EXTERN_SOCKET_IMPLEMENTATION(decl::Vector)
-MAKE_EXTERN_SOCKET_IMPLEMENTATION(decl::Bool)
-MAKE_EXTERN_SOCKET_IMPLEMENTATION(decl::Color)
-MAKE_EXTERN_SOCKET_IMPLEMENTATION(decl::String)
-MAKE_EXTERN_SOCKET_IMPLEMENTATION(decl::Geometry)
-
-#undef MAKE_EXTERN_SOCKET_IMPLEMENTATION
-} // namespace blender::nodes