lxdm_0.5.3.bb 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. SUMMARY = "LXDM is the lightweight display manager"
  2. HOMEPAGE = "http://blog.lxde.org/?p=531"
  3. LICENSE = "GPLv3"
  4. LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
  5. SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}%20${PV}/${BPN}-${PV}.tar.xz \
  6. file://lxdm.conf \
  7. ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'file://lxdm-pam file://lxdm-pam-debug', '', d)} \
  8. ${@bb.utils.contains("DISTRO_TYPE", "debug", "", "file://0001-lxdm.conf.in-blacklist-root-for-release-images.patch",d)} \
  9. file://0002-let-autotools-create-lxdm.conf.patch \
  10. file://0003-check-for-libexecinfo-providing-backtrace-APIs.patch \
  11. file://0004-fix-css-under-gtk-3.20.patch \
  12. "
  13. SRC_URI[md5sum] = "061caae432634e6db38bbdc84bc6ffa0"
  14. SRC_URI[sha256sum] = "4891efee81c72a400cc6703e40aa76f3f3853833d048b72ec805da0f93567f2f"
  15. PE = "1"
  16. DEPENDS = "virtual/libintl intltool-native cairo dbus gdk-pixbuf glib-2.0 gtk+3 virtual/libx11 libxcb pango iso-codes"
  17. DEPENDS += "${@bb.utils.contains("DISTRO_FEATURES", "systemd", "", "consolekit", d)}"
  18. DEPENDS_append_libc-musl = " libexecinfo"
  19. # combine oe-core way with angstrom DISTRO_TYPE
  20. DISTRO_TYPE ?= "${@bb.utils.contains("IMAGE_FEATURES", "debug-tweaks", "debug", "",d)}"
  21. inherit autotools pkgconfig gettext systemd features_check
  22. # depends on virtual/libx11
  23. REQUIRED_DISTRO_FEATURES = "x11"
  24. CFLAGS_append = " -fno-builtin-fork -fno-builtin-memset -fno-builtin-strstr "
  25. LDFLAGS_append_libc-musl = " -lexecinfo"
  26. EXTRA_OECONF += "--enable-gtk3=yes --enable-password=yes --with-x -with-xconn=xcb \
  27. ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '--with-systemdsystemunitdir=${systemd_unitdir}/system/ --disable-consolekit', '--without-systemdsystemunitdir', d)} \
  28. ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '--with-pam', '--without-pam', d)} \
  29. "
  30. do_configure_prepend() {
  31. cp ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in ${S}/po/
  32. }
  33. do_compile_append() {
  34. # default background configured not available / no password field available / no default screensaver
  35. sed -i -e 's,bg=,# bg=,g' \
  36. -e 's,# skip_password=,skip_password=,g' \
  37. -e 's,# arg=.*,arg=${bindir}/X -s 0,g' \
  38. ${S}/data/lxdm.conf.in
  39. # add default configuration
  40. oe_runmake -C ${B}/data lxdm.conf
  41. }
  42. do_install_append() {
  43. install -d ${D}${localstatedir}/lib/lxdm
  44. install -m 644 ${WORKDIR}/lxdm.conf ${D}${localstatedir}/lib/lxdm
  45. if ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'true', 'false', d)}; then
  46. # ArchLinux version of pam config has the following advantages:
  47. # * simple setup of passwordless login
  48. # * in XFCE powerdown/restart enabled in logoff dialog
  49. install -m 644 ${WORKDIR}/${@bb.utils.contains("DISTRO_TYPE", "debug", "lxdm-pam-debug", "lxdm-pam",d)} ${D}${sysconfdir}/pam.d/lxdm
  50. fi
  51. }
  52. # make installed languages choosable
  53. pkg_postinst_${PN} () {
  54. langs=""
  55. for lang in `find $D${libdir}/locale -maxdepth 1 | grep _ | sort`; do
  56. lang=`basename $lang`
  57. if [ "x$langs" = "x" ]; then
  58. langs="$lang"
  59. else
  60. langs="$langs $lang"
  61. fi
  62. done
  63. sed -i "s:last_langs=.*$:last_langs=$langs:g" $D${localstatedir}/lib/lxdm/lxdm.conf
  64. }
  65. RDEPENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-loginuid', '', d)} setxkbmap bash librsvg-gtk"
  66. RPROVIDES_${PN} += "${PN}-systemd"
  67. RREPLACES_${PN} += "${PN}-systemd"
  68. RCONFLICTS_${PN} += "${PN}-systemd"
  69. SYSTEMD_SERVICE_${PN} = "lxdm.service"