summaryrefslogtreecommitdiffstats
path: root/Makefile.in
blob: d5f724e92e59eff3596bbf682df7215a17f27efb (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
version		:= $(shell . ./scripts/ptxdist_version.sh && echo $${PTXDIST_VERSION_FULL})
project		:= ptxdist-$(version)

prefix		:= @prefix@
exec_prefix	:= @exec_prefix@
abs_srcdir 	:= @abs_srcdir@
libdir	 	:= @libdir@
bindir	 	:= @bindir@
instdir		:= $(libdir)/$(project)

CC		:= @CC@
CXX		:= @CXX@
CFLAGS		:= @CFLAGS@
CXXFLAGS	:= @CXXFLAGS@
CPPFLAGS	:= @CPPFLAGS@
LDFLAGS		:= @LDFLAGS@

SHELL		:= @BASH@

export SHELL

all:
	@echo "building conf and mconf ..."
	@CC="$(CC)" \
	CXX="$(CXX)" \
	CFLAGS="$(CFLAGS)" \
	CXXFLAGS="$(CXXFLAGS)" \
	CPPFLAGS="$(CPPFLAGS)" \
	LDFLAGS="$(LDFLAGS)" \
	$(MAKE) -C "$(abs_srcdir)/scripts/kconfig" \
		CONF_LIBS="@CONF_LIBS@" \
		MCONF_LIBS="@MCONF_LIBS@" \
		CURSES_LOC="@CURSES_LOC@" \
		conf mconf
	@echo "done."
	@touch .done

clean:
	@rm -f .done
	@$(MAKE) -C "$(abs_srcdir)/scripts/kconfig" clean

dirty-check:
	@case "$(version)" in \
		*-dirty) echo "refusing to install or package a dirty git tree!" ; exit 1 ;; \
	esac

install: all dirty-check
	@echo "installing PTXdist to $(DESTDIR)$(prefix)..."
	@rm -fr   "$(DESTDIR)$(instdir)"
	@mkdir -p "$(DESTDIR)$(instdir)"
	@tar -C "$(abs_srcdir)" -cf - \
		--exclude *~ \
		--exclude .git \
		--exclude .pc \
		--exclude .svn \
		--exclude autom4te.cache \
		--exclude config.log \
		--exclude config.status \
		--exclude debian \
		--exclude state \
		. | \
		tar -o -C "$(DESTDIR)$(instdir)" -xvf -
	@if [ \! -e "$(DESTDIR)$(instdir)/.tarball-version" ]; then \
		echo -n "${version}" > "$(DESTDIR)$(instdir)/.tarball-version"; \
	fi
	@mkdir -p "$(DESTDIR)$(bindir)"
	@rm -f    "$(DESTDIR)$(bindir)/ptxdist"
	@ln -sf   "$(instdir)/bin/ptxdist" "$(DESTDIR)$(bindir)/ptxdist-$(version)"
	@ln -sf   "$(instdir)/bin/ptxdist" "$(DESTDIR)$(bindir)/ptxdist"
	@if [ -d "$(DESTDIR)@BASH_COMPLETION_DIR@" -a \
		-w "$(DESTDIR)@BASH_COMPLETION_DIR@" ]; then \
		cp scripts/bash_completion "$(DESTDIR)@BASH_COMPLETION_DIR@/ptxdist"; \
	fi


dist: dirty-check
	@rm -rf "$(project)"
	@git archive "$(project)" --prefix="$(project)"/ | tar x

	echo -n "${version}" > "${project}/.tarball-version"
	cd "$(project)" && ./autogen.sh

	tar -cz \
		--exclude ".git" \
		--exclude ".pc" \
		--exclude ".svn" \
		--exclude "$(project)/autom4te.cache" \
		--exclude "$(project)/patches" \
		-f "$(project).tgz" \
		"$(project)"
	md5sum "$(project).tgz" > "$(project).tgz.md5"

	tar -cz \
		--exclude ".git" \
		--exclude ".pc" \
		--exclude ".svn" \
		--exclude "$(project)/autom4te.cache" \
		-f "$(project)-patches.tgz" \
		"$(project)/patches"
	md5sum "$(project)-patches.tgz" > "$(project)-patches.tgz.md5"

distclean: clean
	rm -fr Makefile
	rm -fr build-stamp
	rm -fr config.log config.status autom4te.cache

maintainer-clean: distclean
	rm -f configure