blob: 820b647c089b8d1e08e8cdc60cebf67cb6641f33 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
# Maintainer of this PKBGUILD file: Martino Pilia <martino.pilia@gmail.com>
pkgname=minc-toolkit-v2
pkgver=1.9.15
pkgrel=2
pkgdesc="Medical Imaging NetCDF Toolkit"
arch=('any')
url="https://www.mcgill.ca/bic/software/minc"
license=('GPL3')
depends=('perl' 'libjpeg-turbo' 'libxi' 'libxmu' 'libgl' 'glu' 'fftw' 'glut' 'netcdf' 'pcre' 'zlib' 'hdf5' 'nifticlib' 'insight-toolkit' 'elastix')
makedepends=('git' 'cmake' 'bc' 'libhdf5')
provides=('minc-toolkit')
source=('git+https://github.com/BIC-MNI/minc-toolkit-v2.git'
'FindNIFTI.patch')
sha512sums=('SKIP'
'28e12be5c8c7e397a063fa570fd4819dc45daf845a608164b9e7aec6fb6fb99d58f4f494d648147613bb80393b88d40f63748ea9f6096d96a1df1e66d17bbed7')
_release_commit="29273c3f065c86496c6a1270355077b534e676a3"
_itk=`ls /usr/lib/cmake | grep -m1 ITK`
_install_prefix="/usr/share/minc"
prepare() {
# ensure that the required ITK modules are present
if [ `ls "/usr/include/$_itk" | grep 'itkMINCImageIO.h'` == "" ];
then
echo "ERROR: ITK must be built with -DModule_ITKIOMINC:BOOL=ON"
exit 1
fi
if [ `ls "/usr/include/$_itk" | grep 'itkMINCTransformAdapter.h'` == "" ];
then
echo "ERROR: ITK must be built with -DModule_ITKIOTransformMINC:BOOL=ON"
exit 1
fi
cd "$srcdir/$pkgname"
git checkout $_release_commit
git submodule update --init --recursive
# that hash seems to be wrong
sed -i \
's/5c9dad3705a3408d27f696e5b31fb88c/41fe6758d46cccb1675693d155ee7001/' \
cmake-modules/BuildNETCDF.cmake
# find system NIFTI in the right place
sed -i \
's/FIND_PACKAGE(NIFTI OPTIONAL)/FIND_PACKAGE(NIFTI REQUIRED)/' \
CMakeLists.txt
patch -p0 -i ${srcdir}/FindNIFTI.patch
# static version of HDF5
sed -i \
'74iSET(HDF5_LIBRARY "/usr/lib/libhdf5.a")' \
cmake-modules/FindHDF5.cmake
sed -i \
'75iSET(HDF5_LIBRARIES ${HDF5_LIBRARY})' \
cmake-modules/FindHDF5.cmake
# libminc for patch_morphology
sed -i \
'5iINCLUDE_DIRECTORIES(${LIBMINC_INCLUDE_DIRS})' \
patch_morphology/legacy/CMakeLists.txt
sed -i \
'6iLINK_DIRECTORIES(${LIBMINC_LIBRARY_DIRS})' \
patch_morphology/legacy/CMakeLists.txt
# the compiler won't like this
sed -i \
's/enum {false=0, true=1};//' \
minctools/progs/mincdump/mincdump.h
mkdir build || :
cd build
cmake .. \
-DCMAKE_BUILD_TYPE:STRING=Release \
-DCMAKE_INSTALL_PREFIX:PATH="${_install_prefix}" \
-DMT_BUILD_ABC:BOOL=ON \
-DMT_BUILD_ANTS:BOOL=ON \
-DMT_BUILD_C3D:BOOL=ON \
-DMT_BUILD_ELASTIX:BOOL=OFF \
-DMT_BUILD_IM:BOOL=OFF \
-DMT_BUILD_ITK_TOOLS:BOOL=ON \
-DMT_BUILD_LITE:BOOL=OFF \
-DMT_BUILD_SHARED_LIBS:BOOL=ON \
-DMT_BUILD_VISUAL_TOOLS:BOOL=ON \
-DMT_USE_OPENMP:BOOL=ON \
-DUSE_SYSTEM_ELASTIX:BOOL=ON \
-DUSE_SYSTEM_FFTW3D:BOOL=ON \
-DUSE_SYSTEM_FFTW3F:BOOL=ON \
-DUSE_SYSTEM_GLUT:BOOL=ON \
-DUSE_SYSTEM_GSL:BOOL=ON \
-DUSE_SYSTEM_HDF5:BOOL=ON \
-DUSE_SYSTEM_ITK:BOOL=ON \
-DUSE_SYSTEM_NETCDF:BOOL=ON \
-DUSE_SYSTEM_NIFTI:BOOL=ON \
-DUSE_SYSTEM_PCRE:BOOL=ON \
-DUSE_SYSTEM_ZLIB:BOOL=ON \
-DITK_DIR:PATH=/usr/lib/cmake/$_itk
}
build() {
cd "$srcdir/$pkgname/build"
make
}
#check() {
# cd "$srcdir/$pkgname/build"
# make test
#}
package() {
cd "$srcdir/$pkgname/build"
make install DESTDIR="${pkgdir}"
cd "${pkgdir}${_install_prefix}"
rm -rf minc-toolkit-config*
mkdir -p $pkgdir/usr/share/bash-completion/completions
mv share/bashcomp.sh $pkgdir/usr/share/bash-completion/completions/c3d
mv bin $pkgdir/usr/bin
mv include $pkgdir/usr/include
mv lib $pkgdir/usr/lib
mv man $pkgdir/usr/share/man
}
|