Skip to content

Commit 9c5ed35

Browse files
Kapil Halisovu
Kapil Hali
authored andcommitted
initial nginx draft changes for ofp-odp
Signed-off-by: Kapil Hali <[email protected]>
1 parent e359dc2 commit 9c5ed35

File tree

9 files changed

+807
-15
lines changed

9 files changed

+807
-15
lines changed

auto/make

+15
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,16 @@ mkdir -p $NGX_OBJS/src/core $NGX_OBJS/src/event $NGX_OBJS/src/event/modules \
1717
ngx_objs_dir=$NGX_OBJS$ngx_regex_dirsep
1818
ngx_use_pch=`echo $NGX_USE_PCH | sed -e "s/\//$ngx_regex_dirsep/g"`
1919

20+
if [ $OFP_PATH ] && [ $OFP_ODP ]; then
21+
ODP_PATH=$OFP_ODP
22+
else
23+
echo "Please define OFP_PATH OFP_ODP environment variable"
24+
exit 1
25+
fi
26+
27+
28+
CORE_LIBS="$CORE_LIBS $OFP_PATH/lib/libofp.a $ODP_PATH/lib/libodp.a $ODP_PATH/lib/libodphelper.a"
29+
CORE_LIBS="$CORE_LIBS $NGX_LIBDL -lrt"
2030

2131
cat << END > $NGX_MAKEFILE
2232

@@ -25,6 +35,11 @@ CFLAGS = $CFLAGS
2535
CPP = $CPP
2636
LINK = $LINK
2737

38+
39+
CFLAGS += -I$OFP_PATH/include
40+
CFLAGS += -I$ODP_PATH/include
41+
42+
2843
END
2944

3045

auto/sources

+1-1
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ EVENT_SRCS="src/event/ngx_event.c \
108108

109109

110110
SELECT_MODULE=ngx_select_module
111-
SELECT_SRCS=src/event/modules/ngx_select_module.c
111+
SELECT_SRCS="src/event/modules/ngx_select_module.c src/event/modules/ngx_ofp_module.c"
112112
WIN32_SELECT_SRCS=src/event/modules/ngx_win32_select_module.c
113113

114114
POLL_MODULE=ngx_poll_module

auto/unix

+8-8
Original file line numberDiff line numberDiff line change
@@ -384,14 +384,14 @@ ngx_feature_test="socklen_t optlen = sizeof(struct tcp_info);
384384
. auto/feature
385385

386386

387-
ngx_feature="accept4()"
388-
ngx_feature_name="NGX_HAVE_ACCEPT4"
389-
ngx_feature_run=no
390-
ngx_feature_incs="#include <sys/socket.h>"
391-
ngx_feature_path=
392-
ngx_feature_libs=
393-
ngx_feature_test="accept4(0, NULL, NULL, SOCK_NONBLOCK)"
394-
. auto/feature
387+
#ngx_feature="accept4()"
388+
#ngx_feature_name="NGX_HAVE_ACCEPT4"
389+
#ngx_feature_run=no
390+
#ngx_feature_incs="#include <sys/socket.h>"
391+
#ngx_feature_path=
392+
#ngx_feature_libs=
393+
#ngx_feature_test="accept4(0, NULL, NULL, SOCK_NONBLOCK)"
394+
#. auto/feature
395395

396396
if [ $NGX_FILE_AIO = YES ]; then
397397

conf/ofp.conf

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
debug 0
2+
loglevel set debug
3+
ifconfig fp0 192.168.1.4/24

configure

