diff --git a/Makefile.in b/Makefile.in
index 02d6e42..77543b1 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -107,12 +107,14 @@ DEPENDS= \
Makefile \
src/include/*.h \
src/include/lib3270/*.h \
+ src/include/@OSNAME@/lib3270/*.h \
$(BASEDIR)/src/include/lib3270/actions.h
CFLAGS= \
@CFLAGS@ \
-g \
-I$(BASEDIR)/src/include \
+ -I$(BASEDIR)/src/include/@OSNAME@ \
@LIBSSL_CFLAGS@ \
@LDAP_CFLAGS@ \
@LIBCURL_CFLAGS@
@@ -323,7 +325,7 @@ install-dev: \
@mkdir -p $(DESTDIR)$(includedir)/lib3270
@$(INSTALL_DATA) \
- src/include/lib3270/*.h \
+ src/include/@OSNAME@/lib3270/*.h \
$(DESTDIR)$(includedir)/lib3270
@$(INSTALL_DATA) \
diff --git a/lib3270.cbp b/lib3270.cbp
index 7692adb..7582bb0 100644
--- a/lib3270.cbp
+++ b/lib3270.cbp
@@ -254,6 +254,8 @@
+
+
@@ -269,6 +271,7 @@
+
@@ -284,7 +287,9 @@
+
+
@@ -305,6 +310,8 @@
+
+
diff --git a/src/core/iocalls.c b/src/core/iocalls.c
index 0722db8..4a091dd 100644
--- a/src/core/iocalls.c
+++ b/src/core/iocalls.c
@@ -36,6 +36,7 @@
#include "telnetc.h"
#include "utilc.h"
#include "kybdc.h"
+#include
#if defined(_WIN32)
#include
@@ -45,7 +46,6 @@
#include
#include
#include
- #include
#include
#endif
diff --git a/src/core/linux/connect.c b/src/core/linux/connect.c
index 6b7bbde..84b1ef0 100644
--- a/src/core/linux/connect.c
+++ b/src/core/linux/connect.c
@@ -39,7 +39,6 @@
#include
#include
#include
-#include
#include
#include
@@ -53,6 +52,7 @@
#include
#include
#include
+#include
#include
//#include
#include
diff --git a/src/core/linux/util.c b/src/core/linux/util.c
index 4715b3a..8acc2ff 100644
--- a/src/core/linux/util.c
+++ b/src/core/linux/util.c
@@ -36,7 +36,7 @@
#include
#include
#include
-#include
+#include
static char * concat(char *path, const char *name, size_t *length)
{
diff --git a/src/core/telnet.c b/src/core/telnet.c
index 586cd0a..22f8362 100644
--- a/src/core/telnet.c
+++ b/src/core/telnet.c
@@ -73,7 +73,9 @@
#include
#include
-#if !defined(_WIN32)
+#if defined(_WIN32)
+ #include
+#else
#include
#endif
diff --git a/src/core/windows/connect.c b/src/core/windows/connect.c
index 934e61f..f13c8bd 100644
--- a/src/core/windows/connect.c
+++ b/src/core/windows/connect.c
@@ -32,6 +32,7 @@
#include
#include
#include
+#include
#include
#include
diff --git a/src/core/windows/event_dispatcher.c b/src/core/windows/event_dispatcher.c
index 4e8c952..efd33e7 100644
--- a/src/core/windows/event_dispatcher.c
+++ b/src/core/windows/event_dispatcher.c
@@ -36,6 +36,7 @@
#include
#include
#include
+#include
#define TN (timeout_t *)NULL
diff --git a/src/core/windows/http.c b/src/core/windows/http.c
index 9afb856..64b866d 100644
--- a/src/core/windows/http.c
+++ b/src/core/windows/http.c
@@ -42,6 +42,7 @@
#include
#include
#include
+#include
/*--[ Implement ]------------------------------------------------------------------------------------*/
diff --git a/src/core/windows/util.c b/src/core/windows/util.c
index 5a6c649..72f1e15 100644
--- a/src/core/windows/util.c
+++ b/src/core/windows/util.c
@@ -49,6 +49,7 @@
#endif // HAVE_ICONV
#include
+#include
#define my_isspace(c) isspace((unsigned char)c)
diff --git a/src/include/internals.h b/src/include/internals.h
index afa2dbc..aca5e9f 100644
--- a/src/include/internals.h
+++ b/src/include/internals.h
@@ -40,6 +40,7 @@
#include
#include
#include
+#include
#if defined(HAVE_LIBSSL)
#include
@@ -100,7 +101,6 @@
#else
- #include /* Unix system calls */
#include /* System time-related data types */
#endif // _WIN32
diff --git a/src/include/lib3270.h b/src/include/lib3270.h
index cfde260..c8cd256 100644
--- a/src/include/lib3270.h
+++ b/src/include/lib3270.h
@@ -1573,32 +1573,6 @@
LIB3270_EXPORT int lib3270_set_as400(H3270 *hSession, int on);
-#ifdef _WIN32
- LIB3270_EXPORT const char * lib3270_win32_strerror(int e);
- LIB3270_EXPORT const char * lib3270_win32_local_charset(void);
- LIB3270_EXPORT LSTATUS lib3270_win32_create_regkey(LPCSTR lpSubKey, REGSAM samDesired, PHKEY phkResult);
- LIB3270_EXPORT DWORD lib3270_win32_get_dword(HKEY hKey, const char *name, DWORD def);
-
- /**
- * @brief Translate windows error code.
- *
- * @param lasterror Windows error code (from GetLastError()).
- *
- * @return String with translated message (release it with lib3270_free).
- *
- */
- LIB3270_EXPORT char * lib3270_win32_translate_error_code(int lasterror);
-
- /**
- * @brief Get lib3270's installation path.
- *
- * @return Full path for the lib3270 installation path (release it with lib3270_free)
- *
- */
- LIB3270_EXPORT char * lib3270_get_installation_path();
-
-#endif // WIn32
-
/**
* @brief Build filename on application data dir.
*
diff --git a/src/include/lib3270/internals.h b/src/include/lib3270/internals.h
index 82bcd8f..5a5c1ef 100644
--- a/src/include/lib3270/internals.h
+++ b/src/include/lib3270/internals.h
@@ -44,5 +44,5 @@
}
#endif
-#endif // LIB3270_HTML_H_INCLUDED
+#endif // LIB3270_INTERNALS_H_INCLUDED
diff --git a/src/include/linux/lib3270/os.h b/src/include/linux/lib3270/os.h
new file mode 100644
index 0000000..9616215
--- /dev/null
+++ b/src/include/linux/lib3270/os.h
@@ -0,0 +1,43 @@
+/*
+ * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
+ * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
+ * aplicativos mainframe. Registro no INPI sob o nome G3270.
+ *
+ * Copyright (C) <2008>
+ *
+ * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
+ * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
+ * Free Software Foundation.
+ *
+ * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
+ * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
+ * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
+ * obter mais detalhes.
+ *
+ * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
+ * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
+ * St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * Este programa está nomeado como lib3270.h e possui - linhas de código.
+ *
+ * Contatos:
+ *
+ * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
+ * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
+ *
+ */
+
+ /**
+ * @brief TN3270 API linux definitions.
+ *
+ * @author perry.werneck@gmail.com
+ *
+ */
+
+#ifndef LIB3270_OS_H_INCLUDED
+
+ #define LIB3270_OS_H_INCLUDED 1
+
+ #include
+
+#endif // LIB3270_OS_H_INCLUDED
diff --git a/src/include/macos/lib3270/os.h b/src/include/macos/lib3270/os.h
new file mode 100644
index 0000000..c9496e2
--- /dev/null
+++ b/src/include/macos/lib3270/os.h
@@ -0,0 +1,43 @@
+/*
+ * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
+ * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
+ * aplicativos mainframe. Registro no INPI sob o nome G3270.
+ *
+ * Copyright (C) <2008>
+ *
+ * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
+ * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
+ * Free Software Foundation.
+ *
+ * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
+ * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
+ * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
+ * obter mais detalhes.
+ *
+ * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
+ * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
+ * St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * Este programa está nomeado como lib3270.h e possui - linhas de código.
+ *
+ * Contatos:
+ *
+ * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
+ * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
+ *
+ */
+
+ /**
+ * @brief TN3270 API MAC definitions.
+ *
+ * @author perry.werneck@gmail.com
+ *
+ */
+
+#ifndef LIB3270_OS_H_INCLUDED
+
+ #define LIB3270_OS_H_INCLUDED 1
+
+ #include
+
+#endif // LIB3270_OS_H_INCLUDED
diff --git a/src/include/windows/lib3270/os.h b/src/include/windows/lib3270/os.h
new file mode 100644
index 0000000..c4237f3
--- /dev/null
+++ b/src/include/windows/lib3270/os.h
@@ -0,0 +1,44 @@
+/*
+ * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
+ * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
+ * aplicativos mainframe. Registro no INPI sob o nome G3270.
+ *
+ * Copyright (C) <2008>
+ *
+ * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
+ * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
+ * Free Software Foundation.
+ *
+ * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
+ * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
+ * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
+ * obter mais detalhes.
+ *
+ * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
+ * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
+ * St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * Este programa está nomeado como lib3270.h e possui - linhas de código.
+ *
+ * Contatos:
+ *
+ * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
+ * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
+ *
+ */
+
+ /**
+ * @brief TN3270 API windows definitions.
+ *
+ * @author perry.werneck@gmail.com
+ *
+ */
+
+#ifndef LIB3270_OS_H_INCLUDED
+
+ #define LIB3270_OS_H_INCLUDED 1
+
+ #include
+ #include
+
+#endif // LIB3270_OS_H_INCLUDED
diff --git a/src/include/windows/lib3270/win32.h b/src/include/windows/lib3270/win32.h
new file mode 100644
index 0000000..5d61d6c
--- /dev/null
+++ b/src/include/windows/lib3270/win32.h
@@ -0,0 +1,78 @@
+/*
+ * "Software pw3270, desenvolvido com base nos códigos fontes do WC3270 e X3270
+ * (Paul Mattes Paul.Mattes@usa.net), de emulação de terminal 3270 para acesso a
+ * aplicativos mainframe. Registro no INPI sob o nome G3270.
+ *
+ * Copyright (C) <2008>
+ *
+ * Este programa é software livre. Você pode redistribuí-lo e/ou modificá-lo sob
+ * os termos da GPL v.2 - Licença Pública Geral GNU, conforme publicado pela
+ * Free Software Foundation.
+ *
+ * Este programa é distribuído na expectativa de ser útil, mas SEM QUALQUER
+ * GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou de ADEQUAÇÃO
+ * A QUALQUER PROPÓSITO EM PARTICULAR. Consulte a Licença Pública Geral GNU para
+ * obter mais detalhes.
+ *
+ * Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este
+ * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
+ * St, Fifth Floor, Boston, MA 02110-1301 USA
+ *
+ * Este programa está nomeado como lib3270.h e possui - linhas de código.
+ *
+ * Contatos:
+ *
+ * perry.werneck@gmail.com (Alexandre Perry de Souza Werneck)
+ * erico.mendonca@gmail.com (Erico Mascarenhas Mendonça)
+ *
+ */
+
+ /**
+ * @brief TN3270 API windows definitions.
+ *
+ * @author perry.werneck@gmail.com
+ *
+ */
+
+#ifndef LIB3270_WIN32_H_INCLUDED
+
+ #define LIB3270_WIN32_H_INCLUDED 1
+
+ #include
+ #include
+ #include
+
+#ifdef __cplusplus
+ extern "C" {
+#endif
+
+ LIB3270_EXPORT const char * lib3270_win32_strerror(int e);
+ LIB3270_EXPORT const char * lib3270_win32_local_charset(void);
+ LIB3270_EXPORT LSTATUS lib3270_win32_create_regkey(LPCSTR lpSubKey, REGSAM samDesired, PHKEY phkResult);
+ LIB3270_EXPORT DWORD lib3270_win32_get_dword(HKEY hKey, const char *name, DWORD def);
+
+ /**
+ * @brief Translate windows error code.
+ *
+ * @param lasterror Windows error code (from GetLastError()).
+ *
+ * @return String with translated message (release it with lib3270_free).
+ *
+ */
+ LIB3270_EXPORT char * lib3270_win32_translate_error_code(int lasterror);
+
+ /**
+ * @brief Get lib3270's installation path.
+ *
+ * @return Full path for the lib3270 installation path (release it with lib3270_free)
+ *
+ */
+ LIB3270_EXPORT char * lib3270_get_installation_path();
+
+
+
+#ifdef __cplusplus
+ }
+#endif
+
+#endif // LIB3270_WIN32_H_INCLUDED
diff --git a/src/network_modules/openssl/context.c b/src/network_modules/openssl/context.c
index ae881d2..2a59928 100644
--- a/src/network_modules/openssl/context.c
+++ b/src/network_modules/openssl/context.c
@@ -39,6 +39,10 @@
#include "private.h"
+#ifdef _WIN32
+ #include
+#endif // _WIN32
+
#include
#include
diff --git a/src/network_modules/openssl/private.h b/src/network_modules/openssl/private.h
index b6ce2b0..632569b 100644
--- a/src/network_modules/openssl/private.h
+++ b/src/network_modules/openssl/private.h
@@ -37,13 +37,13 @@
#include
#include
#else
- #include
#include
#endif // _WIN32
#include
#include
#include
+ #include
#include
#include
#include
diff --git a/src/network_modules/tools.c b/src/network_modules/tools.c
index 1a11ddd..d67d1c7 100644
--- a/src/network_modules/tools.c
+++ b/src/network_modules/tools.c
@@ -38,6 +38,9 @@
#include
#include
#include
+ #ifdef _WIN32
+ #include
+ #endif // _WIN32
/*--[ Implement ]------------------------------------------------------------------------------------*/
diff --git a/src/ssl/notify.c b/src/ssl/notify.c
index 578c81b..0ba3706 100644
--- a/src/ssl/notify.c
+++ b/src/ssl/notify.c
@@ -37,6 +37,7 @@
#include
#include
#include
+#include
/*--[ Implement ]------------------------------------------------------------------------------------*/
diff --git a/src/testprogram/testprogram.c b/src/testprogram/testprogram.c
index b60837b..b552367 100644
--- a/src/testprogram/testprogram.c
+++ b/src/testprogram/testprogram.c
@@ -42,6 +42,10 @@
#include
#include
+#ifdef _WIN32
+ #include
+#endif // _WIN32
+
#define MAX_ARGS 10
const char *trace_file = "test.trace";
--
libgit2 0.21.2