diff --git a/src/winpcap-2-fixes.patch b/src/winpcap-2-fixes.patch new file mode 100644 index 00000000..c4d43e8f --- /dev/null +++ b/src/winpcap-2-fixes.patch @@ -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 +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 + #include + #include ++#include + + /* end standard C headers. */ + + +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Tony Theodore +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 + #include + #endif diff --git a/src/winpcap.mk b/src/winpcap.mk index 4b88cc11..a4c6441f 100644 --- a/src/winpcap.mk +++ b/src/winpcap.mk @@ -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 =