SPEC file hardcodes lib directory -- breaks on linux x86_64 builds.
-------------------------------------------------------------------
Key: XERCESC-1505
URL: http://issues.apache.org/jira/browse/XERCESC-1505
Project: Xerces-C++
Type: Bug
Components: Build
Versions: 2.7.0
Environment: Suse Enterprise Linux 9 -- x86_64 (SLES9_x64)
Reporter: Michael Brown
On 64-bit builds, all 64-bit libs should go into either /lib64 or /usr/lib64.
In the SPEC file, if you use the predefined variable, %{_libdir}, it will
automatically be changed to be correct, depending on the architecture.
On SLES9_x64, there is a validation script that is run by SUSE after the
%install section that ensures that 64-bit libs are in the correct location. The
current xerces tarball fails this test.
SPEC FILE PATCH:
================================
[EMAIL PROTECTED]:~/build/SPECS> diff -u xerces-c.spec xerces-c-lib64fix.spec
--- xerces-c.spec 2005-09-22 17:01:13.000000000 -0500
+++ xerces-c-lib64fix.spec 2005-09-29 22:37:04.000000000 -0500
@@ -67,7 +67,7 @@
export XERCESCROOT=$RPM_BUILD_DIR/%{name}-src_%{tarversion}
cd $XERCESCROOT/src/xercesc
make PREFIX=$RPM_BUILD_ROOT%{prefix} install
-ln -sf %{prefix}/lib/libxerces-c.so.27
$RPM_BUILD_ROOT%{prefix}/lib/libxerces-c.so
+ln -sf %{prefix}/%{_lib}/libxerces-c.so.27
$RPM_BUILD_ROOT%{prefix}/%{_lib}/libxerces-c.so
mkdir -p $RPM_BUILD_ROOT%{prefix}/bin
#we don't want obj directory
install `find $XERCESCROOT/bin -type f -maxdepth 1`
$RPM_BUILD_ROOT%{prefix}/bin
@@ -84,8 +84,8 @@
%files
%defattr(755,root,root)
%{prefix}/bin/*
-%{prefix}/lib/libxerces-c.so*
-%{prefix}/lib/libxerces-depdom.so*
+%{prefix}/%{_lib}/libxerces-c.so*
+%{prefix}/%{_lib}/libxerces-depdom.so*
%files devel
%defattr(-,root,root)
================================
Error:
======CUT==============
+ install /home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/SAXPrint
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/SAX2Print
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/SAXCount
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/SAX2Count
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/DOMPrint
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/DOMCount
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/Redirect
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/MemParse
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/PParse
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/StdInParse
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/EnumVal
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/SEnumVal
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/CreateDOMDocument
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/PSVIWriter
/home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/bin/SCMPrint
/var/tmp/xerces-c-root/usr/bin
+ mkdir -p /var/tmp/xerces-c-root/usr/share/xerces-c
+ cp -a /home/michael_e_brown/build/BUILD/xerces-c-src_2_7_0/samples
/var/tmp/xerces-c-root/usr/share/xerces-c
+ /usr/lib/rpm/brp-lib64-linux
[EMAIL PROTECTED]: if you find problems with this script, drop me a note
/var/tmp/xerces-c-root/usr/lib/libxerces-c.so.27: file format elf64-x86-64
/var/tmp/xerces-c-root/usr/lib/libxerces-c.so.27: should be in */lib64
error: Bad exit status from /var/tmp/rpm-tmp.21760 (%install)
RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.21760 (%install)
[EMAIL PROTECTED]:~/build>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]