diff options
author | Jacques Lucke <jacques@blender.org> | 2021-12-06 19:30:42 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2021-12-06 19:31:42 +0300 |
commit | c2292b2cd62ae3155928385251bbcb1a00c29ad1 (patch) | |
tree | 8b54551d43b07de62ccf5cfdb1f138871c62e938 /source | |
parent | 7d1a10a9bbf38cca571f56d32c799d9740d07423 (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.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/blenkernel/BKE_attribute_access.hh | 16 | ||||
-rw-r--r-- | source/blender/blenkernel/CMakeLists.txt | 1 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/extern_implementations.cc | 27 | ||||
-rw-r--r-- | source/blender/nodes/CMakeLists.txt | 1 | ||||
-rw-r--r-- | source/blender/nodes/NOD_socket_declarations.hh | 23 | ||||
-rw-r--r-- | source/blender/nodes/NOD_socket_declarations_geometry.hh | 4 | ||||
-rw-r--r-- | source/blender/nodes/intern/extern_implementations.cc | 35 |
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 |