create policy rule later in olsrd startup
authorMarkus Kittenberger <Markus.Kittenberger@gmx.at>
Tue, 31 Mar 2009 16:29:29 +0000 (18:29 +0200)
committerMarkus Kittenberger <Markus.Kittenberger@gmx.at>
Tue, 31 Mar 2009 16:29:29 +0000 (18:29 +0200)
Makefile.inc
src/main.c

index 967774a..401ade0 100644 (file)
@@ -8,10 +8,7 @@
 DEBUG ?= 0
 
 # compile OLSR_PRINTF out
-NO_DEBUG_MESSAGES ?= 1
-
-# the optimize option to be set for gcc
-OPTIMIZE ?= 
+NO_DEBUG_MESSAGES ?= 0
 
 # enable mudflap with 1 or deactivate with 0
 # you need a recent enough gcc and the libmudflap installed
@@ -24,12 +21,13 @@ MUDFLAP ?= 0
 #
 
 # programs
-CCACHE ?=       $(shell IFS=:; for i in $$PATH;do test -x "$$i/ccache" && echo "$$i/ccache" && break; done)
-ifeq ($(origin CC),default)
-CC =           $(CCACHE) gcc
-else
-CC ?=          $(CCACHE) gcc
-endif
+#CCACHE ?=       $(shell IFS=:; for i in $$PATH;do test -x "$$i/ccache" && echo "$$i/ccache" && break; done)
+#ifeq ($(origin CC),default)
+#CC =          $(CCACHE) gcc
+#else
+#CC ?=                 $(CCACHE) gcc
+#endif
+CC=/home/markus/freifunk/whiterussian/openwrt/staging_dir_mipsel/bin/mipsel-linux-uclibc-gcc
 ifeq ($(DEBUG),0)
 STRIP ?=       strip
 else
@@ -90,14 +88,14 @@ endif
 #WARNINGS +=   -Wunreachable-code
 WARNINGS +=    -Winline
 WARNINGS +=    -Wdisabled-optimization
-#WARNINGS +=   -Werror
+WARNINGS +=    -Werror
 WARNINGS +=    -finline-functions-called-once
-WARNINGS +=    -fearly-inlining
+#WARNINGS +=   -fearly-inlining
 ifeq ($(DEBUG),0)
 WARNINGS +=    -fomit-frame-pointer
 endif
 # we have small inline functions in src/lq_route.h which should always be inlined
-WARNINGS +=    -finline-limit=350
+WARNINGS +=    -finline-limit=700
 # These tell gcc to put each function and global variable in a separate section.
 # The linker can than remove all unreferenced section. But in the olsrd binary
 # unused doesn't imply unused at all since the function may be used by plugins,
@@ -113,7 +111,7 @@ CFLAGS +=   $(OPTIMIZE)
 CFLAGS +=      $(EXTRA_CFLAGS)
 
 # Must be specified along with -lpthread on linux
-CPPFLAGS +=    $(OS_CFLAG_PTHREAD)
+#CPPFLAGS +=   $(OS_CFLAG_PTHREAD)
 endif
 ifneq ($(MUDFLAP),0)
 CFLAGS +=      -fmudflapth
@@ -139,7 +137,7 @@ LDFLAGS +=  -Wl,--warn-common
 ifneq ($(MUDFLAP),0)
 LIBS +=                -lmudflapth
 endif
-LIBS +=                $(OS_LIB_PTHREAD)
+#LIBS +=               $(OS_LIB_PTHREAD)
 
 # extra options from the outside
 CPPFLAGS +=    $(EXTRA_CPPFLAGS)
@@ -180,11 +178,14 @@ OBJS +=           $(SRCS:%.c=%.o)
 ifeq ($(DEBUG),1)
 CPPFLAGS +=    -DDEBUG
 CFLAGS +=      -ggdb
+OPTIMIZE ?=    -O0
 else
 CPPFLAGS +=    -DNDEBUG
+OPTIMIZE ?=    -O2
 endif
 ifeq ($(NO_DEBUG_MESSAGES),1)
 CPPFLAGS +=    -DNODEBUG
+OPTIMIZE ?=    -Os
 endif
 
 # a make function to quote "/" and "."
index 5552e2e..d05cea0 100644 (file)
@@ -333,13 +333,6 @@ main(int argc, char *argv[])
   /* Initialize net */
   init_net();
 
-#if LINUX_POLICY_ROUTING
-  /* Create rule for RtTable to resolve route insertion problems*/
-  if ( ( olsr_cnf->rttable < 253) & ( olsr_cnf->rttable > 0 ) ) {
-    olsr_netlink_rule(olsr_cnf->ip_version, olsr_cnf->rttable, RTM_NEWRULE);
-  }
-#endif
-
   /* Initializing networkinterfaces */
   if (!ifinit()) {
     if (olsr_cnf->allow_no_interfaces) {
@@ -384,6 +377,13 @@ main(int argc, char *argv[])
 
   OLSR_PRINTF(1, "Main address: %s\n\n", olsr_ip_to_string(&buf, &olsr_cnf->main_addr));
 
+#if LINUX_POLICY_ROUTING
+  /* Create rule for RtTable to resolve route insertion problems*/
+  if ( ( olsr_cnf->rttable < 253) & ( olsr_cnf->rttable > 0 ) ) {
+    olsr_netlink_rule(olsr_cnf->ip_version, olsr_cnf->rttable, RTM_NEWRULE);
+  }
+#endif
+
   /* Start syslog entry */
   olsr_syslog(OLSR_LOG_INFO, "%s successfully started", olsrd_version);