File: rules

package info (click to toggle)
libsdl2 2.0.14%2Bdfsg2-3%2Bdeb11u1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 69,544 kB
  • sloc: ansic: 232,688; cpp: 82,883; sh: 11,709; objc: 10,152; xml: 4,737; makefile: 747; asm: 661; perl: 639; javascript: 286; python: 77
file content (130 lines) | stat: -rwxr-xr-x 4,375 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
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
128
129
130
#!/usr/bin/make -f

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

confflags = --disable-rpath --enable-sdl-dlopen \
            --disable-nas --disable-esd --disable-arts \
            --disable-alsa-shared --disable-pulseaudio-shared \
            --enable-ibus \
            --disable-x11-shared --disable-video-directfb \
            --enable-video-opengles \
            --disable-video-opengles1 \
            --enable-video-wayland --disable-wayland-shared \
            --enable-video-kmsdrm --disable-kmsdrm-shared \
            --enable-hidapi

# disable autoheader (invoked automatically by autoreconf), necessary in order
# to use debhelper compat level v10 without overriding dh-autoreconf calls
export AUTOHEADER := /bin/true


ifeq ($(DEB_HOST_ARCH_CPU),powerpc)
  confflags += --disable-altivec
endif

ifeq ($(DEB_HOST_ARCH_CPU),ppc64el)
  confflags += --disable-altivec
endif

# disable Wayland and Vulkan on non-Linux, they do not support other kernels at the moment
ifeq (hurd,$(findstring hurd,$(DEB_HOST_ARCH_CPU)))
  confflags += --disable-video-vulkan
  confflags += --disable-video-wayland
endif
ifeq (kfreefsd,$(findstring kfreebsd,$(DEB_HOST_ARCH_CPU)))
  confflags += --disable-video-vulkan
  confflags += --disable-video-wayland
endif

# disable OpenGLES on Hurd, it does not support it at the moment
ifeq (hurd,$(findstring hurd,$(DEB_HOST_ARCH_CPU)))
  confflags += --disable--video-opengles
endif

# don't use libunwind even if it happens to be installed
confflags += ac_cv_header_libunwind_h=no

%:
	dh $@

override_dh_auto_configure:
	dh_auto_configure -- $(confflags)
	# test/configure.ac uses AC_PATH_X, so we need to pass in
	# --x-includes and --x-libraries to avoid it wanting to use
	# xmkmf to discover the right values.
	dh_auto_configure \
		--buildsystem=autoconf \
		--sourcedirectory=$(CURDIR)/test \
		--builddirectory=$(CURDIR)/debian/build-tests \
		-- \
		--x-includes=/usr/include \
		--x-libraries=/usr/lib/$(DEB_HOST_MULTIARCH) \
		SDL_CFLAGS=-I$(CURDIR)/include \
		SDL_LIBS="-L$(CURDIR)/build/.libs -lSDL2" \
		ac_cv_lib_SDL2_ttf_TTF_Init=no \
		$(NULL)

override_dh_auto_build-indep:
	GZIP="-9n" tar \
		--exclude=autom4te.cache \
		--owner=0 --group=0 --mode=go=rX,u+rw,a-s \
		--clamp-mtime --mtime="@$(SOURCE_DATE_EPOCH)" \
		--sort=name \
		-czf debian/examples.tar.gz test
	sed -e 's/FULL_PATH_NAMES *=.*/FULL_PATH_NAMES = NO/' < docs/doxyfile > debian/Doxyfile
	cd docs && doxygen ../debian/Doxyfile
	# useless files
	find docs/output -name "*.md5" -delete
	find docs/output -type d -empty -delete

# Force examples to be installed in libsdl2-doc, it does not happen with compat
# level v11 despite having the file debian/libsdl2-doc.examples (it gets
# installed as part of libsdl2-dev instead)
override_dh_installexamples-indep:
	dh_installexamples -i --doc-main-package=libsdl2-doc

override_dh_auto_build-arch:
	dh_auto_build -- V=1
	dh_auto_build \
		--buildsystem=autoconf \
		--sourcedirectory=$(CURDIR)/test \
		--builddirectory=$(CURDIR)/debian/build-tests \
		-- \
		V=1

override_dh_auto_clean-indep:
	dh_auto_clean
	rm -f debian/Doxyfile
	rm -f debian/examples.tar.gz
	rm -rf docs/output

override_dh_auto_install-arch:
	dh_auto_install -- V=1
	dh_auto_install \
		--buildsystem=autoconf \
		--sourcedirectory=$(CURDIR)/test \
		--builddirectory=$(CURDIR)/debian/build-tests \
		-- \
		installedtestsdir='/usr/lib/$(DEB_HOST_MULTIARCH)/installed-tests/SDL2' \
		V=1

override_dh_install:
	mkdir -p debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/SDL2
	mv debian/tmp/usr/include/SDL2/SDL_config.h debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/SDL2/_real_SDL_config.h
	ln -s ../../SDL2/SDL_platform.h debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/SDL2/
	ln -s ../../SDL2/begin_code.h debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/SDL2/
	ln -s ../../SDL2/close_code.h debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/SDL2/
	dh_install

override_dh_missing:
	dh_missing --fail-missing

override_dh_link:
	# to address lintian warning
	# W: libsdl2-2.0-0: dev-pkg-without-shlib-symlink usr/lib/x86_64-linux-gnu/libSDL2-2.0.so.0.0.0 usr/lib/x86_64-linux-gnu/libSDL2-2.0.so
	dh_link -plibsdl2-dev usr/lib/$(DEB_HOST_MULTIARCH)/libSDL2-2.0.so.0 usr/lib/$(DEB_HOST_MULTIARCH)/libSDL2-2.0.so
	dh_link --remaining-packages

override_dh_installchangelogs:
	dh_installchangelogs -- WhatsNew.txt