Ticket #270: parrot.spec.new

File parrot.spec.new, 6.7 KB (added by gerd, 6 years ago)

I send the patch again and add the remove of perl6 to it. I created the file "parrot.spec.new" from revision 36670. It is tested under Fedora 7 and OpenSuSE 11.1. It would be nice if it would be applied before the coming out of release 0.9.1.

Line 
1Name:           parrot
2Version:        0.9.0
3Release:        1%{?dist}
4Summary:        Parrot Virtual Machine
5License:        Artistic 2.0
6Group:          Development/Libraries
7URL:            http://www.parrot.org/
8Source0:        ftp://ftp.parrot.org/pub/parrot/releases/devel/parrot/parrot-%{version}.tar.gz
9BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
10BuildRequires:  readline-devel
11BuildRequires:  ncurses-devel
12BuildRequires:  gmp-devel
13BuildRequires:  gdbm-devel
14BuildRequires:  /usr/bin/perldoc
15BuildRequires:  libicu-devel
16
17%package languages
18Summary:        Parrot Virtual Machine languages
19License:        Artistic 2.0
20Group:          Development/Libraries
21
22%package devel
23Summary:        Parrot Virtual Machine development headers and libraries
24License:        Artistic 2.0
25Group:          Development/Libraries
26Requires:       %{name} = %{version}-%{release}
27Requires:       %{_libdir}/pkgconfig
28
29%description
30Parrot is a virtual machine designed to efficiently compile and execute
31bytecode for dynamic languages. Parrot is the target for Rakudo Perl 6,
32as well as variety of other languages.
33
34%description languages
35High-level languages which run on the Parrot virtual machine.
36
37%description devel
38Parrot Virtual Machine development headers and libraries.
39
40%prep
41%setup -q
42
43%{__perl} -pi -e 's,"lib/,"%{_lib}/, if (/CONST_STRING\(interp,/)' \
44    src/library.c
45%{__perl} -pi -e "s,'/usr/lib','%{_libdir}',;s,runtime/lib/,runtime/%{_lib}/," \
46    tools/dev/install_files.pl \
47    tools/dev/mk_manifests.pl
48
49%build
50
51if test "%{_vendor}" = "suse"
52then
53    LIBS='-lncurses -lm'
54else
55    LIBS='-lcurses -lm'
56fi
57
58%{__perl} Configure.pl \
59    --prefix=%{_usr} \
60    --libdir=%{_libdir} \
61    --sysconfdir=%{_sysconfdir} \
62    --infodir=%{_datadir}/info \
63    --mandir=%{_mandir} \
64    --cc="%{__cc}" \
65    --cxx=%{__cxx} \
66    --optimize="$RPM_OPT_FLAGS -maccumulate-outgoing-args" \
67    --parrot_is_shared \
68    --lex=/usr/bin/flex \
69    --yacc=/usr/bin/yacc \
70    --libs="$LIBS"
71
72export LD_LIBRARY_PATH=$( pwd )/blib/lib
73make
74make languages
75make parrot_utils
76make installable
77make html
78
79%install
80rm -rf $RPM_BUILD_ROOT
81
82export LD_LIBRARY_PATH=$( pwd )/blib/lib
83make install DESTDIR=$RPM_BUILD_ROOT
84
85# Drop the docs so rpm can pick them up itself.
86rm -rf $RPM_BUILD_ROOT%{_usr}/share/doc/parrot      # necessary for SuSE
87#rm -rf $RPM_BUILD_ROOT/%{_docdir}/parrot
88
89# Force permissions on doc directories.
90find docs examples -type d -exec chmod 755 {} \;
91find docs examples -type f -exec chmod 644 {} \;
92
93# Force permissions on shared libs so they get stripped.
94find $RPM_BUILD_ROOT%{_libdir} -type f \( -name '*.so' -o -name '*.so.*' \) \
95    -exec chmod 755 {} \;
96
97# These files *probably* aren't needed.
98rm -rf $RPM_BUILD_ROOT%{_usr}/config \
99    $RPM_BUILD_ROOT%{_includedir}/src \
100    $RPM_BUILD_ROOT%{_usr}/src \
101    $RPM_BUILD_ROOT%{_usr}/tools
102
103%check
104export LD_LIBRARY_PATH=$( pwd )/blib/lib
105# make test < /dev/null
106# %{?_with_fulltest:make fulltest < /dev/null}
107# make test || :
108# %{?_with_fulltest:make fulltest || :}
109
110%clean
111rm -rf $RPM_BUILD_ROOT
112
113%post -p /sbin/ldconfig
114
115%postun -p /sbin/ldconfig
116
117%files
118%defattr(-,root,root,-)
119%doc ChangeLog CREDITS NEWS PBC_COMPAT PLATFORMS README
120%doc RESPONSIBLE_PARTIES TODO
121%doc docs examples
122%exclude %{_bindir}/parrot_config
123%exclude %{_bindir}/parrot_debugger
124%exclude %{_bindir}/pbc_*
125%{_bindir}/*
126%{_libdir}/parrot
127%{_libdir}/libparrot.so.*
128%{_usr}/compilers
129
130%files languages
131%defattr(-,root,root,-)
132%{_usr}/languages
133%{_usr}/runtime
134
135%files devel
136%defattr(-,root,root,-)
137%{_bindir}/parrot_config
138%{_bindir}/parrot_debugger
139%{_bindir}/pbc_disassemble
140%{_bindir}/pbc_info
141%{_bindir}/pbc_merge
142%{_bindir}/pbc_to_exe
143%{_bindir}/pbc_dump
144%{_includedir}/parrot
145%{_libdir}/libparrot.so
146%{_libdir}/libparrot.a
147%{_libdir}/pkgconfig/*
148
149%changelog
150* Sat Feb 14 2009 Gerd Pokorra <gp@zimt.uni-siegen.de> 0.9.1
151- removed perl6
152- added SuSE especials
153
154* Tue Jan 23 2009 Reini Urban <rurban@x-ray.at> 0.9.0
155- added make installable, perl6 is still not installable
156- added parrot_utils to devel
157- fixed Source0 url
158
159* Tue Jan 23 2009 Gerd Pokorra <gp@zimt.uni-siegen.de> 0.9.0
160- added make html
161- make reallyinstall => make install
162
163* Tue Jan 20 2009 chromatic <chromatic@wgz.org> 0.9.0
164- updated to 0.9.0
165
166* Tue Dec 16 2008 Whiteknight <wknight8111@gmail.com> 0.8.2
167- updated to 0.8.2
168
169* Tue Nov 18 2008 chromatic <chromatic@parrot.org> 0.8.1
170- updated to 0.8.1
171
172* Tue Oct 21 2008 particle <particle@parrot.org> 0.8.0
173- updated to 0.8.0
174
175* Tue Sep 16 2008 pmichaud <pmichaud@pobox.com> 0.7.1
176- updated to 0.7.1
177
178* Wed Sep  3 2008 chromatic <chromatic@wgz.org> 0.7.0
179- install parrot_config (not parrot-config)
180
181* Tue Jun 17 2008 Nuno Carvalho <smash@cpan.org> 0.6.3
182- updated to 0.6.3
183
184* Tue May 20 2008 chromatic <chromatic@wgz.org>> 0.6.2
185- updated to 0.6.2
186
187* Mon Apr 28 2008 chromatic <chromatic@wgz.org> 0.6.1
188- minor fixes; tested with Fedora 7, 8, and 9-beta
189
190* Tue Mar 18 2008 Bernhard Schmalhofer <Bernhard.Schmalhofer@gmx.de> 0.6.0
191- Update to 0.5.3.
192
193* Wed Feb 20 2008 Patrick Michaud <pmichaud@pobox.com> 0.5.3
194- Update to 0.5.3.
195
196* Tue Jan 15 2008 Bob Rogers <rogers@rgrjr.dyndns.org> 0.5.2
197- Update to 0.5.2.
198
199* Tue Dec 18 2007 Jonathan Worthington <jnthn@jnthn.net> 0.5.1
200- Update to 0.5.1.
201
202* Tue Nov 20 2007 chromatic <chromatic@wgz.org> 0.5.0
203- Update to 0.5.0.
204
205* Fri May 25 2007 David Fetter <david@fetter.org> 0.4.12-1
206- Update to 0.4.12.
207
208* Wed Apr 18 2007 Steven Pritchard <steve@kspei.com> 0.4.11-1
209- Update to 0.4.11.
210
211* Wed Mar 21 2007 Steven Pritchard <steve@kspei.com> 0.4.10-1
212- Update to 0.4.10.
213
214* Sat Mar 10 2007 Steven Pritchard <steve@kspei.com> 0.4.9-1
215- Update to 0.4.9.
216- BR ncurses-devel.
217- For some reason now I need to force -lm too.
218- Remove some files/directories that shouldn't be included.
219
220* Wed Jan 17 2007 Steven Pritchard <steve@kspei.com> 0.4.8-1
221- Attempt update to 0.4.8.
222
223* Fri Jun 30 2006 Steven Pritchard <steve@kspei.com> 0.4.5-5
224- Override lib_dir and make various substitutions to try to fix multilib.
225- Remove rpath use from Makefile.
226- Fix a pod error in src/ops/experimental.ops.
227- Enable "make test" since t/doc/pod.t won't fail now.
228
229* Wed Jun 28 2006 Steven Pritchard <steve@kspei.com> 0.4.5-4
230- Force permissions on shared libraries so rpmbuild strips them.
231
232* Wed Jun 28 2006 Steven Pritchard <steve@kspei.com> 0.4.5-3
233- Fix URL, description, summary, etc.
234- Add post/postun.
235- Move parrot-config to the devel sub-package.
236- Force permissions on the doc directories.
237
238* Tue Jun 27 2006 Steven Pritchard <steve@kspei.com> 0.4.5-2
239- Add -lcurses to get readline detection to work.
240- BR libicu-devel.
241
242* Tue Jun 27 2006 Steven Pritchard <steve@kspei.com> 0.4.5-1
243- Initial packaging attempt.
244
245* Tue Mar 18 2003 Steve Fink <sfink@foxglove.localdomain> 0.0.11
246- first .spec file created