Re: [Fink-devel] Shlibs validation failures with new ode package

2009-01-24 Thread Trevor Harmon
On Jan 24, 2009, at 10:15 PM, Daniel Johnson wrote:

> libode.dylib needs to go in the dev package, not shlibs. It appears  
> that nothing currently depends on ode, yes? If so, I'd suggest  
> removing the ode-dev splitoff entirely, leaving all the dev files in  
> the main ode package. Make it BuildDependsOnly: true and leave the  
> ode-shlibs package as is and everything should work. Generally fink  
> packages use the libfoo, libfoo-shlibs nomenclature. You only create  
> a libfoo-dev splitoff if the main package contains user binaries.

That seems to have done the trick, thanks! I've submitted it to the  
tracker as ID 2534457.

Trevor


--
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Shlibs validation failures with new ode package

2009-01-24 Thread Daniel Johnson

On Jan 24, 2009, at 7:33 PM, Trevor Harmon wrote:

> On Jan 24, 2009, at 5:54 PM, Daniel Johnson wrote:
>
>> There are a couple of problems here. You have too many packages.  
>> There only needs to be a -dev and a -shlibs package. The  
>> unnecessary ode package only contains 2 files: libode.1.0.0.dylib,  
>> which needs to be in ode-shlibs and libode.la, which needs to go in  
>> ode-dev. It's because libode.1.0.0.dylib isn't in ode-shlibs that  
>> you're getting that validator error, since it's the actual shared  
>> lib: libode.1.dylib is just a symlink to it.
>
> Okay, I was able to get the packages to validate. However, I had to  
> remove libode.dylib from the shlibs because I was getting a  
> validation error:
>
>  Error: Files with names less specifically versioned than ones in  
> public Shlibs entries do not belong in this package
>   Offending file: /sw/lib/libode.dylib
>
> I simply removed libode.dylib from the shlibs split off, but I don't  
> think that's right because now there's only libode.1.0.0.dylib and  
> libode.1.dylib. Shouldn't there be a libode.dylib somewhere as well?
>
> Also, regarding the unnecessary ode package... How do I address  
> this? I don't know how to remove it without also removing the split  
> offs. Thanks,
>
> Trevor


libode.dylib needs to go in the dev package, not shlibs. It appears  
that nothing currently depends on ode, yes? If so, I'd suggest  
removing the ode-dev splitoff entirely, leaving all the dev files in  
the main ode package. Make it BuildDependsOnly: true and leave the ode- 
shlibs package as is and everything should work. Generally fink  
packages use the libfoo, libfoo-shlibs nomenclature. You only create a  
libfoo-dev splitoff if the main package contains user binaries.

Daniel


--
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Shlibs validation failures with new ode package

2009-01-24 Thread Trevor Harmon

On Jan 24, 2009, at 5:54 PM, Daniel Johnson wrote:

There are a couple of problems here. You have too many packages.  
There only needs to be a -dev and a -shlibs package. The unnecessary  
ode package only contains 2 files: libode.1.0.0.dylib, which needs  
to be in ode-shlibs and libode.la, which needs to go in ode-dev.  
It's because libode.1.0.0.dylib isn't in ode-shlibs that you're  
getting that validator error, since it's the actual shared lib:  
libode.1.dylib is just a symlink to it.


Okay, I was able to get the packages to validate. However, I had to  
remove libode.dylib from the shlibs because I was getting a validation  
error:


  Error: Files with names less specifically versioned than ones in  
public Shlibs entries do not belong in this package

Offending file: /sw/lib/libode.dylib

I simply removed libode.dylib from the shlibs split off, but I don't  
think that's right because now there's only libode.1.0.0.dylib and  
libode.1.dylib. Shouldn't there be a libode.dylib somewhere as well?


Also, regarding the unnecessary ode package... How do I address this?  
I don't know how to remove it without also removing the split offs.  
Thanks,


Trevor



ode.info
Description: Binary data


--
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel

Re: [Fink-devel] Shlibs validation failures with new ode package

2009-01-24 Thread Trevor Harmon
On Jan 24, 2009, at 5:33 PM, Daniel Macks wrote:

> The validator messages and otool-L are all self-consistent: the
> problem (and it *is* a problem) is that the lib is coded as if it
> exists in /opt/ode instead of in %p.

Actually, the reason why otool reports /opt/ode is most likely because  
I used --prefix=/opt/ode when configuring the manual install.

