[perl6]:
[parrot.git] / parrot.spec
blob6c0624ef6f3b2aab28731beaec1e6bd3dc953138
1 Name: parrot
2 Version: 0.5.1
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/PA/PARTICLE/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
18 BuildRequires: perl-SVK
20 %package devel
21 Summary: Parrot Virtual Machine development headers and libraries
22 License: Artistic 2.0
23 Group: Development/Libraries
24 Requires: %{name} = %{version}-%{release}
25 Requires: %{_libdir}/pkgconfig
27 %description
28 Parrot is a virtual machine designed to efficiently compile and
29 execute bytecode for interpreted languages. Parrot will be a target
30 for the Perl 6 compiler, and is already usable as a backend for
31 Pugs, as well as variety of other languages.
33 %description devel
34 Parrot Virtual Machine development headers and libraries.
36 %prep
37 %setup -q
39 %{__perl} -pi -e 's,"lib/,"%{_lib}/, if (/CONST_STRING\(interp,/)' \
40 src/library.c
41 %{__perl} -pi -e "s,'/usr/lib','%{_libdir}',;s,runtime/lib/,runtime/%{_lib}/," \
42 tools/dev/install_files.pl \
43 tools/dev/mk_manifests.pl
45 %build
46 %{__perl} Configure.pl \
47 --prefix=%{_usr} \
48 --libdir=%{_libdir} \
49 --sysconfdir=%{_sysconfdir} \
50 --infodir=%{_datadir}/info \
51 --mandir=%{_mandir} \
52 --cc=%{__cc} \
53 --cxx=%{__cxx} \
54 --optimize="$RPM_OPT_FLAGS -maccumulate-outgoing-args" \
55 --parrot_is_shared \
56 --lex=/usr/bin/flex \
57 --yacc=/usr/bin/yacc \
58 --libs='-lcurses -lm'
60 export LD_LIBRARY_PATH=$( pwd )/blib/lib
61 make
63 %install
64 rm -rf $RPM_BUILD_ROOT
66 export LD_LIBRARY_PATH=$( pwd )/blib/lib
67 make reallyinstall DESTDIR=$RPM_BUILD_ROOT
69 # Drop the docs so rpm can pick them up itself.
70 rm -rf $RPM_BUILD_ROOT/%{_docdir}/parrot
72 # Force permissions on doc directories.
73 find docs examples -type d -exec chmod 755 {} \;
74 find docs examples -type f -exec chmod 644 {} \;
76 # Force permissions on shared libs so they get stripped.
77 find $RPM_BUILD_ROOT%{_libdir} -type f \( -name '*.so' -o -name '*.so.*' \) \
78 -exec chmod 755 {} \;
80 # These files *probably* aren't needed.
81 rm -rf $RPM_BUILD_ROOT%{_usr}/compilers \
82 $RPM_BUILD_ROOT%{_usr}/config \
83 $RPM_BUILD_ROOT%{_includedir}/src \
84 $RPM_BUILD_ROOT%{_usr}/src
86 %check
87 export LD_LIBRARY_PATH=$( pwd )/blib/lib
88 # make test < /dev/null
89 # %{?_with_fulltest:make fulltest < /dev/null}
90 # make test || :
91 # %{?_with_fulltest:make fulltest || :}
93 %clean
94 rm -rf $RPM_BUILD_ROOT
96 %post -p /sbin/ldconfig
98 %postun -p /sbin/ldconfig
100 %files
101 %defattr(-,root,root,-)
102 %doc ABI_CHANGES ChangeLog CREDITS NEWS PBC_COMPAT PLATFORMS README
103 %doc RESPONSIBLE_PARTIES TODO
104 %doc docs examples
105 %exclude %{_bindir}/parrot-config
106 %{_bindir}/*
107 %{_libdir}/parrot
108 %{_libdir}/libparrot.so.*
110 %files devel
111 %defattr(-,root,root,-)
112 %{_bindir}/parrot-config
113 %{_includedir}/parrot
114 %{_libdir}/libparrot.so
115 %{_libdir}/libparrot.a
116 %{_libdir}/pkgconfig/*
118 %changelog
119 * Tue Dec 18 2007 Jonathan Worthington <jnthn@jnthn.net> 0.5.1
120 - Update to 0.5.1.
122 * Tue Nov 20 2007 chromatic <chromatic@wgz.org> 0.5.0
123 - Update to 0.5.0.
125 * Fri May 25 2007 David Fetter <david@fetter.org> 0.4.12-1
126 - Update to 0.4.12.
128 * Wed Apr 18 2007 Steven Pritchard <steve@kspei.com> 0.4.11-1
129 - Update to 0.4.11.
131 * Wed Mar 21 2007 Steven Pritchard <steve@kspei.com> 0.4.10-1
132 - Update to 0.4.10.
134 * Sat Mar 10 2007 Steven Pritchard <steve@kspei.com> 0.4.9-1
135 - Update to 0.4.9.
136 - BR ncurses-devel.
137 - For some reason now I need to force -lm too.
138 - Remove some files/directories that shouldn't be included.
140 * Wed Jan 17 2007 Steven Pritchard <steve@kspei.com> 0.4.8-1
141 - Attempt update to 0.4.8.
143 * Fri Jun 30 2006 Steven Pritchard <steve@kspei.com> 0.4.5-5
144 - Override lib_dir and make various substitutions to try to fix multilib.
145 - Remove rpath use from Makefile.
146 - Fix a pod error in src/ops/experimental.ops.
147 - Enable "make test" since t/doc/pod.t won't fail now.
149 * Wed Jun 28 2006 Steven Pritchard <steve@kspei.com> 0.4.5-4
150 - Force permissions on shared libraries so rpmbuild strips them.
152 * Wed Jun 28 2006 Steven Pritchard <steve@kspei.com> 0.4.5-3
153 - Fix URL, description, summary, etc.
154 - Add post/postun.
155 - Move parrot-config to the devel sub-package.
156 - Force permissions on the doc directories.
158 * Tue Jun 27 2006 Steven Pritchard <steve@kspei.com> 0.4.5-2
159 - Add -lcurses to get readline detection to work.
160 - BR libicu-devel.
162 * Tue Jun 27 2006 Steven Pritchard <steve@kspei.com> 0.4.5-1
163 - Initial packaging attempt.
165 * Tue Mar 18 2003 Steve Fink <sfink@foxglove.localdomain> 0.0.11
166 - first .spec file created