Skip to content

Refactor#8

Open
CrSjimo wants to merge 18 commits intomainfrom
refactor
Open

Refactor#8
CrSjimo wants to merge 18 commits intomainfrom
refactor

Conversation

@CrSjimo
Copy link
Member

@CrSjimo CrSjimo commented Mar 7, 2026

This pull request introduces a major refactor to the build system and project structure, focusing on modularizing the codebase and improving library management. It adds new CMake options for building separate serializer and converter libraries, restructures how libraries are defined and linked, and introduces a new .clang-format configuration. Additionally, it removes several converter-related header files, indicating a possible migration or redesign of converter functionality.

Build system and project structure improvements:

  • Added CMake options OPENDSPX_BUILD_SERIALIZER and OPENDSPX_BUILD_CONVERTER to support building serializer and converter libraries separately.
  • Refactored CMakeLists.txt to modularize library creation, introduce macros for adding libraries, and update linking and installation logic. This includes the creation of model, serializer, and converter targets, and improved handling of platform-specific resources.
  • Updated the Windows resource macro (add_winrc) in cmake/winrc.cmake to accept parameters for name, description, and copyright, and applied it to the new modular targets. [1] [2] [3]

Code formatting and standards:

  • Added a comprehensive .clang-format configuration file to standardize C++ code formatting across the project.

Converter functionality changes:

  • Removed converter-related header files (include/opendspx/converter.h, include/opendspx/converters/midi.h, include/opendspx/converters/opensvip.h, include/opendspx/converters/svip.h, include/opendspx/converters/ust.h), suggesting a redesign or relocation of converter logic. [1] [2] [3] [4] [5]

These changes collectively enhance the maintainability, modularity, and build flexibility of the project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants