[Erp5-report] r33359 nicolas.dumazet - in /erp5/trunk/utils/rpmgen: ./ templates/

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Mar 4 06:49:51 CET 2010


Author: nicolas.dumazet
Date: Thu Mar  4 06:49:51 2010
New Revision: 33359

URL: http://svn.erp5.org?rev=33359&view=rev
Log:
show the path to filter provides requirement.
The find_provides script should be debugged and improved to be able to match
OpenOffice *.so that are not found through buildrpm

Added:
    erp5/trunk/utils/rpmgen/find_provides.sh   (with props)
Modified:
    erp5/trunk/utils/rpmgen/buildout.cfg
    erp5/trunk/utils/rpmgen/templates/erp5-official-buildout-mandriva2010.spec.in

Modified: erp5/trunk/utils/rpmgen/buildout.cfg
URL: http://svn.erp5.org/erp5/trunk/utils/rpmgen/buildout.cfg?rev=33359&r1=33358&r2=33359&view=diff
==============================================================================
--- erp5/trunk/utils/rpmgen/buildout.cfg [utf8] (original)
+++ erp5/trunk/utils/rpmgen/buildout.cfg [utf8] Thu Mar  4 06:49:51 2010
@@ -18,6 +18,7 @@
 
 version = ${checkout:location}/VERSION.txt
 helper_script = ${checkout:location}/helpers/mandriva2010.0.sh
+find_provides = ${buildout:directory}/find_provides.sh
 
 # only a helper variable
 base = erp5-official-buildout-mandriva2010.spec

Added: erp5/trunk/utils/rpmgen/find_provides.sh
URL: http://svn.erp5.org/erp5/trunk/utils/rpmgen/find_provides.sh?rev=33359&view=auto
==============================================================================
--- erp5/trunk/utils/rpmgen/find_provides.sh (added)
+++ erp5/trunk/utils/rpmgen/find_provides.sh [utf8] Thu Mar  4 06:49:51 2010
@@ -1,0 +1,18 @@
+#!/bin/bash
+# Default find-provides expects .so to be in /lib*/ ** / *.so
+# Openoffice has objects a bit everywhere, so this is not enough
+
+stdin=`cat`
+
+# First echo all shared objects we find
+filelist=`echo $stdin | sed "s/['\"]/\\\&/g"`
+
+for i in `echo $filelist | tr '[:blank:]' "\n" | egrep '/.*\.so(\..*)?$'`; do
+    objd=`objdump -p ${i} | grep SONAME`
+    [ -h ${i} -a -n "${objd}" ] && \
+    lib64=`if file -L $i 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "(64bit)"; fi` && \
+    echo ${objd} | perl -p -e "s/.*SONAME\s+(\S+)\.so.*/devel(\1$lib64)/g"
+done | sort -u
+
+# And then delegate the rest of the job
+echo $stdin | /usr/lib/rpm/mandriva/find-provides

Propchange: erp5/trunk/utils/rpmgen/find_provides.sh
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: erp5/trunk/utils/rpmgen/find_provides.sh
------------------------------------------------------------------------------
    svn:executable = *

Modified: erp5/trunk/utils/rpmgen/templates/erp5-official-buildout-mandriva2010.spec.in
URL: http://svn.erp5.org/erp5/trunk/utils/rpmgen/templates/erp5-official-buildout-mandriva2010.spec.in?rev=33359&r1=33358&r2=33359&view=diff
==============================================================================
--- erp5/trunk/utils/rpmgen/templates/erp5-official-buildout-mandriva2010.spec.in [utf8] (original)
+++ erp5/trunk/utils/rpmgen/templates/erp5-official-buildout-mandriva2010.spec.in [utf8] Thu Mar  4 06:49:51 2010
@@ -8,6 +8,8 @@
 
 %define fullname %{name}-%{version}
 %define installdir /opt/erp5/%{version}
+
+%define __find_provides ${:find_provides}
 
 Name: %{name}
 Version: %{version}




More information about the Erp5-report mailing list