summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am5
-rw-r--r--include/automake.mk1
-rw-r--r--include/windows/automake.mk10
-rw-r--r--include/windows/syslog.h31
-rw-r--r--include/windows/windefs.h34
-rw-r--r--lib/string.h.in6
-rw-r--r--m4/openvswitch.m43
7 files changed, 90 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am
index 5069f962e..6acb0a6b4 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -10,6 +10,11 @@ ACLOCAL_AMFLAGS = -I m4
SUBDIRS = datapath
AM_CPPFLAGS = $(SSL_CFLAGS)
+
+if WIN32
+AM_CPPFLAGS += -I $(top_srcdir)/include/windows
+endif
+
AM_CPPFLAGS += -I $(top_srcdir)/include
AM_CPPFLAGS += -I $(top_srcdir)/lib
AM_CPPFLAGS += -I $(top_builddir)/lib
diff --git a/include/automake.mk b/include/automake.mk
index f34e5c9bf..37a6f77af 100644
--- a/include/automake.mk
+++ b/include/automake.mk
@@ -2,3 +2,4 @@ include include/linux/automake.mk
include include/openflow/automake.mk
include include/openvswitch/automake.mk
include include/sparse/automake.mk
+include include/windows/automake.mk
diff --git a/include/windows/automake.mk b/include/windows/automake.mk
new file mode 100644
index 000000000..07ada1b33
--- /dev/null
+++ b/include/windows/automake.mk
@@ -0,0 +1,10 @@
+# Copyright (C) 2013 Nicira, Inc.
+#
+# Copying and distribution of this file, with or without modification
+# are permitted in any medium without royalty provided the copyright
+# notice and this notice are preserved. This file is offered as-is,
+# without warranty of any kind.
+
+noinst_HEADERS += \
+ include/windows/windefs.h \
+ include/windows/syslog.h
diff --git a/include/windows/syslog.h b/include/windows/syslog.h
new file mode 100644
index 000000000..484cd1035
--- /dev/null
+++ b/include/windows/syslog.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright 2013 Cloudbase Solutions Srl
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use this file except in compliance with the License.You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+#ifndef SYSLOG_H
+#define SYSLOG_H 1
+
+#define LOG_EMERG 0 /* system is unusable */
+#define LOG_ALERT 1 /* action must be taken immediately */
+#define LOG_CRIT 2 /* critical conditions */
+#define LOG_ERR 3 /* error conditions */
+#define LOG_WARNING 4 /* warning conditions */
+#define LOG_NOTICE 5 /* normal but significant condition */
+#define LOG_INFO 6 /* informational */
+#define LOG_DEBUG 7 /* debug-level messages */
+#define LOG_NDELAY 8 /* don't delay open */
+#define LOG_DAEMON 24 /* system daemons */
+
+#endif /* syslog.h */
diff --git a/include/windows/windefs.h b/include/windows/windefs.h
new file mode 100644
index 000000000..dcfa20bf0
--- /dev/null
+++ b/include/windows/windefs.h
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2013 Nicira, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at:
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef WINDEFS_H
+#define WINDEFS_H 1
+
+#include <Winsock2.h>
+#include <In6addr.h>
+#include <WS2tcpip.h>
+#include <windows.h>
+#include <BaseTsd.h>
+
+#define inline __inline
+#define __func__ __FUNCTION__
+#define ssize_t SSIZE_T
+#define u_int8_t uint8_t
+#define u_int16_t uint16_t
+#define u_int32_t uint32_t
+#define u_int64_t uint64_t
+
+#endif /* windefs.h */
diff --git a/lib/string.h.in b/lib/string.h.in
index 6e2c2baaf..9e8fba91d 100644
--- a/lib/string.h.in
+++ b/lib/string.h.in
@@ -31,6 +31,12 @@
#undef strtok_r
#endif
+#ifdef _WIN32
+#define strtok_r strtok_s
+#define strcasecmp _stricmp
+#define strncasecmp _strnicmp
+#endif
+
#ifndef HAVE_STRNLEN
#undef strnlen
#define strnlen rpl_strnlen
diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4
index b8157c045..ee7e96a8d 100644
--- a/m4/openvswitch.m4
+++ b/m4/openvswitch.m4
@@ -64,6 +64,9 @@ AC_DEFUN([OVS_CHECK_WIN32],
AM_CONDITIONAL([WIN32], [test "$WIN32" = yes])
if test "$WIN32" = yes; then
AC_DEFINE([WIN32], [1], [Define to 1 if building on WIN32.])
+ AH_BOTTOM([#ifdef WIN32
+#include "include/windows/windefs.h"
+#endif])
fi])
dnl Checks for Netlink support.