- Based on a patch by Gianni Costanzi <gianni.costanzi@gmail.com> (so credits
authorBernd Petrovitsch <bernd@firmix.at>
Wed, 29 Aug 2007 21:46:26 +0000 (21:46 +0000)
committerBernd Petrovitsch <bernd@firmix.at>
Wed, 29 Aug 2007 21:46:26 +0000 (21:46 +0000)
  and thanks have to go there):
  added OS_CFLAG_PTHREAD Makefile variable since gcc (on Linux) requests this
  in the manual page.
  Changes/additions:
  - I added definitions to all OS-specific Makefile.$OS with the value similar
    to the value in OS_LIB_PTHREAD (either empty or "-pthread").
  - The variable is added to CPPFLAGS (and not CFLAGS) since CPPFLAGS is used
    for all cpp and gcc calls (and gcc's man page indicates that it sets
    variables for both of them).

This has not been compiled or tested on anything except Linux up to now (and
to the best of my knowledge). So if you are a *BSD, Windows/CygWin or MacOSX
guru and there is something wrong, please send a patch.

CHANGELOG
Makefile
Makefile.inc
make/Makefile.fbsd
make/Makefile.linux
make/Makefile.nbsd
make/Makefile.obsd
make/Makefile.osx
make/Makefile.win32
make/Makefile.wince

index 8355401..adaa303 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,5 @@
 This file states changes as of version 0.2.4:
-$Id: CHANGELOG,v 1.77 2007/08/28 20:45:17 bernd67 Exp $
+$Id: CHANGELOG,v 1.78 2007/08/29 21:46:25 bernd67 Exp $
 
 0.5.4 ---------------------------------------------------------------------
 
@@ -35,20 +35,29 @@ olsr_makefile_make_use_of_exename.patch
 - This patch makes sure that the EXENAME variable of Makefile.inc is used
   in Makefile.
 
-PATCH by Bernd Petrovitsch <bernd@firmix.at>
+PATCHES and CLEANUPS by Bernd Petrovitsch <bernd@firmix.at>
 - Made a function from the ME_TO_DOUBLE() macro (in src/mantissa.h).
   This saves code throughout the code even on i386 and will even more
   on architectures without floating point units and "-msoft-float".
 - And the mathemathics in src/mantissa.h is reformulated to minimize
   floating point operations to save CPU power - especially on embedded
   devices.
-
-CLEANUPS
 - paving the way to activate -Wshadow, much more to do
 - const-ify parameters here and there
 - use NULL for pointers (and not "0")
 - Killed "extern" declarations in (not generated) .c files
 
+- Based on a patch by Gianni Costanzi <gianni.costanzi@gmail.com> (so credits
+  and thanks have to go there):
+  added OS_CFLAG_PTHREAD Makefile variable since gcc (on Linux) requests this
+  in the manual page.
+  Changes/additions:
+  - I added definitions to all OS-specific Makefile.$OS with the value similar
+    to the value in OS_LIB_PTHREAD (either empty or "-pthread").
+  - The variable is added to CPPFLAGS (and not CFLAGS) since CPPFLAGS is used
+    for all cpp and gcc calls (and gcc's man page indicates that it sets
+    variables for both of them).
+
 0.5.3 ---------------------------------------------------------------------
 
 URGENT BUG FIX
index 33244df..3eb67cf 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -35,7 +35,7 @@
 # to the project. For more information see the website or contact
 # the copyright holders.
 #
-# $Id: Makefile,v 1.93 2007/08/23 09:12:55 bernd67 Exp $
+# $Id: Makefile,v 1.94 2007/08/29 21:46:25 bernd67 Exp $
 
 VERS =         0.5.4pre
 
@@ -44,9 +44,10 @@ include Makefile.inc
 
 CPPFLAGS +=    -DVERSION=\"$(VERS)\"
 
+# pass generated variables to save time
 MAKECMD = $(MAKE) OS="$(OS)" WARNINGS="$(WARNINGS)"
 
-LIBS +=                $(OS_LIB_DYNLOAD)
+LIBS +=                $(OS_LIB_DYNLOAD) $(OS_LIB_PTHREAD)
 
 ifeq ($(OS), win32)
 LDFLAGS +=     -Wl,--out-implib=libolsrd.a -Wl,--export-all-symbols
@@ -55,12 +56,12 @@ endif
 SWITCHDIR =     src/olsr_switch
 CFGDIR =       src/cfgparser
 CFGOBJS =      $(CFGDIR)/oscan.o $(CFGDIR)/oparse.o $(CFGDIR)/olsrd_conf.o
