1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2025-04-21 12:27:27 +03:00

[package] uhttpd:

- rewrite large parts of the server, use uloop event driven structure
	- support concurrent requests and make the upper limit configurable
	- implement initial version of HTTP-to-ubus JSON proxy and session.* namespace
	- add compile time support for debug information
	- code style changes
	- bump package revision

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31931 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
jow
2012-05-28 00:52:24 +00:00
parent dfea949949
commit 8b4e17bfbc
18 changed files with 2637 additions and 1393 deletions

View File

@@ -8,14 +8,16 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=uhttpd
PKG_RELEASE:=32
PKG_RELEASE:=33
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
PKG_CONFIG_DEPENDS := \
CONFIG_PACKAGE_uhttpd_debug \
CONFIG_PACKAGE_uhttpd-mod-lua \
CONFIG_PACKAGE_uhttpd-mod-tls \
CONFIG_PACKAGE_uhttpd-mod-tls_cyassl \
CONFIG_PACKAGE_uhttpd-mod-tls_openssl
CONFIG_PACKAGE_uhttpd-mod-tls_openssl \
CONFIG_PACKAGE_uhttpd-mod-ubus
include $(INCLUDE_DIR)/package.mk
@@ -29,7 +31,7 @@ endef
define Package/uhttpd
$(Package/uhttpd/default)
MENU:=1
DEPENDS:=+libubox
endef
define Package/uhttpd/description
@@ -38,6 +40,12 @@ define Package/uhttpd/description
HTTP daemon.
endef
define Package/uhttpd/config
config PACKAGE_uhttpd_debug
bool "Build with debug messages"
default n
endef
define Package/uhttpd-mod-tls
$(Package/uhttpd/default)
@@ -50,17 +58,17 @@ define Package/uhttpd-mod-tls/description
endef
define Package/uhttpd-mod-tls/config
choice
depends on PACKAGE_uhttpd-mod-tls
prompt "TLS Provider"
default PACKAGE_uhttpd-mod-tls_cyassl
choice
depends on PACKAGE_uhttpd-mod-tls
prompt "TLS Provider"
default PACKAGE_uhttpd-mod-tls_cyassl
config PACKAGE_uhttpd-mod-tls_cyassl
bool "CyaSSL"
config PACKAGE_uhttpd-mod-tls_cyassl
bool "CyaSSL"
config PACKAGE_uhttpd-mod-tls_openssl
bool "OpenSSL"
endchoice
config PACKAGE_uhttpd-mod-tls_openssl
bool "OpenSSL"
endchoice
endef
UHTTPD_TLS:=
@@ -91,12 +99,25 @@ define Package/uhttpd-mod-lua/description
endef
TARGET_CFLAGS += $(TLS_CFLAGS)
TARGET_LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib
define Package/uhttpd-mod-ubus
$(Package/uhttpd/default)
TITLE+= (ubus plugin)
DEPENDS:=uhttpd +libubus +libblobmsg-json
endef
define Package/uhttpd-mod-ubus/description
The ubus plugin adds a HTTP/JSON RPC proxy for ubus and publishes the
session.* namespace and procedures.
endef
TARGET_CFLAGS += $(TLS_CFLAGS) $(if $(CONFIG_PACKAGE_uhttpd_debug),-DDEBUG) -ggdb3
TARGET_LDFLAGS += -lubox -Wl,-rpath-link=$(STAGING_DIR)/usr/lib
MAKE_VARS += \
FPIC="$(FPIC)" \
LUA_SUPPORT="$(if $(CONFIG_PACKAGE_uhttpd-mod-lua),1)" \
TLS_SUPPORT="$(if $(CONFIG_PACKAGE_uhttpd-mod-tls),1)" \
UBUS_SUPPORT="$(if $(CONFIG_PACKAGE_uhttpd-mod-ubus),1)" \
UHTTPD_TLS="$(UHTTPD_TLS)" \
TLS_CFLAGS="$(TLS_CFLAGS)" \
TLS_LDFLAGS="$(TLS_LDFLAGS)"
@@ -131,7 +152,13 @@ define Package/uhttpd-mod-lua/install
$(INSTALL_BIN) $(PKG_BUILD_DIR)/uhttpd_lua.so $(1)/usr/lib/
endef
define Package/uhttpd-mod-ubus/install
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_BIN) $(PKG_BUILD_DIR)/uhttpd_ubus.so $(1)/usr/lib/
endef
$(eval $(call BuildPackage,uhttpd))
$(eval $(call BuildPackage,uhttpd-mod-tls))
$(eval $(call BuildPackage,uhttpd-mod-lua))
$(eval $(call BuildPackage,uhttpd-mod-ubus))