Info to orient new developers to Sumatra code base.
You should install Go (https://golang.org/dl/).
Many tasks are automated with Go program in
doit.batfor easy running of that program. use different cmd-line args to trigger different functions.
To build, use latest Visual Studio and open
vs2019\SumatraPDF.slnsolution. Look at different targets and configurations.
Don't edit the solution directly. To learn how to make changes (add files, change compilation flags etc.) see info about build system.
We use GitHub Actions for a CI system. See
.githubdirectory. Most importantly it builds a 64-bit release version on every checkin to catch build errors and uploads it to storage and makes available via https://www.sumatrapdfreader.org/dailybuilds.html
Overview of the directories:
src: main Sumatra code
mupdf: library used to parse / render PDF files (from https://mupdf.com/)
ext: other third-party libraries (some are needed for mupdf, some for Sumatra code)
do: Go program that automates common tasks. Invoke with