a1a1ce8
%{!?perl_vendorarch: %define perl_vendorarch %(eval "`%{__perl} -V:installvendorarch`"; echo $installvendorarch)}
cvsextras 3f47eb8
cvsextras 3f47eb8
%define real_version 1.5-rc6a
cvsextras 3f47eb8
a1a1ce8
Summary: JavaScript interpreter and libraries
cvsextras 3f47eb8
Name: js
cvsextras 3f47eb8
Version: 1.5
0c0b411
Release: 0.rc6a.4
a1a1ce8
%if 0%{?_without_readline:1}
a1a1ce8
License: MPL/GPL/LGPL
a1a1ce8
%else
a1a1ce8
License: GPL
a1a1ce8
%endif
cvsextras 3f47eb8
Group: Development/Languages
cvsextras 3f47eb8
URL: http://www.mozilla.org/js/
cvsextras 3f47eb8
Source: http://ftp.mozilla.org/pub/mozilla.org/js/js-%{real_version}.tar.gz
cvsextras 3f47eb8
Patch0: js-make.patch
cvsextras 3f47eb8
Patch1: js-shlib.patch
a1a1ce8
Patch2: js-perlconnect.patch
30fe851
Patch3: js-va_copy.patch
cvsextras 3f47eb8
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
a1a1ce8
BuildRequires: perl >= 1:5.6.1 readline-devel
a1a1ce8
Requires:  perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
a1a1ce8
Provides: libjs = %{version}-%{release}
cvsextras 3f47eb8
cvsextras 3f47eb8
%description
cvsextras 3f47eb8
JavaScript is the Netscape-developed object scripting languages.
cvsextras 3f47eb8
This package has been created for purposes of Sablotron and is suitable
cvsextras 3f47eb8
for embedding in applications.
cvsextras 3f47eb8
cvsextras 3f47eb8
%package devel
cvsextras 3f47eb8
Summary: Header files, libraries and development documentation for %{name}
cvsextras 3f47eb8
Group: Development/Libraries
cvsextras 3f47eb8
Requires: %{name} = %{version}-%{release}
a1a1ce8
Provides: libjs-devel = %{version}-%{release}
cvsextras 3f47eb8
cvsextras 3f47eb8
%description devel
cvsextras 3f47eb8
This package contains the header files, static libraries and development
cvsextras 3f47eb8
documentation for %{name}. If you like to develop programs using %{name},
cvsextras 3f47eb8
you will need to install %{name}-devel.
cvsextras 3f47eb8
cvsextras 3f47eb8
%prep
a1a1ce8
%setup -q -n %{name}
cvsextras 3f47eb8
%patch0 -b .make
cvsextras 3f47eb8
%patch1 -b .shlib
a1a1ce8
%patch2 -b .perl
30fe851
%patch3 -p 1 -b .vacopy
a1a1ce8
cp src/perlconnect/README.html src/README.perlconnect.html
cvsextras 3f47eb8
cvsextras 3f47eb8
%build
a1a1ce8
export BUILD_OPT=1
a1a1ce8
%{__make} -C src -f Makefile.ref \
cvsextras 3f47eb8
	XCFLAGS="%{optflags} -fPIC" \
a1a1ce8
	BUILD_OPT="1" \
a1a1ce8
%if 0%{!?_without_readline:1}
a1a1ce8
	JS_READLINE="1" \
a1a1ce8
%endif
a1a1ce8
	JS_PERLCONNECT="1"
a1a1ce8
cd src/perlconnect
a1a1ce8
MAKEFLAGS=-s %{__perl} Makefile.PL INSTALLDIRS=vendor
a1a1ce8
%{__make} %{?_smp_mflags} OPTIMIZE="%{optflags}"
a1a1ce8
cd -
cvsextras 3f47eb8
cvsextras 3f47eb8
%install
cvsextras 3f47eb8
%{__rm} -rf %{buildroot}
cvsextras 3f47eb8
%{__install} -d -m0755 %{buildroot}%{_bindir} \
cvsextras 3f47eb8
			%{buildroot}%{_libdir} \
a1a1ce8
			%{buildroot}%{_includedir}
