Blame SPECS/mozjs24.spec

012feb
Summary:	JavaScript interpreter and libraries
012feb
Name:		mozjs24
012feb
Version:	24.2.0
012feb
Release:	6%{?dist}
012feb
License:	MPLv2.0
012feb
Group:		Development/Languages
012feb
URL:		http://www.mozilla.org/js/
012feb
Source0:	http://ftp.mozilla.org/pub/mozilla.org/js/mozjs-%{version}.tar.bz2
012feb
BuildRequires:	pkgconfig(nspr)
012feb
BuildRequires:	readline-devel
012feb
BuildRequires:	/usr/bin/zip
012feb
BuildRequires:	/usr/bin/python
012feb
012feb
Patch0:		js17-build-fixes.patch
012feb
Patch1:		mozjs24-0001-Add-AArch64-support.patch
012feb
012feb
%description
012feb
JavaScript is the Netscape-developed object scripting language used in millions
012feb
of web pages and server applications worldwide. Netscape's JavaScript is a
012feb
super set of the ECMA-262 Edition 3 (ECMAScript) standard scripting language,
012feb
with only mild differences from the published standard.
012feb
012feb
%package devel
012feb
Summary: Header files, libraries and development documentation for %{name}
012feb
Group: Development/Libraries
012feb
Requires: %{name}%{?_isa} = %{version}-%{release}
012feb
012feb
%description devel
012feb
This package contains the header files, static libraries and development
012feb
documentation for %{name}. If you like to develop programs using %{name},
012feb
you will need to install %{name}-devel.
012feb
012feb
%prep
012feb
%setup -q -n mozjs-%{version}
012feb
# Delete bundled sources
012feb
rm js/src/editline -rf
012feb
rm js/src/ctypes/libffi -rf
012feb
%patch0 -p1
012feb
%patch1 -p1
012feb
chmod a+x configure
012feb
012feb
%build
012feb
%configure \
012feb
  --disable-static \
012feb
  --with-system-nspr \
012feb
  --enable-threadsafe \
012feb
  --enable-readline \
012feb
  --enable-xterm-updates
012feb
make %{?_smp_mflags}
012feb
012feb
%install
012feb
make install DESTDIR=%{buildroot}
012feb
012feb
# For some reason the headers and pkg-config file are executable
012feb
find %{buildroot}%{_includedir} -type f -exec chmod a-x {} \;
012feb
chmod a-x  %{buildroot}%{_libdir}/pkgconfig/*.pc
012feb
012feb
# Fix multilib devel conflicts...
012feb
function install_file() {
012feb
genheader=$*
012feb
mv ${genheader}.h ${genheader}%{__isa_bits}.h
012feb
cat > ${genheader}.h << EOF
012feb
/* This file exists to fix multilib conflicts */
012feb
#include <bits/wordsize.h>
012feb
#if __WORDSIZE == 64
012feb
#include "${genheader}64.h"
012feb
#else
012feb
#include "${genheader}32.h"
012feb
#endif
012feb
EOF
012feb
}
012feb
012feb
pushd $RPM_BUILD_ROOT/%{_includedir}/mozjs-24
012feb
install_file "js-config"
012feb
popd
012feb
012feb
# Upstream does not honor --disable-static yet
012feb
rm -f %{buildroot}%{_libdir}/*.a
012feb
# This is also statically linked; once that is fixed that we could
012feb
# consider shipping it.
012feb
rm -f %{buildroot}%{_bindir}/js24
012feb
012feb
# However, delete js-config since everything should use
012feb
# the pkg-config file.
012feb
rm -f %{buildroot}%{_bindir}/js24-config
012feb
012feb
%post -p /sbin/ldconfig
012feb
012feb
%postun -p /sbin/ldconfig
012feb
012feb
%files
012feb
%doc LICENSE README
012feb
%{_libdir}/*.so
012feb
012feb
%files devel
012feb
%{_libdir}/pkgconfig/*.pc
012feb
%{_includedir}/mozjs-24
012feb
012feb
%changelog
012feb
* Wed May 27 2015 Martin Stransky <stransky@redhat.com> 24.2.0-6
012feb
- Added generic 64/32 bit check
012feb
012feb
* Thu May 21 2015 Martin Stransky <stransky@redhat.com> 24.2.0-5
012feb
- Rebuild
012feb
012feb
* Thu May 21 2015 Martin Stransky <stransky@redhat.com> 24.2.0-4
012feb
- Fixed multilib issue
012feb
012feb
* Wed Jan 22 2014 Peter Robinson <pbrobinson@fedoraproject.org> 24.2.0-3
012feb
- Add patch to fix FTBFS on aarch64
012feb
012feb
* Fri Jan 10 2014 Debarshi Ray <rishi@fedoraproject.org> 24.2.0-2
012feb
- Fix a spelling mistake
012feb
012feb
* Thu Jan 09 2014 Debarshi Ray <rishi@fedoraproject.org> 24.2.0-1
012feb
- Initial spec