[med-svn] [Git][med-team/insighttoolkit][master] 13 commits: d/**/watch: update to v4 & scan itk.org/download/
Étienne Mollier
gitlab at salsa.debian.org
Thu Aug 6 19:27:51 BST 2020
Étienne Mollier pushed to branch master at Debian Med / insighttoolkit
Commits:
42b8f07c by Étienne Mollier at 2020-08-04T21:51:15+02:00
d/**/watch: update to v4 & scan itk.org/download/
Note that the scanning is still set to look for v4.x.y, something
to keep in mind for an upgrade to ITK v5.
- - - - -
a0d6f893 by Étienne Mollier at 2020-08-04T21:52:08+02:00
routine-update: New upstream version
- - - - -
9118db7e by Étienne Mollier at 2020-08-04T21:52:09+02:00
New upstream version 4.13.3-dfsg1
- - - - -
7d0aff90 by Étienne Mollier at 2020-08-04T21:52:28+02:00
Update upstream source from tag 'upstream/4.13.3-dfsg1'
Update to upstream version '4.13.3-dfsg1'
with Debian dir d6507c6604a58fba92cd755098ba7d63dc7c3b86
- - - - -
7c3eb773 by Étienne Mollier at 2020-08-04T21:54:19+02:00
Inline ITK data v4.13.3
- - - - -
8f837104 by Étienne Mollier at 2020-08-04T21:56:54+02:00
Merge tag 'upstream/4.13.3-dfsg1+data' into master
- - - - -
83214315 by Étienne Mollier at 2020-08-04T21:57:59+02:00
d/changelog: New upstream version 4.13.3-dfsg1
- - - - -
face44fe by Étienne Mollier at 2020-08-04T22:01:21+02:00
d/control*: bump castxml to version 0.3.4-2
- - - - -
36497a6d by Étienne Mollier at 2020-08-04T22:09:08+02:00
updated d/patches/remove_gcc_version_test.patch
- - - - -
4ff5a4b7 by Étienne Mollier at 2020-08-05T20:46:04+02:00
d/control*: bump debhelper compat 13
- - - - -
e667c52c by Étienne Mollier at 2020-08-05T20:47:24+02:00
d/control*: bump standard version to 4.5.0
- - - - -
90321023 by Étienne Mollier at 2020-08-05T20:51:32+02:00
d/rules: bump to version 4.13.3
- - - - -
377a2c17 by Étienne Mollier at 2020-08-05T20:51:59+02:00
d/rules: removed -Wl,--as-needed
They are now default build options.
- - - - -
25 changed files:
- .circleci/config.yml
- CMakeLists.txt
- Modules/Bridge/VtkGlue/CMakeLists.txt
- Modules/Core/Common/src/itkNumberToString.cxx
- Modules/Filtering/ImageGrid/include/itkBSplineScatteredDataPointSetToImageFilter.hxx
- Modules/Filtering/ImageGrid/include/itkSliceImageFilter.hxx
- Modules/IO/GDCM/src/itkGDCMImageIO.cxx
- Modules/ThirdParty/DCMTK/CMakeLists.txt
- Modules/ThirdParty/DoubleConversion/CMakeLists.txt
- Modules/ThirdParty/GDCM/UpdateFromUpstream.sh
- Modules/ThirdParty/VNL/src/vxl/CMakeLists.txt
- Modules/ThirdParty/VNL/src/vxl/vcl/vcl_compiler.h
- Testing/ContinuousIntegration/AzurePipelinesLinux.yml
- Testing/ContinuousIntegration/AzurePipelinesMacOS.yml
- Testing/ContinuousIntegration/AzurePipelinesWindows.yml
- Wrapping/Generators/Doc/CMakeLists.txt
- Wrapping/Generators/SwigInterface/CMakeLists.txt
- debian/changelog
- debian/compat
- debian/control
- debian/control.in
- debian/data/watch
- debian/patches/remove_gcc_version_test.patch
- debian/rules
- debian/watch
Changes:
=====================================
.circleci/config.yml
=====================================
@@ -1,10 +1,23 @@
+referenced:
+ generate-hash-step: &generate-hash-step
+ run:
+ name: Generate external data hash
+ command: |
+ cd ITK
+ find . -name \*.md5 -o -name \*.sha512 -print0 | xargs -0 git log -n 1 | tee /home/circleci/external-data.hashable
+ restore-data-step: &restore-data-step
+ restore_cache:
+ keys:
+ - 'v1-external-data-{{ checksum "/home/circleci/external-data.hashable" }}'
+ - 'v1-external-data'
+
version: 2
jobs:
build:
docker:
- - image: circleci/python:2.7
+ - image: circleci/python:2.7.16-stretch
working_directory: ~/
- resource_class: large
+ resource_class: medium
branches:
ignore:
- gh-pages
@@ -19,9 +32,8 @@ jobs:
steps:
- checkout:
path : ~/ITK
- - restore_cache:
- keys:
- - external-data
+ - *generate-hash-step
+ - *restore-data-step
- restore_cache:
keys:
- ccache-{{ arch }}-{{ .Branch }}
@@ -75,5 +87,5 @@ jobs:
key: 'ccache-{{ arch }}-{{ .Branch }}-{{ epoch }}'
paths: [ "/home/circleci/.ccache" ]
- save_cache:
- key: 'external-data'
+ key: 'v1-external-data-{{ checksum "/home/circleci/external-data.hashable" }}'
paths: [ "/home/circleci/.ExternalData" ]
=====================================
CMakeLists.txt
=====================================
@@ -4,6 +4,7 @@ foreach(p
CMP0025 # CMake 3.0
CMP0028
CMP0042 # CMake 3.0
+ CMP0045
CMP0048
CMP0054 # CMake 3.1
CMP0056 # CMake 3.2
@@ -23,7 +24,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/CMake ${CMAKE_MODULE_PATH})
# ITK version number components.
set(ITK_VERSION_MAJOR "4")
set(ITK_VERSION_MINOR "13")
-set(ITK_VERSION_PATCH "2")
+set(ITK_VERSION_PATCH "3")
set(ITK_VERSION
"${ITK_VERSION_MAJOR}.${ITK_VERSION_MINOR}.${ITK_VERSION_PATCH}")
project(ITK
=====================================
Modules/Bridge/VtkGlue/CMakeLists.txt
=====================================
@@ -1,6 +1,23 @@
project(ITKVtkGlue)
set(ITKVtkGlue_LIBRARIES ITKVtkGlue)
+if(NOT COMMAND vtk_module_config)
+ macro(vtk_module_config ns)
+ foreach(arg ${ARGN})
+ if(${arg} MATCHES "^[Vv][Tt][Kk]")
+ string(REGEX REPLACE "^[Vv][Tt][Kk]" "" _arg ${arg})
+ else()
+ set(_arg ${arg})
+ endif()
+ set(${ns}_LIBRARIES ${${ns}_LIBRARIES} VTK::${_arg})
+ endforeach()
+ endmacro()
+
+ if(NOT VTK_RENDERING_BACKEND)
+ set(VTK_RENDERING_BACKEND OpenGL2)
+ endif()
+endif()
+
#
# Add the third party includes and libraries
#
@@ -18,7 +35,11 @@ if(NOT VTK_VERSION)
set(VTK_VERSION "${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}.${VTK_BUILD_VERSION}")
endif()
if(NOT VTK_RENDERING_BACKEND)
- set(VTK_RENDERING_BACKEND OpenGL)
+ if(NOT COMMAND vtk_module_config)
+ set(VTK_RENDERING_BACKEND OpenGL2)
+ else()
+ set(VTK_RENDERING_BACKEND OpenGL)
+ endif()
endif()
set(_target_freetypeopengl)
if(TARGET vtkRenderingFreeType${VTK_RENDERING_BACKEND})
@@ -68,11 +89,28 @@ set(VTK_DIR \"${VTK_DIR}\")
find_package(VTK NO_MODULE REQUIRED)
+ if(NOT COMMAND vtk_module_config)
+ macro(vtk_module_config ns)
+ foreach(arg \${ARGN})
+ if(\${arg} MATCHES \"^[Vv][Tt][Kk]\")
+ string(REGEX REPLACE \"^[Vv][Tt][Kk]\" \"\" _arg \${arg})
+ else()
+ set(_arg \${arg})
+ endif()
+ set(\${ns}_LIBRARIES \${\${ns}_LIBRARIES} VTK::\${_arg})
+ endforeach()
+ endmacro()
+ endif()
+
if(NOT VTK_VERSION)
set(VTK_VERSION \"${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}.${VTK_BUILD_VERSION}\")
endif()
if(NOT VTK_RENDERING_BACKEND)
- set(VTK_RENDERING_BACKEND OpenGL)
+ if(NOT COMMAND vtk_module_config)
+ set(VTK_RENDERING_BACKEND OpenGL2)
+ else()
+ set(VTK_RENDERING_BACKEND OpenGL)
+ endif()
endif()
set(_target_freetypeopengl)
if(TARGET vtkRenderingFreeType${VTK_RENDERING_BACKEND})
@@ -104,13 +142,30 @@ set(ITKVtkGlue_EXPORT_CODE_BUILD "
if(NOT ITK_BINARY_DIR)
set(VTK_DIR \"${VTK_DIR}\")
+ if(NOT COMMAND vtk_module_config)
+ macro(vtk_module_config ns)
+ foreach(arg \${ARGN})
+ if(\${arg} MATCHES \"^[Vv][Tt][Kk]\")
+ string(REGEX REPLACE \"^[Vv][Tt][Kk]\" \"\" _arg \${arg})
+ else()
+ set(_arg \${arg})
+ endif()
+ set(\${ns}_LIBRARIES \${\${ns}_LIBRARIES} VTK::\${_arg})
+ endforeach()
+ endmacro()
+ endif()
+
find_package(VTK NO_MODULE REQUIRED)
if(NOT VTK_VERSION)
set(VTK_VERSION \"${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}.${VTK_BUILD_VERSION}\")
endif()
if(NOT VTK_RENDERING_BACKEND)
- set(VTK_RENDERING_BACKEND OpenGL)
+ if(NOT COMMAND vtk_module_config)
+ set(VTK_RENDERING_BACKEND OpenGL2)
+ else()
+ set(VTK_RENDERING_BACKEND OpenGL)
+ endif()
endif()
if(TARGET vtkRenderingFreeType${VTK_RENDERING_BACKEND})
set(_target_freetypeopengl vtkRenderingFreeType${VTK_RENDERING_BACKEND})
=====================================
Modules/Core/Common/src/itkNumberToString.cxx
=====================================
@@ -17,7 +17,7 @@
*=========================================================================*/
#include "itkNumberToString.h"
#include "itkNumericTraits.h"
-#include "double-conversion.h"
+#include "double-conversion/double-conversion.h"
#include <sstream>
=====================================
Modules/Filtering/ImageGrid/include/itkBSplineScatteredDataPointSetToImageFilter.hxx
=====================================
@@ -348,8 +348,7 @@ BSplineScatteredDataPointSetToImageFilter<TInputPointSet, TOutputImage>
this->m_OutputPointData->Begin();
while( ItIn != this->m_InputPointData->End() )
{
- this->m_InputPointData->InsertElement(
- ItIn.Index(), ItIn.Value() - ItOut.Value() );
+ this->m_InputPointData->CastToSTLContainer()[ItIn.Index()] = ItIn.Value() - ItOut.Value();
if( this->GetDebug() )
{
@@ -1101,6 +1100,7 @@ BSplineScatteredDataPointSetToImageFilter<TInputPointSet, TOutputImage>
typename PointDataImageType::IndexType startPhiIndex =
this->m_PhiLattice->GetLargestPossibleRegion().GetIndex();
+ this->m_OutputPointData->CastToSTLContainer().resize(this->m_InputPointData->Size());
typename PointDataContainerType::ConstIterator ItIn =
this->m_InputPointData->Begin();
while( ItIn != this->m_InputPointData->End() )
@@ -1146,8 +1146,7 @@ BSplineScatteredDataPointSetToImageFilter<TInputPointSet, TOutputImage>
break;
}
}
- this->m_OutputPointData->InsertElement( ItIn.Index(),
- collapsedPhiLattices[0]->GetPixel( startPhiIndex ) );
+ this->m_OutputPointData->CastToSTLContainer()[ItIn.Index()] = collapsedPhiLattices[0]->GetPixel(startPhiIndex);
++ItIn;
}
}
=====================================
Modules/Filtering/ImageGrid/include/itkSliceImageFilter.hxx
=====================================
@@ -284,7 +284,8 @@ SliceImageFilter< TInputImage, TOutputImage >
if ( (m_Step[i] > 0 && stop > start) ||
( m_Step[i] < 0 && stop < start ) )
{
- outputSize[i] = (stop-start)/m_Step[i];
+ outputSize[i] = (stop-start-Math::sgn(m_Step[i]))/m_Step[i];
+ outputSize[i] += 1u;
}
else
{
=====================================
Modules/IO/GDCM/src/itkGDCMImageIO.cxx
=====================================
@@ -1241,7 +1241,9 @@ void GDCMImageIO::GetPatientName(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0010|0010", m_PatientName);
- strcpy ( name, m_PatientName.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_PatientName.c_str(), len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetPatientID(char *name)
@@ -1249,7 +1251,9 @@ void GDCMImageIO::GetPatientID(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0010|0020", m_PatientID);
- strcpy ( name, m_PatientID.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_PatientID.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetPatientSex(char *name)
@@ -1257,7 +1261,9 @@ void GDCMImageIO::GetPatientSex(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0010|0040", m_PatientSex);
- strcpy ( name, m_PatientSex.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_PatientSex.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetPatientAge(char *name)
@@ -1265,7 +1271,9 @@ void GDCMImageIO::GetPatientAge(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0010|1010", m_PatientAge);
- strcpy ( name, m_PatientAge.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_PatientAge.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetStudyID(char *name)
@@ -1273,7 +1281,9 @@ void GDCMImageIO::GetStudyID(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0020|0010", m_StudyID);
- strcpy ( name, m_StudyID.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_StudyID.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetPatientDOB(char *name)
@@ -1281,7 +1291,9 @@ void GDCMImageIO::GetPatientDOB(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0010|0030", m_PatientDOB);
- strcpy ( name, m_PatientDOB.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_PatientDOB.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetStudyDescription(char *name)
@@ -1289,7 +1301,9 @@ void GDCMImageIO::GetStudyDescription(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0008|1030", m_StudyDescription);
- strcpy ( name, m_StudyDescription.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_StudyDescription.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetBodyPart(char *name)
@@ -1297,7 +1311,9 @@ void GDCMImageIO::GetBodyPart(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0018|0015", m_BodyPart);
- strcpy ( name, m_BodyPart.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_BodyPart.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetNumberOfSeriesInStudy(char *name)
@@ -1305,7 +1321,9 @@ void GDCMImageIO::GetNumberOfSeriesInStudy(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0020|1000", m_NumberOfSeriesInStudy);
- strcpy ( name, m_NumberOfSeriesInStudy.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_NumberOfSeriesInStudy.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetNumberOfStudyRelatedSeries(char *name)
@@ -1313,7 +1331,9 @@ void GDCMImageIO::GetNumberOfStudyRelatedSeries(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0020|1206", m_NumberOfStudyRelatedSeries);
- strcpy ( name, m_NumberOfStudyRelatedSeries.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_NumberOfStudyRelatedSeries.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetStudyDate(char *name)
@@ -1321,7 +1341,9 @@ void GDCMImageIO::GetStudyDate(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0008|0020", m_StudyDate);
- strcpy ( name, m_StudyDate.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_StudyDate.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetModality(char *name)
@@ -1329,7 +1351,9 @@ void GDCMImageIO::GetModality(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0008|0060", m_Modality);
- strcpy ( name, m_Modality.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_Modality.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetManufacturer(char *name)
@@ -1337,7 +1361,9 @@ void GDCMImageIO::GetManufacturer(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0008|0070", m_Manufacturer);
- strcpy ( name, m_Manufacturer.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_Manufacturer.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetInstitution(char *name)
@@ -1345,7 +1371,9 @@ void GDCMImageIO::GetInstitution(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0008|0080", m_Institution);
- strcpy ( name, m_Institution.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_Institution.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetModel(char *name)
@@ -1353,7 +1381,9 @@ void GDCMImageIO::GetModel(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0008|1090", m_Model);
- strcpy ( name, m_Model.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_Model.c_str() , len-1);
+ name[len-1] = '0';
}
void GDCMImageIO::GetScanOptions(char *name)
@@ -1361,7 +1391,9 @@ void GDCMImageIO::GetScanOptions(char *name)
MetaDataDictionary & dict = this->GetMetaDataDictionary();
ExposeMetaData< std::string >(dict, "0018|0022", m_ScanOptions);
- strcpy ( name, m_ScanOptions.c_str() );
+ const size_t len = 512;
+ strncpy ( name, m_ScanOptions.c_str() , len-1);
+ name[len-1] = '0';
}
#endif
=====================================
Modules/ThirdParty/DCMTK/CMakeLists.txt
=====================================
@@ -52,12 +52,12 @@ if(DCMTK_USE_ICU)
endforeach()
define_by_product(NAME icu TARGETS ${ICU_BYPRODUCTS})
if(MSVC)
- # Create map of MD5
- set(ICU_1800_32 462079 39c597cf28f2df71baf92156d9276a4e)
- set(ICU_1800_64 462080 9f9bc9e165ce47182889a748c20028c3)
- set(ICU_1900_32 462049 86f191c160ff86e66437c23ae36c50f8)
- set(ICU_1900_64 462053 3db188b9ba24ca39a0c5d1411b591d4d)
- set(ICU_1911_32 462051 e4053721d7d11125d82df34e0a576c2a)
+ # Create map of SHA512/MD5 hashes
+ set(ICU_1800_32 9b134c1fe8f5fcc3afe34f6a72d4c9fded776dfd33d7073861c2de32c40d4bda15ca9eb32613c262b13b479bf88bdd34658cee5505a1d9b7e3779104fd9440d3 39c597cf28f2df71baf92156d9276a4e)
+ set(ICU_1800_64 023c9f1dc2469058aa4c0933d82cfdab37fc803dc86f8b936f2001f0b600ba02f8c42b695398d3ed88def6feec6b5e01561d86377a3fc582788bc35c4f9d912b 9f9bc9e165ce47182889a748c20028c3)
+ set(ICU_1900_32 75cc1bb4ab6fce2df77cacb80e86be6e45d1a3bc0a7f96d5fd7193b0ddd67a2094d97626a2c59888b4374efdba7381ed3598333237b25b8bcce4777ba76731d7 86f191c160ff86e66437c23ae36c50f8)
+ set(ICU_1900_64 2b200cb120c32ead26ce94aea1d531754f3c530fcb2cd26f9bf3b576c040009fdf2504376b843257a70223c8d8331359540e2ac6587004eaf9e5f7941bcf22b8 3db188b9ba24ca39a0c5d1411b591d4d)
+ set(ICU_1911_32 b69569454639452c6636bc19d5e75ded119cf9a6f1f3fa8344662b481fdf7574d5ded54e7f36c69b3c752b4a1c3ea21597ae569376a888f030e6ee8d64268d0e e4053721d7d11125d82df34e0a576c2a)
set(ICU_1911_64 462048 1706884a6fb773caad3f3955747cf7db)
###
# Use a compatible MSVC_VERSION version if specific version is not available.
@@ -81,8 +81,8 @@ if(DCMTK_USE_ICU)
"Unsupported version of Visual Studio. Disable DCMTK_USE_ICU."
)
endif()
- list(GET ICU_${ICU_MSVC_VERSION}_${bitness} 0 item_id)
- set(ICU_URL "https://midas3.kitware.com/midas/download/bitstream/${item_id}")
+ list(GET ICU_${ICU_MSVC_VERSION}_${bitness} 0 item_hash)
+ set(ICU_URL "https://data.kitware.com/api/v1/file/hashsum/sha512/${item_hash}/download")
list(GET ICU_${ICU_MSVC_VERSION}${bitness} 1 ICU_MD5)
else()
set(ICU_URL "http://download.icu-project.org/files/icu4c/58.2/icu4c-58_2-src.tgz")
=====================================
Modules/ThirdParty/DoubleConversion/CMakeLists.txt
=====================================
@@ -7,22 +7,12 @@ option(ITK_USE_SYSTEM_DOUBLECONVERSION
mark_as_advanced(ITK_USE_SYSTEM_DOUBLECONVERSION)
if(ITK_USE_SYSTEM_DOUBLECONVERSION)
- find_library(double-conversion_LIBRARIES double-conversion)
- find_path(double-conversion_INCLUDE_DIRS double-conversion.h
- PATH_SUFFIXES double-conversion
- )
-
- if (double-conversion_LIBRARIES AND double-conversion_INCLUDE_DIRS)
- set(ITKDoubleConversion_SYSTEM_INCLUDE_DIRS
- ${double-conversion_INCLUDE_DIRS})
- set(ITKDoubleConversion_LIBRARIES
- "${double-conversion_LIBRARIES}")
- else()
- message(ERROR "double-conversion system library not found")
- endif()
+ find_package(double-conversion REQUIRED)
+ get_target_property(ITKDoubleConversion_INCLUDE_DIRS double-conversion::double-conversion INTERFACE_INCLUDE_DIRECTORIES)
+ get_target_property(ITKDoubleConversion_LIBRARIES double-conversion::double-conversion LOCATION)
else()
set(ITKDoubleConversion_INCLUDE_DIRS
- ${ITKDoubleConversion_SOURCE_DIR}/src/double-conversion
+ ${ITKDoubleConversion_SOURCE_DIR}/src
${ITKDoubleConversion_BINARY_DIR}/src/double-conversion)
set(ITKDoubleConversion_LIBRARIES itkdouble-conversion)
endif()
=====================================
Modules/ThirdParty/GDCM/UpdateFromUpstream.sh
=====================================
@@ -8,7 +8,7 @@ readonly name="GDCM"
readonly ownership="GDCM Upstream <gdcm-developers at lists.sourceforge.net>"
readonly subtree="Modules/ThirdParty/GDCM/src/gdcm"
readonly repo="http://git.code.sf.net/p/gdcm/gdcm.git"
-readonly tag="release"
+readonly tag="release-2-8"
readonly shortlog=false
readonly paths="
CMake/UseCopyright.cmake
=====================================
Modules/ThirdParty/VNL/src/vxl/CMakeLists.txt
=====================================
@@ -117,7 +117,11 @@ set( CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${VXL_EXTRA_CMAKE_EXE_
set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${VXL_EXTRA_CMAKE_MODULE_LINKER_FLAGS}" )
set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${VXL_EXTRA_CMAKE_SHARED_LINKER_FLAGS}" )
-
+if(MSVC_VERSION GREATER_EQUAL 1920)
+# Force synchronous writes of .pdb files for building VXL on MSVC 1920-1929
+# https://docs.microsoft.com/en-us/cpp/build/reference/fs-force-synchronous-pdb-writes?view=vs-201
+ add_compile_options( "/FS" )
+endif()
#-------------------------------------------------------------------
#-- BUILD CONFIG OPTIONS
=====================================
Modules/ThirdParty/VNL/src/vxl/vcl/vcl_compiler.h
=====================================
@@ -97,6 +97,28 @@
# else
# define VCL_GCC_80
# endif
+# elif (__GNUC__==9)
+# define VCL_GCC_9
+# if (__GNUC_MINOR__ > 2 )
+# define VCL_GCC_93
+# elif (__GNUC_MINOR__ > 1 )
+# define VCL_GCC_92
+# elif (__GNUC_MINOR__ > 0 )
+# define VCL_GCC_91
+# else
+# define VCL_GCC_90
+# endif
+# elif (__GNUC__==10)
+# define VCL_GCC_10
+# if (__GNUC_MINOR__ > 2 )
+# define VCL_GCC_103
+# elif (__GNUC_MINOR__ > 1 )
+# define VCL_GCC_102
+# elif (__GNUC_MINOR__ > 0 )
+# define VCL_GCC_101
+# else
+# define VCL_GCC_100
+# endif
# else
# error "Dunno about this gcc"
# endif
=====================================
Testing/ContinuousIntegration/AzurePipelinesLinux.yml
=====================================
@@ -1,10 +1,12 @@
+name: ITK.Linux
+
trigger:
branches:
include:
- master
- release*
variables:
- ExternalDataVersion: 4.13.1
+ ExternalDataVersion: 4.13.2
jobs:
- job: Linux
timeoutInMinutes: 0
@@ -20,41 +22,61 @@ jobs:
if [ -n "$(System.PullRequest.SourceCommitId)" ]; then
git checkout $(System.PullRequest.SourceCommitId)
fi
- displayName: Checkout pull request HEAD
-
- - task: UsePythonVersion at 0
- inputs:
- versionSpec: '3.7'
+ displayName: 'Checkout pull request HEAD'
- bash: |
set -x
-
sudo pip3 install ninja
sudo apt-get update
sudo apt-get install -y python3-venv
+ sudo python3 -m pip install --upgrade setuptools
+ sudo python3 -m pip install scikit-ci-addons
+ displayName: 'Install dependencies'
- displayName: Install dependencies
- bash: |
set -x
-
git clone -b dashboard --single-branch https://github.com/InsightSoftwareConsortium/ITK.git ITK-dashboard
curl -L https://github.com/InsightSoftwareConsortium/ITK/releases/download/v$(ExternalDataVersion)/InsightData-$(ExternalDataVersion).tar.gz -O
cmake -E tar xfz InsightData-$(ExternalDataVersion).tar.gz
cmake -E rename InsightToolkit-$(ExternalDataVersion)/.ExternalData/MD5 $(Build.SourcesDirectory)/.ExternalData/MD5
-
- displayName: Download dashboard script and testing data
workingDirectory: $(Agent.BuildDirectory)
+ displayName: 'Download dashboard script and testing data'
+
+ - bash: |
+ cat > dashboard.cmake << EOF
+ set(CTEST_BUILD_CONFIGURATION "MinSizeRel")
+ set(CTEST_CMAKE_GENERATOR "Ninja")
+ set(dashboard_cache "
+ BUILD_SHARED_LIBS:BOOL=OFF
+ BUILD_EXAMPLES:BOOL=OFF
+ ITK_WRAP_PYTHON:BOOL=OFF
+ ")
+ include(\$ENV{AGENT_BUILDDIRECTORY}/ITK-dashboard/azure_dashboard.cmake)
+ EOF
+ cat dashboard.cmake
+ workingDirectory: $(Agent.BuildDirectory)/ITK-dashboard
+ displayName: 'Configure CTest script'
+
- bash: |
set -x
c++ --version
cmake --version
- export BUILD_EXAMPLES=OFF
- export CTEST_BUILD_CONFIGURATION=MinSizeRel
- export CTEST_OUTPUT_ON_FAILURE=1
+ ctest -S $(Agent.BuildDirectory)/ITK-dashboard/dashboard.cmake -VV -j 4
+ displayName: 'Build and test'
+ env:
+ CTEST_OUTPUT_ON_FAILURE: 1
- ctest -S ITK-dashboard/azure_dashboard.cmake -V -j 4
- displayName: Build and test
- workingDirectory: $(Agent.BuildDirectory)
+ - script: |
+ ci_addons ctest_junit_formatter $(Build.SourcesDirectory)-build > $(Agent.BuildDirectory)/JUnitTestResults.xml
+ condition: succeededOrFailed()
+ displayName: 'Format CTest output in JUnit format'
+
+ - task: PublishTestResults at 2
+ inputs:
+ testResultsFiles: "$(Agent.BuildDirectory)/JUnitTestResults.xml"
+ testRunTitle: 'CTest $(Agent.OS)'
+ condition: succeededOrFailed()
+ displayName: 'Publish test results'
=====================================
Testing/ContinuousIntegration/AzurePipelinesMacOS.yml
=====================================
@@ -1,10 +1,12 @@
+name: ITK.macOS
+
trigger:
branches:
include:
- master
- release*
variables:
- ExternalDataVersion: 4.13.1
+ ExternalDataVersion: 4.13.2
jobs:
- job: macOS
timeoutInMinutes: 0
@@ -22,38 +24,57 @@ jobs:
fi
displayName: Checkout pull request HEAD
- - task: UsePythonVersion at 0
- inputs:
- versionSpec: '3.7'
-
- bash: |
set -x
-
- sudo pip3 install ninja
-
+ sudo python3 -m pip install ninja
+ sudo python3 -m pip install --upgrade setuptools
+ sudo python3 -m pip install scikit-ci-addons
displayName: Install dependencies
+
- bash: |
set -x
-
git clone -b dashboard --single-branch https://github.com/InsightSoftwareConsortium/ITK.git ITK-dashboard
curl -L https://github.com/InsightSoftwareConsortium/ITK/releases/download/v$(ExternalDataVersion)/InsightData-$(ExternalDataVersion).tar.gz -O
cmake -E tar xfz InsightData-$(ExternalDataVersion).tar.gz
cmake -E rename InsightToolkit-$(ExternalDataVersion)/.ExternalData/MD5 $(Build.SourcesDirectory)/.ExternalData/MD5
-
- displayName: Download dashboard script and testing data
workingDirectory: $(Agent.BuildDirectory)
- - script: |
+ displayName: 'Download dashboard script and testing data'
+
+ - bash: |
+ cat > dashboard.cmake << EOF
+ set(CTEST_BUILD_CONFIGURATION "Release")
+ set(CTEST_CMAKE_GENERATOR "Ninja")
+ set(dashboard_cache "
+ BUILD_SHARED_LIBS:BOOL=ON
+ BUILD_EXAMPLES:BOOL=ON
+ ITK_WRAP_PYTHON:BOOL=OFF
+ ")
+ include(\$ENV{AGENT_BUILDDIRECTORY}/ITK-dashboard/azure_dashboard.cmake)
+ EOF
+ cat dashboard.cmake
+ workingDirectory: $(Agent.BuildDirectory)/ITK-dashboard
+ displayName: 'Configure CTest script'
+
+ - bash: |
set -x
- xcode-select -p
- sudo xcode-select -s /Applications/Xcode_9.4.1.app/Contents/Developer/
- xcode-select -p
+
c++ --version
cmake --version
- export BUILD_SHARED_LIBS=ON
- export CTEST_OUTPUT_ON_FAILURE=1
+ ctest -S $(Agent.BuildDirectory)/ITK-dashboard/dashboard.cmake -VV -j 4
+ displayName: 'Build and test'
+ env:
+ CTEST_OUTPUT_ON_FAILURE: 1
- ctest -S ITK-dashboard/azure_dashboard.cmake -V -j 4
- displayName: Build and test
- workingDirectory: $(Agent.BuildDirectory)
+ - script: |
+ ci_addons ctest_junit_formatter $(Build.SourcesDirectory)-build > $(Agent.BuildDirectory)/JUnitTestResults.xml
+ condition: succeededOrFailed()
+ displayName: 'Format CTest output in JUnit format'
+
+ - task: PublishTestResults at 2
+ inputs:
+ testResultsFiles: "$(Agent.BuildDirectory)/JUnitTestResults.xml"
+ testRunTitle: 'CTest $(Agent.OS)'
+ condition: succeededOrFailed()
+ displayName: 'Publish test results'
=====================================
Testing/ContinuousIntegration/AzurePipelinesWindows.yml
=====================================
@@ -1,10 +1,12 @@
+name: ITK.Windows
+
trigger:
branches:
include:
- master
- release*
variables:
- ExternalDataVersion: 4.13.1
+ ExternalDataVersion: 4.13.2
jobs:
- job: Windows
timeoutInMinutes: 0
@@ -15,39 +17,59 @@ jobs:
- checkout: self
clean: true
fetchDepth: 5
+
- script: |
if DEFINED SYSTEM_PULLREQUEST_SOURCECOMMITID git checkout $(System.PullRequest.SourceCommitId)
displayName: Checkout pull request HEAD
- - task: UsePythonVersion at 0
- inputs:
- versionSpec: '3.7'
-
- script: |
-
pip3 install ninja
+ pip3 install --upgrade setuptools
+ pip3 install scikit-ci-addons
+ displayName: 'Install dependencies'
- displayName: Install dependencies
- script: |
git clone -b dashboard --single-branch https://github.com/InsightSoftwareConsortium/ITK.git ITK-dashboard
curl -L https://github.com/InsightSoftwareConsortium/ITK/releases/download/v$(ExternalDataVersion)/InsightData-$(ExternalDataVersion).tar.gz -O
cmake -E tar xfz InsightData-$(ExternalDataVersion).tar.gz
cmake -E rename InsightToolkit-$(ExternalDataVersion)/.ExternalData/MD5 $(Build.SourcesDirectory)/.ExternalData/MD5
-
- displayName: Download dashboard script and testing data
workingDirectory: $(Agent.BuildDirectory)
+ displayName: 'Download dashboard script and testing data'
+
+ - bash: |
+ cat > dashboard.cmake << EOF
+ set(CTEST_BUILD_CONFIGURATION "MinSizeRel")
+ set(CTEST_CMAKE_GENERATOR "Ninja")
+ set(ENV{CC} cl.exe)
+ set(ENV{CXX} cl.exe)
+ set(dashboard_cache "
+ BUILD_SHARED_LIBS:BOOL=ON
+ BUILD_EXAMPLES:BOOL=OFF
+ ITK_WRAP_PYTHON:BOOL=OFF
+ ")
+ include(\$ENV{AGENT_BUILDDIRECTORY}/ITK-dashboard/azure_dashboard.cmake)
+ EOF
+ cat dashboard.cmake
+ workingDirectory: $(Agent.BuildDirectory)/ITK-dashboard
+ displayName: 'Configure CTest script'
+
- script: |
cmake --version
-
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
- set BUILD_SHARED_LIBS=ON
- set BUILD_EXAMPLES=OFF
- set CTEST_BUILD_CONFIGURATION=MinSizeRel
- set CC=cl.exe
- set CXX=cl.exe
- set CTEST_OUTPUT_ON_FAILURE=1
-
- ctest -S ITK-dashboard/azure_dashboard.cmake -V -j 4
- displayName: Build and test
- workingDirectory: $(Agent.BuildDirectory)
+ ctest -S $(Agent.BuildDirectory)/ITK-dashboard/dashboard.cmake -VV -j 4
+ displayName: 'Build and test'
+ env:
+ CTEST_OUTPUT_ON_FAILURE: 1
+
+ - script: |
+ ci_addons ctest_junit_formatter $(Build.SourcesDirectory)-build > $(Agent.BuildDirectory)/JUnitTestResults.xml
+ condition: succeededOrFailed()
+ displayName: 'Format CTest output in JUnit format'
+
+ - task: PublishTestResults at 2
+ inputs:
+ testResultsFiles: "$(Agent.BuildDirectory)/JUnitTestResults.xml"
+ testRunTitle: 'CTest $(Agent.OS)'
+ condition: succeededOrFailed()
+ displayName: 'Publish test results'
=====================================
Wrapping/Generators/Doc/CMakeLists.txt
=====================================
@@ -78,16 +78,12 @@ macro(itk_end_wrap_module_DOC)
set(outputs ${ITK_WRAP_DOC_DOXYGEN_XML_FILES})
# run doxygen
- add_custom_command(
- OUTPUT ${outputs} "${library_doc_build_dir}/xml/combine.xslt" # this file is always produced and avoid an error if ${outputs} is empty
+ add_custom_target(${WRAPPER_LIBRARY_NAME}Doxygen ALL
COMMAND "${DOXYGEN_EXECUTABLE}" "${library_doxygen_config_file}"
-# WORKING_DIRECTORY ${ITK_WRAP_DOC_BINARY_DIR}
+ #BYPRODUCTS ${outputs} "${library_doc_build_dir}/xml/combine.xslt"
DEPENDS ${ITK_WRAP_DOC_DOXYGEN_HEADERS} "${library_doxygen_config_file}"
COMMENT "-- Wrapping library ${WRAPPER_LIBRARY_NAME}: Constructing documentation xml structure."
)
-
- add_custom_target(${WRAPPER_LIBRARY_NAME}Doxygen ALL DEPENDS ${outputs} ${ITK_WRAP_DOC_DOCSTRING_FILES})
-
endmacro()
macro(itk_wrap_submodule_DOC module)
@@ -108,10 +104,11 @@ macro(itk_end_wrap_submodule_DOC)
set(itk_doxy2swig_py "${ITK_WRAP_DOC_SOURCE_DIR}/itk_doxy2swig.py")
set(swig_doc_interface_file ${WRAPPER_MASTER_INDEX_OUTPUT_DIR}/${WRAPPER_MODULE_NAME}_doc.i)
add_custom_command(
- OUTPUT ${swig_doc_interface_file}
- COMMAND ${PYTHON_EXECUTABLE} ${itk_doxy2swig_py} ${doxy2swig_config_file} ${swig_doc_interface_file}
- DEPENDS ${ITK_WRAP_DOC_DOXYGEN_XML_FILES} ${doxy2swig_config_file} ${itk_doxy2swig_py}
-# COMMENT "-- Wrapping library ${WRAPPER_MODULE_NAME}: Generating swig interface for inline documentation."
+ OUTPUT ${swig_doc_interface_file}
+ COMMAND ${PYTHON_EXECUTABLE} ${itk_doxy2swig_py} ${doxy2swig_config_file} ${swig_doc_interface_file}
+ #DEPENDS ${ITK_WRAP_DOC_DOXYGEN_XML_FILES} ${doxy2swig_config_file} ${itk_doxy2swig_py}
+ DEPENDS ${WRAPPER_LIBRARY_NAME}Doxygen ${doxy2swig_config_file} ${itk_doxy2swig_py}
+ # COMMENT "-- Wrapping library ${WRAPPER_MODULE_NAME}: Generating swig interface for inline documentation."
)
list(APPEND ITK_WRAP_DOC_DOCSTRING_FILES ${swig_doc_interface_file})
endmacro()
=====================================
Wrapping/Generators/SwigInterface/CMakeLists.txt
=====================================
@@ -360,7 +360,7 @@ macro(itk_end_wrap_module_swig_interface)
--interface-output-dir "${WRAPPER_MASTER_INDEX_OUTPUT_DIR}"
--library-output-dir "${WRAPPER_LIBRARY_OUTPUT_DIR}"
--submodule-order "${WRAPPER_SUBMODULE_ORDER}"
- DEPENDS ${xml_files} ${IGENERATOR} ${typedef_in_files}
+ DEPENDS ${ITK_WRAP_DOC_DOCSTRING_FILES} ${xml_files} ${IGENERATOR} ${typedef_in_files}
VERBATIM
)
endif()
=====================================
debian/changelog
=====================================
@@ -1,3 +1,14 @@
+insighttoolkit4 (4.13.3-dfsg1-1) UNRELEASED; urgency=medium
+
+ * Team upload.
+ * d/watch, d/data/watch: update to version 4 & scan https://itk.org/download/
+ * New upstream version 4.13.3-dfsg1.
+ * d/control*: bump castxml to version 0.3.4-2 Closes: #957360
+ * d/control*: bump debhelper to compat 13
+ * d/control*: bump standard version to 4.5.0
+
+ -- Étienne Mollier <etienne.mollier at mailoo.org> Tue, 04 Aug 2020 21:59:39 +0200
+
insighttoolkit4 (4.13.2-dfsg1-9) unstable; urgency=medium
* d/rules: Use python module path from version Closes: #956834
=====================================
debian/compat
=====================================
@@ -1 +1 @@
-9
+13
=====================================
debian/control
=====================================
@@ -5,11 +5,11 @@ Priority: optional
Maintainer: Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
Uploaders: Steve M. Robbins <smr at debian.org>,
Gert Wollny <gewo at debian.org>
-Build-Depends: debhelper (>= 9),
+Build-Depends: debhelper (>= 13),
cmake (>= 2.8.9),
dh-python,
swig,
- castxml (>= 0.2-3),
+ castxml (>= 0.3.4-2),
zlib1g-dev (>= 1.2.2),
libdouble-conversion-dev,
libexpat-dev,
@@ -26,7 +26,7 @@ Build-Depends: debhelper (>= 9),
python3-dev
# libvtk6-dev -- only needed if we enable one of the following modules:
# VtkGlue, LevelSetsv4Visualization
-Standards-Version: 4.1.3
+Standards-Version: 4.5.0
Vcs-Browser: https://salsa.debian.org/med-team/insighttoolkit
Vcs-Git: https://salsa.debian.org/med-team/insighttoolkit.git
=====================================
debian/control.in
=====================================
@@ -5,11 +5,11 @@ Priority: optional
Maintainer: Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
Uploaders: Steve M. Robbins <smr at debian.org>,
Gert Wollny <gewo at debian.org>
-Build-Depends: debhelper (>= 9),
+Build-Depends: debhelper (>= 13),
cmake (>= 2.8.9),
dh-python,
swig,
- castxml (>= 0.2-3),
+ castxml (>= 0.3.4-2),
zlib1g-dev (>= 1.2.2),
libdouble-conversion-dev,
libexpat-dev,
@@ -26,7 +26,7 @@ Build-Depends: debhelper (>= 9),
python3-dev
# libvtk6-dev -- only needed if we enable one of the following modules:
# VtkGlue, LevelSetsv4Visualization
-Standards-Version: 4.1.3
+Standards-Version: 4.5.0
Vcs-Browser: https://salsa.debian.org/med-team/insighttoolkit
Vcs-Git: https://salsa.debian.org/med-team/insighttoolkit.git
=====================================
debian/data/watch
=====================================
@@ -1,2 +1,8 @@
-version=3
-http://sf.net/itk/InsightData-(.*)\.tar\.xz
+version=4
+
+# WARNING: the version specification is forced to v4.x.y for the source code of
+# the branch holding src:insighttoolkit4, but there are more recent versions
+# available (5.0 and 5.1 to 2020-08-02).
+opts="filenamemangle=s%(?:.*?)?v(\d[\d.]*)\.tar\.gz%@PACKAGE at -$1.tar.gz%,repacksuffix=-dfsg1,dversionmangle=s/-dfsg1//" \
+https://itk.org/download/ \
+https://github.com/InsightSoftwareConsortium/ITK/releases/download/v4.\d[\-+\.:\~\da-zA-Z]*InsightData- at ANY_VERSION@@ARCHIVE_EXT@
=====================================
debian/patches/remove_gcc_version_test.patch
=====================================
@@ -1,6 +1,6 @@
--- a/Modules/ThirdParty/VNL/src/vxl/vcl/vcl_compiler.h
+++ b/Modules/ThirdParty/VNL/src/vxl/vcl/vcl_compiler.h
-@@ -43,63 +43,7 @@
+@@ -43,85 +43,7 @@
#endif
#if defined(__GNUC__) && !defined(__ICC) // icc 8.0 defines __GNUC__
@@ -58,6 +58,28 @@
-# else
-# define VCL_GCC_80
-# endif
+-# elif (__GNUC__==9)
+-# define VCL_GCC_9
+-# if (__GNUC_MINOR__ > 2 )
+-# define VCL_GCC_93
+-# elif (__GNUC_MINOR__ > 1 )
+-# define VCL_GCC_92
+-# elif (__GNUC_MINOR__ > 0 )
+-# define VCL_GCC_91
+-# else
+-# define VCL_GCC_90
+-# endif
+-# elif (__GNUC__==10)
+-# define VCL_GCC_10
+-# if (__GNUC_MINOR__ > 2 )
+-# define VCL_GCC_103
+-# elif (__GNUC_MINOR__ > 1 )
+-# define VCL_GCC_102
+-# elif (__GNUC_MINOR__ > 0 )
+-# define VCL_GCC_101
+-# else
+-# define VCL_GCC_100
+-# endif
-# else
-# error "Dunno about this gcc"
-# endif
=====================================
debian/rules
=====================================
@@ -2,13 +2,11 @@
VER_MAJOR = 4
VER_MINOR = 13
-VER_REVISION = 2
+VER_REVISION = 3
VERSION = $(VER_MAJOR).$(VER_MINOR).$(VER_REVISION)
SOVERSION = $(VER_MAJOR).$(VER_MINOR)
PYVER := $(shell py3versions -dv)
-export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
-
#ITK is not properly using system provided headers
export DEB_CPPFLAGS_MAINT_APPEND = -I/usr/include/nifti -g1
=====================================
debian/watch
=====================================
@@ -1,2 +1,8 @@
-version=3
-opts=repacksuffix=-dfsg1,dversionmangle=s/-dfsg1// http://sf.net/itk/InsightToolkit-(4.*)\.tar\.xz
+version=4
+
+# WARNING: the version specification is forced to v4.x.y for the source code of
+# the branch holding src:insighttoolkit4, but there are more recent versions
+# available (5.0 and 5.1 to 2020-08-02).
+opts="repacksuffix=-dfsg1,dversionmangle=s/-dfsg1//" \
+https://itk.org/download/ \
+https://github.com/InsightSoftwareConsortium/ITK/releases/download/v4.\d[\-+\.:\~\da-zA-Z]*/InsightToolkit- at ANY_VERSION@@ARCHIVE_EXT@
View it on GitLab: https://salsa.debian.org/med-team/insighttoolkit/-/compare/ff480fecfc573965c1b0e10efb35d360dd979ebc...377a2c17b96c30679c332e048ae0dc5f4638bfaf
--
View it on GitLab: https://salsa.debian.org/med-team/insighttoolkit/-/compare/ff480fecfc573965c1b0e10efb35d360dd979ebc...377a2c17b96c30679c332e048ae0dc5f4638bfaf
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20200806/e65662cc/attachment-0001.html>
More information about the debian-med-commit
mailing list