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