Browse Source

Fixed build with GCC < 3.3

Preprocessor directives should not be put inside the arguments
of a macro. This is not supported on older GCC releases (< 3.3)
thus broke compilation on Haiku (running gcc2).
Martin Hebnes Pedersen 12 years ago
parent
commit
d5e964731c
2 changed files with 14 additions and 4 deletions
  1. 11 0
      changes/portability_01_haiku
  2. 3 4
      src/or/main.c

+ 11 - 0
changes/portability_01_haiku

@@ -0,0 +1,11 @@
+  o Minor buxfixes:
+    - During configure, search for library containing cos function as
+      libm lives in libcore on some platforms (BeOS/Haiku).
+      Linking against libm was hard-coded before. Bugfix on
+      0.2.2.2-alpha, fixes the first part of bug 4727. Patch and
+      analysis by Martin Hebnes Pedersen.
+    - Preprocessor directives should not be put inside the arguments
+      of a macro. This would break compilation with GCC releases prior
+      to version 3.3. Bugfix on 0.2.3.3-alpha, fixes the other part of
+      bug 4727. Patch and analysis by Martin Hebnes Pedersen.
+

+ 3 - 4
src/or/main.c

@@ -2268,13 +2268,12 @@ tor_init(int argc, char *argv[])
 
   {
     const char *version = get_version();
-    log_notice(LD_GENERAL, "Tor v%s%s running on %s.", version,
 #ifdef USE_BUFFEREVENTS
-               " (with bufferevents)",
+    log_notice(LD_GENERAL, "Tor v%s (with bufferevents) running on %s.",
+                version, get_uname());
 #else
-               "",
+    log_notice(LD_GENERAL, "Tor v%s running on %s.", version, get_uname());
 #endif
-               get_uname());
 
     log_notice(LD_GENERAL, "Tor can't help you if you use it wrong! "
                "Learn how to be safe at "