l-smash icon indicating copy to clipboard operation
l-smash copied to clipboard

Add CMake build system

Open Asd-g opened this issue 5 months ago • 1 comments

  • Supports building on Linux, macOS, and Windows (MSVC & MinGW).
  • Builds both static and shared libraries across all supported platforms.
  • Finds and links against a CMake-installed OBUParse dependency. (https://github.com/dwbuiten/obuparse/pull/16)
  • Generates and installs a CMake package that provides imported alias targets for easy consumption:
    • LSMASH::static
    • LSMASH::shared
  • Builds the command-line tools (muxer, remuxer, boxdumper, timelineeditor) as separate executables.
  • Includes a convenient uninstall target.

Note: requires obuparse with CMake build system (https://github.com/dwbuiten/obuparse/pull/16)

Asd-g avatar Jun 30 '25 17:06 Asd-g

... but why? The existing build system works fine (and tbh I do not like cmake at all).

dwbuiten avatar Aug 27 '25 15:08 dwbuiten

It works fine for some building environments. For others, one have to manual handle the building.

Asd-g avatar Dec 01 '25 01:12 Asd-g