Failures due to build order of Slicer CAT with superbuild remote modules

SlicerJupyter use-case custom application bundling use-case

There is no need to specify additional set(${proj}_DEPENDS ..)

To make things concrete, bundling SlicerJupyter would only require the following in the custom application top-level CMakeLists.txt:

# SlicerJupyter
set(extension_name "SlicerJupyter")
set(${extension_name}_SOURCE_DIR "${CMAKE_BINARY_DIR}/${extension_name}")
FetchContent_Populate(${extension_name}
  SOURCE_DIR     ${${extension_name}_SOURCE_DIR}
  GIT_REPOSITORY ${EP_GIT_PROTOCOL}://github.com/Slicer/SlicerJupyter.git
  GIT_TAG        b282a2c819da1e3e4fe1ab6c419e2299f976720d
  GIT_PROGRESS   1
  QUIET
  )
list(APPEND Slicer_EXTENSION_SOURCE_DIRS ${${extension_name}_SOURCE_DIR})

ExternalProject_Add_Dependencies(pybind11
  DEPENDS
    python
  )

ExternalProject_Add_Dependencies(python-packages
  DEPENDS
    python
    python-pip
    python-setuptools
  )

The configuration output effectively indicates the dependencies are considered:

$  cmake   -DCMAKE_BUILD_TYPE:STRING=Release   -DQt5_DIR:PATH=$Qt5_DIR  ../SlicerGalaxy
[...]
-- SuperBuild -   python-packages => Requires python[INCLUDED], python-pip[INCLUDED], python-setuptools[INCLUDED], 
-- SuperBuild -   python-packages[OK]
[...]
-- SuperBuild -   pybind11 => Requires python[INCLUDED], 
-- SuperBuild -   pybind11[OK]
[...]

Suggested SlicerJupyter updates