2 GITVERSION
=$(shell [ -d .git
] && git rev-list
--abbrev-commit
-n
1 HEAD |cut
-b
1-8)
5 libdir ?
= ${prefix}/lib
6 datadir ?
= ${prefix}/share
7 pkglibdir ?
= ${libdir}/dracut
8 sysconfdir ?
= ${prefix}/etc
9 bindir ?
= ${prefix}/bin
10 mandir ?
= ${prefix}/share
/man
12 man1pages
= lsinitrd
.1
14 man5pages
= dracut.conf
.5
16 man7pages
= dracut.cmdline
.7
18 man8pages
= dracut
.8 \
21 modules.d
/98systemd
/dracut-cmdline.service
.8 \
22 modules.d
/98systemd
/dracut-initqueue.service
.8 \
23 modules.d
/98systemd
/dracut-pre-pivot.service
.8 \
24 modules.d
/98systemd
/dracut-pre-trigger.service
.8 \
25 modules.d
/98systemd
/dracut-pre-udev.service
.8 \
26 modules.d
/98systemd
/initrd-switch-root.service
.8 \
27 modules.d
/98systemd
/udevadm-cleanup-db.service
.8
29 manpages
= $(man1pages
) $(man5pages
) $(man7pages
) $(man8pages
)
32 .PHONY
: install clean archive rpm testimage
test all check AUTHORS doc
34 all: syncheck dracut-version.sh dracut-install
36 DRACUT_INSTALL_SOURCE
= \
37 install/dracut-install.c \
42 DRACUT_INSTALL_HEADER
= \
48 dracut-install
: $(DRACUT_INSTALL_SOURCE
) $(DRACUT_INSTALL_HEADER
)
49 gcc
-std
=gnu99
-O2
-g
-Wall
-o dracut-install
$(DRACUT_INSTALL_SOURCE
)
52 indent
-i8
-nut
-br
-linux
-l120
install/dracut-install.c
54 doc
: $(manpages
) dracut.html
57 xsltproc
-o
$@
-nonet http
://docbook.sourceforge.net
/release
/xsl
/current
/manpages
/docbook.xsl
$<
60 asciidoc
-d manpage
-b docbook
-o
$@
$<
62 dracut.html
: dracut.asc
$(manpages
)
63 asciidoc
-a numbered
-d book
-b docbook
-o dracut.xml dracut.asc
64 xsltproc
-o dracut.html
--xinclude
-nonet \
65 --stringparam draft.mode yes \
66 --stringparam html.stylesheet \
67 http
://docs.redhat.com
/docs
/en-US
/Common_Content
/css
/default.css \
68 http
://docbook.sourceforge.net
/release
/xsl
/current
/xhtml
/docbook.xsl dracut.xml
71 install: doc dracut-version.sh
72 mkdir
-p
$(DESTDIR
)$(pkglibdir
)
73 mkdir
-p
$(DESTDIR
)$(bindir)
74 mkdir
-p
$(DESTDIR
)$(sysconfdir
)
75 mkdir
-p
$(DESTDIR
)$(pkglibdir
)/modules.d
76 mkdir
-p
$(DESTDIR
)$(mandir)/man1
$(DESTDIR
)$(mandir)/man5
$(DESTDIR
)$(mandir)/man7
$(DESTDIR
)$(mandir)/man8
77 install -m
0755 dracut.sh
$(DESTDIR
)$(bindir)/dracut
78 install -m
0755 dracut-catimages.sh
$(DESTDIR
)$(bindir)/dracut-catimages
79 install -m
0755 mkinitrd-dracut.sh
$(DESTDIR
)$(bindir)/mkinitrd
80 install -m
0755 lsinitrd.sh
$(DESTDIR
)$(bindir)/lsinitrd
81 install -m
0644 dracut.conf
$(DESTDIR
)$(sysconfdir
)/dracut.conf
82 mkdir
-p
$(DESTDIR
)$(sysconfdir
)/dracut.conf.d
83 install -m
0755 dracut-functions.sh
$(DESTDIR
)$(pkglibdir
)/dracut-functions.sh
84 install -m
0755 dracut-version.sh
$(DESTDIR
)$(pkglibdir
)/dracut-version.sh
85 ln
-s dracut-functions.sh
$(DESTDIR
)$(pkglibdir
)/dracut-functions
86 install -m
0755 dracut-logger.sh
$(DESTDIR
)$(pkglibdir
)/dracut-logger.sh
87 install -m
0755 dracut-initramfs-restore.sh
$(DESTDIR
)$(pkglibdir
)/dracut-initramfs-restore
88 cp
-arx modules.d
$(DESTDIR
)$(pkglibdir
)
89 for i in
$(man1pages
); do
install -m
0644 $$i $(DESTDIR
)$(mandir)/man1
/$${i
##*/}; done
90 for i in
$(man5pages
); do
install -m
0644 $$i $(DESTDIR
)$(mandir)/man5
/$${i
##*/}; done
91 for i in
$(man7pages
); do
install -m
0644 $$i $(DESTDIR
)$(mandir)/man7
/$${i
##*/}; done
92 for i in
$(man8pages
); do
install -m
0644 $$i $(DESTDIR
)$(mandir)/man8
/$${i
##*/}; done
93 ln
-s dracut.cmdline
.7 $(DESTDIR
)$(mandir)/man7
/dracut.kernel
.7
94 if
[ -n
"$(systemdsystemunitdir)" ]; then \
95 mkdir
-p
$(DESTDIR
)$(systemdsystemunitdir
); \
96 install -m
0644 dracut-shutdown.service
$(DESTDIR
)$(systemdsystemunitdir
); \
97 mkdir
-p
$(DESTDIR
)$(systemdsystemunitdir
)/shutdown.target.wants
; \
98 ln
-s ..
/dracut-shutdown.service \
99 $(DESTDIR
)$(systemdsystemunitdir
)/shutdown.target.wants
/dracut-shutdown.service
; \
101 install $(strip) -m
0755 dracut-install
$(DESTDIR
)$(pkglibdir
)/dracut-install
104 @echo
"DRACUT_VERSION=$(VERSION)-$(GITVERSION)" > dracut-version.sh
111 $(RM
) dracut-
*.rpm dracut-
*.
tar.bz2
113 $(RM
) $(manpages
) dracut.html
114 $(MAKE
) -C
test clean
116 archive
: dracut-
$(VERSION
)-$(GITVERSION
).
tar.bz2
118 dist: dracut-
$(VERSION
).
tar.bz2
120 dracut-
$(VERSION
).
tar.bz2
: doc
121 git archive
--format
=tar $(VERSION
) --prefix=dracut-
$(VERSION
)/ > dracut-
$(VERSION
).
tar
122 mkdir
-p dracut-
$(VERSION
)
123 cp
$(manpages
) dracut.html dracut-
$(VERSION
)
124 tar -rf dracut-
$(VERSION
).
tar dracut-
$(VERSION
)/*.
[0-9] dracut-
$(VERSION
)/dracut.html
125 rm -fr dracut-
$(VERSION
).
tar.bz2 dracut-
$(VERSION
)
126 bzip2
-9 dracut-
$(VERSION
).
tar
127 rm -f dracut-
$(VERSION
).
tar
129 rpm
: dracut-
$(VERSION
).
tar.bz2
130 rpmbuild
=$$(mktemp
-d
-t rpmbuild-dracut.XXXXXX
); src
=$$(pwd
); \
131 cp dracut-
$(VERSION
).
tar.bz2
"$$rpmbuild"; \
132 LC_MESSAGES
=C
$$src/git2spec.pl
$(VERSION
) "$$rpmbuild" < dracut.spec
> $$rpmbuild/dracut.spec
; \
133 (cd
"$$rpmbuild"; rpmbuild
--define "_topdir $$PWD" --define "_sourcedir $$PWD" \
134 --define "_specdir $$PWD" --define "_srcrpmdir $$PWD" \
135 --define "_rpmdir $$PWD" -ba dracut.spec
; ) && \
136 ( mv
"$$rpmbuild"/$$(arch
)/*.rpm .
; mv
"$$rpmbuild"/*.src.rpm .
;rm -fr
"$$rpmbuild"; ls
*.rpm
)
139 @ret
=0;for i in dracut-initramfs-restore.sh dracut-logger.sh \
140 modules.d
/99base
/init.sh modules.d
/*/*.sh
; do \
141 [ "$${i##*/}" = "module-setup.sh" ] && continue
; \
142 read line
< "$$i"; [ "$${line#*bash*}" != "$$line" ] && continue
; \
143 dash
-n
"$$i" ; ret
=$$(($$ret+$$?
)); \
145 @ret
=0;for i in
*.sh mkinitrd-dracut.sh modules.d
/*/*.sh \
146 modules.d
/*/module-setup.sh
; do \
147 bash
-n
"$$i" ; ret
=$$(($$ret+$$?
)); \
151 $(MAKE
) -C
test check
154 .
/dracut.sh
-l
-a debug
-f test-
$(shell uname
-r
).img
$(shell uname
-r
)
155 @echo wrote test-
$(shell uname
-r
).img
158 .
/dracut.sh
-l
-a debug
--kernel-only
-f test-kernel-
$(shell uname
-r
).img
$(shell uname
-r
)
159 @echo wrote test-
$(shell uname
-r
).img
160 .
/dracut.sh
-l
-a debug
--no-kernel
-f test-dracut.img
$(shell uname
-r
)
161 @echo wrote test-dracut.img
164 .
/dracut.sh
-H
-l
-a debug
-f test-
$(shell uname
-r
).img
$(shell uname
-r
)
165 @echo wrote test-
$(shell uname
-r
).img
168 git shortlog
--numbered
--summary
-e |while read a rest
; do echo
$$rest;done
> AUTHORS
170 dracut.html.sign
: dracut-
$(VERSION
).
tar.bz2
171 gpg-sign-all dracut-
$(VERSION
).
tar.bz2 dracut.html
173 upload
: dracut.html.sign
174 kup put dracut-
$(VERSION
).
tar.bz2 dracut-
$(VERSION
).
tar.sign
/pub
/linux
/utils
/boot
/dracut
/
175 kup put dracut.html dracut.html.sign
/pub
/linux
/utils
/boot
/dracut
/