]> git.pld-linux.org Git - packages/js.git/blame - js.spec
- rel 10; build fixed
[packages/js.git] / js.spec
CommitLineData
19c3fbcd
JB
1#
2# Conditional build:
3baa2563 3%bcond_without threads # thread-safe library (requires nspr)
5254e17d 4%bcond_without java # libjsj and lshell
da36d3aa 5#
286739a7 6%include /usr/lib/rpm/macros.perl
19c3fbcd 7Summary: JavaScript Reference Implementation
d603892a 8Summary(pl.UTF-8): Wzorcowa implementacja JavaScriptu
19c3fbcd 9Name: js
5254e17d 10Version: 1.7.0
0c7a21ff 11Release: 10
5254e17d
JB
12Epoch: 2
13License: MPL 1.1 or GPL v2+ or LGPL v2.1+
da36d3aa 14Group: Development/Languages
e1bd9563 15Source0: http://ftp.mozilla.org/pub/mozilla.org/js/%{name}-%{version}.tar.gz
5254e17d 16# Source0-md5: 5571134c3863686b623ebe4e6b1f6fe6
19c3fbcd 17Patch0: %{name}-makefile.patch
5254e17d 18Patch1: %{name}-java.patch
0c7a21ff 19Patch2: %{name}-build.patch
19c3fbcd 20URL: http://www.mozilla.org/js/
354a2ac8 21%{?with_java:BuildRequires: jdk}
6744a6ec 22%{?with_java:BuildRequires: jpackage-utils}
354a2ac8 23%{?with_threads:BuildRequires: nspr-devel}
c2b7e186 24BuildRequires: perl-devel
19c3fbcd
JB
25BuildRequires: readline-devel
26BuildRequires: rpm-perlprov
7ffb0d7b 27BuildRequires: rpmbuild(macros) >= 1.294
da36d3aa 28Requires: %{name}-libs = %{epoch}:%{version}-%{release}
5254e17d
JB
29# dead, removed upstream
30Obsoletes: perl-JS
9fd95202 31Conflicts: njs
08550a4a 32%{?with_threads:Provides: js(threads)}
19c3fbcd
JB
33BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34
2629887b 35%define classdir %{_datadir}/java
9fd95202 36
19c3fbcd
JB
37%description
38JavaScript Reference Implementation (codename SpiderMonkey). The
39package contains JavaScript runtime (compiler, interpreter,
40decompiler, garbage collector, atom manager, standard classes) and
41small "shell" program that can be used interactively and with .js
42files to run scripts.
43
e925599b 44%description -l pl.UTF-8
19c3fbcd 45Wzorcowa implementacja JavaScriptu (o nazwie kodowej SpiderMonkey).
e925599b
JR
46Pakiet zawiera środowisko uruchomieniowe (kompilator, interpreter,
47dekompilator, odśmiecacz, standardowe klasy) i niewielką powłokę,
48która może być używana interaktywnie lub z plikami .js do uruchamiania
49skryptów.
19c3fbcd 50
da36d3aa
JB
51%package libs
52Summary: JavaScript Reference Implementation library
53Summary(pl.UTF-8): Biblioteka wzorcowej implementacja JavaScriptu
54Group: Libraries
55Conflicts: js < 1.7.0-8
56
57%description libs
58JavaScript Reference Implementation (codename SpiderMonkey) library.
59
60%description libs -l pl.UTF-8
61Biblioteka wzorcowej implementacja JavaScriptu (SpiderMonkey).
62
19c3fbcd
JB
63%package devel
64Summary: Header files for JavaScript reference library
d603892a 65Summary(pl.UTF-8): Pliki nagłówkowe do biblioteki JavaScript
19c3fbcd 66Group: Development/Libraries
da36d3aa 67Requires: %{name}-libs = %{epoch}:%{version}-%{release}
9fd95202 68Conflicts: njs-devel
08550a4a 69%{?with_threads:Provides: js-devel(threads)}
19c3fbcd
JB
70
71%description devel
72Header files for JavaScript reference library.
73
e925599b
JR
74%description devel -l pl.UTF-8
75Pliki nagłówkowe do biblioteki JavaScript.
19c3fbcd
JB
76
77%package static
78Summary: Static JavaScript reference library
d603892a 79Summary(pl.UTF-8): Statyczna biblioteka JavaScript
19c3fbcd 80Group: Development/Libraries
5ae6f060 81Requires: %{name}-devel = %{epoch}:%{version}-%{release}
9fd95202 82Conflicts: njs-static
08550a4a 83%{?with_threads:Provides: js-static(threads)}
19c3fbcd
JB
84
85%description static
86Static version of JavaScript reference library.
87
e925599b 88%description static -l pl.UTF-8
19c3fbcd
JB
89Statyczna wersja biblioteki JavaScript.
90
9fd95202
JB
91%package java
92Summary: JavaScript LiveConnect Version 3 implementation
d603892a 93Summary(pl.UTF-8): Implementacja JavaScript LiveConnect w wersji 3
9fd95202 94Group: Libraries
5ae6f060 95Requires: %{name} = %{epoch}:%{version}-%{release}
9fd95202
JB
96Conflicts: mozilla
97Conflicts: mozilla-embedded
98
99%description java
100LiveConnect is a library that permits JavaScript and Java virtual
101machines to interoperate. Specifically, it enables JavaScript to
102access Java fields, invoke Java methods and enables Java to access
103JavaScript object properties and evaluate arbitrary JavaScript.
104LiveConnect was originally an integrated feature of both the Netscape
105Navigator browser and Netscape's server-side JavaScript. Now, it is a
106standalone library that can be embedded within other projects, such as
107the Mozilla browser.
108
e925599b
JR
109%description java -l pl.UTF-8
110LiveConnect to biblioteka pozwalająca na współpracę maszyn wirtualnych
111JavaScriptu i Javy. W szczególności pozwala z poziomu JavaScriptu na
112dostęp do pól Javy, wywoływanie metod Javy oraz z poziomu Javy na
113dostęp do składowych obiektów JavaScriptu i wykonywanie dowolnego kodu
114w JavaScripcie. LiveConnect oryginalnie był zintegrowaną częścią
115przeglądarki Netscape Navigator oraz Netscape JavaScript działającego
116po stronie serwera. Teraz jest to samodzielna biblioteka, którą można
117osadzać w innych projektach, takich jak przeglądarka Mozilla.
9fd95202
JB
118
119%package java-devel
120Summary: JavaScript LiveConnect 3 implementation header files
d603892a 121Summary(pl.UTF-8): Pliki nagłówkowe implementacji JavaScript LiveConnect 3
9fd95202 122Group: Development/Libraries
5ae6f060 123Requires: %{name}-devel = %{epoch}:%{version}-%{release}
124Requires: %{name}-java = %{epoch}:%{version}-%{release}
9fd95202
JB
125
126%description java-devel
127JavaScript LiveConnect 3 implementation header files.
128
e925599b
JR
129%description java-devel -l pl.UTF-8
130Pliki nagłówkowe implementacji JavaScript LiveConnect 3.
9fd95202
JB
131
132%package java-static
133Summary: JavaScript Live Connect 3 implementation static library
d603892a 134Summary(pl.UTF-8): Biblioteka statyczna implementacji JavaScript LiveConnect 3
9fd95202 135Group: Development/Libraries
5ae6f060 136Requires: %{name}-java-devel = %{epoch}:%{version}-%{release}
9fd95202
JB
137
138%description java-static
139JavaScript Live Connect 3 implementation static library.
140
e925599b 141%description java-static -l pl.UTF-8
9fd95202
JB
142Biblioteka statyczna implementacji JavaScript LiveConnect 3.
143
19c3fbcd
JB
144%prep
145%setup -q -n %{name}
380c9ee3 146%patch0 -p1
5254e17d 147%patch1 -p1
0c7a21ff 148%patch2 -p1
19c3fbcd 149
5254e17d
JB
150echo 'SONAME=libjs.so.1' >> src/Makefile.ref
151echo 'SONAME=libjsj.so.1' >> src/liveconnect/Makefile.ref
0f6791fd 152
556c4129
AM
153%ifarch %{x8664}
154sed -i -e 's#i386#amd64#g' src/liveconnect/Makefile.ref src/liveconnect/config/*.mk
155sed -i -e 's#lib/amd64/client#lib/amd64/server#g' src/liveconnect/Makefile.ref src/liveconnect/config/*.mk
156%endif
157
19c3fbcd 158%build
ff5e3b1d 159%{__make} -j1 -C src -f Makefile.ref \
19c3fbcd 160 %{!?debug:BUILD_OPT=1} \
e003c9e6 161 OPTIMIZER="%{rpmcflags} -DHAVE_VA_COPY -DVA_COPY=va_copy -DJS_C_STRINGS_ARE_UTF8=1" \
19c3fbcd 162 JS_READLINE=1 \
cef40177 163 CC="%{__cc}" \
380c9ee3 164 LDFLAGS="%{rpmldflags}" \
0f6791fd 165 MKSHLIB="%{__cc} -shared -Wl,-soname=\$(SONAME)" \
354a2ac8 166 %{?with_threads:JS_THREADSAFE=1} \
6744a6ec 167 %{?with_java:JS_LIVECONNECT=1 JDK=%{java_home}}
19c3fbcd 168
19c3fbcd
JB
169# no UNIX makefiles
170# %{__make} -C jsd
171
172%install
173rm -rf $RPM_BUILD_ROOT
9fd95202 174install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_includedir}/js,%{classdir}}
19c3fbcd
JB
175
176cd src
177install Linux*/{js,jscpucfg} $RPM_BUILD_ROOT%{_bindir}
70d3437e 178install Linux*/libjs.a $RPM_BUILD_ROOT%{_libdir}
5254e17d
JB
179install Linux*/libjs.so $RPM_BUILD_ROOT%{_libdir}/libjs.so.1.0.0
180ln -sf libjs.so.1.0.0 $RPM_BUILD_ROOT%{_libdir}/libjs.so.1
181ln -sf libjs.so.1.0.0 $RPM_BUILD_ROOT%{_libdir}/libjs.so
182install Linux*/{jsautocfg.h,jsautokw.h} $RPM_BUILD_ROOT%{_includedir}/js
19c3fbcd
JB
183install js.msg jsapi.h jsarray.h jsarena.h jsatom.h jsbit.h jsbool.h \
184 jsclist.h jscntxt.h jscompat.h jsconfig.h jsdate.h jsdbgapi.h \
5254e17d
JB
185 jsdhash.h jsemit.h jsfun.h jsgc.h jshash.h jsinterp.h jsiter.h \
186 jslock.h jslong.h jsmath.h jsnum.h jsobj.h jsopcode.tbl jsopcode.h \
187 jsosdep.h jsotypes.h jsparse.h jsprf.h jsproto.tbl jsprvtd.h jspubtd.h \
188 jsregexp.h jsscan.h jsscope.h jsscript.h jsstddef.h jsstr.h jstypes.h \
189 jsutil.h jsxdrapi.h jsxml.h \
19c3fbcd
JB
190 $RPM_BUILD_ROOT%{_includedir}/js
191
354a2ac8 192%if %{with java}
0f6791fd 193install liveconnect/Linux*/libjsj.a $RPM_BUILD_ROOT%{_libdir}
5254e17d
JB
194install liveconnect/Linux*/libjsj.so $RPM_BUILD_ROOT%{_libdir}/libjsj.so.1.0.0
195ln -sf libjsj.so.1.0.0 $RPM_BUILD_ROOT%{_libdir}/libjsj.so.1
196ln -sf libjsj.so.1.0.0 $RPM_BUILD_ROOT%{_libdir}/libjsj.so
9fd95202
JB
197install liveconnect/Linux*/lcshell $RPM_BUILD_ROOT%{_bindir}
198install liveconnect/classes/Linux*/*.jar $RPM_BUILD_ROOT%{classdir}
199install liveconnect/{jsjava.h,nsI*.h,_jni/*.h} $RPM_BUILD_ROOT%{_includedir}/js
200%endif
19c3fbcd 201
19c3fbcd
JB
202%clean
203rm -rf $RPM_BUILD_ROOT
204
da36d3aa
JB
205%post libs -p /sbin/ldconfig
206%postun libs -p /sbin/ldconfig
19c3fbcd 207
9fd95202
JB
208%post java -p /sbin/ldconfig
209%postun java -p /sbin/ldconfig
210
19c3fbcd
JB
211%files
212%defattr(644,root,root,755)
5254e17d 213%doc src/README.html
f74aa5c1 214%attr(755,root,root) %{_bindir}/js
da36d3aa
JB
215
216%files libs
217%defattr(644,root,root,755)
3d1ec0b0 218%attr(755,root,root) %{_libdir}/libjs.so.*.*.*
5254e17d 219%attr(755,root,root) %ghost %{_libdir}/libjs.so.1
19c3fbcd
JB
220
221%files devel
222%defattr(644,root,root,755)
f74aa5c1 223%attr(755,root,root) %{_bindir}/jscpucfg
70d3437e 224%attr(755,root,root) %{_libdir}/libjs.so
9fd95202
JB
225%dir %{_includedir}/js
226%{_includedir}/js/js.msg
227%{_includedir}/js/jsopcode.tbl
5254e17d 228%{_includedir}/js/jsproto.tbl
9fd95202 229%{_includedir}/js/js[!j]*.h
19c3fbcd
JB
230
231%files static
232%defattr(644,root,root,755)
9fd95202
JB
233%{_libdir}/libjs.a
234
354a2ac8 235%if %{with java}
9fd95202
JB
236%files java
237%defattr(644,root,root,755)
238%doc src/liveconnect/README.html
239%attr(755,root,root) %{_bindir}/lcshell
3d1ec0b0 240%attr(755,root,root) %{_libdir}/libjsj.so.*.*.*
5254e17d
JB
241%attr(755,root,root) %ghost %{_libdir}/libjsj.so.1
242%{classdir}/js*.jar
9fd95202
JB
243
244%files java-devel
245%defattr(644,root,root,755)
0f6791fd 246%attr(755,root,root) %{_libdir}/libjsj.so
9fd95202
JB
247%{_includedir}/js/jsjava.h
248%{_includedir}/js/n*.h
249
250%files java-static
251%defattr(644,root,root,755)
252%{_libdir}/libjsj.a
253%endif
This page took 0.109504 seconds and 4 git commands to generate.