cvsextras 3f47eb8
%{__install} -m0755 src/Linux_All_OPT.OBJ/js %{buildroot}%{_bindir}
cvsextras 3f47eb8
%{__install} -m0755 src/Linux_All_OPT.OBJ/jscpucfg %{buildroot}%{_bindir}
cvsextras 3f47eb8
%{__install} -m0755 src/Linux_All_OPT.OBJ/libjs.so %{buildroot}%{_libdir}/libjs.so.1
cvsextras 3f47eb8
%{__ln_s} -nf libjs.so.1 %{buildroot}%{_libdir}/libjs.so
cvsextras 3f47eb8
%{__install} -m0755 src/Linux_All_OPT.OBJ/libjs.a %{buildroot}%{_libdir}
a1a1ce8
%{__install} -m0644 src/js*.h src/Linux_All_OPT.OBJ/jsautocfg.h \
a1a1ce8
  %{buildroot}%{_includedir}
a1a1ce8
%{__make} -C src/perlconnect pure_install PERL_INSTALL_ROOT=%{buildroot}
a1a1ce8
find %{buildroot} -type f -name .packlist -o -name jsperlbuild.pl | xargs -r rm
a1a1ce8
find %{buildroot} -type f -name '*.bs' -a -size 0 | xargs -r rm
a1a1ce8
chmod -R u+w %{buildroot}/*
a1a1ce8
a1a1ce8
%check || :
a1a1ce8
ln -s libjs.so src/Linux_All_OPT.OBJ/libjs.so.1
a1a1ce8
LD_LIBRARY_PATH=`pwd`/src/Linux_All_OPT.OBJ %{__make} -C src/perlconnect test
cvsextras 3f47eb8
a1a1ce8
%post -p /sbin/ldconfig
cvsextras 3f47eb8
a1a1ce8
%postun -p /sbin/ldconfig
cvsextras 3f47eb8
cvsextras 3f47eb8
%clean
cvsextras 3f47eb8
%{__rm} -rf %{buildroot}
cvsextras 3f47eb8
cvsextras 3f47eb8
%files
cvsextras 3f47eb8
%defattr(-, root, root, 0755)
cvsextras 3f47eb8
%{_bindir}/js
cvsextras 3f47eb8
%{_libdir}/*.so.*
a1a1ce8
%{perl_vendorarch}/auto/JS
a1a1ce8
%{perl_vendorarch}/*.pm
cvsextras 3f47eb8
cvsextras 3f47eb8
%files devel
cvsextras 3f47eb8
%defattr(-, root, root, 0755)
a1a1ce8
%doc src/README*.html src/perlconnect/bg.jpg
cvsextras 3f47eb8
%{_bindir}/jscpucfg
cvsextras 3f47eb8
%{_libdir}/*.so
cvsextras 3f47eb8
%{_libdir}/*.a
a1a1ce8
%{_includedir}/js*.h
cvsextras 3f47eb8
cvsextras 3f47eb8
%changelog
0c0b411
* Mon Feb 14 2005 David Woodhouse <dwmw2@infradead.org> - 1.5-0.rc6a.4
0c0b411
- Take js-va_copy.patch out of %ifarch x86_64 so it fixes the PPC build too
0c0b411
30fe851
* Sun Feb 13 2005 Thorsten Leemhuis <fedora at leemhuis dot info> - 1.5-0.rc6a.3
30fe851
- Add js-va_copy.patch to fix x86_64; Patch was found in a Mandrake srpm
30fe851
a1a1ce8
* Sat Dec 11 2004 Ville Skyttä <ville.skytta at iki.fi> - 1.5-0.rc6a.2
a1a1ce8
- Include perlconnect.
a1a1ce8
- Include readline support, rebuild using "--without readline" to disable.
a1a1ce8
- Add libjs* provides for upstream compatibility.
a1a1ce8
- Install header files in %%{_includedir} instead of %%{_includedir}/js.
a1a1ce8
cvsextras 3f47eb8
* Tue Jun 15 2004 Matthias Saou <http://freshrpms.net> 1.5-0.rc6a
cvsextras 3f47eb8
- Update to 1.5rc6a.
cvsextras 3f47eb8
cvsextras 3f47eb8
* Tue Mar 02 2004 Dag Wieers <dag@wieers.com> - 1.5-0.rc6
cvsextras 3f47eb8
- Initial package. (using DAR)