-CFGDEPS =      $(wildcard $(CFGDIR)/*.c) $(wildcard $(CFGDIR)/*.h) $(CFGDIR)/oparse.y $(CFGDIR)/oscan.lex
-TAG_SRCS = $(SRCS) $(HDRS) $(wildcard src/cfgparser/*.c) $(wildcard src/cfgparser/*.h) $(wildcard src/olsr_switch/*.c) $(wildcard src/olsr_switch/*.h)
+CFGDEPS =      $(wildcard $(CFGDIR)/*.[ch]) $(CFGDIR)/oparse.y $(CFGDIR)/oscan.lex
+TAG_SRCS =     $(SRCS) $(HDRS) $(wildcard src/cfgparser/*.[ch] src/olsr_switch/*.[ch])
 
 default_target: cfgparser $(EXENAME)
 
-$(EXENAME):            $(OBJS) $(CFGOBJS)
+$(EXENAME):    $(OBJS) $(CFGOBJS)
                $(CC) $(LDFLAGS) -o $@ $(OBJS) $(CFGOBJS) $(LIBS)
 
 cfgparser:     $(CFGDEPS)
index fa5a6a7..ffef4e8 100644 (file)
@@ -21,7 +21,7 @@ EXENAME ?= olsrd
 CFGNAME ?= $(EXENAME).conf
 CFGFILE ?= $(ETCDIR)/$(CFGNAME)
 
-CPPFLAGS =     -Isrc -I$(TOPDIR)/src 
+CPPFLAGS =     -Isrc -I$(TOPDIR)/src
 
 # add gcc warnings and optimizations if CFLAGS not set
 ifndef CFLAGS
@@ -49,7 +49,11 @@ WARNINGS :=  $(shell CC="$(CC)" $(TOPDIR)/gcc-warnings $(WARNINGS))
 endif
 CFLAGS +=      $(WARNINGS)
 CFLAGS +=      -O2
-CFLAGS +=      -g
+#CFLAGS +=     -g
+CFLAGS +=      $(EXTRA_CFLAGS)
+
+# Must be specified along with -lpthread on linux
+CPPFLAGS +=    $(OS_CFLAG_PTHREAD)
 endif
 
 ifdef OLSRD_PLUGIN
index 3586e9c..f9b2cea 100644 (file)
@@ -37,6 +37,7 @@ INSTALL_LIB = install -m 755 $(PLUGIN_FULLNAME) $(LIBDIR)/$(PLUGIN_FULLNAME); \
                /sbin/ldconfig
 
 OS_LIB_PTHREAD = -pthread
+OS_CFLAG_PTHREAD = -pthread
 OS_LIB_DYNLOAD =
 
 # Local Variables:
index c3a7c55..4c7f1de 100644 (file)
@@ -29,6 +29,7 @@ LDFLAGS +=    -fPIC
 endif
 
 OS_LIB_PTHREAD = -lpthread
+OS_CFLAG_PTHREAD = -pthread
 OS_LIB_DYNLOAD = -ldl
 
 # Local Variables:
index 0b85f27..474fc2a 100644 (file)
@@ -21,6 +21,7 @@ LDFLAGS +=    -fPIC
 endif
 
 OS_LIB_PTHREAD = 
+OS_CFLAG_PTHREAD =
 OS_LIB_DYNLOAD =
 
 # Local Variables:
index b48e4d7..d844e6b 100644 (file)
@@ -21,6 +21,7 @@ LDFLAGS +=    -fPIC
 endif
 
 OS_LIB_PTHREAD =
+OS_CFLAG_PTHREAD =
 OS_LIB_DYNLOAD =
 
 # Local Variables:
index 56d5ebc..43547ea 100644 (file)
@@ -25,6 +25,7 @@ LDFLAGS = -dynamic
 endif
 
 OS_LIB_PTHREAD =
+OS_CFLAG_PTHREAD =
 OS_LIB_DYNLOAD =
 
 # Local Variables:
index 96beafe..799f89d 100644 (file)
@@ -23,6 +23,7 @@ LIBS +=               -lolsrd
 endif
 
 OS_LIB_PTHREAD =
+OS_CFLAG_PTHREAD =
 OS_LIB_DYNLOAD =
 
 olsr-$(VERS).zip:      gui/win32/release/Main.exe \
index 768a54b..e0c1821 100644 (file)
@@ -19,6 +19,7 @@ LDFLAGS +=    -lolsrd
 endif
 
 OS_LIB_PTHREAD =
+OS_CFLAG_PTHREAD =
 OS_LIB_DYNLOAD =
 
 # Local Variables: