ADD_LIBRARY(JFJochReader STATIC
        JFJochReader.cpp JFJochReader.h
        JFJochHDF5Reader.cpp
        JFJochHDF5Reader.h
        SweepLayout.cpp
        SweepLayout.h
        MiniCBF.cpp
        MiniCBF.h
        JFJochCBFReader.cpp
        JFJochCBFReader.h
        MarCCD.cpp
        MarCCD.h
        JFJochMarCCDReader.cpp
        JFJochMarCCDReader.h
        SMV.cpp
        SMV.h
        JFJochSMVReader.cpp
        JFJochSMVReader.h
        HDF5ImageLocator.cpp
        HDF5ImageLocator.h
        HDF5ImageSource.cpp
        HDF5ImageSource.h
        HDF5MetadataSource.cpp
        HDF5MetadataSource.h
        JFJochReaderImage.cpp
        JFJochReaderImage.h
        JFJochReaderDataset.cpp
        JFJochReaderDataset.h
        JFJochReaderSpots.h
)

# NB: JFJochHttpReader (the viewer's live-broker HTTP client) lives in viewer/ and links libcurl;
# it is deliberately NOT part of this always-built library, so the broker/writer never pull in a
# TLS/Kerberos stack.
# tiff: the marCCD reader's files are ordinary uncompressed TIFFs, so libtiff - which the build
# already fetches for JFJochPreview in every mode - reads the pixels and there is no new dependency.
TARGET_LINK_LIBRARIES(JFJochReader JFJochImageAnalysis JFJochAPI JFJochCommon JFJochZMQ JFJochLogger
                      JFJochHDF5Wrappers CBORStream2FrameSerialize tiff ZLIB::ZLIB
                      ${CMAKE_DL_LIBS})
