diff --git a/.cvsignore b/.cvsignore
index da54fed..b388d46 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1 +1 @@
-waf-1.4.4.tar.bz2
+waf-1.5.2.tar.bz2
diff --git a/import.log b/import.log
index 6c95c24..ad8bc63 100644
--- a/import.log
+++ b/import.log
@@ -1,2 +1,3 @@
waf-1_4_3-1_fc9:HEAD:waf-1.4.3-1.fc9.src.rpm:1214694119
waf-1_4_4-1_fc9:HEAD:waf-1.4.4-1.fc9.src.rpm:1220215604
+waf-1_5_2-1_fc10:HEAD:waf-1.5.2-1.fc10.src.rpm:1232126058
diff --git a/sources b/sources
index b4ada0a..ef3174b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-6a809e446497b710592579772c8b22bd waf-1.4.4.tar.bz2
+7b84bb61b447ec13021b883cf86e4770 waf-1.5.2.tar.bz2
diff --git a/waf-1.4.4-libdir.patch b/waf-1.4.4-libdir.patch
deleted file mode 100644
index a929d71..0000000
--- a/waf-1.4.4-libdir.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -up waf-1.4.4/waf-light.orig waf-1.4.4/waf-light
---- waf-1.4.4/waf-light.orig 2008-08-26 23:44:34.000000000 +0200
-+++ waf-1.4.4/waf-light 2008-08-31 22:35:35.000000000 +0200
-@@ -109,7 +109,7 @@ def find_lib():
- if w: return w
- err("waf-light requires wafadmin -> export WAFDIR=/folder")
-
-- dir = "/lib/waf-%s-%s/" % (VERSION, REVISION)
-+ dir = "/share/waf/"
- for i in [INSTALL,'/usr','/usr/local','/opt']:
- w = test(i+dir)
- if w: return w
-diff -up waf-1.4.4/wscript.orig waf-1.4.4/wscript
---- waf-1.4.4/wscript.orig 2008-08-26 23:44:34.000000000 +0200
-+++ waf-1.4.4/wscript 2008-08-31 22:35:35.000000000 +0200
-@@ -324,7 +324,7 @@ def build(bld):
- wafadmin = bld.create_obj('py')
- wafadmin.find_sources_in_dirs('wafadmin', exts=['.py'])
- wafadmin.inst_var = 'PREFIX'
-- wafadmin.inst_dir = os.path.join('lib', 'waf-%s-%s' % (VERSION, REVISION), 'wafadmin')
-+ wafadmin.inst_dir = os.path.join('share', 'waf', 'wafadmin')
-
- tools = bld.create_obj('py')
- tools.find_sources_in_dirs('wafadmin/Tools', exts=['.py'])
diff --git a/waf-1.5.2-book.patch b/waf-1.5.2-book.patch
new file mode 100644
index 0000000..6d3ffdd
--- /dev/null
+++ b/waf-1.5.2-book.patch
@@ -0,0 +1,28 @@
+Index: doc/book/c_builds.xml
+===================================================================
+--- doc/book/c_builds.xml (revision 5461)
++++ doc/book/c_builds.xml (revision 5462)
+@@ -67,20 +67,20 @@
+ main.source = 'main.c'
+ main.target = 'test_c_program'
+ main.includes = '.'
+- main.uselib_local = 'teststaticlib'
++ main.uselib_local = 'teststaticlib'
+
+
+
+
+ A static library
+
+-
++
+ Include paths to export for use with uselib_local (include paths are not added automatically). These folders are taken relatively to the current target.
+
+
+ A program using the static library declared previously
+
+-
++
+ A list of references to existing libraries declared in the project (either a python list or a string containing the names space-separated)
+
+
diff --git a/waf-1.5.2-libdir.patch b/waf-1.5.2-libdir.patch
new file mode 100644
index 0000000..b399d12
--- /dev/null
+++ b/waf-1.5.2-libdir.patch
@@ -0,0 +1,24 @@
+diff -up waf-1.5.2/waf-light.orig waf-1.5.2/waf-light
+--- waf-1.5.2/waf-light.orig 2008-12-22 00:31:57.000000000 +0100
++++ waf-1.5.2/waf-light 2009-01-16 17:13:00.000000000 +0100
+@@ -102,7 +102,7 @@ def find_lib():
+ if w: return w
+ err("waf-light requires wafadmin -> export WAFDIR=/folder")
+
+- dir = "/lib/waf-%s-%s/" % (VERSION, REVISION)
++ dir = "/share/waf/"
+ for i in [INSTALL,'/usr','/usr/local','/opt']:
+ w = test(i+dir)
+ if w: return w
+diff -up waf-1.5.2/wscript.orig waf-1.5.2/wscript
+--- waf-1.5.2/wscript.orig 2008-12-22 00:31:57.000000000 +0100
++++ waf-1.5.2/wscript 2009-01-16 17:13:00.000000000 +0100
+@@ -318,7 +318,7 @@ def build(bld):
+ if val != True and val != "y": sys.exit(1)
+ create_waf()
+
+- dir = os.path.join('lib', 'waf-%s-%s' % (VERSION, REVISION), 'wafadmin')
++ dir = os.path.join('share', 'waf', 'wafadmin')
+
+ wafadmin = bld.new_task_gen('py')
+ wafadmin.find_sources_in_dirs('wafadmin', exts=['.py'])
diff --git a/waf-1.5.2-stylesheet.patch b/waf-1.5.2-stylesheet.patch
new file mode 100644
index 0000000..ccd475c
--- /dev/null
+++ b/waf-1.5.2-stylesheet.patch
@@ -0,0 +1,14 @@
+diff -up waf-1.5.2/doc/book/wscript.orig waf-1.5.2/doc/book/wscript
+--- waf-1.5.2/doc/book/wscript.orig 2008-12-22 00:30:46.000000000 +0100
++++ waf-1.5.2/doc/book/wscript 2009-01-16 17:35:02.000000000 +0100
+@@ -87,8 +87,8 @@ def build(bld):
+ obj.source = 'waf.xml'
+
+ obj.type = 'html'
+- obj.stylesheet='/usr/share/xml/docbook/stylesheet/nwalsh/current/html/chunk.xsl'
+- #obj.stylesheet='/usr/share/sgml/docbook/xsl-stylesheets/html/chunk.xsl'
++ #obj.stylesheet='/usr/share/xml/docbook/stylesheet/nwalsh/current/html/chunk.xsl'
++ obj.stylesheet='/usr/share/sgml/docbook/xsl-stylesheets/html/chunk.xsl'
+ #obj.stylesheet = '/home/tnagy/docbook-xsl-snapshot/html/chunk.xsl'
+
+ #obj.type = 'pdf'
diff --git a/waf.spec b/waf.spec
index f9667fb..4faa540 100644
--- a/waf.spec
+++ b/waf.spec
@@ -1,29 +1,34 @@
Name: waf
-Version: 1.4.4
-Release: 2%{?dist}
+Version: 1.5.2
+Release: 1%{?dist}
Summary: A Python-based build system
-
Group: Development/Tools
# The entire source code is BSD apart from pproc.py (taken from Python 2.5)
License: BSD and Python
URL: http://code.google.com/p/waf/
-Source0: http://waf.googlecode.com/files/waf-%{version}.tar.bz2
+Source: http://waf.googlecode.com/files/waf-%{version}.tar.bz2
# use _datadir instead of /usr/lib
-Patch0: waf-1.4.4-libdir.patch
-
+Patch0: waf-1.5.2-libdir.patch
+Patch1: waf-1.5.2-stylesheet.patch
+# r5462 from trunk
+Patch2: waf-1.5.2-book.patch
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildArch: noarch
-
BuildRequires: python-devel
+# for building the documentation
+BuildRequires: /usr/bin/xsltproc
+BuildRequires: docbook-style-xsl
# Seems like automatic ABI dependency is not detected since the files are
# going to a non-standard location
-Requires: python-abi %(%{__python} -c "import sys ; print \"=\", sys.version[:3]")
+Requires: python-abi %(%{__python} -c "import sys ; print \"=\", sys.version[:3]")
+
# the demo suite contains a perl module, which draws in unwanted
# provides and requires
%define __perl_provides %{nil}
%define __perl_requires %{nil}
+
%description
Waf is a Python-based framework for configuring, compiling and
installing applications. It is a replacement for other tools such as
@@ -33,25 +38,28 @@ Autotools, Scons, CMake or Ant.
%prep
%setup -q
%patch0 -p1 -b .libdir
+%patch1 -p1 -b .stylesheet
+%patch2 -p0 -b .book
%build
./waf-light configure --prefix=%{_prefix}
./waf-light --make-waf --strip
+(cd doc/book ; ../../waf configure && ../../waf)
+
%install
-%{__rm} -rf $RPM_BUILD_ROOT
+%{__rm} -rf %{buildroot}
-# the install target wants an acknowledgement
-echo y | ./waf install --destdir=$RPM_BUILD_ROOT
+./waf install --yes --destdir=%{buildroot}
# remove shebangs from all scripts in wafadmin
-find $RPM_BUILD_ROOT%{_datadir}/waf/wafadmin -name '*.py' \
+find %{buildroot}%{_datadir}/waf/wafadmin -name '*.py' \
-exec %{__sed} -i '1{/^#!/d}' {} \;
# fix waf script shebang line
-%{__sed} -i "1c#! /usr/bin/python" $RPM_BUILD_ROOT%{_bindir}/waf
+%{__sed} -i "1c#! /usr/bin/python" %{buildroot}%{_bindir}/waf
# fix EOL
%{__sed} -i 's|\r$||g' utils/amtool.py
@@ -62,25 +70,37 @@ 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
+%{__rm} doc/book/build/default/waf.html
# bash completion
%{__install} -D -p -m 0644 utils/waf-completion.bash \
%{buildroot}%{_sysconfdir}/bash_completion.d//waf-completion.bash
+# basically giving it a better name
+%{__mv} doc/book/build/default doc/html
+
%clean
-%{__rm} -rf $RPM_BUILD_ROOT
+%{__rm} -rf %{buildroot}
%files
%defattr(-,root,root,-)
-%doc README TODO ChangeLog demos doc/waf.pdf utils
+%doc README TODO ChangeLog demos utils
+%doc doc/html
%{_bindir}/waf
%{_datadir}/waf
%{_sysconfdir}/bash_completion.d
%changelog
+* Fri Jan 16 2009 Thomas Moschny - 1.5.2-1
+- Update to 1.5.2.
+- Generate html documentation (though without highlighting).
+
+* Fri Dec 19 2008 Thomas Moschny - 1.5.1-1
+- Update to 1.5.1.
+
* Mon Dec 01 2008 Ignacio Vazquez-Abrams - 1.4.4-2
- Rebuild for Python 2.6