Sophie

Sophie

distrib > Mandriva > current > i586 > media > contrib-release-src > by-pkgid > 14d4cd404607510ae23f43ee173ff0ed > files > 5

waf-1.5.15-1mdv2010.1.src.rpm

%define debug_package %{nil}
%define _requires_exceptions perl(Exporter)|\\perl(XSLoader)|\\

Summary:	A framework for configuring, compiling and installing applications
Name:		waf
Version:	1.5.15
Release:	%mkrel 1
License:	BSD
Group:		Development/Other
Url:		http://code.google.com/p/waf/
Source0:	http://waf.googlecode.com/files/%{name}-%{version}.tar.bz2
Source1:	%{name}.macros
Patch0:		%{name}-1.5.11-installdir.patch
Patch1:		%{name}-1.5.8-fix-pthread-linkage.patch
%py_requires -d
BuildArch:	noarch
BuildRoot:	%{_tmppath}/%{name}-%{version}-buildroot

%description
Waf is a Python-based framework for configuring, compiling and installing
applications. It derives from the concepts of other build tools such as 
Scons, Autotools, CMake, and Ant.

* Easy to use: Waf configuration files are written in the mainstream 
  scripting language Python.
* Easy to install and to distribute: Waf fits entirely in a single 
  75KB redistributable file which does not require any installation to run.
* Portable: Waf only depends on Python which is ported onto most 
  operating systems.
* Reliable: Waf uses hash-based dependency calculation dependencies to 
  compute the targets to rebuild.
* User-friendly: The output can be displayed in colors, filtered, 
  displayed with progress bars or output all the commands that get 
  executed.
* Documented: The Waf book sums up the essential concepts.
* Flexible: Because Waf has a carefully designed object oriented 
  architecture it is very easy to add new features.
* Fast: Because of its carefully designed architecture, Waf is able 
  to distribute the jobs on multi-core hardware (-j), it is able to 
  reuse targets compiled already (ccache), and its runtime footprint 
  is pretty small compared to other build tools.
* Broad support for languages and tools: Waf is already used for C, 
  C++, C#, D, java, ocaml, python project, and provides various 
  tools for processing docbook, man pages, intltool, msgfmt. 

%prep
%setup -q
%patch0 -p1
%patch1 -p0

%build
./waf-light configure --prefix=%{_prefix}

./waf-light --make-waf

%install
[ "%{buildroot}" != "/" ] && rm -rf %{buildroot}

# say yes, please
echo y | ./waf-light install --destdir=%{buildroot}

# remove shebangs from all scripts in wafadmin
find %{buildroot}%{_datadir}/waf/wafadmin -name '*.py' -exec %{__sed} -i '1{/^#!/d}' {} \;

# fix waf script shebang line
%{__sed} -i "1c#! /usr/bin/python" %{buildroot}%{_bindir}/waf

# fix EOL
%{__sed} -i 's|\r$||g' utils/amtool.py

# remove x-bits from everything going to doc
find demos utils -type f -exec %{__chmod} 0644 {} \;

# remove zero-length files
%{__rm} demos/gnome/src/hello.h
%{__rm} demos/simple_scenarios/local_tool/uh.coin

# bash completion
%{__install} -D -p -m 0644 utils/waf-completion.bash \
  %{buildroot}%{_sysconfdir}/bash_completion.d//waf-completion.bash

# install waf rpm macro helper
install -D %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/macros.d/%{name}.macros

%clean
[ "%{buildroot}" != "/" ] && rm -rf %{buildroot}

%files
%defattr(-,root,root)
%doc README TODO ChangeLog demos doc/book utils
%{_sysconfdir}/bash_completion.d/%{name}*
%{_sysconfdir}/rpm/macros.d/%{name}.macros
%{_bindir}/%{name}
%{_datadir}/%{name}


%changelog
* Mon Apr 05 2010 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.15-1mdv2010.1
+ Revision: 531573
- update to new version 1.5.15
- rediff patch 0

* Sun Mar 07 2010 Lev Givon <lev@mandriva.org> 1.5.14-1mdv2010.1
+ Revision: 515481
- Update to 1.5.14.

* Thu Feb 18 2010 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.12-1mdv2010.1
+ Revision: 507863
- update to new version 1.5.12

* Mon Feb 01 2010 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.11-1mdv2010.1
+ Revision: 499241
-- update to new version 1.5.11
- rediff patch 0

* Wed Nov 18 2009 Frederik Himpe <fhimpe@mandriva.org> 1.5.10-1mdv2010.1
+ Revision: 467287
- update to new version 1.5.10

* Wed Sep 02 2009 Frederik Himpe <fhimpe@mandriva.org> 1.5.9-1mdv2010.0
+ Revision: 425473
- update to new version 1.5.9

* Sat Jul 11 2009 Funda Wang <fwang@mandriva.org> 1.5.8-2mdv2010.0
+ Revision: 394731
- fix pthread linkage

* Sun Jun 14 2009 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.8-1mdv2010.0
+ Revision: 385925
- update to new version 1.5.8

* Sat May 30 2009 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.6-1mdv2010.0
+ Revision: 381343
- update to new version 1.5.6

* Fri May 01 2009 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.5-1mdv2010.0
+ Revision: 369238
- update to new version 1.5.5
- rediff patch 0

* Mon Feb 02 2009 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.3-1mdv2009.1
+ Revision: 336307
- update to new version 1.5.3

* Fri Jan 30 2009 Funda Wang <fwang@mandriva.org> 1.5.2-4mdv2009.1
+ Revision: 335640
- specify LINKFLAGS also.

* Sat Jan 03 2009 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.2-3mdv2009.1
+ Revision: 323950
- fix install macro

* Sat Jan 03 2009 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.2-2mdv2009.1
+ Revision: 323544
- fix typo in waf.macros

* Sat Jan 03 2009 Tomasz Pawel Gajc <tpg@mandriva.org> 1.5.2-1mdv2009.1
+ Revision: 323515
- add specs and source files
- provide waf.macros for rpm building
- Patch0: fix installation of waf
- Created package structure for waf.