Apologies for the wall of text.

liam@...3128...:/home/inkrepo$ cd experimental
liam@...3129......:/home/inkrepo/experimental$ ls
liam@...3128...:/home/inkrepo/experimental$ cmake .
-- Creating build files in: /home/inkrepo/experimental
-- Found GSL: /usr/lib/libgsl.so
-- Found BoehmGC: /usr/lib/x86_64-linux-gnu/libgc.so
-- Found poppler: /usr/lib/x86_64-linux-gnu/libpoppler.so
-- Found poppler-glib: /usr/lib/x86_64-linux-gnu/libpoppler-glib.so
-- Found cairo-svg: /usr/lib/x86_64-linux-gnu/libcairo.so
-- Found poppler-cairo: /usr/lib/x86_64-linux-gnu/libcairo.so
-- checking for module 'libwpg-0.1'
--   package 'libwpg-0.1' not found
-- checking for module 'libwpg-stream-0.1'
--   package 'libwpg-stream-0.1' not found
-- checking for module 'libwpd-0.8'
--   package 'libwpd-0.8' not found
-- Found libwpg-0.2: /usr/lib/libwpg-0.2.so
-- Found libwpd-0.9: /usr/lib/libwpd-0.9.so
-- Found libwpd-stream-0.9: /usr/lib/libwpd-stream-0.9.so
-- Found Popt: /usr/lib/x86_64-linux-gnu/libpopt.so
-- Boost version: 1.54.0
-- checking for module 'gtkspell-2.0'
--   package 'gtkspell-2.0' not found
-- Try OpenMP C flag = [ ]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [/openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-Qopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-xopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [+Oopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-qsmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP C flag = [-mp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [ ]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [/openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-Qopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-openmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-xopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [+Oopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-qsmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Try OpenMP CXX flag = [-mp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Failed
-- Could NOT find OpenMP (missing:  OpenMP_C_FLAGS OpenMP_CXX_FLAGS) 
-- Generating header and sourcefiles from sp-marshal.list (Glib-Marshal)
-- sp-marshal.h unchanged
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
ImageMagick_MagickCore_INCLUDE_DIR
   used as include directory in directory /home/inkrepo/experimental
   used as include directory in directory /home/inkrepo/experimental
   used as include directory in directory /home/inkrepo/experimental/src
   used as include directory in directory /home/inkrepo/experimental/src
   used as include directory in directory /home/inkrepo/experimental/src/2geom
   used as include directory in directory /home/inkrepo/experimental/src/libavoid
   used as include directory in directory /home/inkrepo/experimental/src/libcola
   used as include directory in directory /home/inkrepo/experimental/src/libcroco
   used as include directory in directory /home/inkrepo/experimental/src/libgdl
   used as include directory in directory /home/inkrepo/experimental/src/libuemf
   used as include directory in directory /home/inkrepo/experimental/src/libvpsc
   used as include directory in directory /home/inkrepo/experimental/src/livarot
   used as include directory in directory /home/inkrepo/experimental/src/libnrtype
   used as include directory in directory /home/inkrepo/experimental/src/libdepixelize

-- Configuring incomplete, errors occurred!
See also "/home/inkrepo/experimental/CMakeFiles/CMakeOutput.log".
See also "/home/inkrepo/experimental/CMakeFiles/CMakeError.log".

Just to prove CMake wrong about OpenMP and ImageMagick, I then did this:

liam@...3128...:/home/inkrepo/experimental$ cd ..
liam@...3128...:/home/inkrepo$ cat > openmp-test.cpp
#include <omp.h>
#include <stdio.h>
int main() {
#pragma omp parallel
    printf("Hello from thread %d, nthreads %d\n", omp_get_thread_num(), 
    omp_get_num_threads());
}^D
liam@...3128...:/home/inkrepo$ g++ -fopenmp openmp-test.cpp -o a.out
liam@...3128...:/home/inkrepo$ ./a.out
Hello from thread 3, nthreads 4
Hello from thread 0, nthreads 4
Hello from thread 2, nthreads 4
Hello from thread 1, nthreads 4
liam@...360...3128...:/home/inkrepo$ ls /usr/include/GraphicsMagick
magick Magick++  Magick++.h  wand
liam@...3128...:/home/inkrepo$ ls /usr/include/magick
analyze.h    blob.h color_lookup.h common.h     confirm_access.h  deprecate.h  enhance.h  gem.h   list.h    magick.h    monitor.h pixel_cache.h  quantize.h  resize.h   statistics.h  transform.h
api.h     cdl.h colormap.h compare.h    constitute.h      describe.h   error.h    gradient.h  log.h    magick_types.h  montage.h pixel_iterator.h  random.h    resource.h   symbols.h type.h
attribute.h  channel.h colorspace.h composite.h  decorate.h        draw.h    forward.h  hclut.h   magic.h    memory.h    operator.h plasma.h  registry.h  shear.h   texture.h utility.h
average.h    color.h command.h compress.h   delegate.h        effect.h     fx.h       image.h   magick_config.h  module.h    paint.h profile.h  render.h    signature.h  timer.h version.h

What I'm not getting here is why CMake requires libmagickcore-dev to be installed — on the same system, with the same installed packages, ./configure with no parameters passed says this:

        Use gnome-vfs:            yes
        Use openoffice files:     yes
        Use relocation support:   no
        Enable LittleCms:         yes
        Enable DBUS:              no
        Enable Poppler-Cairo:     yes
        ImageMagick Magick++:     yes
        Libwpg:                   yes
        Libvisio:                 yes
        Libcdr:                   no
        Doing Local Install:      no

After installing libmagickcore-dev, I ran CMake again and it "worked". I then ran make -k (and got the expected errors with poppler), but then this error about missing Magick.h.

[ 20%] Building CXX object src/CMakeFiles/inkscape.dir/extension/internal/bitmap/blur.cpp.o
/home/inkrepo/experimental/src/extension/internal/bitmap/blur.cpp:13:10: fatal error: 'Magick++.h' file not found
#include <Magick++.h>
         ^
1 error generated.

TL;DR how do we get CMake to properly recognize OpenMP support, recognize the correct Magick, and supply the correct headers?