Package init
This commit is contained in:
commit
591899afb5
@ -0,0 +1,38 @@
|
||||
# HG changeset patch
|
||||
# User Makoto Kato <m_kato@ga2.so-net.ne.jp>
|
||||
# Date 1549579831 25200
|
||||
# Thu Feb 07 15:50:31 2019 -0700
|
||||
# Node ID 753fe0f7964c3faef5e4410ed7e0c965df7b180b
|
||||
# Parent 5f4fed68d661de81638c8e1f108aff075a33d46e
|
||||
diff --git a/pr/include/prbit.h b/pr/include/prbit.h
|
||||
--- a/nspr/pr/include/prbit.h
|
||||
+++ b/nspr/pr/include/prbit.h
|
||||
@@ -14,7 +14,8 @@
|
||||
** functions.
|
||||
*/
|
||||
#if defined(_WIN32) && (_MSC_VER >= 1300) && \
|
||||
- (defined(_M_IX86) || defined(_M_AMD64) || defined(_M_ARM))
|
||||
+ (defined(_M_IX86) || defined(_M_X64) || defined(_M_ARM) || \
|
||||
+ defined(_M_ARM64))
|
||||
# include <intrin.h>
|
||||
# pragma intrinsic(_BitScanForward,_BitScanReverse)
|
||||
__forceinline static int __prBitScanForward32(unsigned int val)
|
||||
@@ -33,7 +34,8 @@
|
||||
# define pr_bitscan_clz32(val) __prBitScanReverse32(val)
|
||||
# define PR_HAVE_BUILTIN_BITSCAN32
|
||||
#elif ((__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) && \
|
||||
- (defined(__i386__) || defined(__x86_64__) || defined(__arm__))
|
||||
+ (defined(__i386__) || defined(__x86_64__) || defined(__arm__) || \
|
||||
+ defined(__aarch64__))
|
||||
# define pr_bitscan_ctz32(val) __builtin_ctz(val)
|
||||
# define pr_bitscan_clz32(val) __builtin_clz(val)
|
||||
# define PR_HAVE_BUILTIN_BITSCAN32
|
||||
@@ -136,7 +138,7 @@
|
||||
*/
|
||||
|
||||
#if defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_AMD64) || \
|
||||
- defined(_M_X64) || defined(_M_ARM))
|
||||
+ defined(_M_X64) || defined(_M_ARM) || defined(_M_ARM64))
|
||||
#include <stdlib.h>
|
||||
#pragma intrinsic(_rotl, _rotr)
|
||||
#define PR_ROTATE_LEFT32(a, bits) _rotl(a, bits)
|
||||
BIN
nspr-4.20.tar.gz
Normal file
BIN
nspr-4.20.tar.gz
Normal file
Binary file not shown.
37
nspr-config-pc.patch
Normal file
37
nspr-config-pc.patch
Normal file
@ -0,0 +1,37 @@
|
||||
diff -up a/nspr/config/nspr-config.in.flags b/nspr/config/nspr-config.in
|
||||
--- a/nspr/config/nspr-config.in.flags 2013-05-29 13:46:34.147971410 -0700
|
||||
+++ b/nspr/config/nspr-config.in 2013-05-29 14:17:10.990838914 -0700
|
||||
@@ -102,7 +102,7 @@ if test -z "$includedir"; then
|
||||
includedir=@includedir@
|
||||
fi
|
||||
if test -z "$libdir"; then
|
||||
- libdir=@libdir@
|
||||
+ libdir=`pkg-config --variable=libdir nspr`
|
||||
fi
|
||||
|
||||
if test "$echo_prefix" = "yes"; then
|
||||
@@ -136,12 +136,12 @@ if test "$echo_libs" = "yes"; then
|
||||
if test -n "$lib_nspr"; then
|
||||
libdirs="$libdirs -lnspr${major_version}"
|
||||
fi
|
||||
- os_ldflags="@LDFLAGS@"
|
||||
+ os_ldflags=`pkg-config --variable=ldflags nspr`
|
||||
for i in $os_ldflags ; do
|
||||
if echo $i | grep \^-L >/dev/null; then
|
||||
libdirs="$libdirs $i"
|
||||
fi
|
||||
done
|
||||
- echo $libdirs @OS_LIBS@
|
||||
+ echo $libdirs `pkg-config --variable=os_libs nspr`
|
||||
fi
|
||||
|
||||
diff -up a/nspr/config/nspr.pc.in.flags b/nspr/config/nspr.pc.in
|
||||
--- a/nspr/config/nspr.pc.in.flags 2013-05-29 13:48:15.026643570 -0700
|
||||
+++ b/nspr/config/nspr.pc.in 2013-05-29 13:49:47.795202949 -0700
|
||||
@@ -6,5 +6,5 @@ includedir=@includedir@
|
||||
Name: NSPR
|
||||
Description: The Netscape Portable Runtime
|
||||
Version: @MOD_MAJOR_VERSION@.@MOD_MINOR_VERSION@.@MOD_PATCH_VERSION@
|
||||
-Libs: -L@libdir@ -lplds@MOD_MAJOR_VERSION@ -lplc@MOD_MAJOR_VERSION@ -lnspr@MOD_MAJOR_VERSION@
|
||||
+Libs: -L@libdir@ -lplds@MOD_MAJOR_VERSION@ -lplc@MOD_MAJOR_VERSION@ -lnspr@MOD_MAJOR_VERSION@ @OS_LIBS@
|
||||
Cflags: -I@includedir@
|
||||
127
nspr-config.xml
Normal file
127
nspr-config.xml
Normal file
@ -0,0 +1,127 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
|
||||
<!ENTITY date SYSTEM "date.xml">
|
||||
<!ENTITY version SYSTEM "version.xml">
|
||||
]>
|
||||
|
||||
<refentry id="nspr-config">
|
||||
|
||||
<refentryinfo>
|
||||
<date>&date;</date>
|
||||
<title>Netscape Portable Runtime</title>
|
||||
<productname>nspr</productname>
|
||||
<productnumber>&version;</productnumber>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>nspr-config</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>nspr-config</refname>
|
||||
<refpurpose>Return meta information about nspr libraries</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>nspr-config</command>
|
||||
<arg><option>--prefix</option></arg>
|
||||
<arg><option>--exec-prefix</option></arg>
|
||||
<arg><option>--includedir</option></arg>
|
||||
<arg><option>--libs</option></arg>
|
||||
<arg><option>--cflags</option></arg>
|
||||
<arg><option>--libdir</option></arg>
|
||||
<arg><option>--version</option></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsection id="description">
|
||||
<title>Description</title>
|
||||
<para><command>nspr-config</command> is a shell script which can be used to obtain gcc options for building client pacakges of nspr.</para>
|
||||
</refsection>
|
||||
|
||||
<refsection>
|
||||
<title>Options</title>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--prefix</option></term>
|
||||
<listitem><simpara>Returns the top level system directory under which the nspr libraries are installed.</simpara></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--exec-prefix</option></term>
|
||||
<listitem><simpara>Returns the top level system directory under which any nspr binaries would be installed.</simpara></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--includedir</option> <replaceable>count</replaceable></term>
|
||||
<listitem><simpara>Returns the path to the directory were the nspr headers are installed.</simpara></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--version</option></term>
|
||||
<listitem><simpara>Returns the upstream version of nspr in the form major_version-minor_version-patch_version.</simpara></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--libs</option></term>
|
||||
<listitem><simpara>Returns the compiler linking flags.</simpara></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--cflags</option></term>
|
||||
<listitem><simpara>Returns the compiler include flags.</simpara></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--libdir</option></term>
|
||||
<listitem><simpara>Returns the path to the directory were the nspr libraries are installed.</simpara></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsection>
|
||||
|
||||
<refsection>
|
||||
<title>Examples</title>
|
||||
|
||||
<para>The following example will query for both include path and linkage flags:
|
||||
<programlisting>
|
||||
/usr/bin/nspr-config --cflags --libs
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
|
||||
</refsection>
|
||||
|
||||
<refsection>
|
||||
<title>Files</title>
|
||||
|
||||
<para><filename>/usr/bin/nspr-config</filename></para>
|
||||
|
||||
</refsection>
|
||||
|
||||
<refsection>
|
||||
<title>See also</title>
|
||||
<para>pkg-config(1)</para>
|
||||
</refsection>
|
||||
|
||||
<refsection id="authors">
|
||||
<title>Authors</title>
|
||||
<para>The NSPR liraries were written and maintained by developers with Netscape, Red Hat, Sun, Oracle, Mozilla, and Google.</para>
|
||||
<para>
|
||||
Authors: Elio Maldonado <emaldona@redhat.com>.
|
||||
</para>
|
||||
</refsection>
|
||||
|
||||
<!-- don't change -->
|
||||
<refsection id="license">
|
||||
<title>LICENSE</title>
|
||||
<para>Licensed under the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
</para>
|
||||
</refsection>
|
||||
|
||||
</refentry>
|
||||
|
||||
99
nspr.spec
Normal file
99
nspr.spec
Normal file
@ -0,0 +1,99 @@
|
||||
%global nspr_version 4.20
|
||||
Name: nspr
|
||||
Version: 4.20.0
|
||||
Release: 2
|
||||
Summary: Netscape Portable Runtime
|
||||
License: MPLv2.0
|
||||
URL: http://www.mozilla.org/projects/nspr
|
||||
BuildRequires: gcc git
|
||||
Source0: %{name}-%{nspr_version}.tar.gz
|
||||
Source1: nspr-config.xml
|
||||
|
||||
Patch1: nspr-config-pc.patch
|
||||
|
||||
Patch6000: 6000-Bug-1525173-prbith-should-use-builtin-function-on-aarch64.patch
|
||||
|
||||
%description
|
||||
NetScape Portable Runtime (NSPR) provides platform independence for non-GUI
|
||||
operating system facilities. These facilities include threads, thread
|
||||
synchronization, normal file and network I/O, interval timing and calendar
|
||||
time, basic memory management (malloc and free) and shared library linking.
|
||||
|
||||
%package devel
|
||||
Summary: Development libraries for the Netscape Portable Runtime
|
||||
BuildRequires: xmlto
|
||||
Requires: nspr = %{version}-%{release}
|
||||
Requires: pkgconfig
|
||||
|
||||
%description devel
|
||||
Development package for nspr.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{name}-%{nspr_version} -p1 -Sgit
|
||||
cp ./nspr/config/nspr-config.in ./nspr/config/nspr-config-pc.in
|
||||
|
||||
%build
|
||||
%define _configure ./nspr/configure
|
||||
%configure \
|
||||
--includedir=%{_includedir}/nspr4 \
|
||||
--enable-64bit \
|
||||
--enable-optimize="$RPM_OPT_FLAGS"
|
||||
%make_build
|
||||
date +"%e %B %Y" | tr -d '\n' > date.xml
|
||||
echo -n %{version} > version.xml
|
||||
cp %{SOURCE1} .
|
||||
xmlto man nspr-config.xml
|
||||
|
||||
%check
|
||||
perl ./nspr/pr/tests/runtests.pl 2>&1 | tee output.log
|
||||
TEST_FAILURES=`grep -c FAILED ./output.log` || :
|
||||
if [ $TEST_FAILURES -ne 0 ]; then
|
||||
echo "error: test suite returned failure(s)"
|
||||
exit 1
|
||||
fi
|
||||
echo "test suite completed"
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
%make_install
|
||||
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
|
||||
mkdir -p $RPM_BUILD_ROOT/%{_libdir}/pkgconfig
|
||||
NSPR_LIBS=`./config/nspr-config --libs`
|
||||
NSPR_CFLAGS=`./config/nspr-config --cflags`
|
||||
NSPR_VERSION=`./config/nspr-config --version`
|
||||
install -c -m 644 nspr-config.1 $RPM_BUILD_ROOT%{_mandir}/man1/nspr-config.1
|
||||
|
||||
%post
|
||||
/sbin/ldconfig
|
||||
|
||||
%postun
|
||||
/sbin/ldconfig
|
||||
|
||||
%files
|
||||
%{_libdir}/libnspr4.so
|
||||
%{_libdir}/libplc4.so
|
||||
%{_libdir}/libplds4.so
|
||||
%exclude %{_bindir}/compile-et.pl
|
||||
%exclude %{_bindir}/prerr.properties
|
||||
%exclude %{_libdir}/libnspr4.a
|
||||
%exclude %{_libdir}/libplc4.a
|
||||
%exclude %{_libdir}/libplds4.a
|
||||
%exclude %{_datadir}/aclocal/nspr.m4
|
||||
%exclude %{_includedir}/nspr4/md
|
||||
%license nspr/LICENSE
|
||||
|
||||
%files devel
|
||||
%{_bindir}/nspr-config
|
||||
%{_libdir}/pkgconfig/nspr.pc
|
||||
%{_includedir}/nspr4
|
||||
%{_mandir}/man*/*
|
||||
|
||||
%changelog
|
||||
* Fri Apr 19 2019 liusirui<liusirui@huawei.com> - 4.20.0-2
|
||||
- Type:bugfix
|
||||
- ID:NA
|
||||
- SUG:NA
|
||||
- DESC:backport patches from https://hg.mozilla.org/projects/nspr
|
||||
|
||||
* Mon Sep 10 2018 openEuler Buildteam <buildteam@openeuler.org> - 4.20.0-1
|
||||
- Package init
|
||||
Loading…
x
Reference in New Issue
Block a user