dnsmasq.inc 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. SUMMARY = "Lightweight, easy to configure DNS forwarder and DHCP server"
  2. HOMEPAGE = "http://www.thekelleys.org.uk/dnsmasq/doc.html"
  3. SECTION = "net"
  4. # GPLv3 was added in version 2.41 as license option
  5. LICENSE = "GPLv2 | GPLv3"
  6. LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
  7. file://COPYING-v3;md5=d32239bcb673463ab874e80d47fae504"
  8. #at least versions 2.15 and prior are moved to the archive folder on the server
  9. SRC_URI = "http://www.thekelleys.org.uk/dnsmasq/${@['archive/', ''][float(d.getVar('PV').split('.')[1]) > 15]}dnsmasq-${PV}.tar.gz;name=dnsmasq-${PV} \
  10. file://init \
  11. file://dnsmasq.conf \
  12. file://dnsmasq-resolvconf.service \
  13. file://dnsmasq-noresolvconf.service \
  14. "
  15. inherit pkgconfig update-rc.d systemd
  16. INITSCRIPT_NAME = "dnsmasq"
  17. INITSCRIPT_PARAMS = "defaults"
  18. PACKAGECONFIG ?= ""
  19. PACKAGECONFIG[dbus] = ",,dbus"
  20. PACKAGECONFIG[idn] = ",,libidn"
  21. PACKAGECONFIG[conntrack] = ",,libnetfilter-conntrack"
  22. PACKAGECONFIG[lua] = ",,lua"
  23. PACKAGECONFIG[resolvconf] = ",,,resolvconf"
  24. EXTRA_OEMAKE = "\
  25. 'COPTS=${@bb.utils.contains('PACKAGECONFIG', 'dbus', '-DHAVE_DBUS', '', d)} \
  26. ${@bb.utils.contains('PACKAGECONFIG', 'idn', '-DHAVE_IDN', '', d)} \
  27. ${@bb.utils.contains('PACKAGECONFIG', 'conntrack', '-DHAVE_CONNTRACK', '', d)} \
  28. ${@bb.utils.contains('PACKAGECONFIG', 'lua', '-DHAVE_LUASCRIPT', '', d)}' \
  29. 'CFLAGS=${CFLAGS}' \
  30. 'LDFLAGS=${LDFLAGS}' \
  31. "
  32. SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'resolvconf', 'file://dnsmasq.resolvconf file://99_dnsmasq file://dnsmasq-resolvconf-helper', '', d)}"
  33. do_compile_append() {
  34. # build dhcp_release
  35. cd ${S}/contrib/lease-tools
  36. oe_runmake
  37. }
  38. do_install () {
  39. oe_runmake "PREFIX=${D}${prefix}" \
  40. "BINDIR=${D}${bindir}" \
  41. "MANDIR=${D}${mandir}" \
  42. install
  43. install -d ${D}${sysconfdir}/ ${D}${sysconfdir}/init.d ${D}${sysconfdir}/dnsmasq.d
  44. install -m 644 ${WORKDIR}/dnsmasq.conf ${D}${sysconfdir}/
  45. install -m 755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/dnsmasq
  46. install -d ${D}${systemd_unitdir}/system
  47. if [ "${@bb.utils.filter('PACKAGECONFIG', 'resolvconf', d)}" ]; then
  48. install -m 0644 ${WORKDIR}/dnsmasq-resolvconf.service ${D}${systemd_unitdir}/system/dnsmasq.service
  49. else
  50. install -m 0644 ${WORKDIR}/dnsmasq-noresolvconf.service ${D}${systemd_unitdir}/system/dnsmasq.service
  51. fi
  52. install -m 0755 ${S}/contrib/lease-tools/dhcp_release ${D}${bindir}
  53. if [ "${@bb.utils.filter('PACKAGECONFIG', 'dbus', d)}" ]; then
  54. install -d ${D}${sysconfdir}/dbus-1/system.d
  55. install -m 644 dbus/dnsmasq.conf ${D}${sysconfdir}/dbus-1/system.d/
  56. fi
  57. if [ "${@bb.utils.filter('PACKAGECONFIG', 'resolvconf', d)}" ]; then
  58. install -d ${D}${sysconfdir}/resolvconf/update.d/
  59. install -m 0755 ${WORKDIR}/dnsmasq.resolvconf ${D}${sysconfdir}/resolvconf/update.d/dnsmasq
  60. install -d ${D}${sysconfdir}/default/volatiles
  61. install -m 0644 ${WORKDIR}/99_dnsmasq ${D}${sysconfdir}/default/volatiles
  62. install -m 0755 ${WORKDIR}/dnsmasq-resolvconf-helper ${D}${bindir}
  63. fi
  64. }
  65. CONFFILES_${PN} = "${sysconfdir}/dnsmasq.conf"
  66. RPROVIDES_${PN} += "${PN}-systemd"
  67. RREPLACES_${PN} += "${PN}-systemd"
  68. RCONFLICTS_${PN} += "${PN}-systemd"
  69. SYSTEMD_SERVICE_${PN} = "dnsmasq.service"