commit
2fe552eaea
4 changed files with 300 additions and 0 deletions
86
libs/nspr/Makefile
Normal file
86
libs/nspr/Makefile
Normal file
|
@ -0,0 +1,86 @@
|
||||||
|
#
|
||||||
|
# Copyright (C) 2019 Lucian Cristian
|
||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=nspr
|
||||||
|
PKG_VERSION:=4.21
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
PKG_MAINTAINER:=Lucian Cristian <lucian.cristian@gmail.com>
|
||||||
|
PKG_LICENCE:=MPL-2.0
|
||||||
|
|
||||||
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
|
PKG_SOURCE_URL:= \
|
||||||
|
https://download.cdn.mozilla.net/pub/$(PKG_NAME)/releases/v$(PKG_VERSION)/src/ \
|
||||||
|
https://archive.mozilla.org/pub/$(PKG_NAME)/releases/v$(PKG_VERSION)/src/
|
||||||
|
PKG_HASH:=15ea32c7b100217b6e3193bc03e77f485d9bf7504051443ba9ce86d1c17c6b5a
|
||||||
|
|
||||||
|
PKG_BUILD_PARALLEL:=1
|
||||||
|
PKG_INSTALL:=1
|
||||||
|
PKG_FIXUP:=autoreconf
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
|
||||||
|
CONFIGURE_PATH = ./nspr
|
||||||
|
MAKE_PATH = ./nspr
|
||||||
|
PKG_AUTOMAKE_PATHS = $(PKG_BUILD_DIR)/nspr
|
||||||
|
LBITS = $(shell $(TARGET_CC) -dM -E - </dev/null | grep -q "__LP64__" && echo 64 || echo 32)
|
||||||
|
|
||||||
|
ifeq ($(LBITS),64)
|
||||||
|
conf=--enable-64bit
|
||||||
|
endif
|
||||||
|
|
||||||
|
export MUSL=$(if $(CONFIG_LIBC_USE_GLIBC),0,1)
|
||||||
|
TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
|
||||||
|
|
||||||
|
CONFIGURE_ARGS += \
|
||||||
|
--build=$(GNU_HOST_NAME) \
|
||||||
|
--host=$(GNU_HOST_NAME) \
|
||||||
|
--target=$(REAL_GNU_TARGET_NAME) \
|
||||||
|
--disable-debug \
|
||||||
|
--with-pthreads \
|
||||||
|
$(if $(CONFIG_IPV6),--enable-ipv6,--disable-ipv6) \
|
||||||
|
$(conf)
|
||||||
|
|
||||||
|
define Build/Compile
|
||||||
|
CROSS_COMPILE=1 CFLAGS="-DXP_UNIX $(HOST_CFLAGS)" LDFLAGS="" CC="$(HOSTCC)" \
|
||||||
|
$(MAKE) -C $(PKG_BUILD_DIR)/nspr/config
|
||||||
|
$(call Build/Compile/Default)
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/nspr
|
||||||
|
SECTION:=libs
|
||||||
|
CATEGORY:=Libraries
|
||||||
|
TITLE:=Netscape Portable Runtime (NSPR)
|
||||||
|
URL:=https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR
|
||||||
|
DEPENDS:=+libpthread
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/nspr/description
|
||||||
|
Netscape Portable Runtime (NSPR) provides a platform-neutral API for system
|
||||||
|
level and libc-like functions. The API is used in the Mozilla clients, many
|
||||||
|
of Red Hat's and Oracle's server applications, and other software offerings.
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Build/InstallDev
|
||||||
|
$(INSTALL_DIR) \
|
||||||
|
$(1)/usr/include \
|
||||||
|
$(1)/usr/lib/ \
|
||||||
|
$(1)/usr/lib/pkgconfig/ \
|
||||||
|
$(1)/usr/share/aclocal/
|
||||||
|
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/include/nspr $(1)/usr/include/
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
|
||||||
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/
|
||||||
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/* $(1)/usr/share/aclocal/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/nspr/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so $(1)/usr/lib/
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,nspr))
|
|
@ -0,0 +1,103 @@
|
||||||
|
From 8a592e4ead4ed6befe6044da3dd2dc7523c33905 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mingli Yu <Mingli.Yu@windriver.com>
|
||||||
|
Date: Fri, 16 Nov 2018 13:52:49 +0800
|
||||||
|
Subject: [PATCH] Makefile.in: remove _BUILD_STRING and _BUILD_TIME
|
||||||
|
|
||||||
|
Remove _BUILD_STRING and _BUILD_TIME to avoid
|
||||||
|
adding timestamp to _pl_bld.h which can result
|
||||||
|
in adding timestamp in library file such as
|
||||||
|
libnspr4.so.
|
||||||
|
$ readelf --wide --decompress --hex-dump=.rodata libnspr4.so
|
||||||
|
[snip]
|
||||||
|
0x00004000 32303138 2d31312d 31352030 353a3439 2018-11-15 05:49
|
||||||
|
[snip]
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
|
||||||
|
---
|
||||||
|
lib/ds/Makefile.in | 8 +-------
|
||||||
|
lib/libc/src/Makefile.in | 8 +-------
|
||||||
|
lib/prstreams/Makefile.in | 8 +-------
|
||||||
|
pr/src/Makefile.in | 8 +-------
|
||||||
|
4 files changed, 4 insertions(+), 28 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/lib/ds/Makefile.in b/lib/ds/Makefile.in
|
||||||
|
index e737791..b578476 100644
|
||||||
|
--- a/nspr/lib/ds/Makefile.in
|
||||||
|
+++ b/nspr/lib/ds/Makefile.in
|
||||||
|
@@ -114,13 +114,7 @@ GARBAGE += $(TINC)
|
||||||
|
|
||||||
|
$(TINC):
|
||||||
|
@$(MAKE_OBJDIR)
|
||||||
|
- @$(ECHO) '#define _BUILD_STRING "$(SH_DATE)"' > $(TINC)
|
||||||
|
- @if test ! -z "$(SH_NOW)"; then \
|
||||||
|
- $(ECHO) '#define _BUILD_TIME $(SH_NOW)$(SUF)' >> $(TINC); \
|
||||||
|
- else \
|
||||||
|
- true; \
|
||||||
|
- fi
|
||||||
|
- @$(ECHO) '#define _PRODUCTION "$(PROD)"' >> $(TINC)
|
||||||
|
+ @$(ECHO) '#define _PRODUCTION "$(PROD)"' > $(TINC)
|
||||||
|
|
||||||
|
|
||||||
|
$(OBJDIR)/plvrsion.$(OBJ_SUFFIX): plvrsion.c $(TINC)
|
||||||
|
diff --git a/lib/libc/src/Makefile.in b/lib/libc/src/Makefile.in
|
||||||
|
index e8a6d9f..978ed28 100644
|
||||||
|
--- a/nspr/lib/libc/src/Makefile.in
|
||||||
|
+++ b/nspr/lib/libc/src/Makefile.in
|
||||||
|
@@ -116,13 +116,7 @@ GARBAGE += $(TINC)
|
||||||
|
|
||||||
|
$(TINC):
|
||||||
|
@$(MAKE_OBJDIR)
|
||||||
|
- @$(ECHO) '#define _BUILD_STRING "$(SH_DATE)"' > $(TINC)
|
||||||
|
- @if test ! -z "$(SH_NOW)"; then \
|
||||||
|
- $(ECHO) '#define _BUILD_TIME $(SH_NOW)$(SUF)' >> $(TINC); \
|
||||||
|
- else \
|
||||||
|
- true; \
|
||||||
|
- fi
|
||||||
|
- @$(ECHO) '#define _PRODUCTION "$(PROD)"' >> $(TINC)
|
||||||
|
+ @$(ECHO) '#define _PRODUCTION "$(PROD)"' > $(TINC)
|
||||||
|
|
||||||
|
|
||||||
|
$(OBJDIR)/plvrsion.$(OBJ_SUFFIX): plvrsion.c $(TINC)
|
||||||
|
diff --git a/lib/prstreams/Makefile.in b/lib/prstreams/Makefile.in
|
||||||
|
index aeb2944..f318097 100644
|
||||||
|
--- a/nspr/lib/prstreams/Makefile.in
|
||||||
|
+++ b/nspr/lib/prstreams/Makefile.in
|
||||||
|
@@ -116,13 +116,7 @@ endif
|
||||||
|
|
||||||
|
$(TINC):
|
||||||
|
@$(MAKE_OBJDIR)
|
||||||
|
- @$(ECHO) '#define _BUILD_STRING "$(SH_DATE)"' > $(TINC)
|
||||||
|
- @if test ! -z "$(SH_NOW)"; then \
|
||||||
|
- $(ECHO) '#define _BUILD_TIME $(SH_NOW)$(SUF)' >> $(TINC); \
|
||||||
|
- else \
|
||||||
|
- true; \
|
||||||
|
- fi
|
||||||
|
- @$(ECHO) '#define _PRODUCTION "$(PROD)"' >> $(TINC)
|
||||||
|
+ @$(ECHO) '#define _PRODUCTION "$(PROD)"' > $(TINC)
|
||||||
|
|
||||||
|
|
||||||
|
$(OBJDIR)/plvrsion.$(OBJ_SUFFIX): plvrsion.c $(TINC)
|
||||||
|
diff --git a/pr/src/Makefile.in b/pr/src/Makefile.in
|
||||||
|
index 19c5a69..b4ac31c 100644
|
||||||
|
--- a/nspr/pr/src/Makefile.in
|
||||||
|
+++ b/nspr/pr/src/Makefile.in
|
||||||
|
@@ -326,13 +326,7 @@ GARBAGE += $(TINC)
|
||||||
|
|
||||||
|
$(TINC):
|
||||||
|
@$(MAKE_OBJDIR)
|
||||||
|
- @$(ECHO) '#define _BUILD_STRING "$(SH_DATE)"' > $(TINC)
|
||||||
|
- @if test ! -z "$(SH_NOW)"; then \
|
||||||
|
- $(ECHO) '#define _BUILD_TIME $(SH_NOW)$(SUF)' >> $(TINC); \
|
||||||
|
- else \
|
||||||
|
- true; \
|
||||||
|
- fi
|
||||||
|
- @$(ECHO) '#define _PRODUCTION "$(PROD)"' >> $(TINC)
|
||||||
|
+ @$(ECHO) '#define _PRODUCTION "$(PROD)"' > $(TINC)
|
||||||
|
|
||||||
|
|
||||||
|
$(OBJDIR)/prvrsion.$(OBJ_SUFFIX): prvrsion.c $(TINC)
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
88
libs/nspr/patches/002-Add-ARC-support.patch
Normal file
88
libs/nspr/patches/002-Add-ARC-support.patch
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
From 6cb5b0be8837222a1e01745f2cf57cd0e593186d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Antoine Tenart <antoine.tenart@free-electrons.com>
|
||||||
|
Date: Mon, 23 Oct 2017 10:28:20 +0200
|
||||||
|
Subject: [PATCH] Add ARC support
|
||||||
|
|
||||||
|
[Alexey: Rebased on top of other patches like RiscV, NIOS2 etc].
|
||||||
|
|
||||||
|
Signed-off-by: Antoine Tenart <antoine.tenart@bootlin.com>
|
||||||
|
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
|
||||||
|
|
||||||
|
Upstream-Status: Submitted [ https://bugzilla.mozilla.org/show_bug.cgi?id=1492378 ]
|
||||||
|
---
|
||||||
|
pr/include/md/_linux.cfg | 45 ++++++++++++++++++++++++++++++++++++++++
|
||||||
|
pr/include/md/_linux.h | 2 ++
|
||||||
|
2 files changed, 47 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/pr/include/md/_linux.cfg b/pr/include/md/_linux.cfg
|
||||||
|
index fec8525378dc..5f4fa0eac783 100644
|
||||||
|
--- a/nspr/pr/include/md/_linux.cfg
|
||||||
|
+++ b/nspr/pr/include/md/_linux.cfg
|
||||||
|
@@ -1157,6 +1157,51 @@
|
||||||
|
#define PR_BYTES_PER_WORD_LOG2 3
|
||||||
|
#define PR_BYTES_PER_DWORD_LOG2 3
|
||||||
|
|
||||||
|
+#elif defined(__arc__)
|
||||||
|
+
|
||||||
|
+#define IS_LITTLE_ENDIAN 1
|
||||||
|
+#undef IS_BIG_ENDIAN
|
||||||
|
+
|
||||||
|
+#define PR_BYTES_PER_BYTE 1
|
||||||
|
+#define PR_BYTES_PER_SHORT 2
|
||||||
|
+#define PR_BYTES_PER_INT 4
|
||||||
|
+#define PR_BYTES_PER_INT64 8
|
||||||
|
+#define PR_BYTES_PER_LONG 4
|
||||||
|
+#define PR_BYTES_PER_FLOAT 4
|
||||||
|
+#define PR_BYTES_PER_DOUBLE 8
|
||||||
|
+#define PR_BYTES_PER_WORD 4
|
||||||
|
+#define PR_BYTES_PER_DWORD 8
|
||||||
|
+
|
||||||
|
+#define PR_BITS_PER_BYTE 8
|
||||||
|
+#define PR_BITS_PER_SHORT 16
|
||||||
|
+#define PR_BITS_PER_INT 32
|
||||||
|
+#define PR_BITS_PER_INT64 64
|
||||||
|
+#define PR_BITS_PER_LONG 32
|
||||||
|
+#define PR_BITS_PER_FLOAT 32
|
||||||
|
+#define PR_BITS_PER_DOUBLE 64
|
||||||
|
+#define PR_BITS_PER_WORD 32
|
||||||
|
+
|
||||||
|
+#define PR_BITS_PER_BYTE_LOG2 3
|
||||||
|
+#define PR_BITS_PER_SHORT_LOG2 4
|
||||||
|
+#define PR_BITS_PER_INT_LOG2 5
|
||||||
|
+#define PR_BITS_PER_INT64_LOG2 6
|
||||||
|
+#define PR_BITS_PER_LONG_LOG2 5
|
||||||
|
+#define PR_BITS_PER_FLOAT_LOG2 5
|
||||||
|
+#define PR_BITS_PER_DOUBLE_LOG2 6
|
||||||
|
+#define PR_BITS_PER_WORD_LOG2 5
|
||||||
|
+
|
||||||
|
+#define PR_ALIGN_OF_SHORT 2
|
||||||
|
+#define PR_ALIGN_OF_INT 4
|
||||||
|
+#define PR_ALIGN_OF_LONG 4
|
||||||
|
+#define PR_ALIGN_OF_INT64 4
|
||||||
|
+#define PR_ALIGN_OF_FLOAT 4
|
||||||
|
+#define PR_ALIGN_OF_DOUBLE 4
|
||||||
|
+#define PR_ALIGN_OF_POINTER 4
|
||||||
|
+#define PR_ALIGN_OF_WORD 4
|
||||||
|
+
|
||||||
|
+#define PR_BYTES_PER_WORD_LOG2 2
|
||||||
|
+#define PR_BYTES_PER_DWORD_LOG2 3
|
||||||
|
+
|
||||||
|
#else
|
||||||
|
|
||||||
|
#error "Unknown CPU architecture"
|
||||||
|
diff --git a/pr/include/md/_linux.h b/pr/include/md/_linux.h
|
||||||
|
index 8e04fad479a1..628b1217e9c8 100644
|
||||||
|
--- a/nspr/pr/include/md/_linux.h
|
||||||
|
+++ b/nspr/pr/include/md/_linux.h
|
||||||
|
@@ -63,6 +63,8 @@
|
||||||
|
#define _PR_SI_ARCHITECTURE "riscv32"
|
||||||
|
#elif defined(__riscv) && (__riscv_xlen == 64)
|
||||||
|
#define _PR_SI_ARCHITECTURE "riscv64"
|
||||||
|
+#elif defined(__arc__)
|
||||||
|
+#define _PR_SI_ARCHITECTURE "arc"
|
||||||
|
#else
|
||||||
|
#error "Unknown CPU architecture"
|
||||||
|
#endif
|
||||||
|
--
|
||||||
|
2.17.1
|
||||||
|
|
23
libs/nspr/patches/003-native_and_musl_fix.patch
Normal file
23
libs/nspr/patches/003-native_and_musl_fix.patch
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
--- a/nspr/config/config.mk 2017-10-31 13:13:22.692343122 +0200
|
||||||
|
+++ b/nspr/config/config.mk 2017-10-31 13:13:58.758016378 +0200
|
||||||
|
@@ -126,6 +126,9 @@
|
||||||
|
|
||||||
|
ifeq ($(USE_IPV6),1)
|
||||||
|
DEFINES += -D_PR_INET6
|
||||||
|
+ifeq ($(MUSL),1)
|
||||||
|
+CFLAGS += -D_PR_POLL_AVAILABLE -D_PR_HAVE_OFF64_T -D_PR_INET6 -D_PR_HAVE_INET_NTOP -D_PR_HAVE_GETHOSTBYNAME2 -D_PR_HAVE_GETADDRINFO -D_PR_INET6_PROBE
|
||||||
|
+endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(MOZ_UNICODE),1)
|
||||||
|
--- a/nspr/config/Makefile.in 2019-03-31 13:44:56.919871810 +0300
|
||||||
|
+++ b/nspr/config/Makefile.in 2019-03-31 13:45:21.560545948 +0300
|
||||||
|
@@ -30,7 +30,7 @@
|
||||||
|
|
||||||
|
# This version hasn't been ported for us; the one in mozilla/config has
|
||||||
|
ifneq ($(OS_ARCH),OS2)
|
||||||
|
-CSRCS += nsinstall.c
|
||||||
|
+#CSRCS += nsinstall.c
|
||||||
|
|
||||||
|
PLSRCS = nfspwd.pl
|
||||||
|
endif
|
Loading…
Reference in a new issue