[DOCS]
[parrot.git] / parrot.spec
blob9dede011bb0674e4403f1d5180880b86fc8b2bba
1 Name: parrot
2 Version: 0.6.2
3 Release: 1%{?dist}
4 Summary: Parrot Virtual Machine
5 License: Artistic 2.0
6 Group: Development/Libraries
7 URL: http://www.parrotcode.org/
8 Source0: http://www.cpan.org/authors/id/P/PM/PMIC/parrot-%{version}.tar.gz
9 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
10 BuildRequires: readline-devel
11 BuildRequires: ncurses-devel
12 BuildRequires: gmp-devel
13 BuildRequires: gdbm-devel
14 BuildRequires: /usr/bin/perldoc
15 BuildRequires: bc
16 BuildRequires: m4
17 BuildRequires: libicu-devel
19 %package languages
20 Summary: Parrot Virtual Machine languages
21 License: Artistic 2.0
22 Group: Development/Libraries
24 %package devel
25 Summary: Parrot Virtual Machine development headers and libraries
26 License: Artistic 2.0
27 Group: Development/Libraries
28 Requires: %{name} = %{version}-%{release}
29 Requires: %{_libdir}/pkgconfig
31 %description
32 Parrot is a virtual machine designed to efficiently compile and execute
33 bytecode for dynamic languages. Parrot is a target for the Perl 6 compiler, and
34 is already usable as a backend for Pugs, as well as variety of other languages.
36 %description languages
37 High-level languages which run on the Parrot virtual machine.
39 %description devel
40 Parrot Virtual Machine development headers and libraries.
42 %prep
43 %setup -q
45 %{__perl} -pi -e 's,"lib/,"%{_lib}/, if (/CONST_STRING\(interp,/)' \
46 src/library.c
47 %{__perl} -pi -e "s,'/usr/lib','%{_libdir}',;s,runtime/lib/,runtime/%{_lib}/," \
48 tools/dev/install_files.pl \
49 tools/dev/mk_manifests.pl
51 %build
52 %{__perl} Configure.pl \
53 --prefix=%{_usr} \
54 --libdir=%{_libdir} \
55 --sysconfdir=%{_sysconfdir} \
56 --infodir=%{_datadir}/info \
57 --mandir=%{_mandir} \
58 --cc=%{__cc} \
59 --cxx=%{__cxx} \
60 --optimize="$RPM_OPT_FLAGS -maccumulate-outgoing-args" \
61 --parrot_is_shared \
62 --lex=/usr/bin/flex \
63 --yacc=/usr/bin/yacc \
64 --libs='-lcurses -lm'
66 export LD_LIBRARY_PATH=$( pwd )/blib/lib
67 make
68 make languages
69 make perl6
71 %install
72 rm -rf $RPM_BUILD_ROOT
74 export LD_LIBRARY_PATH=$( pwd )/blib/lib
75 make reallyinstall DESTDIR=$RPM_BUILD_ROOT
77 # Drop the docs so rpm can pick them up itself.
78 rm -rf $RPM_BUILD_ROOT/%{_docdir}/parrot
80 # Force permissions on doc directories.
81 find docs examples -type d -exec chmod 755 {} \;
82 find docs examples -type f -exec chmod 644 {} \;
84 # Force permissions on shared libs so they get stripped.
85 find $RPM_BUILD_ROOT%{_libdir} -type f \( -name '*.so' -o -name '*.so.*' \) \
86 -exec chmod 755 {} \;
88 # These files *probably* aren't needed.
89 rm -rf $RPM_BUILD_ROOT%{_usr}/config \
90 $RPM_BUILD_ROOT%{_includedir}/src \
91 $RPM_BUILD_ROOT%{_usr}/src \
92 $RPM_BUILD_ROOT%{_usr}/tools
94 %check
95 export LD_LIBRARY_PATH=$( pwd )/blib/lib
96 # make test < /dev/null
97 # %{?_with_fulltest:make fulltest < /dev/null}
98 # make test || :
99 # %{?_with_fulltest:make fulltest || :}
101 %clean
102 rm -rf $RPM_BUILD_ROOT
104 %post -p /sbin/ldconfig
106 %postun -p /sbin/ldconfig
108 %files
109 %defattr(-,root,root,-)
110 %doc ChangeLog CREDITS NEWS PBC_COMPAT PLATFORMS README
111 %doc RESPONSIBLE_PARTIES TODO
112 %doc docs examples
113 %exclude %{_bindir}/parrot-config
114 %exclude %{_bindir}/perl6
115 %{_bindir}/*
116 %{_libdir}/parrot
117 %{_libdir}/libparrot.so.*
118 %{_usr}/compilers
120 %files languages
121 %defattr(-,root,root,-)
122 %{_bindir}/perl6
123 %{_usr}/languages
124 %{_usr}/runtime
126 %files devel
127 %defattr(-,root,root,-)
128 %{_bindir}/parrot-config
129 %{_includedir}/parrot
130 %{_libdir}/libparrot.so
131 %{_libdir}/libparrot.a
132 %{_libdir}/pkgconfig/*
134 %changelog
135 * Tue May 20 2008 chromatic <chromatic@wgz.org 0.6.2
136 - updated to 0.6.2
138 * Mon Apr 28 2008 chromatic <chromatic@wgz.org> 0.6.1
139 - minor fixes; tested with Fedora 7, 8, and 9-beta
141 * Tue Mar 18 2008 Bernhard Schmalhofer <Bernhard.Schmalhofer@gmx.de> 0.6.0
142 - Update to 0.5.3.
144 * Wed Feb 20 2008 Patrick Michaud <pmichaud@pobox.com> 0.5.3
145 - Update to 0.5.3.
147 * Tue Jan 15 2008 Bob Rogers <rogers@rgrjr.dyndns.org> 0.5.2
148 - Update to 0.5.2.
150 * Tue Dec 18 2007 Jonathan Worthington <jnthn@jnthn.net> 0.5.1
151 - Update to 0.5.1.
153 * Tue Nov 20 2007 chromatic <chromatic@wgz.org> 0.5.0
154 - Update to 0.5.0.
156 * Fri May 25 2007 David Fetter <david@fetter.org> 0.4.12-1
157 - Update to 0.4.12.
159 * Wed Apr 18 2007 Steven Pritchard <steve@kspei.com> 0.4.11-1
160 - Update to 0.4.11.
162 * Wed Mar 21 2007 Steven Pritchard <steve@kspei.com> 0.4.10-1
163 - Update to 0.4.10.
165 * Sat Mar 10 2007 Steven Pritchard <steve@kspei.com> 0.4.9-1
166 - Update to 0.4.9.
167 - BR ncurses-devel.
168 - For some reason now I need to force -lm too.
169 - Remove some files/directories that shouldn't be included.
171 * Wed Jan 17 2007 Steven Pritchard <steve@kspei.com> 0.4.8-1
172 - Attempt update to 0.4.8.
174 * Fri Jun 30 2006 Steven Pritchard <steve@kspei.com> 0.4.5-5
175 - Override lib_dir and make various substitutions to try to fix multilib.
176 - Remove rpath use from Makefile.
177 - Fix a pod error in src/ops/experimental.ops.
178 - Enable "make test" since t/doc/pod.t won't fail now.
180 * Wed Jun 28 2006 Steven Pritchard <steve@kspei.com> 0.4.5-4
181 - Force permissions on shared libraries so rpmbuild strips them.
183 * Wed Jun 28 2006 Steven Pritchard <steve@kspei.com> 0.4.5-3
184 - Fix URL, description, summary, etc.
185 - Add post/postun.
186 - Move parrot-config to the devel sub-package.
187 - Force permissions on the doc directories.
189 * Tue Jun 27 2006 Steven Pritchard <steve@kspei.com> 0.4.5-2
190 - Add -lcurses to get readline detection to work.
191 - BR libicu-devel.
193 * Tue Jun 27 2006 Steven Pritchard <steve@kspei.com> 0.4.5-1
194 - Initial packaging attempt.
196 * Tue Mar 18 2003 Steve Fink <sfink@foxglove.localdomain> 0.0.11
197 - first .spec file created