From a441757080b757ac73d7c2aa06d97345d00dc12d Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Sun, 9 Aug 2026 09:52:17 +0200 Subject: [PATCH] Use underscore plugin artifact names Generated with the assistance of an AI coding tool. --- cmake/utilities.cmake | 1 + src/bonsaiviewer/CMakeLists.txt | 6 +++--- src/ifcgeom/abstract_mapping.h | 2 +- src/ifcgeom/kernel_plugin.cpp | 2 +- src/ifcgeom/kernel_registry.cpp | 2 +- src/ifcgeom/kernel_registry.h | 2 +- src/ifcgeom/kernels/CMakeLists.txt | 6 +++--- src/ifcgeom/mapping/CMakeLists.txt | 2 +- src/ifcgeom/mapping_plugin.cpp | 2 +- .../opencascade_geometry_ifc_writer_plugin.cpp | 2 +- src/ifcgeom/serialization/schema/CMakeLists.txt | 2 +- src/ifcgeom/serialization/serialization.h | 2 +- src/ifcgeom/tree_plugin.cpp | 14 +++++++++++--- src/ifcgeom/tree_registry.h | 2 +- src/ifcparse/CMakeLists.txt | 2 +- src/ifcparse/schema.cpp | 4 ++-- src/ifcwrap/CMakeLists.txt | 2 +- src/plugin/plugin.cpp | 2 +- src/serializers/CMakeLists.txt | 6 ++++-- src/serializers/document_serializer_plugin.cpp | 6 +++--- src/serializers/document_serializer_plugin.h | 2 +- src/serializers/geometry_serializer_plugin.cpp | 2 +- src/serializers/geometry_serializer_plugin.h | 2 +- src/svgfill/CMakeLists.txt | 2 +- src/svgfill/src/linework_processing_facade.cpp | 2 +- src/svgfill/src/linework_processing_plugin.h | 2 +- 26 files changed, 46 insertions(+), 35 deletions(-) diff --git a/cmake/utilities.cmake b/cmake/utilities.cmake index 030c831e00..732c3ddc6d 100644 --- a/cmake/utilities.cmake +++ b/cmake/utilities.cmake @@ -52,6 +52,7 @@ macro(SET_INSTALL_SELF_RPATH _target) endmacro() function(ifcopenshell_plugin_target TARGET) + # Plug-ins are loaded by exact filename and should not receive a platform library prefix. set_target_properties(${TARGET} PROPERTIES PREFIX "") if((NOT WIN32) AND BUILD_SHARED_LIBS AND NOT WASM_BUILD AND NOT CREATE_BUNDLE AND NOT CMAKE_INSTALL_RPATH AND COMMAND SET_INSTALL_SELF_RPATH) SET_INSTALL_SELF_RPATH(${TARGET}) diff --git a/src/bonsaiviewer/CMakeLists.txt b/src/bonsaiviewer/CMakeLists.txt index ae16c4af4a..e273ffb8eb 100644 --- a/src/bonsaiviewer/CMakeLists.txt +++ b/src/bonsaiviewer/CMakeLists.txt @@ -168,7 +168,7 @@ ifcopenshell_deploy_qt_runtime(BonsaiViewer) # them explicitly. (In a static build these are absent from lib/ # and the glob just no-ops, so this rule is safe in both modes.) # -# 2. Plug-ins (ifcopenshell.*.dylib, no `lib` prefix) — dlopen-only +# 2. Plug-ins (ifcopenshell_*.dylib, no `lib` prefix) — dlopen-only # deps the plug-in loader resolves at runtime. macdeployqt has # no way to know about these. # @@ -177,7 +177,7 @@ ifcopenshell_deploy_qt_runtime(BonsaiViewer) # inside the bundle), so plug-ins and core libs both find each other # on the first probe. # -# The geometry-writer filter drops ifcopenshell.geometry.writer.*.dylib +# The geometry-writer filter drops ifcopenshell_geometry_writer_*.dylib # (the per-schema OBJ / glTF / DAE / STP / IGS / SVG / TTL export # converters — heavy, viewer-irrelevant). Mirrors the Rocky workflow's # filter in `stage_runtime_payload` (see 27249770e). @@ -195,7 +195,7 @@ if(APPLE) install(CODE [[ set(_fw "${CMAKE_INSTALL_PREFIX}/BonsaiViewer.app/Contents/Frameworks") file(GLOB _ifc_dylibs "${CMAKE_INSTALL_PREFIX}/lib/*.dylib") - list(FILTER _ifc_dylibs EXCLUDE REGEX "ifcopenshell\\.geometry\\.writer\\.") + list(FILTER _ifc_dylibs EXCLUDE REGEX "ifcopenshell_geometry_writer_") if(_ifc_dylibs) message(STATUS "Staging IfcOpenShell dylibs (linked core + plug-ins) into BonsaiViewer.app/Contents/Frameworks") file(COPY ${_ifc_dylibs} DESTINATION "${_fw}") diff --git a/src/ifcgeom/abstract_mapping.h b/src/ifcgeom/abstract_mapping.h index fd33c694c0..69b13dff8d 100644 --- a/src/ifcgeom/abstract_mapping.h +++ b/src/ifcgeom/abstract_mapping.h @@ -88,8 +88,8 @@ namespace geom { private: struct entry { - mapping_fn fn_; ifcopenshell::plugin::module module_; + mapping_fn fn_; }; std::map entries_; diff --git a/src/ifcgeom/kernel_plugin.cpp b/src/ifcgeom/kernel_plugin.cpp index 00f9d03122..b9fe8a2fd6 100644 --- a/src/ifcgeom/kernel_plugin.cpp +++ b/src/ifcgeom/kernel_plugin.cpp @@ -31,7 +31,7 @@ PLUGIN_API std::filesystem::path add_search_paths_or_default(manager& manager, s } namespace { - constexpr const char* kernel_plugin_prefix = "geometry.kernel."; + constexpr const char* kernel_plugin_prefix = "geometry_kernel_"; std::string kernel_plugin_name(const std::string& backend_id) { auto name = boost::to_lower_copy(backend_id); diff --git a/src/ifcgeom/kernel_registry.cpp b/src/ifcgeom/kernel_registry.cpp index e19b4b36e1..ec35a9d5ae 100644 --- a/src/ifcgeom/kernel_registry.cpp +++ b/src/ifcgeom/kernel_registry.cpp @@ -37,7 +37,7 @@ PLUGIN_API std::filesystem::path add_search_paths_or_default(manager& manager, s } namespace { - constexpr const char* kernel_plugin_prefix = "geometry.kernel."; + constexpr const char* kernel_plugin_prefix = "geometry_kernel_"; std::string kernel_key(const std::string& backend_id) { return boost::to_lower_copy(backend_id); diff --git a/src/ifcgeom/kernel_registry.h b/src/ifcgeom/kernel_registry.h index 4cdc2b1d75..71d37123eb 100644 --- a/src/ifcgeom/kernel_registry.h +++ b/src/ifcgeom/kernel_registry.h @@ -51,9 +51,9 @@ namespace ifcopenshell { private: struct entry { + ifcopenshell::plugin::module module_; kernel_info info_; create_fn create_; - ifcopenshell::plugin::module module_; }; std::map entries_; diff --git a/src/ifcgeom/kernels/CMakeLists.txt b/src/ifcgeom/kernels/CMakeLists.txt index 8b5f6d1b41..1f1921df6a 100644 --- a/src/ifcgeom/kernels/CMakeLists.txt +++ b/src/ifcgeom/kernels/CMakeLists.txt @@ -34,7 +34,7 @@ foreach(kernel ${GEOMETRY_KERNELS}) set_target_properties(${KERNEL_TARGET} PROPERTIES COMPILE_FLAGS "-DIFC_GEOMLIBRARY_EXPORTS" - OUTPUT_NAME "ifcopenshell.geometry.kernel.${kernel}" + OUTPUT_NAME "ifcopenshell_geometry_kernel_${kernel}" RUNTIME_OUTPUT_DIRECTORY "${kernel_plugin_runtime_dir}" LIBRARY_OUTPUT_DIRECTORY "${kernel_plugin_runtime_dir}" ) @@ -56,7 +56,7 @@ foreach(kernel ${GEOMETRY_KERNELS}) set_target_properties(${KERNEL_TARGET_SIMPLE} PROPERTIES COMPILE_FLAGS "-DIFC_GEOMLIBRARY_EXPORTS -DIFOPSH_SIMPLE_KERNEL -DCGAL_HAS_THREADS" - OUTPUT_NAME "ifcopenshell.geometry.kernel.cgalsimple" + OUTPUT_NAME "ifcopenshell_geometry_kernel_cgalsimple" RUNTIME_OUTPUT_DIRECTORY "${kernel_plugin_runtime_dir}" LIBRARY_OUTPUT_DIRECTORY "${kernel_plugin_runtime_dir}" ) @@ -85,7 +85,7 @@ foreach(kernel ${GEOMETRY_KERNELS}) endif() set_target_properties(${TREE_TARGET} PROPERTIES COMPILE_FLAGS "-DIFC_GEOMLIBRARY_EXPORTS" - OUTPUT_NAME "ifcopenshell.geometry.tree.opencascade.${tree_backend}" + OUTPUT_NAME "ifcopenshell_geometry_tree_opencascade_${tree_backend}" RUNTIME_OUTPUT_DIRECTORY "${kernel_plugin_runtime_dir}" LIBRARY_OUTPUT_DIRECTORY "${kernel_plugin_runtime_dir}" ) diff --git a/src/ifcgeom/mapping/CMakeLists.txt b/src/ifcgeom/mapping/CMakeLists.txt index 76d71f6c00..300c1311c4 100644 --- a/src/ifcgeom/mapping/CMakeLists.txt +++ b/src/ifcgeom/mapping/CMakeLists.txt @@ -17,7 +17,7 @@ foreach(schema ${SCHEMA_VERSIONS}) add_library(geometry_mapping_ifc${schema} SHARED ${IFCGEOM_FILES}) set_target_properties(geometry_mapping_ifc${schema} PROPERTIES COMPILE_FLAGS "-DIfcSchema=Ifc${schema}" - OUTPUT_NAME "ifcopenshell.geometry.mapping.ifc${schema}" + OUTPUT_NAME "ifcopenshell_geometry_mapping_ifc${schema}" RUNTIME_OUTPUT_DIRECTORY "${mapping_plugin_runtime_dir}" LIBRARY_OUTPUT_DIRECTORY "${mapping_plugin_runtime_dir}" ) diff --git a/src/ifcgeom/mapping_plugin.cpp b/src/ifcgeom/mapping_plugin.cpp index 883ce39c8d..581a96a2da 100644 --- a/src/ifcgeom/mapping_plugin.cpp +++ b/src/ifcgeom/mapping_plugin.cpp @@ -28,7 +28,7 @@ PLUGIN_API std::filesystem::path add_search_paths_or_default(manager& manager, s } namespace { - constexpr const char* mapping_plugin_prefix = "geometry.mapping."; + constexpr const char* mapping_plugin_prefix = "geometry_mapping_"; } const char* ifcopenshell::geom::impl::mapping_plugin_registration_symbol() { diff --git a/src/ifcgeom/serialization/opencascade_geometry_ifc_writer_plugin.cpp b/src/ifcgeom/serialization/opencascade_geometry_ifc_writer_plugin.cpp index 89588b0ee0..a326b1d1a2 100644 --- a/src/ifcgeom/serialization/opencascade_geometry_ifc_writer_plugin.cpp +++ b/src/ifcgeom/serialization/opencascade_geometry_ifc_writer_plugin.cpp @@ -28,7 +28,7 @@ PLUGIN_API std::filesystem::path add_search_paths_or_default(manager& manager, s } namespace { - constexpr const char* opencascade_geometry_ifc_writer_plugin_prefix = "geometry.writer."; + constexpr const char* opencascade_geometry_ifc_writer_plugin_prefix = "geometry_writer_"; } const char* ifcopenshell::geom::opencascade_geometry_ifc_writer_plugin_registration_symbol() { diff --git a/src/ifcgeom/serialization/schema/CMakeLists.txt b/src/ifcgeom/serialization/schema/CMakeLists.txt index 02d04f7f05..4bbd428771 100644 --- a/src/ifcgeom/serialization/schema/CMakeLists.txt +++ b/src/ifcgeom/serialization/schema/CMakeLists.txt @@ -5,7 +5,7 @@ foreach(schema ${SCHEMA_VERSIONS}) target_link_libraries(geometry_serializer_ifc${schema} PRIVATE plugin geometry_serializer IfcGeom IfcParse parse_schema_ifc${schema} ${OpenCASCADE_LIBRARIES}) set_target_properties(geometry_serializer_ifc${schema} PROPERTIES COMPILE_FLAGS "-DIfcSchema=Ifc${schema}" - OUTPUT_NAME "ifcopenshell.geometry.writer.ifc${schema}" + OUTPUT_NAME "ifcopenshell_geometry_writer_ifc${schema}" RUNTIME_OUTPUT_DIRECTORY "${geometry_serialization_plugin_runtime_dir}" LIBRARY_OUTPUT_DIRECTORY "${geometry_serialization_plugin_runtime_dir}" ) diff --git a/src/ifcgeom/serialization/serialization.h b/src/ifcgeom/serialization/serialization.h index 37d93098e7..fb797cf647 100644 --- a/src/ifcgeom/serialization/serialization.h +++ b/src/ifcgeom/serialization/serialization.h @@ -29,9 +29,9 @@ public: private: struct entry { + ifcopenshell::plugin::module module_; serialise_fn serialise_; tesselate_fn tesselate_; - ifcopenshell::plugin::module module_; }; std::map entries_; diff --git a/src/ifcgeom/tree_plugin.cpp b/src/ifcgeom/tree_plugin.cpp index 506fbf0ddb..4067c02e1b 100644 --- a/src/ifcgeom/tree_plugin.cpp +++ b/src/ifcgeom/tree_plugin.cpp @@ -21,6 +21,8 @@ #include +#include + namespace ifcopenshell { namespace plugin { PLUGIN_API std::filesystem::path add_search_paths_or_default(manager& manager, std::filesystem::path (*default_search_path)()); @@ -28,7 +30,13 @@ PLUGIN_API std::filesystem::path add_search_paths_or_default(manager& manager, s } namespace { - constexpr const char* tree_plugin_prefix = "geometry.tree."; + constexpr const char* tree_plugin_prefix = "geometry_tree_"; + + std::string tree_plugin_name(const std::string& backend_id) { + auto name = boost::to_lower_copy(backend_id); + std::replace(name.begin(), name.end(), '.', '_'); + return name; + } } const char* ifcopenshell::geom::trees::tree_plugin_registration_symbol() { @@ -38,7 +46,7 @@ const char* ifcopenshell::geom::trees::tree_plugin_registration_symbol() { ifcopenshell::plugin::metadata ifcopenshell::geom::trees::tree_plugin_metadata(const std::string& plugin_name) { plugin::metadata metadata; metadata.kind_ = plugin::kind::tree; - metadata.id = std::string(tree_plugin_prefix) + plugin_name; + metadata.id = std::string(tree_plugin_prefix) + tree_plugin_name(plugin_name); return metadata; } @@ -65,7 +73,7 @@ bool ifcopenshell::geom::trees::load_tree_plugin(tree_registry& registry, const plugin::manager manager; plugin::add_search_paths_or_default(manager, &tree_plugin_directory); - const auto plugin_name = boost::to_lower_copy(backend_id); + const auto plugin_name = tree_plugin_name(backend_id); const auto basename = std::string(tree_plugin_prefix) + plugin_name; for (const auto& path : manager.discover_exact(basename)) { diff --git a/src/ifcgeom/tree_registry.h b/src/ifcgeom/tree_registry.h index 47d628fb6f..d148a98919 100644 --- a/src/ifcgeom/tree_registry.h +++ b/src/ifcgeom/tree_registry.h @@ -81,9 +81,9 @@ namespace ifcopenshell { private: struct entry { + ifcopenshell::plugin::module module_; tree_info info_; create_fn create_; - ifcopenshell::plugin::module module_; }; std::map entries_; diff --git a/src/ifcparse/CMakeLists.txt b/src/ifcparse/CMakeLists.txt index 8cc5807512..d665f91ab4 100644 --- a/src/ifcparse/CMakeLists.txt +++ b/src/ifcparse/CMakeLists.txt @@ -95,7 +95,7 @@ foreach(schema ${SCHEMA_VERSIONS}) ) target_link_libraries(${SCHEMA_PLUGIN_TARGET} PRIVATE ${plugin_when_not_wasm} IfcParse) set_target_properties(${SCHEMA_PLUGIN_TARGET} PROPERTIES - OUTPUT_NAME "ifcopenshell.parse.schema.ifc${schema}" + OUTPUT_NAME "ifcopenshell_parse_schema_ifc${schema}" ) ifcopenshell_plugin_target(${SCHEMA_PLUGIN_TARGET}) diff --git a/src/ifcparse/schema.cpp b/src/ifcparse/schema.cpp index d8ce885763..2c5ef09172 100644 --- a/src/ifcparse/schema.cpp +++ b/src/ifcparse/schema.cpp @@ -101,7 +101,7 @@ ifcopenshell::entity::~entity() { } } namespace { - constexpr const char* schema_plugin_prefix = "parse.schema."; + constexpr const char* schema_plugin_prefix = "parse_schema_"; std::string schema_key(const std::string& schema_name) { return boost::to_upper_copy(schema_name); @@ -110,7 +110,7 @@ namespace { ifcopenshell::plugin::module builtin_schema_module(const std::string& schema_name) { ifcopenshell::plugin::metadata metadata; metadata.kind_ = ifcopenshell::plugin::kind::parse_schema; - metadata.id = "parse.schema." + boost::to_lower_copy(schema_name); + metadata.id = "parse_schema_" + boost::to_lower_copy(schema_name); metadata.schema = schema_name; return ifcopenshell::plugin::module::builtin(metadata); } diff --git a/src/ifcwrap/CMakeLists.txt b/src/ifcwrap/CMakeLists.txt index 5a2e41ece0..9f7e537e31 100644 --- a/src/ifcwrap/CMakeLists.txt +++ b/src/ifcwrap/CMakeLists.txt @@ -335,7 +335,7 @@ IF(Python_Interpreter_FOUND OR PYTHON_MODULE_INSTALL_DIR) # expand $ORIGIN; the equivalent placeholder is # @loader_path. Setting $ORIGIN on macOS bakes a literal # "$ORIGIN" into LC_RPATH which resolves to nothing at - # runtime — the wrapper's `@rpath/ifcopenshell.document.rdb + # runtime — the wrapper's `@rpath/ifcopenshell_document_rdb # .dylib` LC_LOAD_DYLIB then fails to find the plug-in even # though INSTALL(TARGETS … LIBRARY DESTINATION …/ifcopenshell) # above has dropped it right next to the wrapper. diff --git a/src/plugin/plugin.cpp b/src/plugin/plugin.cpp index 268d078418..3a3483208e 100644 --- a/src/plugin/plugin.cpp +++ b/src/plugin/plugin.cpp @@ -127,7 +127,7 @@ namespace { } std::string decorated_basename(const std::string& basename) { - return boost::algorithm::istarts_with(basename, "ifcopenshell.") ? basename : "ifcopenshell." + basename; + return boost::algorithm::istarts_with(basename, "ifcopenshell_") ? basename : "ifcopenshell_" + basename; } std::vector platform_basenames(const std::string& basename) { diff --git a/src/serializers/CMakeLists.txt b/src/serializers/CMakeLists.txt index 8af97d2200..dbe82f6eaf 100644 --- a/src/serializers/CMakeLists.txt +++ b/src/serializers/CMakeLists.txt @@ -12,12 +12,13 @@ endif() function(add_document_serializer_plugin target output_name) cmake_parse_arguments(PLUGIN "" "" "SOURCES;LIBRARIES;DEFINITIONS" ${ARGN}) + string(REPLACE "." "_" plugin_output_name "${output_name}") add_library(${target} SHARED ${PLUGIN_SOURCES}) target_compile_definitions(${target} PRIVATE SERIALIZERS_EXPORTS BOOST_DLL_USE_STD_FS ${PLUGIN_DEFINITIONS}) target_link_libraries(${target} PRIVATE ${plugin_when_not_wasm} IfcGeom IfcParse ${PLUGIN_LIBRARIES}) set_target_properties(${target} PROPERTIES - OUTPUT_NAME "ifcopenshell.${output_name}" + OUTPUT_NAME "ifcopenshell_${plugin_output_name}" RUNTIME_OUTPUT_DIRECTORY "${document_serializer_plugin_runtime_dir}" LIBRARY_OUTPUT_DIRECTORY "${document_serializer_plugin_runtime_dir}" ) @@ -30,6 +31,7 @@ endfunction() function(add_geometry_serializer_plugin target output_name) cmake_parse_arguments(PLUGIN "" "" "SOURCES;LIBRARIES;DEFINITIONS" ${ARGN}) + string(REPLACE "." "_" plugin_output_name "${output_name}") add_library(${target} SHARED ${PLUGIN_SOURCES}) target_compile_definitions(${target} PRIVATE SERIALIZERS_EXPORTS BOOST_DLL_USE_STD_FS ${PLUGIN_DEFINITIONS}) @@ -43,7 +45,7 @@ function(add_geometry_serializer_plugin target output_name) target_link_libraries(${target} PRIVATE proj::proj) endif() set_target_properties(${target} PROPERTIES - OUTPUT_NAME "ifcopenshell.${output_name}" + OUTPUT_NAME "ifcopenshell_${plugin_output_name}" RUNTIME_OUTPUT_DIRECTORY "${geometry_serializer_plugin_runtime_dir}" LIBRARY_OUTPUT_DIRECTORY "${geometry_serializer_plugin_runtime_dir}" ) diff --git a/src/serializers/document_serializer_plugin.cpp b/src/serializers/document_serializer_plugin.cpp index 1db0871179..fac4f412de 100644 --- a/src/serializers/document_serializer_plugin.cpp +++ b/src/serializers/document_serializer_plugin.cpp @@ -52,7 +52,7 @@ std::string document_serializer_schema_key(const std::string& schema_name) { std::string document_serializer_plugin_prefix(const std::string& format = std::string()) { const auto format_key = document_serializer_key(format); - return format_key.empty() ? "document." : "document." + format_key; + return format_key.empty() ? "document_" : "document_" + format_key; } void add_document_serializer_search_paths(ifcopenshell::plugin::manager& manager) { @@ -194,7 +194,7 @@ ifcopenshell::plugin::metadata ifcopenshell::serializers::document_serializer_pl metadata.kind_ = plugin::kind::document_serializer; metadata.id = document_serializer_plugin_prefix(format); if (!schema_name.empty()) { - metadata.id += "." + boost::to_lower_copy(schema_name); + metadata.id += "_" + boost::to_lower_copy(schema_name); } metadata.schema = document_serializer_schema_key(schema_name); metadata.format = document_serializer_key(format); @@ -235,7 +235,7 @@ bool ifcopenshell::serializers::load_document_serializer_plugin(document_seriali const auto schema_key = document_serializer_schema_key(schema_name); auto basename = document_serializer_plugin_prefix(format_key); if (!schema_key.empty()) { - basename += "." + boost::to_lower_copy(schema_key); + basename += "_" + boost::to_lower_copy(schema_key); } ifcopenshell::plugin::manager manager; diff --git a/src/serializers/document_serializer_plugin.h b/src/serializers/document_serializer_plugin.h index 621a7578e5..e01550ddde 100644 --- a/src/serializers/document_serializer_plugin.h +++ b/src/serializers/document_serializer_plugin.h @@ -73,9 +73,9 @@ public: private: struct entry { + ifcopenshell::plugin::module module_; document_serializer_info info_; create_fn create_; - ifcopenshell::plugin::module module_; }; const entry* find_entry_(const std::string& format, const std::string& schema_name) const; diff --git a/src/serializers/geometry_serializer_plugin.cpp b/src/serializers/geometry_serializer_plugin.cpp index bbacca56ac..c5b0d669eb 100644 --- a/src/serializers/geometry_serializer_plugin.cpp +++ b/src/serializers/geometry_serializer_plugin.cpp @@ -34,7 +34,7 @@ namespace { std::string geometry_serializer_plugin_prefix(const std::string& format = std::string()) { const auto format_lower = boost::to_lower_copy(format); - return format_lower.empty() ? "geometry." : "geometry." + format_lower; + return format_lower.empty() ? "geometry_" : "geometry_" + format_lower; } std::string geometry_serializer_key(const std::string& extension) { diff --git a/src/serializers/geometry_serializer_plugin.h b/src/serializers/geometry_serializer_plugin.h index 240bad74f6..528df8ba55 100644 --- a/src/serializers/geometry_serializer_plugin.h +++ b/src/serializers/geometry_serializer_plugin.h @@ -73,10 +73,10 @@ public: private: struct entry { + ifcopenshell::plugin::module module_; geometry_serializer_info info_; create_fn create_; configure_fn configure_; - ifcopenshell::plugin::module module_; }; friend SERIALIZERS_API bool load_geometry_serializer_plugin(geometry_serializer_registry& registry, const std::string& extension); diff --git a/src/svgfill/CMakeLists.txt b/src/svgfill/CMakeLists.txt index 1cb0cc5cf9..e860d094d1 100644 --- a/src/svgfill/CMakeLists.txt +++ b/src/svgfill/CMakeLists.txt @@ -56,7 +56,7 @@ endif() target_link_libraries(svgfill PRIVATE ${Boost_LIBRARIES} ${BCRYPT_LIBRARIES} LibXml2::LibXml2 IFCOPENSHELL_CGAL IfcParse) target_compile_definitions(svgfill PUBLIC IFC_SHARED_BUILD) set_target_properties(svgfill PROPERTIES PUBLIC_HEADER "${LIB_H_FILES}") -set_target_properties(svgfill PROPERTIES OUTPUT_NAME "ifcopenshell.geometry.svgfill") +set_target_properties(svgfill PROPERTIES OUTPUT_NAME "ifcopenshell_geometry_svgfill") ifcopenshell_wasm_plugin_link_options(svgfill ifcopenshell_register_linework_processing_plugin_v1) add_executable(svgfill_exe src/main.cpp) diff --git a/src/svgfill/src/linework_processing_facade.cpp b/src/svgfill/src/linework_processing_facade.cpp index cfc9ae0274..dc806bcfee 100644 --- a/src/svgfill/src/linework_processing_facade.cpp +++ b/src/svgfill/src/linework_processing_facade.cpp @@ -36,8 +36,8 @@ PLUGIN_API std::filesystem::path add_search_paths_or_default(manager& manager, s namespace { struct provider_state { - svgfill::linework_processing_plugin::api api; ifcopenshell::plugin::module module; + svgfill::linework_processing_plugin::api api; }; std::filesystem::path plugin_directory() { diff --git a/src/svgfill/src/linework_processing_plugin.h b/src/svgfill/src/linework_processing_plugin.h index 04c1a4c464..2309bfa589 100644 --- a/src/svgfill/src/linework_processing_plugin.h +++ b/src/svgfill/src/linework_processing_plugin.h @@ -31,7 +31,7 @@ void destroy_arrangement(abstract_arrangement* arrangement); namespace linework_processing_plugin { -constexpr const char* id = "geometry.svgfill"; +constexpr const char* id = "geometry_svgfill"; constexpr const char* registration_symbol = "ifcopenshell_register_linework_processing_plugin_v1"; struct api {