blob: 3959f88b98e9bd8f60792c1672433a9aaf06c05b [file] [log] [blame]
Patrick Williams92b42cb2022-09-03 06:53:57 -05001SUMMARY = "Lightweight high-performance web server"
2HOMEPAGE = "http://www.lighttpd.net/"
3DESCRIPTION = "Lightweight high-performance web server is designed and optimized for high performance environments. With a small memory footprint compared to other web-servers, effective management of the cpu-load, and advanced feature set (FastCGI, SCGI, Auth, Output-Compression, URL-Rewriting and many more)"
4BUGTRACKER = "http://redmine.lighttpd.net/projects/lighttpd/issues"
5
6LICENSE = "BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://COPYING;md5=e4dac5c6ab169aa212feb5028853a579"
8
9SECTION = "net"
Patrick Williams520786c2023-06-25 16:20:36 -050010RDEPENDS:${PN} = "lighttpd-module-dirlisting"
11RRECOMMENDS:${PN} = "lighttpd-module-accesslog"
Patrick Williams92b42cb2022-09-03 06:53:57 -050012
13SRC_URI = "http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${PV}.tar.xz \
14 file://index.html.lighttpd \
15 file://lighttpd.conf \
16 file://lighttpd \
17 "
18
Patrick Williams520786c2023-06-25 16:20:36 -050019SRC_URI[sha256sum] = "b8b6915da20396fdc354df3324d5e440169b2e5ea7859e3a775213841325afac"
Patrick Williams92b42cb2022-09-03 06:53:57 -050020
21DEPENDS = "virtual/crypt"
22
23PACKAGECONFIG ??= "openssl pcre zlib \
24 ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
25"
26
Patrick Williams864cc432023-02-09 14:54:44 -060027PACKAGECONFIG[libev] = "-Dwith_libev=enabled,-Dwith_libev=disabled,libev"
28PACKAGECONFIG[mysql] = "-Dwith_mysql=enabled,-Dwith_mysql=disabled,mariadb"
29PACKAGECONFIG[ldap] = "-Dwith_ldap=enabled,-Dwith_ldap=disabled,openldap"
Patrick Williams92b42cb2022-09-03 06:53:57 -050030PACKAGECONFIG[attr] = "-Dwith_xattr=true,-Dwith_xattr=false,attr"
31PACKAGECONFIG[openssl] = "-Dwith_openssl=true,-Dwith_openssl=false,openssl"
Patrick Williams864cc432023-02-09 14:54:44 -060032PACKAGECONFIG[krb5] = "-Dwith_krb5=enabled,-Dwith_krb5=disabled,krb5"
33PACKAGECONFIG[pcre] = "-Dwith_pcre=pcre2,-Dwith_pcre=disabled,libpcre2"
34PACKAGECONFIG[zlib] = "-Dwith_zlib=enabled,-Dwith_zlib=disabled,zlib"
35PACKAGECONFIG[bzip2] = "-Dwith_bzip=enabled,-Dwith_bzip=disabled,bzip2"
36PACKAGECONFIG[webdav-props] = "-Dwith_webdav_props=enabled,-Dwith_webdav_props=disabled,libxml2 sqlite3"
37PACKAGECONFIG[webdav-locks] = "-Dwith_webdav_locks=enabled,-Dwith_webdav_locks=disabled,util-linux"
Patrick Williams92b42cb2022-09-03 06:53:57 -050038PACKAGECONFIG[lua] = "-Dwith_lua=true,-Dwith_lua=false,lua"
Patrick Williams864cc432023-02-09 14:54:44 -060039PACKAGECONFIG[zstd] = "-Dwith_zstd=enabled,-Dwith_zstd=disabled,zstd"
Patrick Williams92b42cb2022-09-03 06:53:57 -050040
41inherit meson pkgconfig update-rc.d gettext systemd
42
43INITSCRIPT_NAME = "lighttpd"
44INITSCRIPT_PARAMS = "defaults 70"
45
46SYSTEMD_SERVICE:${PN} = "lighttpd.service"
47
48do_install:append() {
49 install -d ${D}${sysconfdir}/init.d ${D}${sysconfdir}/lighttpd ${D}${sysconfdir}/lighttpd.d ${D}/www/pages/dav
50 install -m 0755 ${WORKDIR}/lighttpd ${D}${sysconfdir}/init.d
51 install -m 0644 ${WORKDIR}/lighttpd.conf ${D}${sysconfdir}/lighttpd
52 install -m 0644 ${WORKDIR}/index.html.lighttpd ${D}/www/pages/index.html
53
54 install -d ${D}${systemd_system_unitdir}
55 install -m 0644 ${S}/doc/systemd/lighttpd.service ${D}${systemd_system_unitdir}
56 sed -i -e 's,@SBINDIR@,${sbindir},g' \
57 -e 's,@SYSCONFDIR@,${sysconfdir},g' \
58 -e 's,@BASE_BINDIR@,${base_bindir},g' \
59 ${D}${systemd_system_unitdir}/lighttpd.service
60 #For FHS compliance, create symbolic links to /var/log and /var/tmp for logs and temporary data
61 ln -sf ${localstatedir}/log ${D}/www/logs
62 ln -sf ${localstatedir}/tmp ${D}/www/var
63}
64
65# bitbake.conf sets ${libdir}/${BPN}/* in FILES, which messes up the module split.
66# So we re-do the variable.
67FILES:${PN} = "${sysconfdir} /www ${sbindir}"
68
69CONFFILES:${PN} = "${sysconfdir}/lighttpd/lighttpd.conf"
70
71PACKAGES_DYNAMIC += "^lighttpd-module-.*"
72
73python populate_packages:prepend () {
74 lighttpd_libdir = d.expand('${prefix}/lib/lighttpd')
75 do_split_packages(d, lighttpd_libdir, r'^mod_(.*)\.so$', 'lighttpd-module-%s', 'Lighttpd module for %s', extra_depends='')
76}