[med-svn] [Git][med-team/camitk][master] fix to support packaging of new upstream version
Emmanuel Promayon (@promayon-guest)
gitlab at salsa.debian.org
Wed Feb 9 09:22:54 GMT 2022
Emmanuel Promayon pushed to branch master at Debian Med / camitk
Commits:
feefd52f by Emmanuel Promayon at 2022-02-09T10:22:26+01:00
fix to support packaging of new upstream version
- - - - -
10 changed files:
- debian/changelog
- + debian/not-installed
- + debian/patches/0007-disable-graph-generation-in-api.patch
- + debian/patches/0008-fix-multiarch-management-for-install-dir.patch
- debian/patches/series
- debian/rules
- debian/tests/cepgenerator-test.sh
- debian/tests/config-test.sh
- debian/tests/generate-coreschema-files.sh
- debian/upstream/metadata
Changes:
=====================================
debian/changelog
=====================================
@@ -15,6 +15,13 @@ camitk (5.0.2-1) UNRELEASED; urgency=medium
* Fix compilation by removing ixx files
Closes: #997120
+ [ Emmanuel Promayon ]
+ * Update d/r and fix test error to improve multiarch support
+ * Update autopkgtest for new upstream version
+ * Disable unnecessary generation of dot graph for apidoc
+ * Add d/not-installed for not packaged binaries
+ * Update metadata to add upstream repo information
+
-- Andreas Tille <tille at debian.org> Tue, 08 Feb 2022 08:13:11 +0100
camitk (4.1.2-4) unstable; urgency=medium
=====================================
debian/not-installed
=====================================
@@ -0,0 +1,13 @@
+usr/include/camitk-5.0/libraries/shakerlib/ShakerLib.h
+usr/bin/camitk-pmltest
+usr/bin/camitk-testloggercrash
+usr/bin/camitk-basic
+usr/bin/camitk-nogui
+usr/bin/camitk-objectcontroller
+usr/bin/camitk-menubar
+usr/bin/camitk-textviewer
+usr/bin/camitk-lmltest
+usr/bin/camitk-testlogger
+usr/bin/camitk-fancy
+usr/bin/camitk-simple
+usr/share/camitk-5.0/cmake/macros/NSIS.template.in
=====================================
debian/patches/0007-disable-graph-generation-in-api.patch
=====================================
@@ -0,0 +1,49 @@
+Description: Disable graph generation in apidoc
+ Generating graphs in apidoc takes a lot of resources.
+ It is not particularly needed as it is available
+ online and can be generated from the sources if
+ needed.
+Author: Emmanuel Promayon <Emmanuel.Promayon at univ-grenoble-alpes.fr>
+Forwarded: no
+Last-Update: 2022-02-08
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/sdk/doc/doxygen.conf.in
++++ b/sdk/doc/doxygen.conf.in
+@@ -235,25 +235,25 @@ EXTERNAL_GROUPS = YES
+ CLASS_DIAGRAMS = NO
+ HIDE_UNDOC_RELATIONS = YES
+ HAVE_DOT = YES
+-INTERACTIVE_SVG = YES
++INTERACTIVE_SVG = NO
+ DOT_NUM_THREADS = 0
+ DOT_FONTNAME = Helvetica
+ DOT_FONTSIZE = 10
+ DOT_FONTPATH =
+-CLASS_GRAPH = YES
+-COLLABORATION_GRAPH = YES
+-GROUP_GRAPHS = YES
++CLASS_GRAPH = NO
++COLLABORATION_GRAPH = NO
++GROUP_GRAPHS = NO
+ #For doxygen 1.8 UML_LOOK = YES
+ UML_LOOK = YES
+ #For doxygen 1.8
+ UML_LIMIT_NUM_FIELDS = 5
+-TEMPLATE_RELATIONS = YES
+-INCLUDE_GRAPH = YES
+-INCLUDED_BY_GRAPH = YES
+-CALL_GRAPH = YES
+-CALLER_GRAPH = YES
+-GRAPHICAL_HIERARCHY = YES
+-DIRECTORY_GRAPH = YES
++TEMPLATE_RELATIONS = NO
++INCLUDE_GRAPH = NO
++INCLUDED_BY_GRAPH = NO
++CALL_GRAPH = NO
++CALLER_GRAPH = NO
++GRAPHICAL_HIERARCHY = NO
++DIRECTORY_GRAPH = NO
+ DOT_IMAGE_FORMAT = svg
+ DOT_PATH = @DOT_PATH@
+ DOTFILE_DIRS =
=====================================
debian/patches/0008-fix-multiarch-management-for-install-dir.patch
=====================================
@@ -0,0 +1,18 @@
+Description: Fix multiarch management bug
+ Do not exit for alternative install dir if it is not present.
+Author: Emmanuel Promayon <Emmanuel.Promayon at univ-grenoble-alpes.fr>
+Forwarded: no
+Last-Update: 2022-02-08
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/sdk/libraries/core/Core.cpp
++++ b/sdk/libraries/core/Core.cpp
+@@ -314,7 +314,7 @@ const QStringList Core::getExtensionDirectories(QString extensionType) {
+ QSet<QString> multiarchInstalledDirectories = getInstallDirectories(QString(Core::libDir) + "/" + QString(Core::shortVersion) + "/" + extensionType).toSet();
+ if (QString(Core::libDir) != "lib") {
+ // multiarch installation in "lib/xx" requires checking non-multiarch aware current repositories that uses default "lib/"
+- multiarchInstalledDirectories += getInstallDirectories("lib/" + QString(Core::shortVersion) + "/" + extensionType).toSet();
++ multiarchInstalledDirectories += getInstallDirectories("lib/" + QString(Core::shortVersion) + "/" + extensionType, false).toSet();
+ }
+ return multiarchInstalledDirectories.toList();
+ }
=====================================
debian/patches/series
=====================================
@@ -4,5 +4,7 @@
#0004-FIXED-monitorgui-lib-should-not-depends-on-camitk-co.patch
#0005-FIXED-config-test-needs-to-ignore-stderr.patch
0006-exlude-ixx-files-from-cmake.patch
+0007-disable-graph-generation-in-api.patch
+0008-fix-multiarch-management-for-install-dir.patch
#0010-Make-loop-safe-for-removal-of-elements.patch
#0100-vtk7-compatibility.patch
=====================================
debian/rules
=====================================
@@ -21,26 +21,13 @@ pkg_data = libcamitk$(VER_MAJOR)-data
pkg_doc = libcamitk$(VER_MAJOR)-doc
pkg_imp = camitk-imp
pkg_asm = camitk-actionstatemachine
+PKG_LIB_DIR := $(CURDIR)/debian/$(pkg_lib)/usr/lib/$(DEB_HOST_MULTIARCH)/camitk-$(VER_SHORT)
+LIB_BUILD_DIR := $(CURDIR)/camitk-build/lib/$(DEB_HOST_MULTIARCH)
+PRIVATE_LIB_BUILD_DIR := $(LIB_BUILD_DIR)/camitk-$(VER_SHORT)
# multi-arch support
include /usr/share/dpkg/architecture.mk
-# dpkg-shlibdeps needs to know about camitk extension directories to manage inner-dependencies
-# between extensions (i.e., mml component extension depends on physicalmodel component extensions)
-PKG_LIB_DIR := $(CURDIR)/debian/${pkg_lib}/usr/lib/camitk-${VER_SHORT}
-# for component extensions:
-LD_LIBRARY_PATH := $(LD_LIBRARY_PATH):$(PKG_LIB_DIR)/components/
-# for action extensions:
-LD_LIBRARY_PATH := $(LD_LIBRARY_PATH):$(PKG_LIB_DIR)/actions/
-# for private libraries:
-LD_LIBRARY_PATH := $(LD_LIBRARY_PATH):$(PKG_LIB_DIR)/
-# during test, the build dir path is also needed
-LIB_BUILD_DIR := $(CURDIR)/camitk-build/lib
-PRIVATE_LIB_BUILD_DIR := $(LIB_BUILD_DIR)/camitk-${VER_SHORT}
-LD_LIBRARY_PATH := $(LD_LIBRARY_PATH):$(LIB_BUILD_DIR):$(PRIVATE_LIB_BUILD_DIR)/components/:$(PRIVATE_LIB_BUILD_DIR)/actions/:$(PRIVATE_LIB_BUILD_DIR)/
-# export for all d/rules subshell (test and dpkg-shlibdeps included)
-export LD_LIBRARY_PATH
-
# CMake flags are of two types:
# - generic (to tell cmake to build proper binaries)
# - CamiTK specific options
@@ -62,6 +49,8 @@ CMAKE_EXTRA_FLAGS = \
dh $@ --builddirectory=camitk-build
override_dh_auto_configure:
+ # modify libdir to include multiarch
+ sed -i 's+libDir = "lib";+libDir = "lib/$(DEB_HOST_MULTIARCH)";+g' sdk/libraries/core/CamiTKVersion.h
dh_auto_configure -- $(CMAKE_EXTRA_FLAGS)
# let's be smart with doc
@@ -84,6 +73,11 @@ ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
# Note: all tests require an X server, xvfb-run is needed to have a virtual one
# Another way: xvfb-run --auto-servernum $(MAKE) -C camitk-build ARGS="-V" test
# e.g. to test config: (cd camitk-build && xvfb-run --auto-servernum --server-args="-screen 0 1024x768x24" ctest -VV --timeout 1800 -R application-config)
+ # The build dir path is needed for extensions, public and private libraries during test
+ # to know about all camitk extension directories and properly manage inner-dependencies
+ # between extensions (i.e., mml component extension depends on physicalmodel component extensions)
+ # Lib dependencies can be in any extensions (viewers, component and action extensions) lib directory
+ export LD_LIBRARY_PATH=$(LIB_BUILD_DIR)/:$(PRIVATE_LIB_BUILD_DIR)/viewers/:$(PRIVATE_LIB_BUILD_DIR)/components/:$(PRIVATE_LIB_BUILD_DIR)/actions/:$(PRIVATE_LIB_BUILD_DIR)/ ; \
(cd camitk-build && xvfb-run --auto-servernum --server-args="-screen 0 1024x768x24" ctest -V --timeout 1800)
endif
@@ -91,10 +85,11 @@ endif
override_dh_install:
# $(CURDIR) is the current source dir
# camitk dynamic library
- dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/libcamitkcore.so.*
- dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/libmonitoring.so.*
- dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/camitk-$(VER_SHORT)/actions/lib*.so.*
- dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/camitk-$(VER_SHORT)/components/lib*.so.*
+ dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libcamitkcore.so.*
+ dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libmonitoring.so.*
+ dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/camitk-$(VER_SHORT)/viewers/lib*.so.*
+ dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/camitk-$(VER_SHORT)/actions/lib*.so.*
+ dh_install -p$(pkg_lib) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/camitk-$(VER_SHORT)/components/lib*.so.*
# camitk-config package contains only the app, man page and icon
dh_install -p$(pkg_cfg) --autodest debian/tmp/usr/bin/camitk-config
@@ -102,27 +97,29 @@ override_dh_install:
dh_installman -p$(pkg_cfg) debian/tmp/usr/share/man/man1/camitk-config.1
# separate packaging for qtpropertybrowser (can be used independently from camitk)
- dh_install -p$(pkg_qpb) --autodest debian/tmp/usr/lib/libqtpropertybrowser.so.*
+ dh_install -p$(pkg_qpb) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libqtpropertybrowser.so.*
# camitk developer package
# camitk so and headers and static libs
- dh_install -p$(pkg_dev) debian/tmp/usr/lib/libcamitkcore.so usr/lib
- dh_install -p$(pkg_dev) debian/tmp/usr/lib/libmonitoring.so usr/lib
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/lib/camitk-$(VER_SHORT)/actions/lib*.so
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/lib/camitk-$(VER_SHORT)/components/lib*.so
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/lib/camitk-$(VER_SHORT)/lib*.a
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/camitkcore
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/cepcoreschema
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/cepgenerator
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/actions
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/components
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/pmlschema
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/pml
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/lmlschema
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/lml
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/mmlschema
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/monitoring
- dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/monitoringgui
+ dh_install -p$(pkg_dev) debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libcamitkcore.so usr/lib/$(DEB_HOST_MULTIARCH)
+ dh_install -p$(pkg_dev) debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libmonitoring.so usr/lib/$(DEB_HOST_MULTIARCH)
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/camitk-$(VER_SHORT)/viewers/lib*.so
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/camitk-$(VER_SHORT)/actions/lib*.so
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/camitk-$(VER_SHORT)/components/lib*.so
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/camitk-$(VER_SHORT)/lib*.a
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/camitkcore
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/cepcoreschema
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/cepgenerator
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/viewers
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/actions
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/components
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/pmlschema
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/pml
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/lmlschema
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/lml
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/mmlschema
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/monitoring
+ dh_install -p$(pkg_dev) --autodest debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/monitoringgui
dh_install -p$(pkg_dev) --autodest debian/tmp/usr/share/camitk-$(VER_SHORT)/cmake/*.cmake
dh_install -p$(pkg_dev) --autodest debian/tmp/usr/share/camitk-$(VER_SHORT)/cmake/macros/*.cmake
dh_install -p$(pkg_dev) --autodest debian/tmp/usr/share/camitk-$(VER_SHORT)/cmake/macros/camitk/*.cmake
@@ -145,11 +142,11 @@ override_dh_install:
dh_installman -p$(pkg_dev) debian/tmp/usr/share/man/man1/camitk-testcomponents.1
# qtpropertybrowser so and headers (includes are put directly in usr/include as package should be generic/independant from CamiTK)
- dh_install -p$(pkg_qpb_dev) debian/tmp/usr/lib/libqtpropertybrowser.so usr/lib
- dh_install -p$(pkg_qpb_dev) debian/tmp/usr/include/camitk-${VER_SHORT}/libraries/qtpropertybrowser usr/include
+ dh_install -p$(pkg_qpb_dev) debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libqtpropertybrowser.so usr/lib/$(DEB_HOST_MULTIARCH)
+ dh_install -p$(pkg_qpb_dev) debian/tmp/usr/include/camitk-$(VER_SHORT)/libraries/qtpropertybrowser usr/include
# api doc
- dh_install -p$(pkg_doc) --autodest debian/tmp/usr/share/camitk-$(VER_SHORT)/apidoc
+ dh_install -p$(pkg_doc) debian/tmp/usr/share/camitk-$(VER_SHORT)/apidoc usr/share/doc/camitk-$(VER_SHORT)/apidoc
# all test data excluding extra licence files (everything is already specified in d/c)
dh_install -p$(pkg_data) --exclude=LICENSE --autodest debian/tmp/usr/share/camitk-$(VER_SHORT)/testdata
@@ -162,9 +159,16 @@ override_dh_install:
# asm
dh_install -p$(pkg_asm) --autodest debian/tmp/usr/bin/camitk-actionstatemachine
+ dh_install -p$(pkg_asm) --autodest debian/tmp/usr/share/applications/camitk-actionstatemachine.desktop
dh_install -p$(pkg_asm) --autodest debian/tmp/usr/share/pixmaps/camitk-actionstatemachine.xpm
dh_installman -p$(pkg_asm) debian/tmp/usr/share/man/man1/camitk-actionstatemachine.1
+# dpkg-shlibdeps needs to know about camitk extension directories to manage inner-dependencies
+# between extensions (i.e., mml component extension depends on physicalmodel component extensions)
+# Lib dependencies can be in any extensions lib directory (viewers, component and action extensions)
+override_dh_shlibdeps:
+ dh_shlibdeps -l$(PKG_LIB_DIR)/viewers/:$(PKG_LIB_DIR)/components/:$(PKG_LIB_DIR)/actions/:$(PKG_LIB_DIR)/
+
# see http://lists.debian.org/debian-mentors/2012/07/msg00124.html
get-orig-source:
mkdir -p ../tarballs
=====================================
debian/tests/cepgenerator-test.sh
=====================================
@@ -246,8 +246,10 @@ generateConfigureAndMake() {
cd build
echo "===== configuring... ====="
if [[ "$osName" == "Windows" ]]; then
- # no virtual X11 -DCMAKE_C_FLAGS:STRING="/MP" -DCMAKE_CXX_FLAGS="/MP"
- cmake $CMAKE_OPTIONS -Wno-dev -G "Visual Studio 14 2015 Win64" -DCMAKE_BUILD_TYPE:STRING=Debug ../$srcDirName > ../cmake-log 2> ../cmake-error
+ # use the currently supported visual studio version (64 bit) with the Debug config
+ #cmake $CMAKE_OPTIONS -Wno-dev -G "Visual Studio 16 2019" -A x64 --config Debug ../$srcDirName > ../cmake-log 2> ../cmake-error
+ # choose the default msvc version and config from current install
+ cmake $CMAKE_OPTIONS -Wno-dev --config Debug ../$srcDirName > ../cmake-log 2> ../cmake-error
else
cmake $CMAKE_OPTIONS ../$srcDirName > ../cmake-log 2> ../cmake-error
fi
@@ -262,7 +264,7 @@ generateConfigureAndMake() {
echo "===== building... ====="
if [[ "$osName" == "Windows" ]]; then
- cmake --build . --config Debug > ../make-log 2> ../make-error
+ cmake --build . --config Debug --parallel 9 > ../make-log 2> ../make-error
else
# build (parallel)
make -j9 > ../make-log 2> ../make-error
@@ -315,15 +317,21 @@ cd $workingDir
generateSourceFiles
#testcepfile cep.xml nrOfExpectedNewExtensions
+testcepfile actionAndComponentUsingViewerExtension.xml 2
+
+# test that is too difficult to manage on Windows
+# TODO: describe the reason why it is not easy to perform it on Windows
if [[ "$osName" == "Windows" ]]; then
echo "Windows: skip testing cep with lib"
else
testcepfile completeTest1.xml 3 testlib
fi
+
testcepfile exampleComponents.xml 2
testcepfile actionsExamplesLicence.xml 2
testcepfile actionsExamplesNoLicence.xml 2
testcepfile actionAndComponent.xml 2
testcepfile empty.xml 0
+testcepfile viewerExample.xml 2
exit $exitStatus
=====================================
debian/tests/config-test.sh
=====================================
@@ -21,24 +21,38 @@ set -e
# ---------------------- initTestData ----------------------
# values to check
initTestData() {
- # fill test data
- extensionCount=( [4.2]=41 [4.1]=41 [4.0]=31 )
- componentExtensionCount=( [4.2]=14 [4.1]=14 [4.0]=14 )
- actionExtensionCount=( [4.2]=27 [4.1]=27 [4.0]=27 )
- fileExtensionCount=( [4.2]=37 [4.1]=37 [4.0]=37 )
- actionCount=( [4.2]=105 [4.1]=105 [4.0]=105 )
+ #-- fill test data arrays
- # fill release date
- releaseDate=( [4.2]="not yet released, current development version" \
- [4.1]="15 July 2018" \
- [4.0]="22 July 2016" \
- [3.5]="29 January 2016"
- [3.4]="31 October 2014" \
- [3.3]="4 March 2014" \
- [3.2]="26 June 2013" \
- [3.1]="1 March 2013" \
- [3.0]="7 July 2012" )
+ # Number of component, action and viewer extensions
+ componentExtensionCount=( [5.0]=14 [4.1]=14 [4.0]=14 )
+ actionExtensionCount=( [5.0]=33 [4.1]=27 [4.0]=27 )
+ viewerExtensionCount=( [5.0]=10 )
+ # Number of different file format/extension manages by the component extensions
+ fileExtensionCount=( [5.0]=37 [4.1]=37 [4.0]=37 )
+
+ # Number of actions provided by the action extensions
+ actionCount=( [5.0]=111 [4.1]=105 [4.0]=105 )
+
+ # Number of viewers managed by the viewer extensions
+ viewerCount=( [5.0]=13 )
+
+ #-- Release date
+ releaseDate=( [5.0]="not yet released, current development version" \
+ [4.1]="15 July 2018" \
+ [4.0]="22 July 2016" \
+ [3.5]="29 January 2016"
+ [3.4]="31 October 2014" \
+ [3.3]="4 March 2014" \
+ [3.2]="26 June 2013" \
+ [3.1]="1 March 2013" \
+ [3.0]="7 July 2012" )
+
+ #-- extensionCount is just the sum of all three extension counts
+ extensionCount=( [5.0]=$((componentExtensionCount[5.0] + actionExtensionCount[5.0] + viewerExtensionCount[5.0]))
+ [4.1]=$((componentExtensionCount[4.1] + actionExtensionCount[4.1]))
+ [4.0]=$((componentExtensionCount[4.0] + actionExtensionCount[4.0])) )
+
}
# ---------------------- declareTestData ----------------------
@@ -48,8 +62,10 @@ declareTestData() {
declare -Ag extensionCount
declare -Ag componentExtensionCount
declare -Ag actionExtensionCount
+ declare -Ag viewerExtensionCount
declare -Ag fileExtensionCount
declare -Ag actionCount
+ declare -Ag viewerCount
declare -Ag releaseDate
}
@@ -171,16 +187,22 @@ getExpectedValue() {
;;
"Number of Component Extensions")
echo ${componentExtensionCount[$shortVersion]}
- ;;
+ ;;
"Number of Action Extensions")
echo ${actionExtensionCount[$shortVersion]}
- ;;
+ ;;
+ "Number of Viewer Extensions")
+ echo ${viewerExtensionCount[$shortVersion]}
+ ;;
"Number of File Extensions Supported")
echo ${fileExtensionCount[$shortVersion]}
- ;;
+ ;;
"Number of Actions")
echo ${actionCount[$shortVersion]}
- ;;
+ ;;
+ "Number of Viewers")
+ echo ${viewerCount[$shortVersion]}
+ ;;
esac
}
@@ -284,7 +306,9 @@ else
fi
checkValue "Number of Component Extensions"
checkValue "Number of Action Extensions"
+checkValue "Number of Viewer Extensions"
checkValue "Number of File Extensions Supported"
checkValue "Number of Actions"
+checkValue "Number of Viewers"
exit $exitStatus
=====================================
debian/tests/generate-coreschema-files.sh
=====================================
@@ -1,4 +1,65 @@
#!/bin/bash
+
+# ---------------------- actionAndComponentUsingViewerExtension.xml ----------------------
+# Example taken from distributed source ./sdk/libraries/cepcoreschema/testdata/actionAndComponentUsingViewerExtension.xml
+cat <<EOF > actionAndComponentUsingViewerExtension.xml
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<cep xmlns="http://camitk.imag.fr/cepcoreschema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://camitk.imag.fr/cepcoreschema Cep.xsd">
+ <name>A CEP with one action and one component that required a viewer extension</name>
+ <contact>
+ <email>Emmanuel.Promayon at univ-grenoble-alpes.fr</email>
+ </contact>
+ <description>This CEP contains a new type of component and an action that can do something with it where both require the medicalimageviewer viewer extension.
+This test the link between an action and a component defined in the same CEP as well as the dependency to a viewer.</description>
+ <actionExtensions>
+ <actionExtension>
+ <name>Test Actions</name>
+ <description>This extension description is really useless.</description>
+ <actions>
+ <action>
+ <name>Test Action</name>
+ <description>This description is void.</description>
+ <component>TestMeshBasedComponent</component>
+ <classification>
+ <family>Testing CepGenerator</family>
+ </classification>
+ <parameters>
+ <parameter defaultValue="100.0" description="Testing double" editable="true" name="testDouble" type="double" unit=""/>
+ </parameters>
+ </action>
+ </actions>
+ <dependencies>
+ <dependency name="testcomponents" type="component"/>
+ <dependency name="medicalimageviewer" type="viewer"/>
+ </dependencies>
+ </actionExtension>
+ </actionExtensions>
+ <componentExtensions>
+ <componentExtension>
+ <name>Test components</name>
+ <description>This extension description a new / specific component</description>
+ <components>
+ <component>
+ <name>TestMeshBasedComponent</name>
+ <description>My description is useless...</description>
+ <representation>Mesh</representation>
+ <properties>
+ <parameter defaultValue="false" description="Testing bools" editable="true" name="testBool" type="bool" unit=""/>
+ <parameter defaultValue="QColor(255, 255, 255, 255)" description="Testing color" editable="true" name="testColor" type="QColor" unit=""/>
+ <parameter defaultValue="QVector3D(0.0, 0.0, 0.0)" description="test 3D vector" editable="true" name="testVector3D" type="QVector3D" unit=""/>
+ </properties>
+ <fileSuffix>specific</fileSuffix>
+ </component>
+ <dependencies>
+ <dependency name="medicalimageviewer" type="viewer"/>
+ </dependencies>
+ </components>
+ </componentExtension>
+ </componentExtensions>
+</cep>
+EOF
+
+
# ---------------------- exampleComponents.xml ----------------------
# Example taken from distributed source ./sdk/libraries/cepcoreschema/testdata/exampleComponents.xml
cat <<EOF > exampleComponents.xml
@@ -15,7 +76,7 @@ cat <<EOF > exampleComponents.xml
<copyright><![CDATA[/* ****************************************************************************
$USERDEF_LICENCE_BEGIN$
CamiTK - Computer Assisted Medical Intervention ToolKit
-(c) 2001-2018 Univ. Grenoble Alpes, CNRS, TIMC-IMAG UMR 5525 (GMCAO)
+(c) 2001-2021 Univ. Grenoble Alpes, CNRS, Grenoble INP, TIMC, 38000 Grenoble, France
Visit http://camitk.imag.fr for more information
@@ -122,7 +183,7 @@ cat <<EOF > actionsExamplesLicence.xml
<copyright><![CDATA[/*****************************************************************************
$USERDEF_LICENCE_BEGIN$
CamiTK - Computer Assisted Medical Intervention ToolKit
-(c) 2001-2018 Univ. Grenoble Alpes, CNRS, TIMC-IMAG UMR 5525 (GMCAO)
+(c) 2001-2021 Univ. Grenoble Alpes, CNRS, Grenoble INP, TIMC, 38000 Grenoble, France
Visit http://camitk.imag.fr for more information
@@ -369,7 +430,7 @@ cat <<EOF > completeTest1.xml
<copyright><![CDATA[/*****************************************************************************
$USERDEF_LICENCE_BEGIN$
CamiTK - Computer Assisted Medical Intervention ToolKit
-(c) 2001-2018 Univ. Grenoble Alpes, CNRS, TIMC-IMAG UMR 5525 (GMCAO)
+(c) 2001-2021 Univ. Grenoble Alpes, CNRS, Grenoble INP, TIMC, 38000 Grenoble, France
Visit http://camitk.imag.fr for more information
@@ -523,9 +584,62 @@ $USERDEF_LICENCE_END$
<dependencies>
<dependency type="library" name="XSD"/>
<dependency type="library" name="ITK"/>
- <dependency type="cepLibrary" name="qtpropertybrowser"/>
+ <!-- remove due to cmake error
+ CMake Error at /usr/share/camitk-5.0/cmake/macros/camitk/CamiTKLibrary.cmake:412 (add_dependencies):
+ The dependency target "library-qtpropertybrowser" of target
+ "library-testlib" does not exist.
+ Call Stack (most recent call first):
+ libraries/testlib/CMakeLists.txt:6 (camitk_library)
+
+ The case of dependency to CEPLIBRARY build in CamiTK CE/ CamiTKCore outside CAMITK_COMMUNITY_EDITION_BUILD should be
+ taken into account for recent CMake versions
+ <dependency type="cepLibrary" name="qtpropertybrowser"/>
+ -->
</dependencies>
</library>
</libraries>
</cep>
EOF
+
+
+# ---------------------- viewerExample.xml ----------------------
+# Example taken from distributed source ./sdk/libraries/cepcoreschema/testdata/viewerExample.xml
+cat <<EOF > viewerExample.xml
+<?xml version="1.0" encoding="UTF-8"?>
+<cep xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://camitk.imag.fr/cepcoreschema"
+ xsi:schemaLocation="http://camitk.imag.fr/cepcoreschema ../cep.xsd">
+ <name>Test Viewer CEP</name>
+ <contact>
+ <email>Emmanuel.Promayon at univ-grenoble-alpes.fr</email>
+ </contact>
+ <description>Example of a CEP with two viewer extensions</description>
+ <viewerExtensions>
+ <viewerExtension>
+ <name>Test Viewer 1</name>
+ <description>This viewer extension manages a default viewer</description>
+ <registerDefaultViewer/>
+ <viewer>
+ <name>Test Viewer 1</name>
+ <description>Example of simple embedded viewer</description>
+ <type>EMBEDDED</type>
+ <component>MeshComponent</component>
+ <component>ImageComponent</component>
+ </viewer>
+ </viewerExtension>
+
+ <viewerExtension>
+ <name>Test Viewer 2</name>
+ <description>This viewer extension manages three named viewer</description>
+ <registerNewViewer>First Test Viewer</registerNewViewer>
+ <registerNewViewer>Second Test Viewer</registerNewViewer>
+ <viewer>
+ <name>Test Viewer 2</name>
+ <description>Example of simple docked viewer</description>
+ <type>DOCKED</type>
+ <component>Component</component>
+ </viewer>
+ </viewerExtension>
+ </viewerExtensions>
+</cep>
+EOF
=====================================
debian/upstream/metadata
=====================================
@@ -1,3 +1,5 @@
+Bug-Submit: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues/new?issue%5Bassignee_id%5D=&issue%5Bmilestone_id%5D=
+Name: CamiTK Community Edition
Reference:
- Author: >
Céline Fouard and Aurélien Deram and Yannick Keraval and Emmanuel Promayon
@@ -11,3 +13,6 @@ Reference:
DOI: 10.1007/8415_2012_118
URL: http://membres-timc.imag.fr/Emmanuel.Promayon/publications//FDK+12.php
Type: InBook
+Repository: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK.git
+Repository-Browse: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK
+Bug-Database: https://gricad-gitlab.univ-grenoble-alpes.fr/CamiTK/CamiTK/-/issues
View it on GitLab: https://salsa.debian.org/med-team/camitk/-/commit/feefd52f0ead2376e6879e05becf87fe86d84848
--
View it on GitLab: https://salsa.debian.org/med-team/camitk/-/commit/feefd52f0ead2376e6879e05becf87fe86d84848
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/20220209/a2726f13/attachment-0001.htm>
More information about the debian-med-commit
mailing list