[or-cvs] r10082: For reasons which make sense to somebody, I'm sure, mingw gc (in tor/trunk: . src/or src/tools)

nickm at seul.org nickm at seul.org
Tue May 1 02:53:33 UTC 2007


Author: nickm
Date: 2007-04-30 22:53:32 -0400 (Mon, 30 Apr 2007)
New Revision: 10082

Modified:
   tor/trunk/
   tor/trunk/configure.in
   tor/trunk/src/or/Makefile.am
   tor/trunk/src/tools/Makefile.am
Log:
 r12611 at catbus:  nickm | 2007-04-30 22:49:00 -0400
 For reasons which make sense to somebody, I'm sure, mingw gcc wants the libraries to appear at the end of the command line.  This is done by specifying them with LDADD in Makefile.am, not LDFLAGS.
 If anybody can explain to me why mingw thinks "gcc -o foo foo.o -lbar" is fine, whereas "gcc -lbar -o foo foo.o" is Doubleplusbad UnMingwThink, I'd quite appreciate it.  Until then, I'll just do what seems to work, and hope we don't blunder across any other great slumbering cthonian deities of arbitrary syntax.



Property changes on: tor/trunk
___________________________________________________________________
 svk:merge ticket from /tor/trunk [r12611] on 8246c3cf-6607-4228-993b-4d95d33730f1

Modified: tor/trunk/configure.in
===================================================================
--- tor/trunk/configure.in	2007-05-01 02:15:11 UTC (rev 10081)
+++ tor/trunk/configure.in	2007-05-01 02:53:32 UTC (rev 10082)
@@ -163,7 +163,9 @@
 dnl Where do you live, libevent?  And how do we call you?
 
 if test $bwin32 = true; then
-  TOR_LIB_WS32=-lws2_32 -lwsock32
+  TOR_LIB_WS32=-lws2_32
+  # Some of the cargo-cults recommend -lwsock32 as well, but I don't
+  # think it's actually necessary.
   TOR_LIB_GDI=-lgdi32
 else
   TOR_LIB_WS32=

Modified: tor/trunk/src/or/Makefile.am
===================================================================
--- tor/trunk/src/or/Makefile.am	2007-05-01 02:15:11 UTC (rev 10081)
+++ tor/trunk/src/or/Makefile.am	2007-05-01 02:53:32 UTC (rev 10082)
@@ -13,10 +13,13 @@
 	eventdns.c \
 	tor_main.c
 
-tor_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ @TOR_LDFLAGS_libevent@ \
-        -lz -levent -lssl -lcrypto @TOR_LIB_WS32@ @TOR_LIB_GDI@
-tor_LDADD = ../common/libor.a ../common/libor-crypto.a
+# -L flags need to go in LDFLAGS. -l flags need to go in LDADD.
+# This seems to matter nowhere but on windows, but I assure you that it
+# matters a lot there, and is quite hard to debug if you forget to do it.
 
+tor_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ @TOR_LDFLAGS_libevent@
+tor_LDADD = ../common/libor.a ../common/libor-crypto.a \
+  -lz -levent -lssl -lcrypto @TOR_LIB_WS32@ @TOR_LIB_GDI@
 test_SOURCES = buffers.c circuitbuild.c circuitlist.c \
 	circuituse.c command.c config.c \
 	connection.c connection_edge.c connection_or.c control.c \
@@ -27,9 +30,9 @@
 	test.c
 
 test_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
-        @TOR_LDFLAGS_libevent@ -lz -levent -lssl -lcrypto \
-        @TOR_LIB_WS32@ @TOR_LIB_GDI@
-test_LDADD = ../common/libor.a ../common/libor-crypto.a
+        @TOR_LDFLAGS_libevent@
+test_LDADD = ../common/libor.a ../common/libor-crypto.a \
+        -lz -levent -lssl -lcrypto @TOR_LIB_WS32@ @TOR_LIB_GDI@
 
 noinst_HEADERS = or.h eventdns.h eventdns_tor.h micro-revision.i
 

Modified: tor/trunk/src/tools/Makefile.am
===================================================================
--- tor/trunk/src/tools/Makefile.am	2007-05-01 02:15:11 UTC (rev 10081)
+++ tor/trunk/src/tools/Makefile.am	2007-05-01 02:53:32 UTC (rev 10082)
@@ -1,11 +1,12 @@
 bin_PROGRAMS = tor-resolve tor-gencert
 
 tor_resolve_SOURCES = tor-resolve.c
-tor_resolve_LDFLAGS = @TOR_LDFLAGS_libevent@ -levent @TOR_LIB_WS32@
-tor_resolve_LDADD = ../common/libor.a
+tor_resolve_LDFLAGS = @TOR_LDFLAGS_libevent@
+tor_resolve_LDADD = ../common/libor.a -levent @TOR_LIB_WS32@
 
 tor_gencert_SOURCES = tor-gencert.c
 tor_gencert_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
-        @TOR_LDFLAGS_libevent@ -lz -lcrypto -levent \
-        @TOR_LIB_WS32@ @TOR_LIB_GDI@
-tor_gencert_LDADD = ../common/libor.a ../common/libor-crypto.a
+        @TOR_LDFLAGS_libevent@
+tor_gencert_LDADD = ../common/libor.a ../common/libor-crypto.a \
+        -lz -lcrypto -levent @TOR_LIB_WS32@ @TOR_LIB_GDI@
+



More information about the tor-commits mailing list