Trevor


--
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Shlibs validation failures with new ode package

2009-01-24 Thread Daniel Johnson

On Jan 24, 2009, at 4:29 PM, Trevor Harmon wrote:

> Hi,
>
> I'm the maintainer of the ode package, which has had a history of  
> problems related to shlibs [1]. Luckily, ode now uses libtool, and  
> it also fixes a problem that was preventing successful builds on  
> Leopard, so I thought I'd hit two birds with one stone and upgrade  
> Fink's package for ode to the latest upstream.
>
> I've now got a version that's mostly working, but it gives me  
> validation errors related to shlibs, and I'm not sure how to fix  
> them. Validating ode-shlibs gives:
>
>  Error: Shlibs field specifies file '/sw/lib/libode.1.dylib', but it  
> does not exist!
>
> And validating ode gives:
>
>  Error: package contains the shared library
>  /sw/lib/libode.1.0.0.dylib
>   but the corresponding install_name and compatibility_version
>  %p/lib/libode.1.dylib 2.0.0
>   are not listed in the Shlibs field.  See the packaging manual.
>
> On a manual installation of ode, running "otool -L" on the dylib  
> gives:
>
>  /opt/ode/lib/libode.dylib:
>   /opt/ode/lib/libode.1.dylib (compatibility version 2.0.0, current  
> version 2.0.0)
>   /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current  
> version 111.1.3)
>   /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current  
> version 7.4.0)
>   /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current  
> version 1.0.0)
>
> Everything looks right in my .info, so I don't know how to fix these  
> errors. I've attached the .info I've created, so maybe somebody can  
> spot my mistake. Thanks,
>
> Trevor

There are a couple of problems here. You have too many packages. There  
only needs to be a -dev and a -shlibs package. The unnecessary ode  
package only contains 2 files: libode.1.0.0.dylib, which needs to be  
in ode-shlibs and libode.la, which needs to go in ode-dev. It's  
because libode.1.0.0.dylib isn't in ode-shlibs that you're getting  
that validator error, since it's the actual shared lib: libode.1.dylib  
is just a symlink to it.

Daniel


--
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel


Re: [Fink-devel] Shlibs validation failures with new ode package

2009-01-24 Thread Daniel Macks
On Sat, Jan 24, 2009 at 04:29:23PM -0500, Trevor Harmon wrote:
> Hi,
> 
> I'm the maintainer of the ode package, which has had a history of  
> problems related to shlibs [1]. Luckily, ode now uses libtool, and it  
> also fixes a problem that was preventing successful builds on Leopard,  
> so I thought I'd hit two birds with one stone and upgrade Fink's  
> package for ode to the latest upstream.
> 
> I've now got a version that's mostly working, but it gives me  
> validation errors related to shlibs, and I'm not sure how to fix them.  
> Validating ode-shlibs gives:
> 
>   Error: Shlibs field specifies file '/sw/lib/libode.1.dylib', but it  
> does not exist!
> 
> And validating ode gives:
> 
>   Error: package contains the shared library
>   /sw/lib/libode.1.0.0.dylib
>but the corresponding install_name and compatibility_version
>   %p/lib/libode.1.dylib 2.0.0
>are not listed in the Shlibs field.  See the packaging manual.
> 
> On a manual installation of ode, running "otool -L" on the dylib gives:
> 
>   /opt/ode/lib/libode.dylib:
>   /opt/ode/lib/libode.1.dylib (compatibility version 2.0.0, current  
> version 2.0.0)
>   /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current  
> version 111.1.3)
>   /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current  
> version 7.4.0)
>   /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current  
> version 1.0.0)
> 
> Everything looks right in my .info, so I don't know how to fix these  
> errors. I've attached the .info I've created, so maybe somebody can  
> spot my mistake. Thanks,

The validator messages and otool-L are all self-consistent: the
problem (and it *is* a problem) is that the lib is coded as if it
exists in /opt/ode instead of in %p. That means there is probably an
unstream bug in the -install_name flag being passed when the lib
itself is compiled. Maybe a Makefile hard-codes a path instead of
using $prefix, or somehow else over-rides libtool or auto* defaults.

dan

-- 
Daniel Macks
dma...@netspace.org
http://www.netspace.org/~dmacks


--
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
___
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
http://news.gmane.org/gmane.os.apple.fink.devel