File: rules

package info (click to toggle)
qtfeedback-opensource-src 5.0~git20180329.a14bd0bb-3
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 1,188 kB
  • sloc: cpp: 3,385; makefile: 65; ansic: 12
file content (93 lines) | stat: -rwxr-xr-x 3,371 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
86
87
88
89
90
91
92
93
#!/usr/bin/make -f

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

NULL =

export DEB_BUILD_MAINT_OPTIONS = hardening=+all
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk

export QT_SELECT := qt5

include /usr/share/dpkg/architecture.mk

%:
	dh $@ --with pkgkde_symbolshelper

override_dh_auto_build:
	dh_auto_build
	make docs

override_dh_missing:
	dh_missing --fail-missing

override_dh_auto_install:
	dh_auto_install
	$(MAKE) INSTALL_ROOT=$(CURDIR)/debian/tmp install_docs
	# Fix wrong path in pkgconfig files
	find $(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig -type f -name '*.pc' \
	-exec sed -i -e 's/$(DEB_HOST_MULTIARCH)\/$(DEB_HOST_MULTIARCH)/$(DEB_HOST_MULTIARCH)/g' {} \;
	
	# Remove private stuff
	rm -rfv debian/tmp/usr/include/*/qt5/QtFeedback/*/QtFeedback/private/
	rm -fv $(CURDIR)/debian/tmp/usr/lib/*/qt5/mkspecs/modules/qt_lib_*_private.pri
	
	# Remove libtool-like files
	rm -f debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/*.la
	
	# Remove documentation files (for now...)
	rm -fv  debian/tmp/usr/share/qt5/doc/qtfeedback.qch
	rm -rfv debian/tmp/usr/share/qt5/doc/qtfeedback/

override_dh_auto_test:
ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
	# Copy missing qmldir file to have tests running successfully
	cp -a src/imports/feedback/qmldir qml/QtFeedback/
	cd tests ; qmake ; make
	cd tests ; xvfb-run -a make check QML2_IMPORT_PATH=../../../qml QT_PLUGIN_PATH=$(CURDIR)/plugins LD_LIBRARY_PATH=$(CURDIR)/lib
endif

include /usr/share/dpkg/pkg-info.mk

PKD   = $(word 1,$(abspath $(dir $(MAKEFILE_LIST))))
PKG   = $(DEB_SOURCE)
UVER  = $(shell echo $(DEB_VERSION) | cut -d "-" -f1)
DTYPE =
VER  ?= $(subst $(DTYPE),,$(UVER))

UURL = https://code.qt.io/qt/qtfeedback.git
UREV = $(shell echo $(VER) | cut -d"." -f3)

QT_MODULE_VERSION = $(shell cat .qmake.conf | grep MODULE_VERSION | sed -re 's/MODULE_VERSION\s*=\s*([^\s]+)\s*/\1/')

## http://wiki.debian.org/onlyjob/get-orig-source
.PHONY: get-orig-source
get-orig-source: $(PKG)_$(VER)$(DTYPE).orig.tar.xz $(info I: $(PKG)_$(VER)$(DTYPE))
	@

$(PKG)_$(VER)$(DTYPE).orig.tar.xz: $(info I: GIT Revision=$(UREV))
	$(if $(wildcard $(PKG)-$(VER)),$(error $(PKG)-$(VER) exist, aborting..))
	    @echo "# Downloading..."
	git clone $(UURL) $(PKG)-$(VER) \
	    || $(RM) -r $(PKG)-$(VER)
	cd $(PKG)-$(VER) \
	    && git checkout "$(UREV)" \
	    && ( echo "# Generating ChangeLog..." \
	        ; git --no-pager log --format="%ai %aN (%h) %n%n%x09*%w(68,0,10) %s%n" > ChangeLog \
	        ; touch -d "$$(git log -1 --format='%ci')" ChangeLog) \
	    && echo "# Setting times..." \
	    && for F in $$(git ls-tree -r --name-only HEAD); do touch --no-dereference -d "$$(git log -1 --format="%ai" -- $$F)" "$$F"; done \
	    && echo "# Cleaning-up..." \
	    && $(RM) -r .git .git* \
	    $(NULL)
	@echo "# Runnint syncqt.pl (QT_MODULE_VERSION=$(QT_MODULE_VERSION))"
	cd $(PKG)-$(VER) \
	    && cd src/feedback/ && perl /usr/lib/qt5/bin/syncqt.pl -module QtFeedback -version $(QT_MODULE_VERSION) -outdir $(CURDIR)/$(PKG)-$(VER) -builddir $(CURDIR)/$(PKG)-$(VER) $(CURDIR)/$(PKG)-$(VER) && cd - 1>/dev/null \
	    $(NULL)
	@echo "# Packing..."
	find -L "$(PKG)-$(VER)" -xdev -type f -print | sort \
	    | XZ_OPT="-6v" tar -caf "../$(PKG)_$(VER)$(DTYPE).orig.tar.xz" -T- --owner=root --group=root --mode=a+rX \
	    && $(RM) -r "$(PKG)-$(VER)" \
	    $(NULL)