Various packages did and do use constructs like

SetLDFLAGS: -L.

or

SetLDFLAGS: -L%b/lib/.libs


and similar. Sometimes this is really the only way to do it, but 
often it is dangerous and should instead be handled by a patch. Let 
me explain: typical, you have to add this because it turns out the 
package will otherwise link against an already installed version of 
itself during build time, rather than against the freshly built 
version. That in turn is because by default, Fink sets LDFLAGS to 
-L%p/lib. Now most build systems (anything autotool based at least) 
will *prepend* this to the LDFLAGS. Hence, /sw/lib will be searched 
before anything else, resulting in the wrong link behaviour.

Thus, often the trick listed above is used to get them to link 
against the "local"/new version of the lib again. However, in many 
cases (when using libtool at least) this will yield in installed 
files that have /sw/src/root-FOOBAR/... hard coded in some way! Also 
this is only a partial fix, since other things (often hard to notice) 
may go wrong by this. For example, the libxml2 and libxslt package 
until recently suffered greatly from this whenever they had to be 
upgraded.

Thus, very often it's advisable to use
NoSetLDFLAGS: true
to prevent -L%p/lib from being prepended. Then, patch the relevant 
configure/Makefile/whatever files to have the /sw/lib path near the 
end of LDFLAGS (or wherever is most suitable). This can solve some 
very annoying bugs, e.g. I am fairly convinced that the big troubles 
we had (and maybe still have) with qt3 & updating qt3 are caused by 
this.


Packages that use this approach, and which therefore their 
maintainers might want to recheck include:


Masanori Sekino:
  oaf-0.6.8-1.info
  mozilla-0.9.9-4.info

Alexander Strange:
  gimp-1.2.3-7.info

Andrei Verovski:
  mysql-3.23.49-2.info

Jeffrey Whitaker:
  gtk+extra-0.99.17-1.info

Christoph Pfisterer (i.e unmaintained):
  giflib-4.1.0-3.info
  libungif-4.1.0b1-4.info
  mesa-3.5-1.info


Note that these packages do not have to be broken at all! This is 
just a possibility, it may very well be that they package work 100% 
correct.

Also, these packages put -L%p/lib into SetLDFLAGS, although this is 
automatically added to LDFLAGS anyway. Authors might want to check up 
on those, too, and possibly get rid of the additional -L%p/lib:

graphics/gimp-perl-1.211-1.info
languages/g-wrap-1.1.11-3.info
sci/octave-2.1.35-7.info
sci/octave-atlas-2.1.35-3.info
sci/tela-1.34-3.info



Cheers,

Max
-- 
-----------------------------------------------
Max Horn
Software Developer

email: <mailto:[EMAIL PROTECTED]>
phone: (+49) 6151-494890

_______________________________________________________________

Have big pipes? SourceForge.net is looking for download mirrors. We supply
the hardware. You get the recognition. Email Us: [EMAIL PROTECTED]
_______________________________________________
Fink-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to