xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-webserver/recipes-httpd/hiawatha/hiawatha_10.12.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunSUMMARY = "Lightweight secure web server"
2*4882a593SmuzhiyunHOMEPAGE = "http://www.hiawatha-webserver.org"
3*4882a593SmuzhiyunLICENSE = "GPL-2.0-only"
4*4882a593SmuzhiyunLIC_FILES_CHKSUM = "file://LICENSE;md5=751419260aa954499f7abaabaa882bbe"
5*4882a593SmuzhiyunDEPENDS = "libxml2 libxslt virtual/crypt"
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunSECTION = "net"
8*4882a593Smuzhiyun
9*4882a593SmuzhiyunSRC_URI = "http://hiawatha-webserver.org/files/hiawatha-10/${BP}.tar.gz \
10*4882a593Smuzhiyun           file://hiawatha-init \
11*4882a593Smuzhiyun           file://hiawatha.service "
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunSRC_URI[md5sum] = "d9e282be06ed456207726b7ac0df9d48"
14*4882a593SmuzhiyunSRC_URI[sha256sum] = "61bf41146c51244769984135529fcffd0f6cb92be18dc12d460effc42f19f50d"
15*4882a593Smuzhiyun
16*4882a593SmuzhiyunINITSCRIPT_NAME = "hiawatha"
17*4882a593SmuzhiyunINITSCRIPT_PARAMS = "defaults 70"
18*4882a593Smuzhiyun
19*4882a593SmuzhiyunSYSTEMD_SERVICE:${PN} = "hiawatha.service"
20*4882a593Smuzhiyun
21*4882a593Smuzhiyuninherit cmake update-rc.d systemd
22*4882a593Smuzhiyun
23*4882a593SmuzhiyunEXTRA_OECMAKE = " -DENABLE_IPV6=OFF \
24*4882a593Smuzhiyun                  -DENABLE_CACHE=OFF \
25*4882a593Smuzhiyun                  -DENABLE_DEBUG=OFF \
26*4882a593Smuzhiyun                  -DENABLE_TLS=OFF \
27*4882a593Smuzhiyun                  -DENABLE_TOOLKIT=OFF \
28*4882a593Smuzhiyun                  -DENABLE_CHROOT=OFF \
29*4882a593Smuzhiyun                  -DENABLE_XSLT=ON \
30*4882a593Smuzhiyun                  -DENABLE_TOMAHAWK=OFF \
31*4882a593Smuzhiyun                  -DCMAKE_INSTALL_MANDIR=${mandir} \
32*4882a593Smuzhiyun                  -DCMAKE_INSTALL_BINDIR=${bindir} \
33*4882a593Smuzhiyun                  -DCMAKE_INSTALL_SBINDIR=${sbindir} \
34*4882a593Smuzhiyun                  -DCMAKE_INSTALL_SYSCONFDIR=${sysconfdir} \
35*4882a593Smuzhiyun                  -DCMAKE_INSTALL_LIBDIR=${libdir} \
36*4882a593Smuzhiyun                  -DCMAKE_INSTALL_FULL_LOCALSTATEDIR=${localstatedir}"
37*4882a593Smuzhiyun
38*4882a593Smuzhiyundo_install:append() {
39*4882a593Smuzhiyun    # Copy over init script and sed in the correct sbin path
40*4882a593Smuzhiyun    sed -i 's,sed_sbin_path,${sbindir},' ${WORKDIR}/hiawatha-init
41*4882a593Smuzhiyun    mkdir -p ${D}${sysconfdir}/init.d
42*4882a593Smuzhiyun    install -m 0755 ${WORKDIR}/hiawatha-init ${D}${sysconfdir}/init.d/hiawatha
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun    # configure php-fcgi to have a working configuration
45*4882a593Smuzhiyun    # by default if php is installed
46*4882a593Smuzhiyun    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
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun    if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
49*4882a593Smuzhiyun        install -d ${D}/${systemd_unitdir}/system
50*4882a593Smuzhiyun        install -m 644 ${WORKDIR}/hiawatha.service ${D}/${systemd_unitdir}/system
51*4882a593Smuzhiyun    fi
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun    # /var/log/hiawatha and /var/lib/hiawatha needs to be created in runtime.
54*4882a593Smuzhiyun    # Use rmdir to catch if upstream stops creating these dirs, or adds
55*4882a593Smuzhiyun    # something else in /var/log.
56*4882a593Smuzhiyun    rmdir ${D}${localstatedir}/log/${BPN} ${D}${localstatedir}/log
57*4882a593Smuzhiyun    rmdir ${D}${localstatedir}/run
58*4882a593Smuzhiyun    rmdir --ignore-fail-on-non-empty ${D}${localstatedir}
59*4882a593Smuzhiyun
60*4882a593Smuzhiyun    # Create /var/log/hiawatha at runtime.
61*4882a593Smuzhiyun    if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then
62*4882a593Smuzhiyun        install -d ${D}${nonarch_libdir}/tmpfiles.d
63*4882a593Smuzhiyun        echo "d ${localstatedir}/log/${BPN} - - - -" > ${D}${nonarch_libdir}/tmpfiles.d/${BPN}.conf
64*4882a593Smuzhiyun    fi
65*4882a593Smuzhiyun    if [ "${@bb.utils.filter('DISTRO_FEATURES', 'sysvinit', d)}" ]; then
66*4882a593Smuzhiyun        install -d ${D}${sysconfdir}/default/volatiles
67*4882a593Smuzhiyun        echo "d root root 0755 ${localstatedir}/log/${BPN} none" > ${D}${sysconfdir}/default/volatiles/99_${BPN}
68*4882a593Smuzhiyun    fi
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun}
71*4882a593Smuzhiyun
72*4882a593SmuzhiyunCONFFILES:${PN} = " \
73*4882a593Smuzhiyun    ${sysconfdir}/hiawatha/cgi-wrapper.conf \
74*4882a593Smuzhiyun    ${sysconfdir}/hiawatha/hiawatha.conf \
75*4882a593Smuzhiyun    ${sysconfdir}/hiawatha/index.xslt \
76*4882a593Smuzhiyun    ${sysconfdir}/hiawatha/mimetype.conf \
77*4882a593Smuzhiyun    ${sysconfdir}/hiawatha/php-fcgi.conf \
78*4882a593Smuzhiyun"
79*4882a593Smuzhiyun
80*4882a593SmuzhiyunFILES:${PN} += "${nonarch_libdir}/tmpfiles.d"
81*4882a593SmuzhiyunFILES:${PN}-dev = "${libdir}/hiawatha/*${SOLIBSDEV}"
82