File: rules

package info (click to toggle)
plplot 5.14.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 30,424 kB
  • sloc: ansic: 79,613; xml: 28,583; cpp: 20,037; ada: 19,456; tcl: 12,081; f90: 11,423; ml: 7,276; java: 6,863; python: 6,792; sh: 3,185; perl: 828; lisp: 75; makefile: 48; sed: 33; fortran: 5
file content (85 lines) | stat: -rwxr-xr-x 2,697 bytes parent folder | download
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
#!/usr/bin/make -f
# -*- gmake -*-
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

# Paths for Octave
OCTDIR = $(shell octave-config --print LOCALAPIOCTFILEDIR)

DEB_BUILD_MAINT_OPTIONS       := hardening=+all
DPKG_EXPORT_BUILDFLAGS        := 1
DEB_CFLAGS_MAINT_APPEND       := -fvisibility=hidden
DEB_FFLAGS_MAINT_APPEND       := -fvisibility=hidden
# Don't add -fvisibility=hidden to CXXFLAGS for now as this breaks the
# octave bindings.
DEB_CPPFLAGS_MAINT_APPEND     := $(shell mkoctfile -p INCFLAGS)
DEB_LDFLAGS_MAINT_APPEND      := -Wl,--as-needed
include /usr/share/dpkg/default.mk

# Note cmake ignores CPPFLAGS so add them to CFLAGS and CXXFLAGS as a
# work around, see #653916.
CFLAGS   += $(CPPFLAGS)
CXXFLAGS += $(CPPFLAGS)

HOME=$(shell mktemp -d)

export verbose_test = on

export QT_SELECT=5

CONFIGURE_OPTIONS = \
	-DUSE_RPATH=OFF -DPLD_psttf=OFF -DNON_TRANSITIVE=ON \
	-DENABLE_tk=ON -DENABLE_python=ON -DENABLE_ada=ON \
	-DOCTAVE_OCT_DIR=$(OCTDIR) \
	-DBUILD_DOC=ON \
	-DCMAKE_INSTALL_LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)

ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
  CONFIGURE_OPTIONS += -DBUILD_TEST=ON
endif

%:
	dh $@ -Scmake --with python3,ocaml

override_dh_auto_configure:
	xvfb-run dh_auto_configure -- $(CONFIGURE_OPTIONS)

override_dh_auto_configure: debian/plplotada.gpr
debian/plplotada.gpr: debian/plplotada.gpr.in
	sed s/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/ $< > $@

override_dh_auto_test:
ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
	#xvfb-run $(MAKE) -C obj-* VERBOSE=1 test_noninteractive
endif

override_dh_auto_install:
	dh_auto_install
	# Dirty hack: Make shared lib executable to force its detection
	# by dh_strip and dh_shlibdeps.
	# This will be reverted later, in override_dh_shlibdeps.
	# See https://bugs.debian.org/35733#35
	chmod ugo+x debian/tmp/usr/lib/*/octave/site/oct/api-*/*/plplot_octave.oct

	# Remove multiarch path and -fPIC in pkgconfig files.
	sed -i -e 's,-L"/usr/lib/$(DEB_HOST_MULTIARCH)",,g;s,  *, ,g' \
	    -e 's,-fPIC,,g' \
	    debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig/*.pc

	# Remove tests for shared libs on Python and ADA from export_plplot:
	# These libs were renamed during build for multiarch
	sed '/\/_Pltk_init.so/d;/\/_plplotc.so/d;/\/plplot_pyqt5_/d;/\/libplplotada.so/d' \
	    -i debian/tmp/usr/lib/*/cmake/plplot/export_plplot-none.cmake

	dh_numpy3

override_dh_shlibdeps:
	dh_shlibdeps
	# Dirty hack, part 2: Remove the executable bit from the shared library
	chmod ugo-x debian/octave-plplot/usr/lib/*/octave/site/oct/api-*/*/plplot_octave.oct

override_dh_compress:
	dh_compress -Xexamples

override_dh_installchangelogs:
	dh_installchangelogs ChangeLog.release