blob: c77773332c176a58a364c8d770c9dd9eed85cfa1 [file] [log] [blame]
Brad Bishopc342db32019-05-15 21:57:59 -04001SUMMARY = "Package manager forked from Yum, using libsolv as a dependency resolver"
2LICENSE = "GPLv2"
3LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
4 file://PACKAGE-LICENSING;md5=4a0548e303dbc77f067335b4d688e745 \
5 "
6
7SRC_URI = "git://github.com/rpm-software-management/dnf.git \
8 file://0001-Corretly-install-tmpfiles.d-configuration.patch \
9 file://0001-Do-not-hardcode-etc-and-systemd-unit-directories.patch \
10 file://0005-Do-not-prepend-installroot-to-logdir.patch \
11 file://0029-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
12 file://0030-Run-python-scripts-using-env.patch \
13 "
14
15SRCREV = "9947306a55271b8b7c9e2b6e3b7d582885b6045d"
16UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
17
18S = "${WORKDIR}/git"
19
20inherit cmake gettext bash-completion distutils3-base systemd
21
22DEPENDS += "libdnf librepo libcomps python3-iniparse"
23
24# manpages generation requires http://www.sphinx-doc.org/
25EXTRA_OECMAKE = " -DWITH_MAN=0 -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3"
26
27BBCLASSEXTEND = "native nativesdk"
28
29RDEPENDS_${PN} += " \
30 python3-core \
31 python3-codecs \
32 python3-netclient \
33 python3-email \
34 python3-threading \
35 python3-distutils \
36 python3-logging \
37 python3-fcntl \
38 librepo \
39 python3-shell \
40 libcomps \
41 libdnf \
42 python3-sqlite3 \
43 python3-compression \
44 python3-rpm \
45 python3-iniparse \
46 python3-json \
47 python3-curses \
48 python3-misc \
49 python3-gpg \
50 "
51
52RDEPENDS_${PN}_class-native = ""
53
54RRECOMMENDS_${PN}_class-target += "gnupg"
55
56# Create a symlink called 'dnf' as 'make install' does not do it, but
57# .spec file in dnf source tree does (and then Fedora and dnf documentation
58# says that dnf binary is plain 'dnf').
59do_install_append() {
60 lnr ${D}/${bindir}/dnf-3 ${D}/${bindir}/dnf
61 lnr ${D}/${bindir}/dnf-automatic-3 ${D}/${bindir}/dnf-automatic
62}
63
64# Direct dnf-native to read rpm configuration from our sysroot, not the one it was compiled in
65do_install_append_class-native() {
66 create_wrapper ${D}/${bindir}/dnf \
67 RPM_CONFIGDIR=${STAGING_LIBDIR_NATIVE}/rpm \
68 RPM_NO_CHROOT_FOR_SCRIPTS=1
69}
70
71do_install_append_class-nativesdk() {
72 create_wrapper ${D}/${bindir}/dnf \
73 RPM_CONFIGDIR=${SDKPATHNATIVE}${libdir_nativesdk}/rpm \
74 RPM_NO_CHROOT_FOR_SCRIPTS=1
75}
76
77SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \
78 dnf-automatic.service dnf-automatic.timer \
79 dnf-automatic-download.service dnf-automatic-download.timer \
80 dnf-automatic-install.service dnf-automatic-install.timer \
81 dnf-automatic-notifyonly.service dnf-automatic-notifyonly.timer \
82"
83SYSTEMD_AUTO_ENABLE ?= "disable"