-#
-# Copyright (C) 2006-2009 OpenWrt.org
+ #
+# Copyright (C) 2006-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
-# $Id$
include $(TOPDIR)/rules.mk
PKG_NAME:=lighttpd
-PKG_VERSION:=1.4.20
-PKG_RELEASE:=3
+PKG_VERSION:=1.4.32
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=http://download.lighttpd.net/lighttpd/releases-1.4.x
+PKG_MD5SUM:=e5a6f57fc371a10646ff1a57056fa9c0
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_SOURCE_URL:=http://www.lighttpd.net/download/
-PKG_MD5SUM:=ed6ee0bb714f393219a32768d86984d8
+PKG_LICENSE:=BSD-3c
+PKG_LICENSE_FILES:=COPYING
-PKG_FIXUP = libtool
+PKG_FIXUP:=autoreconf
+PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
define Package/lighttpd/Default
- SUBMENU:=Web
+ SUBMENU:=Web Servers/Proxies
SECTION:=net
CATEGORY:=Network
URL:=http://www.lighttpd.net/
define Package/lighttpd
$(call Package/lighttpd/Default)
MENU:=1
- DEPENDS:=+libopenssl +libpcre +libpthread +libsqlite3 +libxml2
+ DEPENDS:=+LIGHTTPD_SSL:libopenssl +libpcre +libpthread
TITLE:=A flexible and lightweight web server
endef
-define Package/lighttpd-mod-accesslog
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Access logging module
-endef
-
-define Package/lighttpd-mod-alias
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Directory alias module
-endef
-
-define Package/lighttpd-mod-auth
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Authentication module
-endef
-
-define Package/lighttpd-mod-cgi
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=CGI module
-endef
-
-define Package/lighttpd-mod-evasive
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Evasive module
-endef
-
-define Package/lighttpd-mod-expire
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Expire module
-endef
-
-define Package/lighttpd-mod-fastcgi
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=FastCGI module
-endef
-
-define Package/lighttpd-mod-proxy
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Proxy module
-endef
-
-define Package/lighttpd-mod-redirect
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=URL redirection module
+define Package/lighttpd/config
+config LIGHTTPD_SSL
+ bool "SSL support"
+ depends on PACKAGE_lighttpd
+ default y
+ help
+ Implements SSL support in lighttpd (using libopenssl). This
+ option is required if you enable the SSL engine in your
+ lighttpd confguration file.
endef
-define Package/lighttpd-mod-rewrite
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=URL rewriting module
-endef
-
-define Package/lighttpd-mod-setenv
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Environment variable setting module
-endef
-
-define Package/lighttpd-mod-simple-vhost
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Simple virtual hosting module
-endef
-
-define Package/lighttpd-mod-ssi
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=SSI module
-endef
-
-define Package/lighttpd-mod-status
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=Server status display module
-endef
-
-define Package/lighttpd-mod-usertrack
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=User tracking module
-endef
-
-define Package/lighttpd-mod-webdav
- $(call Package/lighttpd/Default)
- DEPENDS:=lighttpd
- TITLE:=WebDAV module
-endef
-
-
CONFIGURE_ARGS+= \
--libdir=/usr/lib/lighttpd \
--sysconfdir=/etc/lighttpd \
--without-ldap \
--without-lua \
--without-memcache \
- --without-mysql \
- --with-openssl="$(STAGING_DIR)/usr" \
--with-pcre \
--without-valgrind \
- --with-webdav-props \
+ $(call autoconf_bool,CONFIG_IPV6,ipv6)
CONFIGURE_VARS+= \
- CPPFLAGS="-I$(STAGING_DIR)/usr/include/libxml2 $$$$CPPFLAGS" \
PCRE_LIB="-lpcre" \
-define Build/Compile
- $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" all install
+ifneq ($(strip $(CONFIG_LIGHTTPD_SSL)),)
+ CONFIGURE_ARGS+= \
+ --with-openssl="$(STAGING_DIR)/usr"
+else
+ CONFIGURE_ARGS+= \
+ --without-openssl
+endif
+
+ifneq ($(SDK)$(CONFIG_PACKAGE_lighttpd-mod-mysql-vhost),)
+ CONFIGURE_ARGS+= \
+ --with-mysql
+else
+ CONFIGURE_ARGS+= \
+ --without-mysql
+endif
+
+ifneq ($(SDK)$(CONFIG_PACKAGE_lighttpd-mod-webdav),)
+ CONFIGURE_ARGS+= \
+ --with-webdav-locks \
+ --with-webdav-props
+ # XXX: needed by sqlite3 to prevent segfaults in mod_webdav.so
+ CONFIGURE_VARS+= \
+ LIBS="-lpthread"
+else
+ CONFIGURE_ARGS+= \
+ --without-webdav-locks \
+ --without-webdav-props
+endif
+
+define Build/Configure
+$(call Build/Configure/Default)
+ # XXX: override pcre (mis)detection by ./configure when cross-compiling
+ echo "#define HAVE_LIBPCRE 1" >>$(PKG_BUILD_DIR)/config.h
+ echo "#define HAVE_PCRE_H 1" >>$(PKG_BUILD_DIR)/config.h
endef
define Package/lighttpd/conffiles
-/etc/lighttpd.conf
-/etc/default/lighttpd
+/etc/lighttpd/lighttpd.conf
endef
define Package/lighttpd/install
- $(INSTALL_DIR) $(1)/etc
- $(INSTALL_DATA) ./files/lighttpd.conf $(1)/etc/
- $(INSTALL_DIR) $(1)/etc/default
- $(INSTALL_DATA) ./files/lighttpd.default $(1)/etc/default/lighttpd
+ $(INSTALL_DIR) $(1)/etc/lighttpd
+ $(INSTALL_DATA) ./files/lighttpd.conf $(1)/etc/lighttpd/
+ $(INSTALL_DATA) $(PKG_BUILD_DIR)/doc/config/conf.d/mime.conf $(1)/etc/lighttpd/
+ $(INSTALL_DIR) $(1)/etc/lighttpd/conf.d
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/lighttpd.init $(1)/etc/init.d/lighttpd
$(INSTALL_DIR) $(1)/usr/lib/lighttpd
endef
define BuildPlugin
- define Package/$(1)/install
- [ -z "$(2)" ] || $(INSTALL_DIR) $$(1)/usr/lib/lighttpd
- for m in $(2); do \
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/lighttpd/mod_$$$$$$$${m}.so $$(1)/usr/lib/lighttpd/ ; \
- done
+ define Package/lighttpd-mod-$(1)
+ $(call Package/lighttpd/Default)
+ DEPENDS:=lighttpd
+ ifneq ($(3),)
+ DEPENDS+= $(3)
+ endif
+ TITLE:=$(2) module
endef
- $$(eval $$(call BuildPackage,$(1)))
+ define Package/lighttpd-mod-$(1)/install
+ $(INSTALL_DIR) $$(1)/usr/lib/lighttpd
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/lighttpd/mod_$(1).so $$(1)/usr/lib/lighttpd
+ $(INSTALL_DIR) $$(1)/etc/lighttpd/conf.d
+ if [ -f $(PKG_BUILD_DIR)/doc/config/conf.d/$(1).conf ]; then \
+ $(CP) $(PKG_BUILD_DIR)/doc/config/conf.d/$(1).conf $$(1)/etc/lighttpd/conf.d/$(4)-$(1).conf ; \
+ else \
+ echo 'server.modules += ( "mod_$(1)" )' > $$(1)/etc/lighttpd/conf.d/$(4)-$(1).conf ; \
+ fi
+ endef
+
+ $$(eval $$(call BuildPackage,lighttpd-mod-$(1)))
endef
$(eval $(call BuildPackage,lighttpd))
-$(eval $(call BuildPlugin,lighttpd-mod-accesslog,accesslog))
-$(eval $(call BuildPlugin,lighttpd-mod-alias,alias))
-$(eval $(call BuildPlugin,lighttpd-mod-auth,auth))
-$(eval $(call BuildPlugin,lighttpd-mod-cgi,cgi))
-$(eval $(call BuildPlugin,lighttpd-mod-evasive,evasive))
-$(eval $(call BuildPlugin,lighttpd-mod-expire, expire))
-$(eval $(call BuildPlugin,lighttpd-mod-fastcgi,fastcgi))
-$(eval $(call BuildPlugin,lighttpd-mod-proxy,proxy))
-$(eval $(call BuildPlugin,lighttpd-mod-redirect,redirect))
-$(eval $(call BuildPlugin,lighttpd-mod-rewrite,rewrite))
-$(eval $(call BuildPlugin,lighttpd-mod-setenv,setenv))
-$(eval $(call BuildPlugin,lighttpd-mod-simple-vhost,simple_vhost))
-$(eval $(call BuildPlugin,lighttpd-mod-ssi,ssi))
-$(eval $(call BuildPlugin,lighttpd-mod-status,status))
-$(eval $(call BuildPlugin,lighttpd-mod-usertrack,usertrack))
-$(eval $(call BuildPlugin,lighttpd-mod-webdav,webdav))
+$(eval $(call BuildPlugin,access,Access restrictions,,10))
+$(eval $(call BuildPlugin,accesslog,Access logging,,10))
+$(eval $(call BuildPlugin,alias,Directory alias,,10))
+$(eval $(call BuildPlugin,auth,Authentication,,05))
+$(eval $(call BuildPlugin,cgi,CGI,,10))
+$(eval $(call BuildPlugin,cml,Cache Meta Language,,10))
+$(eval $(call BuildPlugin,compress,Compress output,+zlib,10))
+$(eval $(call BuildPlugin,evasive,Evasive,,10))
+$(eval $(call BuildPlugin,evhost,Exnhanced Virtual-Hosting,,10))
+$(eval $(call BuildPlugin,expire,Expire,,10))
+$(eval $(call BuildPlugin,extforward,Extract client,,10))
+$(eval $(call BuildPlugin,fastcgi,FastCGI,,10))
+$(eval $(call BuildPlugin,flv_streaming,FLV streaming,,10))
+$(eval $(call BuildPlugin,magnet,Magnet,,10))
+$(eval $(call BuildPlugin,mysql_vhost,Mysql virtual hosting,+libmysqlclient,10))
+$(eval $(call BuildPlugin,proxy,Proxy,,10))
+$(eval $(call BuildPlugin,redirect,URL redirection,+libpcre,10))
+$(eval $(call BuildPlugin,rewrite,URL rewriting,+libpcre,10))
+$(eval $(call BuildPlugin,rrdtool,RRDtool,,10))
+$(eval $(call BuildPlugin,scgi,SCGI,,10))
+$(eval $(call BuildPlugin,secdownload,Secure and fast download,,10))
+$(eval $(call BuildPlugin,setenv,Environment variable setting,,10))
+$(eval $(call BuildPlugin,simple_vhost,Simple virtual hosting,,10))
+$(eval $(call BuildPlugin,ssi,SSI,+libpcre,10))
+$(eval $(call BuildPlugin,status,Server status display,,10))
+$(eval $(call BuildPlugin,trigger_b4_dl,Trigger before download,+libpcre,10))
+$(eval $(call BuildPlugin,userdir,User directory,,10))
+$(eval $(call BuildPlugin,usertrack,User tracking,,10))
+$(eval $(call BuildPlugin,webdav,WebDAV,+libsqlite3 +libuuid +libxml2,10))
+