Subject: bug#21941: ld-wrapper incorrectly computes library search path

From: [email-masked] (Ludovic Courtès)
Date: Tue, 17 Nov 2015 17:43:18 +0100

Currently ‘ld-wrapper’ builds the library search path as it encounters
-L flags and uses the current search path when it encounters a -l flag.

This is contrary to what ld actually does (info "(ld) Options"):

--8<---------------cut here---------------start------------->8---
`-L SEARCHDIR'
`--library-path=SEARCHDIR'
     […] All `-L' options apply to all `-l' options,
     regardless of the order in which the options appear.
--8<---------------cut here---------------end--------------->8---

This turns out to be fine when using GCC but manifests itself when using
Clang, because Clang passes the -L flags that correspond to
‘LIBRARY_PATH’ after the -l flags on the ‘ld’ command line.

Ludo’.