From 607fec3e7965e3d38d764008e2b0c29757d90777 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Wed, 13 Apr 2016 11:13:32 +0200 Subject: [PATCH] Use pkg-config for libkmod CFLAGS and LIBS --- Makefile | 4 ++-- configure | 7 +++++++ dracut.spec | 9 ++++++--- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 0a1ae6c..d28e4cf 100644 --- a/Makefile +++ b/Makefile @@ -12,7 +12,7 @@ pkglibdir ?= ${libdir}/dracut sysconfdir ?= ${prefix}/etc bindir ?= ${prefix}/bin mandir ?= ${prefix}/share/man -CFLAGS ?= -O2 -g -Wall +CFLAGS ?= -O2 -g -Wall $(KMOD_CFLAGS) CFLAGS += -std=gnu99 -D_FILE_OFFSET_BITS=64 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 bashcompletiondir ?= ${datadir}/bash-completion/completions pkgconfigdatadir ?= $(datadir)/pkgconfig @@ -61,7 +61,7 @@ install/util.o: install/util.c install/util.h install/macro.h install/log.h install/strv.o: install/strv.c install/strv.h install/util.h install/macro.h install/log.h install/dracut-install: $(DRACUT_INSTALL_OBJECTS) - $(CC) $(LDFLAGS) -o $@ $(DRACUT_INSTALL_OBJECTS) $(LDLIBS) -lkmod + $(CC) $(LDFLAGS) -o $@ $(DRACUT_INSTALL_OBJECTS) $(LDLIBS) $(KMOD_LIBS) dracut-install: install/dracut-install ln -fs $< $@ diff --git a/configure b/configure index 0bd3d2d..c92cb99 100755 --- a/configure +++ b/configure @@ -50,6 +50,11 @@ while (($# > 0)); do shift done +if ! pkg-config --exists --print-errors " libkmod >= 15 "; then + echo "dracut needs pkg-config and libkmod >= 15." >&2 + exit 1 +fi + cat > Makefile.inc.$$ <= 15 ") +KMOD_LIBS ?= $(pkg-config --libs " libkmod >= 15 ") EOF { diff --git a/dracut.spec b/dracut.spec index 9e19fcc..7b9d675 100644 --- a/dracut.spec +++ b/dracut.spec @@ -39,6 +39,7 @@ Source1: https://www.gnu.org/licenses/lgpl-2.1.txt BuildRequires: bash git +BuildRequires: kmod-devel >= 15 %if 0%{?fedora} || 0%{?rhel} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -46,7 +47,6 @@ BuildRequires: pkgconfig %endif %if 0%{?fedora} BuildRequires: bash-completion -BuildRequires: pkgconfig %endif %if 0%{?suse_version} @@ -223,10 +223,13 @@ This package contains tools to assemble the local initrd and host configuration. cp %{SOURCE1} . %build -%configure --systemdsystemunitdir=%{_unitdir} --bashcompletiondir=$(pkg-config --variable=completionsdir bash-completion) --libdir=%{_prefix}/lib \ +%configure --systemdsystemunitdir=%{_unitdir} \ + --bashcompletiondir=$(pkg-config --variable=completionsdir bash-completion) \ + --libdir=%{_prefix}/lib \ %if %{without doc} - --disable-documentation + --disable-documentation \ %endif + ${NULL} make %{?_smp_mflags}