summaryrefslogtreecommitdiff
path: root/debian/rules
blob: c1cccc6aacf1c05283c3a0d2c9afd02fa014f4c6 (plain)
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
#! /usr/bin/make -f
# -*- makefile -*-
# Build rules for gcc (>= 2.95) and gcc-snapshot
# Targets found in this makefile:
#	- unpack tarballs
#	- patch sources
#	- (re)create the control file
#	- create a debian/rules.parameters file, which is included
#	  by debian/rules2
# All other targets are passed to the debian/rules2 file

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

unexport LANG LC_ALL LC_CTYPE LC_COLLATE LC_TIME LC_NUMERIC LC_MESSAGES

default: build

include debian/rules.defs
include debian/rules.unpack
include debian/rules.patch

control: $(control_dependencies)
	-mkdir -p $(stampdir)
	$(MAKE) -f debian/rules.conf $@

configure: $(configure_dependencies)
$(configure_stamp): control $(unpack_stamp) $(patch_stamp)
	$(MAKE) -f debian/rules2 $@
$(configure_dummy_stamp): control
	$(MAKE) -f debian/rules2 $@
$(configure_jit_stamp): control
	$(MAKE) -f debian/rules2 $@
$(configure_hppa64_stamp): $(build_stamp)
	$(MAKE) -f debian/rules2 $@
$(configure_neon_stamp): $(build_stamp)
	$(MAKE) -f debian/rules2 $@

pre-build:
#ifneq (,$(filter $(distrelease),squeeze sid))
#ifeq (,$(filter $(DEB_TARGET_ARCH),amd64 i386))
#	@echo explicitely fail the build for $(DEB_TARGET_ARCH)
#	@echo no bug report required. please ask the port maintainers if they support gcc-4.5.
#	false
#endif
#endif

build: pre-build $(build_dependencies)
build-arch: build
build-indep: build
$(build_stamp): $(unpack_stamp) $(patch_stamp) $(configure_stamp)
	$(MAKE) -f debian/rules2 $@
$(build_dummy_stamp): $(configure_dummy_stamp)
	$(MAKE) -f debian/rules2 $@
$(build_jit_stamp): $(configure_jit_stamp)
	$(MAKE) -f debian/rules2 $@
$(build_javadoc_stamp): $(build_stamp)
	$(MAKE) -f debian/rules2 $@
$(build_hppa64_stamp): $(configure_hppa64_stamp)
	$(MAKE) -f debian/rules2 $@
$(build_neon_stamp): $(configure_neon_stamp)
	$(MAKE) -f debian/rules2 $@

check: $(check_stamp)
$(check_stamp): $(build_stamp)
	$(MAKE) -f debian/rules2 $@

clean:
	rm -rf $(stampdir)
# remove temporary dirs used for unpacking
	rm -rf $(gcc_srcdir) $(gdc_srcdir)
	-$(MAKE) -f debian/rules2 $@
	rm -rf $(srcdir)* $(builddir)* debian/tmp* html
	rm -f bootstrap-* first-move-stamp
	rm -f autotools_files
	rm -f debian/*.tmp
	rm -f debian/soname-cache
	find debian -name '.#*' | xargs -r rm -f
	rm -f $(series_file)*
	dh_clean

install: $(install_dependencies)
$(install_stamp): $(build_stamp)
	$(MAKE) -f debian/rules2 $@
$(install_snap_stamp): $(build_stamp)
	$(MAKE) -f debian/rules2 $@
$(install_dummy_stamp): $(build_dummy_stamp)
	$(MAKE) -f debian/rules2 $@
$(install_jit_stamp): $(build_jit_stamp)
	$(MAKE) -f debian/rules2 $@
$(install_hppa64_stamp): $(build_hppa64_stamp)
	$(MAKE) -f debian/rules2 $@
$(install_neon_stamp): $(build_neon_stamp)
	$(MAKE) -f debian/rules2 $@

html-docs doxygen-docs update-doxygen-docs update-ada-files xxx:
	$(MAKE) -f debian/rules2 $@

binary-indep binary-arch binary: install
	$(MAKE) -f debian/rules2 $@

source diff:
	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false

release:
	foo=$(shell basename $(CURDIR)); \
		if [ "$$foo" != "gcc-3.4" ]; then \
			find -name CVS -o -name .cvsignore -o -name '.#*' | \
				xargs rm -rf; \
		fi

.PHONY: build clean binary-indep binary-arch binary release