The short story is that I needed to install dot for documenting some C++ code on Windows using Doxygen, TeXLive, and CMake. I had some difficulty finding an installer and a coworker was having trouble building from source, so after a short amount of grumbling on Twitter, I committed to looking into what it would take to generate a basic installer (.zip, .msi, setup.exe) for Windows using CMake and CPack.
So far, I’ve been able to pull the Graphviz source and dependencies from gitlab and get CMake to configure everything well enough to build without fatal errors so I’m at the point of seeing what artifacts (binaries, libraries, docs, etc.) have been generated and sorting out where they should be installed under Windows. My main questions are:
- What files do we need for a basic user installation? (executables, plugins, shared libraries, docs, configs)
- Is there a notion of a binary developer distribution that avoids building everything from source? (static and dynamic libraries, header files)
- What would it take to replicate the functionality of the version 2.38 MSI installer?
People suggested I talk with @magjac since he’s also working with CMake and that seems like a really good idea at this point. I’m far more comfortable with linux development than I am with Windows but I spent the last year on cross-platform C++ development using CMake, CTest, and CPack including dependency retrieval and compilation. Assuming my dev setup is properly building things, it shouldn’t take a ton of work to generate a basic Windows installer and later to extend that to various linux distros and potentially OSX.
Thanks for any info you can provide