X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=package%2Fuhttpd%2FMakefile;h=b8afa0d89f8066591c7959b6301914a952d0f44b;hb=b715b378fad6e2ae4368b4c19536fb5fef1ba3fe;hp=2ad0816e3aa15fdbac400b23d3f6fb752c07082d;hpb=fb7c78976ed41e1ff143b2bed6ed1139e43593ed;p=openwrt%2Fsvn-archive%2Farchive.git diff --git a/package/uhttpd/Makefile b/package/uhttpd/Makefile index 2ad0816e3a..b8afa0d89f 100644 --- a/package/uhttpd/Makefile +++ b/package/uhttpd/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2010 Jo-Philipp Wich +# Copyright (C) 2010-2012 Jo-Philipp Wich # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,22 +8,30 @@ include $(TOPDIR)/rules.mk PKG_NAME:=uhttpd -PKG_RELEASE:=12 +PKG_RELEASE:=36 PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME) -PKG_BUILD_DEPENDS := libcyassl liblua +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-ubus include $(INCLUDE_DIR)/package.mk define Package/uhttpd/default SECTION:=net CATEGORY:=Network + SUBMENU:=Web Servers/Proxies TITLE:=uHTTPd - tiny, single threaded HTTP server + MAINTAINER:=Jo-Philipp Wich endef define Package/uhttpd $(Package/uhttpd/default) - MENU:=1 + DEPENDS:=+libubox endef define Package/uhttpd/description @@ -32,17 +40,53 @@ 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) TITLE+= (TLS plugin) - DEPENDS:=uhttpd +libcyassl + DEPENDS:=uhttpd +PACKAGE_uhttpd-mod-tls_cyassl:libcyassl +PACKAGE_uhttpd-mod-tls_openssl:libopenssl endef define Package/uhttpd-mod-tls/description The TLS plugin adds HTTPS support to uHTTPd. endef +define Package/uhttpd-mod-tls/config + 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_openssl + bool "OpenSSL" + endchoice +endef + +UHTTPD_TLS:= +TLS_CFLAGS:= +TLS_LDFLAGS:= + +ifneq ($(CONFIG_PACKAGE_uhttpd-mod-tls_cyassl),) + UHTTPD_TLS:=cyassl + TLS_CFLAGS:=-I$(STAGING_DIR)/usr/include/cyassl -DTLS_IS_CYASSL + TLS_LDFLAGS:=-lcyassl -lm +endif + +ifneq ($(CONFIG_PACKAGE_uhttpd-mod-tls_openssl),) + UHTTPD_TLS:=openssl + TLS_CFLAGS:=-DTLS_IS_OPENSSL + TLS_LDFLAGS:=-lssl +endif + define Package/uhttpd-mod-lua $(Package/uhttpd/default) @@ -55,10 +99,28 @@ define Package/uhttpd-mod-lua/description endef -# hack to use CyASSL headers -TARGET_CFLAGS += -I$(firstword $(wildcard $(BUILD_DIR)/cyassl-*/include)) -TARGET_LDFLAGS += -lm -MAKE_VARS += FPIC="$(FPIC)" +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)" define Build/Prepare mkdir -p $(PKG_BUILD_DIR) @@ -67,6 +129,8 @@ endef define Package/uhttpd/conffiles /etc/config/uhttpd +/etc/uhttpd.crt +/etc/uhttpd.key endef define Package/uhttpd/install @@ -88,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))