uhttpd: update to latest Git HEAD
[openwrt/staging/jow.git] / package / network / services / uhttpd / Makefile
index 648916385c50836afe4834ee0bd0f4ad600234de..4090bf457984f688ecf67147db3fd32b8df24436 100644 (file)
@@ -12,14 +12,15 @@ PKG_RELEASE:=1
 
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_URL=$(PROJECT_GIT)/project/uhttpd.git
-PKG_SOURCE_DATE:=2017-11-04
-PKG_SOURCE_VERSION:=a235636a2687fafb9c474e4b134a59ff66425c92
-PKG_MIRROR_HASH:=626392a485e8ab8085bb55d9424b176be9143529db59a820a7de71061a93a007
+PKG_SOURCE_DATE:=2023-01-28
+PKG_SOURCE_VERSION:=47561aa13574068403d48f13ea310f8511057b2b
+PKG_MIRROR_HASH:=84500cf0c8224fe80b5717c9b6bad8ac13f44f286e3a88e8b12adfcf02e22c7c
 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
 PKG_LICENSE:=ISC
 
+PKG_ASLR_PIE_REGULAR:=1
 PKG_BUILD_DEPENDS = ustream-ssl
-PKG_CONFIG_DEPENDS:= CONFIG_uhttpd_lua
+PKG_CONFIG_DEPENDS:= CONFIG_uhttpd_lua CONFIG_uhttpd_ucode
 
 include $(INCLUDE_DIR)/package.mk
 include $(INCLUDE_DIR)/cmake.mk
@@ -34,7 +35,7 @@ endef
 
 define Package/uhttpd
   $(Package/uhttpd/default)
-  DEPENDS:=+libubox +libblobmsg-json +libjson-script
+  DEPENDS:=+libubox +libblobmsg-json +libjson-script +libjson-c
 endef
 
 define Package/uhttpd/description
@@ -48,8 +49,20 @@ define Package/uhttpd/config
     depends on PACKAGE_uhttpd-mod-lua
     bool "Enable Integrated Lua interpreter"
        default y
+
+  config uhttpd_ucode
+    depends on PACKAGE_uhttpd-mod-ucode
+    bool "Enable Integrated ucode interpreter"
+       default y
+endef
+
+define Package/uhttpd/conffiles
+/etc/config/uhttpd
+/etc/uhttpd.crt
+/etc/uhttpd.key
 endef
 
+
 define Package/uhttpd-mod-lua
   $(Package/uhttpd/default)
   TITLE+= (Lua plugin)
@@ -72,19 +85,25 @@ define Package/uhttpd-mod-ubus/description
  session.* namespace and procedures.
 endef
 
-define Package/uhttpd/conffiles
-/etc/config/uhttpd
-/etc/uhttpd.crt
-/etc/uhttpd.key
+
+define Package/uhttpd-mod-ucode
+  $(Package/uhttpd/default)
+  TITLE+= (ucode plugin)
+  DEPENDS:=uhttpd +libucode
 endef
 
+define Package/uhttpd-mod-ucode/description
+ The ucode plugin adds a CGI-like ucode runtime interface to uHTTPd.
+endef
+
+
 ifneq ($(CONFIG_USE_GLIBC),)
   TARGET_CFLAGS += -D_DEFAULT_SOURCE
 endif
 
 TARGET_LDFLAGS += -lcrypt
 
-CMAKE_OPTIONS = -DTLS_SUPPORT=on
+CMAKE_OPTIONS += -DTLS_SUPPORT=on
 
 define Package/uhttpd/install
        $(INSTALL_DIR) $(1)/etc/init.d
@@ -107,17 +126,13 @@ define Package/uhttpd-mod-ubus/install
        $(INSTALL_DATA) ./files/ubus.default $(1)/etc/uci-defaults/00_uhttpd_ubus
 endef
 
-define Package/uhttpd-mod-lua/postinst
-       $(if $(CONFIG_uhttpd_lua),
-       #!/bin/sh
-       if [ -f $${IPKG_INSTROOT}/www/index.html ]
-       then
-               sed -e 's:/cgi-bin::g' -i $${IPKG_INSTROOT}/www/index.html
-       fi
-       ,)
+define Package/uhttpd-mod-ucode/install
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/uhttpd_ucode.so $(1)/usr/lib/
 endef
 
 
 $(eval $(call BuildPackage,uhttpd))
 $(eval $(call BuildPackage,uhttpd-mod-lua))
 $(eval $(call BuildPackage,uhttpd-mod-ubus))
+$(eval $(call BuildPackage,uhttpd-mod-ucode))