Build Bug: -lm should come after passing ../common/libor.a to linker
commita5e83769b762d9fa09d0600d68ebdbe5c33f6da3
authorMichael Witten <mfwitten@gmail.com>
Sat, 16 Jan 2010 21:13:31 +0000 (16 21:13 +0000)
committerNick Mathewson <nickm@torproject.org>
Tue, 19 Jan 2010 03:10:06 +0000 (18 22:10 -0500)
treec70250d224c469c4c36e770d4c1757d84d425673
parentc32e8c292e4061857542ef7a131d800794253a90
Build Bug: -lm should come after passing ../common/libor.a to linker

The following commit:

    commit e56747f9cf29ed788baf8805bfe391925d8a19da
    Author: Nick Mathewson <nickm@torproject.org>
    Date:   Tue Dec 15 14:32:55 2009 -0500

        Refactor a bit so that it is safe to include math.h, and mostly not needed.

introduced this line:

    tor_resolve_LDADD = -lm ../common/libor.a @TOR_LIB_WS32@

which caused the build to fail, because only ../common/libor.a
(via the embedded ../common/util.o via ../common/util.c)
referenced libm's `lround' and `log' symbols, so that the
linker (GNU ld) didn't bother to import those symbols before
reading ../common/libor.a, thus leaving those symbols undefined.

The solution was to swap the order, producing the line:

    tor_resolve_LDADD = ../common/libor.a -lm @TOR_LIB_WS32@

Signed-off-by: Michael Witten <mfwitten@gmail.com>
src/tools/Makefile.am