diff --git a/libatomicops/Makefile b/libatomicops/Makefile new file mode 100644 index 0000000..c12c57b --- /dev/null +++ b/libatomicops/Makefile @@ -0,0 +1,52 @@ +# +# Copyright (C) 2007-2020 Nicolas Massé +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=libatomicops +PKG_VERSION:=7.6.10 +PKG_RELEASE:=1 +PKG_SOURCE:=libatomic_ops-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/ivmai/libatomic_ops/releases/download/v$(PKG_VERSION)/ +PKG_HASH:=587edf60817f56daf1e1ab38a4b3c729b8e846ff67b4f62a6157183708f099af +PKG_MAINTAINER:=Nicolas Massé +PKG_LICENSE:=GPLv2 + +PKG_BUILD_DIR:=$(BUILD_DIR)/libatomic_ops-$(PKG_VERSION) + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/libatomicops + SECTION:=libs + CATEGORY:=Libraries + TITLE:=implementations for atomic memory update operations + DEPENDS:=@!TARGET_avr32 + URL:=https://github.com/ivmai/libatomic_ops +endef + +define Package/libatomicops/description + Provides implementations for atomic memory update + operations on a number of architectures. This allows + direct use of these in reasonably portable code. Unlike + earlier similar packages, this one explicitly considers + memory barrier semantics, and allows the construction of + code that involves minimum overhead across a variety of + architectures. +endef + +CONFIGURE_ARGS += \ + --enable-shared \ + --enable-static \ + +define Build/InstallDev + $(INSTALL_DIR) $(1)/usr/include/ + $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ + $(CP) $(PKG_BUILD_DIR)/src/atomic_ops $(1)/usr/include/ + $(INSTALL_DIR) $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libatomic_ops*.a $(1)/usr/lib/ +endef + +$(eval $(call BuildPackage,libatomicops)) diff --git a/nginx-tls/Makefile b/nginx-tls/Makefile index 5884986..252aa52 100644 --- a/nginx-tls/Makefile +++ b/nginx-tls/Makefile @@ -71,7 +71,7 @@ define Package/nginx-tls SUBMENU:=Web Servers/Proxies TITLE:=Nginx web server URL:=http://nginx.org/ - DEPENDS:=+NGINX_PCRE:libpcre +(NGINX_SSL||NGINX_HTTP_CACHE||NGINX_HTTP_AUTH_BASIC):libopenssl +NGINX_HTTP_GZIP:zlib +NGINX_LUA:liblua +libpthread + DEPENDS:=+NGINX_PCRE:libpcre +(NGINX_SSL||NGINX_HTTP_CACHE||NGINX_HTTP_AUTH_BASIC):libopenssl +NGINX_HTTP_GZIP:zlib +NGINX_LUA:liblua +libpthread +NGINX_STREAM:libatomicops MENU:=1 endef @@ -211,6 +211,7 @@ ifeq ($(CONFIG_NGINX_HTTP_SECURE_LINK),y) endif ifeq ($(CONFIG_NGINX_STREAM),y) ADDITIONAL_MODULES += --with-stream + ADDITIONAL_MODULES += --with-libatomic ifeq ($(CONFIG_NGINX_SSL),y) ADDITIONAL_MODULES += --with-stream_ssl_module ADDITIONAL_MODULES += --with-stream_ssl_preread_module diff --git a/nginx-tls/patches/101-feature_test_fix.patch b/nginx-tls/patches/101-feature_test_fix.patch index 2c692bc..98e5955 100644 --- a/nginx-tls/patches/101-feature_test_fix.patch +++ b/nginx-tls/patches/101-feature_test_fix.patch @@ -105,3 +105,15 @@ ngx_feature_incs="#include " ngx_feature_path= ngx_feature_libs= +--- a/auto/lib/libatomic/conf ++++ b/auto/lib/libatomic/conf +@@ -14,7 +14,7 @@ + + ngx_feature="atomic_ops library" + ngx_feature_name=NGX_HAVE_LIBATOMIC +- ngx_feature_run=yes ++ ngx_feature_run=no + ngx_feature_incs="#define AO_REQUIRE_CAS + #include " + ngx_feature_path= +