winpcap: add test and fix posix build

Can't figure out how to get the line endings in original patch to
apply correctly with git-formatted patch.

fixes #2007
pull/2017/head
Tony Theodore 6 years ago
parent db3ff808a3
commit 0f896e79a1

@ -0,0 +1,55 @@
This file is part of MXE. See LICENSE.md for licensing information.
Contains ad hoc patches for cross building.
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tony Theodore <tonyt@logyst.com>
Date: Fri, 22 Dec 2017 14:32:47 +1100
Subject: [PATCH 1/2] fix building test program
diff --git a/wpcap/libpcap/pcap-win32.c b/wpcap/libpcap/pcap-win32.c
index 1111111..2222222 100644
--- a/wpcap/libpcap/pcap-win32.c
+++ b/wpcap/libpcap/pcap-win32.c
@@ -86,7 +86,7 @@ struct bpf_hdr {
CRITICAL_SECTION g_PcapCompileCriticalSection;
-BOOL WINAPI DllMain(
+BOOL WINAPI DllMain_disabled(
HANDLE hinstDLL,
DWORD dwReason,
LPVOID lpvReserved
diff --git a/wpcap/libpcap/scanner.c b/wpcap/libpcap/scanner.c
index 1111111..2222222 100644
--- a/wpcap/libpcap/scanner.c
+++ b/wpcap/libpcap/scanner.c
@@ -39,6 +39,7 @@
#include <string.h>
#include <errno.h>
#include <stdlib.h>
+#include <ws2tcpip.h>
/* end standard C headers. */
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Tony Theodore <tonyt@logyst.com>
Date: Fri, 22 Dec 2017 14:54:56 +1100
Subject: [PATCH 2/2] fix posix build
diff --git a/wpcap/libpcap/Win32/Include/net/netdb.h b/wpcap/libpcap/Win32/Include/net/netdb.h
index 1111111..2222222 100644
--- a/wpcap/libpcap/Win32/Include/net/netdb.h
+++ b/wpcap/libpcap/Win32/Include/net/netdb.h
@@ -57,7 +57,7 @@
#ifndef _NETDB_H_
#define _NETDB_H_
-#if defined(_POSIX_THREAD_SAFE_FUNCTIONS) || defined(_REENTRANT)
+#if (defined(_POSIX_THREAD_SAFE_FUNCTIONS) || defined(_REENTRANT)) && !defined(_WIN32)
#include <stdio.h>
#include <netinet/in.h>
#endif

@ -19,7 +19,7 @@ endef
define $(PKG)_BUILD
# build
cd '$(1)' && $(TARGET)-gcc -ICommon -IpacketNtx/Dll -O -c '$(1)/packetNtx/Dll/Packet32.c'
cd '$(1)' && $(TARGET)-gcc -ICommon -IpacketNtx/Dll -O -c '$(1)/packetNtx/Dll/Packet32.c' -D_WINNT4
cd '$(1)' && $(TARGET)-gcc -ICommon -IpacketNtx/Dll -O -c '$(1)/packetNtx/Dll/AdInfo.c'
cd '$(1)' && $(TARGET)-gcc -ICommon -IpacketNtx/Dll -O -c '$(1)/packetNtx/Dll/NpfImExt.c'
$(TARGET)-ar rc '$(1)/libpacket.a' '$(1)/Packet32.o' '$(1)/AdInfo.o' '$(1)/NpfImExt.o'
@ -60,6 +60,22 @@ define $(PKG)_BUILD
'$(PREFIX)/$(TARGET)/include/pcap/'
$(INSTALL) -m644 '$(1)/wpcap/PRJ/libwpcap.a' '$(PREFIX)/$(TARGET)/lib/'
# create pkg-config file
$(INSTALL) -d '$(PREFIX)/$(TARGET)/lib/pkgconfig'
(echo 'Name: $(PKG)'; \
echo 'Version: $($(PKG)_VERSION)'; \
echo 'Description: $($(PKG)_DESCR)'; \
echo 'Requires:'; \
echo 'Libs: -lwpcap -lpacket -lws2_32 -lversion'; \
echo 'Cflags: -I$(PREFIX)/$(TARGET)/include/pcap';) \
> '$(PREFIX)/$(TARGET)/lib/pkgconfig/$(PKG).pc'
# compile test
'$(TARGET)-gcc' \
-W -Wall \
'$(SOURCE_DIR)/Examples-pcap/basic_dump_ex/basic_dump_ex.c' -o '$(PREFIX)/$(TARGET)/bin/test-$(PKG).exe' \
`'$(TARGET)-pkg-config' $(PKG) --cflags --libs`
endef
$(PKG)_BUILD_SHARED =

Loading…
Cancel
Save