Browse Source

add support for libatomicops

master
Nicolas Massé 6 years ago
parent
commit
a908f6c893
  1. 52
      libatomicops/Makefile
  2. 3
      nginx-tls/Makefile
  3. 12
      nginx-tls/patches/101-feature_test_fix.patch

52
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é <nicolas.masse@itix.fr>
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))

3
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

12
nginx-tls/patches/101-feature_test_fix.patch

@ -105,3 +105,15 @@
ngx_feature_incs="#include <semaphore.h>"
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 <atomic_ops.h>"
ngx_feature_path=

Loading…
Cancel
Save