]> git.ipfire.org Git - thirdparty/dracut.git/blame - Makefile
lvm: use --sysinit, if lvm version >= v2.02.65
[thirdparty/dracut.git] / Makefile
CommitLineData
c033d96e 1VERSION=008
65673832 2GITVERSION=$(shell [ -d .git ] && git rev-list --abbrev-commit -n 1 HEAD |cut -b 1-8)
7323a621 3
13d942e1
LA
4prefix ?= /usr
5datadir ?= ${prefix}/share
6pkglibdir ?= ${datadir}/dracut
7sysconfdir ?= ${prefix}/etc
8sbindir ?= ${prefix}/sbin
9mandir ?= ${prefix}/share/man
59615e06 10
cdc8d9c4 11manpages = dracut.8 dracut.kernel.7 dracut.conf.5 dracut-catimages.8 dracut-gencmdline.8
5cf5569d 12
3f793c91 13.PHONY: install clean archive rpm testimage test all check AUTHORS
c4da2407 14
7f128283
HH
15ifeq (1,${WITH_SWITCH_ROOT})
16targets = modules.d/99base/switch_root
17else
18targets =
19endif
20
2d9f5858 21all: $(targets) $(manpages) dracut.html
cdc8d9c4
HH
22
23%: %.xml
24 xsltproc -o $@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
533cd778 25
2d9f5858 26dracut.html: dracut.xml $(manpages)
1b4a9d8a
HH
27 xsltproc -o dracut.html --xinclude -nonet \
28 --stringparam draft.mode yes \
29 --stringparam html.stylesheet http://docs.redhat.com/docs/en-US/Common_Content/css/default.css \
498a1312 30 http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl dracut.xml
2d9f5858 31
5cf5569d
HH
32modules.d/99base/switch_root: switch_root.c
33 gcc -D _GNU_SOURCE -D 'PACKAGE_STRING="dracut"' -std=gnu99 -fsigned-char -g -O2 -o modules.d/99base/switch_root switch_root.c
32d6bc5d 34
533cd778 35install:
59615e06
HH
36 mkdir -p $(DESTDIR)$(pkglibdir)
37 mkdir -p $(DESTDIR)$(sbindir)
38 mkdir -p $(DESTDIR)$(sysconfdir)
39 mkdir -p $(DESTDIR)$(pkglibdir)/modules.d
cdc8d9c4 40 mkdir -p $(DESTDIR)$(mandir)/man{5,7,8}
59615e06 41 install -m 0755 dracut $(DESTDIR)$(sbindir)/dracut
a6f8c083 42 install -m 0755 dracut-gencmdline $(DESTDIR)$(sbindir)/dracut-gencmdline
5494f08c 43 install -m 0755 dracut-catimages $(DESTDIR)$(sbindir)/dracut-catimages
63d8d27b
HH
44 install -m 0755 mkinitrd-dracut.sh $(DESTDIR)$(sbindir)/mkinitrd
45 install -m 0755 lsinitrd $(DESTDIR)$(sbindir)/lsinitrd
7f128283 46ifeq (1,${WITH_SWITCH_ROOT})
68ea18cf 47 install -m 0755 modules.d/99base/switch_root $(DESTDIR)$(sbindir)/switch_root
7f128283 48endif
59615e06 49 install -m 0644 dracut.conf $(DESTDIR)$(sysconfdir)/dracut.conf
2c2c4580 50 mkdir -p $(DESTDIR)$(sysconfdir)/dracut.conf.d
59615e06
HH
51 install -m 0755 dracut-functions $(DESTDIR)$(pkglibdir)/dracut-functions
52 cp -arx modules.d $(DESTDIR)$(pkglibdir)
11e4b916 53 install -m 0644 dracut.8 $(DESTDIR)$(mandir)/man8
66e45737
HH
54 install -m 0644 dracut-catimages.8 $(DESTDIR)$(mandir)/man8
55 install -m 0644 dracut-gencmdline.8 $(DESTDIR)$(mandir)/man8
6cc96b35 56 install -m 0644 dracut.conf.5 $(DESTDIR)$(mandir)/man5
5bb59e42 57 install -m 0644 dracut.kernel.7 $(DESTDIR)$(mandir)/man7
7f128283 58ifeq (1,${WITH_SWITCH_ROOT})
68ea18cf 59 rm $(DESTDIR)$(pkglibdir)/modules.d/99base/switch_root
7f128283 60endif
834f6145 61
533cd778 62clean:
5150d44a
63 $(RM) *~
64 $(RM) */*~
65 $(RM) */*/*~
66 $(RM) modules.d/99base/switch_root
67 $(RM) test-*.img
68 $(RM) dracut-*.rpm dracut-*.tar.bz2
2d9f5858 69 $(RM) $(manpages) dracut.html
5150d44a 70 $(MAKE) -C test clean
533cd778 71
6b2a2be3
HH
72archive: dracut-$(VERSION)-$(GITVERSION).tar.bz2
73
f1bbaa64
HH
74dist: dracut-$(VERSION).tar.bz2
75
76dracut-$(VERSION).tar.bz2:
77 git archive --format=tar $(VERSION) --prefix=dracut-$(VERSION)/ |bzip2 > dracut-$(VERSION).tar.bz2
78
6b2a2be3 79dracut-$(VERSION)-$(GITVERSION).tar.bz2:
7323a621
HH
80 git archive --format=tar HEAD --prefix=dracut-$(VERSION)-$(GITVERSION)/ |bzip2 > dracut-$(VERSION)-$(GITVERSION).tar.bz2
81
f1bbaa64 82
b54cac21 83rpm: clean dracut-$(VERSION).tar.bz2
f1bbaa64
HH
84 rpmbuild --define "_topdir $$PWD" --define "_sourcedir $$PWD" --define "_specdir $$PWD" --define "_srcrpmdir $$PWD" --define "_rpmdir $$PWD" -ba dracut.spec
85 rm -fr BUILD BUILDROOT
86
87gitrpm: dracut-$(VERSION)-$(GITVERSION).tar.bz2
54b87586
HH
88 echo "%define gittag $(GITVERSION)" > dracut.spec.git
89 cat dracut.spec >> dracut.spec.git
90 mv dracut.spec dracut.spec.bak
91 mv dracut.spec.git dracut.spec
0cd23d77 92 rpmbuild --define "_topdir $$PWD" --define "_sourcedir $$PWD" --define "_specdir $$PWD" --define "_srcrpmdir $$PWD" --define "_rpmdir $$PWD" --define "gittag $(GITVERSION)" -ba dracut.spec || :
54b87586 93 mv dracut.spec.bak dracut.spec
0680bbaf 94 rm -fr BUILD BUILDROOT
ccd71eeb 95
c00f04f5 96check: all
5cb6c761
HH
97 @ret=0;for i in modules.d/99base/init modules.d/*/*.sh; do \
98 dash -n "$$i" ; ret=$$(($$ret+$$?)); \
99 done;exit $$ret
5150d44a 100 $(MAKE) -C test check
5cb6c761 101
2f525c49 102testimage: all
f4da8073 103 ./dracut -l -a debug -f test-$(shell uname -r).img $(shell uname -r)
8ac8d68a 104 @echo wrote test-$(shell uname -r).img
33ee031c
HH
105
106testimages: all
107 ./dracut -l -a debug --kernel-only -f test-kernel-$(shell uname -r).img $(shell uname -r)
108 @echo wrote test-$(shell uname -r).img
109 ./dracut -l -a debug --no-kernel -f test-dracut.img $(shell uname -r)
110 @echo wrote test-dracut.img
6cc96b35 111
bdccc34e
HH
112hostimage: all
113 ./dracut -H -l -a debug -f test-$(shell uname -r).img $(shell uname -r)
114 @echo wrote test-$(shell uname -r).img
33ee031c 115
3f793c91
HH
116AUTHORS:
117 git shortlog --numbered --summary -e |while read a rest; do echo $$rest;done > AUTHORS