hiawatha_11.2.bb 3.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. SUMMARY = "Lightweight secure web server"
  2. HOMEPAGE = "https://hiawatha.leisink.net/"
  3. LICENSE = "GPL-2.0-only"
  4. LIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
  5. DEPENDS = "libxml2 libxslt virtual/crypt"
  6. SECTION = "net"
  7. SRC_URI = "https://hiawatha.leisink.net/files/hiawatha-${PV}.tar.gz \
  8. file://hiawatha-init \
  9. file://hiawatha.service "
  10. SRC_URI[sha256sum] = "99c64f76927f93469f062ab76b74eb79a397ea4be12da86bf746b2bb57cf1bc5"
  11. INITSCRIPT_NAME = "hiawatha"
  12. INITSCRIPT_PARAMS = "defaults 70"
  13. SYSTEMD_SERVICE:${PN} = "hiawatha.service"
  14. inherit cmake update-rc.d systemd
  15. CFLAGS += "-std=gnu17"
  16. EXTRA_OECMAKE = " -DENABLE_IPV6=OFF \
  17. -DENABLE_CACHE=OFF \
  18. -DENABLE_DEBUG=OFF \
  19. -DENABLE_TLS=OFF \
  20. -DENABLE_TOOLKIT=OFF \
  21. -DENABLE_CHROOT=OFF \
  22. -DENABLE_XSLT=ON \
  23. -DENABLE_TOMAHAWK=OFF \
  24. -DCMAKE_INSTALL_MANDIR=${mandir} \
  25. -DCMAKE_INSTALL_BINDIR=${bindir} \
  26. -DCMAKE_INSTALL_SBINDIR=${sbindir} \
  27. -DCMAKE_INSTALL_SYSCONFDIR=${sysconfdir} \
  28. -DCMAKE_INSTALL_LIBDIR=${libdir} \
  29. -DCMAKE_INSTALL_FULL_LOCALSTATEDIR=${localstatedir}"
  30. do_install:append() {
  31. # Copy over init script and sed in the correct sbin path
  32. sed -i 's,sed_sbin_path,${sbindir},' ${UNPACKDIR}/hiawatha-init
  33. mkdir -p ${D}${sysconfdir}/init.d
  34. install -m 0755 ${UNPACKDIR}/hiawatha-init ${D}${sysconfdir}/init.d/hiawatha
  35. # configure php-fcgi to have a working configuration
  36. # by default if php is installed
  37. echo "Server = ${bindir}/php-cgi ; 2 ; 127.0.0.1:2005 ; nobody:nobody ; ${sysconfdir}/php/hiawatha-php5/php.ini" >> ${D}${sysconfdir}/hiawatha/php-fcgi.conf
  38. if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
  39. install -d ${D}/${systemd_unitdir}/system
  40. install -m 644 ${UNPACKDIR}/hiawatha.service ${D}/${systemd_unitdir}/system
  41. fi
  42. # /var/log/hiawatha and /var/lib/hiawatha needs to be created in runtime.
  43. # Use rmdir to catch if upstream stops creating these dirs, or adds
  44. # something else in /var/log.
  45. rmdir ${D}${localstatedir}/log/${BPN} ${D}${localstatedir}/log
  46. rmdir ${D}${localstatedir}/run
  47. rmdir --ignore-fail-on-non-empty ${D}${localstatedir}
  48. # Create /var/log/hiawatha at runtime.
  49. if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then
  50. install -d ${D}${nonarch_libdir}/tmpfiles.d
  51. echo "d ${localstatedir}/log/${BPN} - - - -" > ${D}${nonarch_libdir}/tmpfiles.d/${BPN}.conf
  52. fi
  53. if [ "${@bb.utils.filter('DISTRO_FEATURES', 'sysvinit', d)}" ]; then
  54. install -d ${D}${sysconfdir}/default/volatiles
  55. echo "d root root 0755 ${localstatedir}/log/${BPN} none" > ${D}${sysconfdir}/default/volatiles/99_${BPN}
  56. fi
  57. }
  58. CONFFILES:${PN} = " \
  59. ${sysconfdir}/hiawatha/cgi-wrapper.conf \
  60. ${sysconfdir}/hiawatha/hiawatha.conf \
  61. ${sysconfdir}/hiawatha/index.xslt \
  62. ${sysconfdir}/hiawatha/mimetype.conf \
  63. ${sysconfdir}/hiawatha/php-fcgi.conf \
  64. "
  65. FILES:${PN} += "${nonarch_libdir}/tmpfiles.d"
  66. FILES:${PN}-dev = "${libdir}/hiawatha/*${SOLIBSDEV}"