ADD_LIBRARY(JFJochStructureRefinement STATIC
        ModelFFT.cpp ModelFFT.h
        ModelGrid.cpp ModelGrid.h
        ModelScaling.cpp ModelScaling.h
        MolecularReplacement.cpp MolecularReplacement.h
        ModelValidation.cpp ModelValidation.h
        RigidBodyRefine.cpp RigidBodyRefine.h
        $<$<BOOL:${JFJOCH_CUDA_AVAILABLE}>:RigidBodyGPU.cpp>
        $<$<BOOL:${JFJOCH_CUDA_AVAILABLE}>:RigidBodyGPU.cu>
        RigidBodyGPU.h RigidBodyGPUEngine.h
        $<$<BOOL:${JFJOCH_CUDA_AVAILABLE}>:ModelDensityGPU.cu> ModelDensityGPU.h
        $<$<BOOL:${JFJOCH_CUDA_AVAILABLE}>:ModelMaskGPU.cu> ModelMaskGPU.h
        $<$<BOOL:${JFJOCH_CUDA_AVAILABLE}>:ModelStructureFactorsGPU.cpp>
        $<$<BOOL:${JFJOCH_CUDA_AVAILABLE}>:ModelStructureFactorsGPU.cu>
        ModelStructureFactorsGPU.h ModelStructureFactorsGPUEngine.h
        $<$<BOOL:${JFJOCH_CUDA_AVAILABLE}>:ModelScaleGPU.cu> ModelScaleGPU.h
        SigmaA.cpp SigmaA.h)

# JFJochIndexing for CUDAMemHelpers.h and, under CUDA, to put cuFFT (RigidBodyGPU.cu) after these
# objects on the link line.
TARGET_LINK_LIBRARIES(JFJochStructureRefinement JFJochScaleMerge JFJochIndexing JFJochCommon gemmi fftw3f)
