COMP: Ensure OpenSSL libs can be referenced with single-config generator

When building Slicer on windows, the OpenSSL libraries are
available for both Debug and Release in a single package.

This commit ensure that the library can also be referenced when building
on windows in the case a single config CMake generator like Ninja is used.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22832 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Tweak python external project to use CMAKE_CFG_INTDIR only when needed

This commit doesn't change the outcome of the current build process. It
simply re-organize the code to minimize confusion.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22833 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Fix parallel build associating patch step with "python-source" project

It is not clear why associating the PATCH_COMMAND with the python
project caused issue when doing parallel build using Ninja on Windows.
The patch step was executed before the download of python could finish.

This commit "resolves" the problem by associated the patch command
with the python source project.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22834 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: use a sort procedure based on numbers instead of alphanumeric. Fixes issue
3487. Fix contributed by Yanlling Liu.


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22835 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Build test CLIs only if BUILD_TESTING is ON

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22836 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Fix 'ninja' build error specifying 'make' command to build OpenSSL.

Since OpenSSL build system doesn't provide ninja files, it is important
to explicitly specify that it should be built using ninja.

Error was the following:

[7/9] Performing build step for 'Slicer'
FAILED: cd /home/jchris/Projects/SarrpTPS-SuperBuild-Release-Qt485-N/Slicer-build && /home/jchris/Support/cmake-2.8.11.2/bin/cmake --build /home/jchris/Projects/SarrpTPS-SuperBuild-Release-Qt485-N/Slicer-build --config . && /home/jchris/Support/cmake-2.8.11.2/bin/cmake -E touch /home/jchris/Projects/SarrpTPS-SuperBuild-Release-Qt485-N/CMake/Superbuild/Slicer-cmake/src/Slicer-stamp/Slicer-build
ninja: error: build.ninja:726: bad $-escape (literal $ must be written as $$)

ninja: build stopped: subcommand failed.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22837 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Fix VTK external project to work correctly with Ninja generator

Use the variable 'CMAKE_MAKE_PROGRAM' instead of the undocumented variable
MAKECOMMAND.

For more details referers to CMake commits kitware/CMake@4ac75fdf [1] and
kitware/CMake@4cce44b [2]

This is know to work with:
 - Ninja 1.4.0
 - CMake 2.8.12.1

[1] http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4ac75fdf
[2] http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4cce44b

The error was:

// ---------------
FAILED: cd /home/jchris/Projects/SarrpTPS-SuperBuild-Release-Qt485-N/Slicer-build/VTK-build && /home/jchris/Support/cmake-2.8.11.2/bin/cmake -DMAKE_COMMAND= -P /home/jchris/Projects/SarrpTPS-SuperBuild-Release-Qt485-N/Slicer-build/VTK_build_step.cmake && /home/jchris/Support/cmake-2.8.11.2/bin/cmake -E touch /home/jchris/Projects/SarrpTPS-SuperBuild-Release-Qt485-N/Slicer-build/VTK-prefix/src/VTK-stamp/VTK-build
CMake Error at /home/jchris/Projects/SarrpTPS-SuperBuild-Release-Qt485-N/Slicer-build/VTK_build_step.cmake:5 (message):
  error: MAKE_COMMAND is not set !
// ---------------

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22838 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Factor out scripted module reload function into 'slicer.util'

At least two versions of the code were used to reload a scripted module
were existing. This commit add the most recent version into
the function 'slicer.util.reloadScriptedModule' and update the
Slicer modules to use it.

Note that since not all module implements the 'cleanup' function,
an additional test has been added to check if the method is available.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22839 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: In reloadScriptedModule - Use 'with' statement to open file

See http://freepythontips.wordpress.com/2014/01/15/the-open-function-explained/

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22840 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: DashboardDriver: Expect MIDAS_PACKAGE_URL if packaging is enabled

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22841 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: DashboardDriver: Introduce SVN_REPOSITORY variable

By default the variable is set to:

  http://svn.slicer.org/${CTEST_PROJECT_NAME}

If needed, the variable SVN_REPOSITORY can also be set prior to include
the driver script.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22842 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: fix incorrect function name in MultiVolumeImporter


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22843 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: set the multivolume loadable name as requested by the caller


git-svn-id: http://svn.slicer.org/Slicer4/trunk@22844 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix crash in vtkMRMLAnnotationDisplayableManager

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22845 3bd1e089-480b-0410-8dfb-8563597acbee
COMP: Fix compilation error with ITKv3

MakeOutput expects a DataObjectPointerArraySizeType and not an integer.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22846 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: Update SlicerExecutionModel - Add ParameterSerializer support

$ git shortlog 9202673..6956eb2b
Jean-Christophe Fillion-Robin (3):
      Merge pull request #20 from thewtex/parameter-serializer
      Merge pull request #22 from thewtex/find-jsoncpp
      Merge pull request #23 from thewtex/export-dep

Matt McCormick (5):
      ENH: Add GENERATE_TCLAP_ASSIGNMENT_IFSET generation.
      ENH: Add ParameterSerializer support.
      ENH: Add FindJsonCpp.cmake.
      BUG: Export the JsonCpp include directories in SlicerExecutionModelConfig.cmake.
      BUG: include ParameterSerializerConfig.cmake in SlicerExecutionModelConfig.cmake.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22847 3bd1e089-480b-0410-8dfb-8563597acbee
STYLE: slicer.util.reloadScriptedModule - Reorganized code comments

Minimize confusion by associating a single comment with each section
of code.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22848 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: slicer.util.reloadScriptedModule - Ensure cleanup function can be called

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22849 3bd1e089-480b-0410-8dfb-8563597acbee
BUG: Fix "Reload and Test" function

While commit r22839 re-factored the code associated with "Reload" function,
it also made the "Reload and Test" function fails.

This commit fixes the issue by setting the "<moduleName>" key into
the global dictionary of the reloaded module so that it can be
referenced in the "onReloadAndTest()" function.

Note that the overall approach to reload modules could be revisited to
leverage either the "rollback importer" method or a more sophisticated one
like the "python-reloader" [2][3]

Thanks to "Csaba Pinter <csaba.pinter@queensu.ca>" for reporting the issue.

[1] http://pyunit.sourceforge.net/notes/reloading.html
[2] http://www.indelible.org/ink/python-reloading/
[3] https://github.com/jparise/python-reloader

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22850 3bd1e089-480b-0410-8dfb-8563597acbee
ENH: slicer.util - Add convenience method "modulePath(moduleName)"

git-svn-id: http://svn.slicer.org/Slicer4/trunk@22851 3bd1e089-480b-0410-8dfb-8563597acbee