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
|
#! /usr/bin/make -f
#export DH_VERBOSE=1
DESTDIR = $(CURDIR)/debian/tmp
UPSTREAM_VERSION = $(shell dpkg-parsechangelog | awk '/^Version:/ { sub("-[^-]*$$", "", $$2); print $$2}')
%:
dh $@ --buildsystem=cmake
PY3VERS=$(shell py3versions -vr)
PY3DEF=$(shell py3versions -dv)
export LD_LIBRARY_PATH+=:$(CURDIR)/debian/paraview/usr/lib/paraview
export QT_SELECT=qt5
CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
CFLAGS:=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS) -Wall -pedantic
CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS) -O0
LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS) -Wl,--as-needed
# Investigate: Pixie Needs ADIOS1
# -DPARAVIEW_PLUGIN_ENABLE_AdiosReaderPixie=ON
# -DPARAVIEW_PLUGIN_ENABLE_AdiosReaderStaging=ON
# Explicit settings of MPI_* is required see
# http://www.vtk.org/Bug/view.php?id=12572
extra_flags += -Wno-dev \
-DCMAKE_C_FLAGS="${CFLAGS}" -DCMAKE_CXX_FLAGS="${CXXFLAGS}" \
-DCMAKE_BUILD_TYPE=DEBUG \
-DPARAVIEW_BUILD_DEVELOPER_DOCUMENTATION=ON \
-DCMAKE_INSTALL_RPATH=/usr/lib/paraview \
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF \
-DCMAKE_SKIP_RPATH=OFF \
-DPARAVIEW_ENABLE_FFMPEG=ON \
-DPARAVIEW_ENABLE_WEB=ON \
-DPARAVIEW_BUILD_SHARED_LIBS=ON \
-DVTK_SOURCE_DIR=$(CURDIR)/VTK \
-DHDF5_ROOT=/usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)/hdf5/openmpi \
-DVTK_MODULE_USE_EXTERNAL_VTK_mpi4py=ON \
-DPARAVIEW_PYTHON_SITE_PACKAGES_SUFFIX="lib/python3/dist-packages" \
-DVTK_MODULE_USE_EXTERNAL_VTK_doubleconversion=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_eigen=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_theora=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_hdf5=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_lz4=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_lzma=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_utf8=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_tiff=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_zlib=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_expat=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_png=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_glew=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_freetype=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_jpeg=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_libxml2=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_netcdf=ON \
-DVTK_MODULE_USE_EXTERNAL_VTK_gl2ps=ON \
-DPARAVIEW_USE_MPI=ON \
-DPARAVIEW_USE_PYTHON=ON \
-DPARAVIEW_ENABLE_VISITBRIDGE=OFF \
-DPARAVIEW_ENABLE_GDAL=ON \
-DPARAVIEW_ENABLE_XDMF3=ON \
-DPARAVIEW_ENABLE_MOTIONFX=ON \
-DDEB_HOST_MULTIARCH=$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
override_dh_auto_clean:
dh_auto_clean
rm -fr build.*
my_configure_python%: pyver=$(patsubst my_configure_python%,%,$@)
my_configure_python%:
dh_auto_configure -Bbuild.python$(pyver) -- $(extra_flags) -DPython3_EXECUTABLE=/usr/bin/python$(pyver) -DDEBIAN_PYTHON_VERSION=$(pyver)
override_dh_auto_configure: $(foreach pyver,$(PY3VERS), my_configure_python$(pyver))
my_build_python%: pyver=$(patsubst my_build_python%,%,$@)
my_build_python%:
dh_auto_build -Bbuild.python$(pyver)
override_dh_auto_build: $(foreach pyver,$(PY3VERS), my_build_python$(pyver))
my_install_python%: pyver=$(patsubst my_install_python%,%,$@)
my_install_python%:
dh_auto_install -Bbuild.python$(pyver)
cd build.python$(pyver)/bin $(foreach exe,pvbatch pvpython,&& cp $(exe) $(DESTDIR)/usr/bin/$(exe)$(pyver))
override_dh_auto_install: $(foreach pyver,$(PY3VERS), my_install_python$(pyver))
# Use the defaut python3 version for the tools
cd debian/tmp/usr/bin $(foreach exe,pvbatch pvpython,&& ln -fs $(exe)$(PY3DEF) $(exe))
# Drop unwanted mpi4py module
rm -fr debian/tmp/usr/lib/python3*/dist-packages/mpi4py
my_test_python%: pyver=$(patsubst my_test_python%,%,$@)
my_test_python%:
dh_auto_test -Bbuild.python$(pyver)
override_dh_python3:
dh_python3 --no-ext-rename # Hack: Do not rename libraries from e.g. vtkClientServerPython.so to vtkClientServerPython.cpython-38-x86_64-linux-gnu.so!
override_dh_auto_test: $(foreach pyver,$(PY3VERS), my_test_python$(pyver))
override_dh_compress:
dh_compress -X.qch
override_dh_makeshlibs:
dh_makeshlibs -V'paraview (>= $(UPSTREAM_VERSION)), paraview (<< $(UPSTREAM_VERSION).)'
|