File: rules

package info (click to toggle)
gcc-avr 1%3A14.2.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 164 kB
  • sloc: makefile: 90; asm: 44; ansic: 8; sh: 6; cpp: 2
file content (121 lines) | stat: -rwxr-xr-x 3,278 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
#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.

DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk
include /usr/share/dpkg/architecture.mk

TARGET=avr
PACKAGE=gcc-avr

CONFARGS = -v \
    --enable-languages=c,c++,rust \
    --prefix=/usr/lib \
    --infodir=/usr/share/info \
    --mandir=/usr/share/man \
	--bindir=/usr/bin \
	--libexecdir=/usr/lib \
	--libdir=/usr/lib \
    --enable-shared \
    --with-system-zlib \
    --enable-long-long \
    --enable-nls \
    --without-included-gettext \
	--disable-libssp \
	--disable-libcc1 \
    --build=$(DEB_BUILD_GNU_TYPE) \
    --host=$(DEB_HOST_GNU_TYPE) \
    --target=$(TARGET) \
	--enable-host-pie \
    $(shell env DEB_BUILD_MAINT_OPTIONS="hardening=+all" \
	  dpkg-buildflags --export=configure | sed -e 's/-Werror=format-security//g')


# support parallel build using DEB_BUILD_OPTIONS=parallel=N
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
PARALLEL = -j$(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
endif

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

BUILD_TREE=objdir

%:
	dh $@


override_dh_auto_configure: configure-stamp

unpack-stamp:
	tar xf /usr/src/gcc-14/gcc-*.tar.xz
	mv gcc* src
	patch -p1 src/gcc/Makefile.in debian/disable_docs.patch
	patch -d src -p1 < debian/revert-codesize.patch
	mkdir build
	touch unpack-stamp

patch-stamp: unpack-stamp
	touch $@

configure-stamp: patch-stamp
	dh_testdir
	AUTOM4TE=autom4te2.69 AUTOCONF=autoconf2.69 dh_autoreconf
	mkdir -p $(BUILD_TREE)
	# Add here commands to configure the package.
	cd $(BUILD_TREE) && env ../src/configure $(CONFARGS)
	touch configure-stamp

override_dh_autoreconf:configure-stamp build-stamp
	dh_autoreconf

build-stamp:
	dh_testdir

	# Add here commands to compile the package.
	cd $(BUILD_TREE) && $(MAKE) $(PARALLEL)
	#/usr/bin/docbook-to-man debian/$(PACKAGE).sgml > $(PACKAGE).1

	touch build-stamp

override_dh_auto_clean:
	dh_testdir
	dh_testroot
	dh_autoreconf_clean
	rm -f build-stamp configure-stamp unpack-stamp patch-stamp
	rm -rf $(BUILD_TREE)
	rm -rf build src
	rm -f debian/autoreconf.after debian/autoreconf.before

	dh_clean

override_dh_auto_install:
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs

	# Add here commands to install the package into debian/$(PACKAGE).
	echo install: > $(BUILD_TREE)/fixincludes/Makefile
	cd $(BUILD_TREE) && $(MAKE) install DESTDIR=$(CURDIR)/debian/$(PACKAGE)/

	#rm debian/$(PACKAGE)/usr/share/man/man1/avr-g++.1
	#ln -s avr-gcc.1.gz debian/$(PACKAGE)/usr/share/man/man1/avr-g++.1.gz
	ln -s avr-g++.1.gz debian/$(PACKAGE)/usr/share/man/man1/avr-c++.1.gz
	ln -s avr-gcc.1.gz debian/$(PACKAGE)/usr/share/man/man1/avr-gcc-14.2.0.gz
	install -m644 debian/avr-gccbug.1 debian/$(PACKAGE)/usr/share/man/man1/avr-gccbug.1
	gzip -9 debian/$(PACKAGE)/usr/share/man/man1/avr-gccbug.1

	cd debian/$(PACKAGE)/usr/ && \
	rm -rf bin/gcov bin/gccbug share/man/man1/gcov.1* \
	lib*/libiberty.a share/info share/man/man7/gfdl.7* \
	share/man/man7/gpl.7* share/man/man7/fsf-funding.7* \
	share/locale bin/*c++filt lib/avr \
	share/man lib/share lib/include

override_dh_strip:
	dh_strip -X.a -X.o
	for f in `find debian/$(PACKAGE) -name '*.a*'`; do \
	  avr-strip --strip-debug $$f; \
	done