mirror of
https://github.com/oliverschmidt/contiki.git
synced 2024-12-23 01:29:33 +00:00
Add optional build without internal webserver
This commit is contained in:
parent
a883c9bcbc
commit
14246ef811
@ -5,10 +5,17 @@ CONTIKI=../../..
|
|||||||
WITH_UIP6=1
|
WITH_UIP6=1
|
||||||
UIP_CONF_IPV6=1
|
UIP_CONF_IPV6=1
|
||||||
|
|
||||||
APPS += webserver
|
#Override inclusion of internal webserver with make WITH_WEBSERVER=0
|
||||||
|
WITH_WEBSERVER=1
|
||||||
|
|
||||||
|
ifeq ($(WITH_WEBSERVER), 0)
|
||||||
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"
|
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"
|
||||||
|
PROJECT_SOURCEFILES += slip-bridge.c
|
||||||
|
else
|
||||||
|
APPS += webserver
|
||||||
|
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\" -DWEBSERVER
|
||||||
PROJECT_SOURCEFILES += slip-bridge.c httpd-simple.c
|
PROJECT_SOURCEFILES += slip-bridge.c httpd-simple.c
|
||||||
|
endif
|
||||||
|
|
||||||
include $(CONTIKI)/Makefile.include
|
include $(CONTIKI)/Makefile.include
|
||||||
|
|
||||||
|
@ -45,11 +45,13 @@
|
|||||||
#include "net/netstack.h"
|
#include "net/netstack.h"
|
||||||
#include "dev/button-sensor.h"
|
#include "dev/button-sensor.h"
|
||||||
#include "dev/slip.h"
|
#include "dev/slip.h"
|
||||||
#define INTERNAL_WEBSERVER 1
|
|
||||||
#if INTERNAL_WEBSERVER
|
/* For internal webserver Makefile must set APPS += webserver and PROJECT_SOURCEFILES += httpd-simple.c */
|
||||||
|
#if WEBSERVER
|
||||||
#include "webserver-nogui.h"
|
#include "webserver-nogui.h"
|
||||||
#include "httpd-simple.h"
|
#include "httpd-simple.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
@ -68,7 +70,8 @@ static uint8_t prefix_set;
|
|||||||
|
|
||||||
PROCESS(border_router_process, "Border router process");
|
PROCESS(border_router_process, "Border router process");
|
||||||
AUTOSTART_PROCESSES(&border_router_process);
|
AUTOSTART_PROCESSES(&border_router_process);
|
||||||
#if INTERNAL_WEBSERVER
|
|
||||||
|
#if WEBSERVER
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
/* Only one single web request at time */
|
/* Only one single web request at time */
|
||||||
static const char *TOP = "<html><head><title>ContikiRPL</title></head><body>\n";
|
static const char *TOP = "<html><head><title>ContikiRPL</title></head><body>\n";
|
||||||
@ -155,6 +158,9 @@ httpd_simple_get_script(const char *name)
|
|||||||
{
|
{
|
||||||
return generate_routes;
|
return generate_routes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif /* WEBSERVER */
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
static void
|
static void
|
||||||
print_local_addresses(void)
|
print_local_addresses(void)
|
||||||
@ -162,18 +168,17 @@ print_local_addresses(void)
|
|||||||
int i;
|
int i;
|
||||||
uint8_t state;
|
uint8_t state;
|
||||||
|
|
||||||
PRINTF("Server IPv6 addresses:\n");
|
PRINTA("Server IPv6 addresses:\n");
|
||||||
for(i = 0; i < UIP_DS6_ADDR_NB; i++) {
|
for(i = 0; i < UIP_DS6_ADDR_NB; i++) {
|
||||||
state = uip_ds6_if.addr_list[i].state;
|
state = uip_ds6_if.addr_list[i].state;
|
||||||
if(uip_ds6_if.addr_list[i].isused &&
|
if(uip_ds6_if.addr_list[i].isused &&
|
||||||
(state == ADDR_TENTATIVE || state == ADDR_PREFERRED)) {
|
(state == ADDR_TENTATIVE || state == ADDR_PREFERRED)) {
|
||||||
blen = 0;
|
PRINTA(" ");
|
||||||
ipaddr_add(&uip_ds6_if.addr_list[i].ipaddr);
|
uip_debug_ipaddr_print(&uip_ds6_if.addr_list[i].ipaddr);
|
||||||
PRINTF(" %s\n", buf);
|
PRINTA("\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /* INTERNAL_WEBSERVER */
|
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
void
|
void
|
||||||
request_prefix(void)
|
request_prefix(void)
|
||||||
@ -206,9 +211,11 @@ PROCESS_THREAD(border_router_process, ev, data)
|
|||||||
prefix_set = 0;
|
prefix_set = 0;
|
||||||
|
|
||||||
PROCESS_PAUSE();
|
PROCESS_PAUSE();
|
||||||
#if INTERNAL_WEBSERVER
|
|
||||||
|
#if WEBSERVER
|
||||||
process_start(&webserver_nogui_process, NULL);
|
process_start(&webserver_nogui_process, NULL);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
SENSORS_ACTIVATE(button_sensor);
|
SENSORS_ACTIVATE(button_sensor);
|
||||||
|
|
||||||
PRINTF("RPL-Border router started\n");
|
PRINTF("RPL-Border router started\n");
|
||||||
@ -225,7 +232,8 @@ PROCESS_THREAD(border_router_process, ev, data)
|
|||||||
rpl_set_prefix(dag, &prefix, 64);
|
rpl_set_prefix(dag, &prefix, 64);
|
||||||
PRINTF("created a new RPL dag\n");
|
PRINTF("created a new RPL dag\n");
|
||||||
}
|
}
|
||||||
#if INTERNAL_WEBSERVER
|
|
||||||
|
#if DEBUG || 1
|
||||||
print_local_addresses();
|
print_local_addresses();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user