Andrew Geissler | eff2747 | 2021-10-29 15:35:00 -0500 | [diff] [blame] | 1 | SUMMARY = "Kernel based automounter for linux" |
| 2 | SECTION = "utils" |
| 3 | LICENSE = "GPL-2.0" |
| 4 | LIC_FILES_CHKSUM = "file://COPYING;md5=ee9324a6f564bb2376b63878ac396798" |
| 5 | |
| 6 | DEPENDS += "libtirpc flex-native bison-native e2fsprogs openssl libxml2 util-linux cyrus-sasl libnsl2" |
| 7 | |
| 8 | CFLAGS += "-I${STAGING_INCDIR}/tirpc" |
| 9 | |
| 10 | inherit autotools-brokensep systemd update-rc.d pkgconfig |
| 11 | |
| 12 | SRC_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/autofs-${PV}.tar.gz \ |
| 13 | file://no-bash.patch \ |
| 14 | file://cross.patch \ |
| 15 | file://fix_disable_ldap.patch \ |
| 16 | file://autofs-5.0.7-fix-lib-deps.patch \ |
| 17 | file://add-the-needed-stdarg.h.patch \ |
| 18 | file://using-pkg-config-to-detect-libxml-2.0-and-krb5.patch \ |
| 19 | file://force-STRIP-to-emtpy.patch \ |
| 20 | file://remove-bashism.patch \ |
| 21 | file://fix-the-YACC-rule-to-fix-a-building-failure.patch \ |
| 22 | file://0001-Define-__SWORD_TYPE-and-_PATH_NSSWITCH_CONF.patch \ |
| 23 | file://0002-Replace-__S_IEXEC-with-S_IEXEC.patch \ |
| 24 | file://pkgconfig-libnsl.patch \ |
| 25 | file://0001-modules-lookup_multi.c-Replace-__S_IEXEC-with-S_IEXE.patch \ |
| 26 | file://0001-Do-not-hardcode-path-for-pkg.m4.patch \ |
| 27 | file://0001-Bug-fix-for-pid_t-not-found-on-musl.patch \ |
| 28 | file://0001-Define-__SWORD_TYPE-if-undefined.patch \ |
| 29 | " |
| 30 | SRC_URI[sha256sum] = "0bd401c56f0eb1ca6251344c3a3d70bface3eccf9c67117cd184422c4cace30c" |
| 31 | |
| 32 | UPSTREAM_CHECK_URI = "${KERNELORG_MIRROR}/linux/daemons/autofs/v5/" |
| 33 | |
| 34 | INITSCRIPT_NAME = "autofs" |
| 35 | INITSCRIPT_PARAMS = "defaults" |
| 36 | |
| 37 | # FIXME: modules/Makefile has crappy rules that don't obey LDFLAGS |
| 38 | #CFLAGS += "${LDFLAGS}" |
| 39 | |
| 40 | PACKAGECONFIG[systemd] = "--with-systemd=${systemd_unitdir}/system,--without-systemd,systemd" |
| 41 | |
| 42 | PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" |
| 43 | |
| 44 | EXTRA_OEMAKE = "DONTSTRIP=1" |
| 45 | EXTRA_OECONF += "--disable-mount-locking \ |
| 46 | --enable-ignore-busy --with-openldap=no \ |
| 47 | --with-confdir=${sysconfdir}/default \ |
| 48 | --with-fifodir=/run \ |
| 49 | --with-flagdir=/run \ |
| 50 | --with-sasl=no --with-libtirpc \ |
| 51 | --with-mapdir=${sysconfdir} \ |
| 52 | --with-path=${STAGING_BINDIR_NATIVE} \ |
| 53 | --with-fifodir=${localstatedir}/run \ |
| 54 | --with-flagdir=${localstatedir}/run \ |
| 55 | " |
| 56 | CACHED_CONFIGUREVARS = "ac_cv_path_RANLIB=${RANLIB} \ |
| 57 | ac_cv_path_RPCGEN=rpcgen \ |
| 58 | initdir=${INIT_D_DIR} \ |
| 59 | piddir=/run \ |
| 60 | " |
| 61 | |
| 62 | do_configure:prepend () { |
| 63 | if [ ! -e ${S}/acinclude.m4 ]; then |
| 64 | cp ${S}/aclocal.m4 ${S}/acinclude.m4 |
| 65 | fi |
| 66 | cp ${STAGING_DATADIR_NATIVE}/aclocal/pkg.m4 . |
| 67 | } |
| 68 | |
| 69 | do_install:append () { |
| 70 | # samples have been removed from SUBDIRS from 5.1.5, need to install separately |
| 71 | oe_runmake 'DESTDIR=${D}' install_samples |
| 72 | |
| 73 | if [ -d ${D}/run ]; then |
| 74 | rmdir ${D}/run |
| 75 | fi |
| 76 | if [ -d ${D}${localstatedir}/run ]; then |
| 77 | rmdir ${D}${localstatedir}/run |
| 78 | fi |
| 79 | # On hybrid systemd/sysvinit builds, we need to install the sysvinit script by hand. |
| 80 | if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then |
| 81 | install -d -m 755 ${D}${INIT_D_DIR} |
| 82 | install -m 755 ${S}/samples/rc.autofs ${D}${INIT_D_DIR}/autofs |
| 83 | fi |
| 84 | } |
| 85 | SECURITY_CFLAGS = "${SECURITY_NO_PIE_CFLAGS}" |
| 86 | |
| 87 | # all the libraries are unversioned, so don't pack it on PN-dev |
| 88 | SOLIBS = ".so" |
| 89 | FILES_SOLIBSDEV = "" |
| 90 | # Some symlinks are created in plugins dir e.g. |
| 91 | # mount_nfs4.so -> mount_nfs.so |
| 92 | INSANE_SKIP:${PN} = "dev-so" |
| 93 | |
| 94 | RPROVIDES:${PN} += "${PN}-systemd" |
| 95 | RREPLACES:${PN} += "${PN}-systemd" |
| 96 | RCONFLICTS:${PN} += "${PN}-systemd" |
| 97 | SYSTEMD_SERVICE:${PN} = "autofs.service" |