+116
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
#!/bin/sh
2+
3+
# Copyright (C) Igor Sysoev
4+
# Copyright (C) Nginx, Inc.
5+
6+
7+
LC_ALL=C
8+
export LC_ALL
9+
10+
. auto/options
11+
. auto/init
12+
. auto/sources
13+
14+
test -d $NGX_OBJS || mkdir $NGX_OBJS
15+
16+
echo > $NGX_AUTO_HEADERS_H
17+
echo > $NGX_AUTOCONF_ERR
18+
19+
echo "#define NGX_CONFIGURE \"$NGX_CONFIGURE\"" > $NGX_AUTO_CONFIG_H
20+
21+
22+
if [ $NGX_DEBUG = YES ]; then
23+
have=NGX_DEBUG . auto/have
24+
fi
25+
26+
27+
if test -z "$NGX_PLATFORM"; then
28+
echo "checking for OS"
29+
30+
NGX_SYSTEM=`uname -s 2>/dev/null`
31+
NGX_RELEASE=`uname -r 2>/dev/null`
32+
NGX_MACHINE=`uname -m 2>/dev/null`
33+
34+
echo " + $NGX_SYSTEM $NGX_RELEASE $NGX_MACHINE"
35+
36+
NGX_PLATFORM="$NGX_SYSTEM:$NGX_RELEASE:$NGX_MACHINE";
37+
38+
case "$NGX_SYSTEM" in
39+
MINGW32_*)
40+
NGX_PLATFORM=win32
41+
;;
42+
esac
43+
44+
else
45+
echo "building for $NGX_PLATFORM"
46+
NGX_SYSTEM=$NGX_PLATFORM
47+
fi
48+
49+
. auto/cc/conf
50+
51+
if [ "$NGX_PLATFORM" != win32 ]; then
52+
. auto/headers
53+
fi
54+
55+
. auto/os/conf
56+
57+
if [ "$NGX_PLATFORM" != win32 ]; then
58+
. auto/unix
59+
fi
60+
61+
. auto/threads
62+
. auto/modules
63+
. auto/lib/conf
64+
65+
case ".$NGX_PREFIX" in
66+
.)
67+
NGX_PREFIX=${NGX_PREFIX:-/usr/local/nginx}
68+
have=NGX_PREFIX value="\"$NGX_PREFIX/\"" . auto/define
69+
;;
70+
71+
.!)
72+
NGX_PREFIX=
73+
;;
74+
75+
*)
76+
have=NGX_PREFIX value="\"$NGX_PREFIX/\"" . auto/define
77+
;;
78+
esac
79+
80+
if [ ".$NGX_CONF_PREFIX" != "." ]; then
81+
have=NGX_CONF_PREFIX value="\"$NGX_CONF_PREFIX/\"" . auto/define
82+
fi
83+
84+
have=NGX_SBIN_PATH value="\"$NGX_SBIN_PATH\"" . auto/define
85+
have=NGX_CONF_PATH value="\"$NGX_CONF_PATH\"" . auto/define
86+
have=NGX_PID_PATH value="\"$NGX_PID_PATH\"" . auto/define
87+
have=NGX_LOCK_PATH value="\"$NGX_LOCK_PATH\"" . auto/define
88+
have=NGX_ERROR_LOG_PATH value="\"$NGX_ERROR_LOG_PATH\"" . auto/define
89+
90+
have=NGX_HTTP_LOG_PATH value="\"$NGX_HTTP_LOG_PATH\"" . auto/define
91+
have=NGX_HTTP_CLIENT_TEMP_PATH value="\"$NGX_HTTP_CLIENT_TEMP_PATH\""
92+
. auto/define
93+
have=NGX_HTTP_PROXY_TEMP_PATH value="\"$NGX_HTTP_PROXY_TEMP_PATH\""
94+
. auto/define
95+
have=NGX_HTTP_FASTCGI_TEMP_PATH value="\"$NGX_HTTP_FASTCGI_TEMP_PATH\""
96+
. auto/define
97+
have=NGX_HTTP_UWSGI_TEMP_PATH value="\"$NGX_HTTP_UWSGI_TEMP_PATH\""
98+
. auto/define
99+
have=NGX_HTTP_SCGI_TEMP_PATH value="\"$NGX_HTTP_SCGI_TEMP_PATH\""
100+
. auto/define
101+
102+
. auto/make
103+
. auto/lib/make
104+
. auto/install
105+
106+
# STUB
107+
. auto/stubs
108+
109+
have=NGX_USER value="\"$NGX_USER\"" . auto/define
110+
have=NGX_GROUP value="\"$NGX_GROUP\"" . auto/define
111+
112+
if [ ".$NGX_BUILD" != "." ]; then
113+
have=NGX_BUILD value="\"$NGX_BUILD\"" . auto/define
114+
fi
115+
116+
. auto/summary

src/core/nginx.c

+7
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ static char *ngx_set_cpu_affinity(ngx_conf_t *cf, ngx_command_t *cmd,
2424
void *conf);
2525
static char *ngx_set_worker_processes(ngx_conf_t *cf, ngx_command_t *cmd,
2626
void *conf);
27+
void ngx_ofp_init();
2728

2829

2930
static ngx_conf_enum_t ngx_debug_points[] = {
@@ -204,6 +205,12 @@ main(int argc, char *const *argv)
204205

205206
/* TODO */ ngx_max_sockets = -1;
206207

208+
/* ofp */
209+
printf("signal is :%s\n", ngx_signal);
210+
if (!ngx_signal) {
211+
ngx_ofp_init();
212+
}
213+
207214
ngx_time_init();
208215

209216
#if (NGX_PCRE)

0 commit comments

Comments
 (0)