Diff

Differences From Artifact [af35554c1f]:

To Artifact [c3a16cae07]:


2
3
4
5
6
7
8
9
10
11
12


13
14
15
16
17
18
19
..
47
48
49
50
51
52
53







54
55
56

57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81





82
83
84
85
86
87
88
..
91
92
93
94
95
96
97


98
99
100
101
102
103
104
105
106
107
108
109
...
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
...
157
158
159
160
161
162
163

164
165
166
167
168
TOOLCHAIN_CMD = $(TOOLCHAIN)-

TWAPI_VERSION = 3.1.17
TWAPI_URL = http://sourceforge.net/projects/twapi/files/Current%20Releases/Tcl%20Windows%20API/twapi-$(TWAPI_VERSION)/twapi-$(TWAPI_VERSION).zip
TWAPI_ZIP = archive/twapi-$(TWAPI_VERSION).zip
TWAPI_SHA256 = 8803e90fdc60c8d6a1ca3d559b145e8d09ae2e1259df603ca27c89ff7b0416f4

TCPDUMP_VERSION = 4.5.1
TCPDUMP_URL = http://www.tcpdump.org/release/tcpdump-$(TCPDUMP_VERSION).tar.gz
TCPDUMP_TARBALL = archive/tcpdump-$(TCPDUMP_VERSION).tar.gz
TCPDUMP_SHA256 = 14ab39657128f3a650aed4cf455f76c7590601087b6101c253d698f6e73f0b96



WINPCAP_DEV_VERSION = 4.1.2
WINPCAP_DEV_URL = http://www.winpcap.org/install/bin/WpdPack_4_1_2.zip
WINPCAP_DEV_ZIP = archive/winpcap-dev-$(WINPCAP_DEV_VERSION).zip
WINPCAP_DEV_SHA256 = ea799cf2f26e4afb1892938070fd2b1ca37ce5cf75fec4349247df12b784edbd

WINPCAP_INST_VERSION = 4.1.3
................................................................................
	cp '__TMP_WPCAP__/$$SYSDIR/pthreadVC.dll' files/pthreadvc.dll
	cp '__TMP_WPCAP__/$$SYSDIR/wpcap.dll' files/wpcap.dll
	cp '__TMP_WPCAP__/$$SYSDIR/drivers/npf_1.sys' files/npf64.sys
	cp '__TMP_WPCAP__/$$SYSDIR/drivers/npf.sys' files/npf32.sys
	rm -rf __TMP_WPCAP__

# TCPDUMP







$(TCPDUMP_TARBALL):
	@-mkdir -p archive >/dev/null 2>/dev/null
	wget --no-use-server-timestamps -O "$(TCPDUMP_TARBALL).new" "$(TCPDUMP_URL)"

	@if test -n "$(TCPDUMP_SHA256)"; then if test "`openssl sha256 "$(TCPDUMP_TARBALL).new" | sed 's@^.*= *@@'`" != "$(TCPDUMP_SHA256)"; then echo "$(TCPDUMP_TARBALL): Checksum Mismatch!"; exit 1; fi; fi
	gzip -dc "$(TCPDUMP_TARBALL).new" | tar -tf - >/dev/null
	mv "$(TCPDUMP_TARBALL).new" "$(TCPDUMP_TARBALL)"

$(WINPCAP_DEV_ZIP):
	@-mkdir -p archive >/dev/null 2>/dev/null
	wget --no-use-server-timestamps -O "$(WINPCAP_DEV_ZIP).new" "$(WINPCAP_DEV_URL)"
	@if test -n "$(WINPCAP_DEV_SHA256)"; then if test "`openssl sha256 "$(WINPCAP_DEV_ZIP).new" | sed 's@^.*= *@@'`" != "$(WINPCAP_DEV_SHA256)"; then echo "$(WINPCAP_DEV_ZIP): Checksum Mismatch!"; exit 1; fi; fi
	unzip -l "$(WINPCAP_DEV_ZIP).new"
	mv "$(WINPCAP_DEV_ZIP).new" "$(WINPCAP_DEV_ZIP)"

files/tcpdump.exe: $(TCPDUMP_TARBALL) $(WINPCAP_DEV_ZIP) pcap-config
	rm -rf __TMP_TCP__
	mkdir __TMP_TCP__
	( \
		set -e; \
		cd __TMP_TCP__; \
		gzip -dc ../$(TCPDUMP_TARBALL) | tar -xf -; \
		unzip ../$(WINPCAP_DEV_ZIP); \
		cp ../pcap-config WpdPack/; \
		cd WpdPack; \
		echo '#define pcap_can_set_rfmon(x) 0' >> Include/pcap/pcap.h; \
		echo '#define pcap_set_rfmon(x, y) -1' >> Include/pcap/pcap.h; \
		echo '#define pcap_statustostr(x) ""' >>  Include/pcap/pcap.h; \
		cd ../tcpdump-$(TCPDUMP_VERSION); \





		./configure --without-smi --disable-smb --enable-ipv6 --without-crypto --host=$(TOOLCHAIN) PCAP_CONFIG="$$(pwd)/../WpdPack/pcap-config" LIBS='-lws2_32' ac_cv_func_getnameinfo='yes'; \
		sed -i 's@Ws2tcpip\.h@ws2tcpip.h@' tcpdump-stdinc.h; \
		grep -v '^# *define.*UNALIGNED' tcpdump-stdinc.h | \
			grep -v '<net/netdb\.h>' > tcpdump-stdinc.h.new && mv tcpdump-stdinc.h.new tcpdump-stdinc.h; \
		echo '#define HAVE_SOCKADDR_STORAGE 1' >> config.h; \
		echo '#define HAVE_U_INT8_T 1' >> config.h; \
		echo '#define HAVE_U_INT16_T 1' >> config.h; \
................................................................................
		echo '#define HAVE_INT8_T 1' >> config.h; \
		echo '#define HAVE_INT16_T 1' >> config.h; \
		echo '#define HAVE_INT32_T 1' >> config.h; \
		echo '#define HAVE_INT64_T 1' >> config.h; \
		echo '#define HAVE_GENERATED_VERSION 1' >> config.h; \
		echo '#define IN6_IS_ADDR_UNSPECIFIED IN6_IS_ADDR_UNSPECIFIED' >> config.h; \
		echo '#undef HAVE_ALARM' >> config.h; \


		grep -v '^# *define *inline' config.h > config.h.new && mv config.h.new config.h; \
		$(MAKE); \
	)
	@-mkdir -p files
	cp __TMP_TCP__/tcpdump-$(TCPDUMP_VERSION)/tcpdump files/tcpdump.exe.new
	$(TOOLCHAIN_CMD)strip files/tcpdump.exe.new
	mv files/tcpdump.exe.new files/tcpdump.exe
	rm -rf __TMP_TCP__

# TWAPI (TCL Windows API)
$(TWAPI_ZIP):
	@-mkdir -p archive >/dev/null 2>/dev/null
................................................................................
	gzip -dc "$(KITCREATOR_TARBALL).new" | tar -tf - >/dev/null
	mv "$(KITCREATOR_TARBALL).new" "$(KITCREATOR_TARBALL)"

tclkit-zip: $(KITCREATOR_TARBALL) tcpdump.rc icon/tcpdump.ico
	rm -rf kitcreator-$(KITCREATOR_VERSION)
	gzip -dc "$(KITCREATOR_TARBALL)" | tar -xf -
	cp icon/tcpdump.ico kitcreator-$(KITCREATOR_VERSION)/kit.ico
	sed 's/@@TCPDUMP_VERSION_COMMA@@/$(shell echo $(TCPDUMP_VERSION) | sed 's@\.@,@g'),0/;s/@@TCPDUMP_VERSION@@/$(TCPDUMP_VERSION)/' tcpdump.rc > kitcreator-$(KITCREATOR_VERSION)/kit.rc
	cd kitcreator-$(KITCREATOR_VERSION) && KITCREATOR_PKGS=' ' AR=$(TOOLCHAIN_CMD)ar CC=$(TOOLCHAIN_CMD)gcc ./kitcreator 8.5.15 --host=$(TOOLCHAIN) --enable-kit-storage=zip --enable-threads
	cp kitcreator-$(KITCREATOR_VERSION)/tclkit-8.5.15 tclkit-zip.new
	mv tclkit-zip.new tclkit-zip
	rm -rf kitcreator-$(KITCREATOR_VERSION)

# The wrapper
## Split Tclkit header from zip file contents
................................................................................
	rm -rf kitcreator-$(KITCREATOR_VERSION)
	rm -rf __TMP_TCP__ __TMP_WPCAP__
	$(MAKE) -C icon clean

distclean: clean
	rm -f "$(TWAPI_ZIP)" "$(TCPDUMP_TARBALL)" "$(WINPCAP_DEV_ZIP)" "$(KITCREATOR_TARBALL)" "$(WINPCAP_INST_7ZIP)"
	rm -f "$(TWAPI_ZIP).new" "$(TCPDUMP_TARBALL).new" "$(WINPCAP_DEV_ZIP).new" "$(KITCREATOR_TARBALL).new" "$(WINPCAP_INST_7ZIP).new"

	rm -f $(WINPCAP_INST_FILES)
	rm -f tclkit-zip files/tcpdump.exe
	-rmdir archive files

.PHONY: all clean distclean







|
|
|
|
>
>







 







>
>
>
>
>
>
>
|

<
>

|









|





|






|
>
>
>
>
>







 







>
>




|







 







|







 







>





2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
..
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64

65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
...
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
...
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
...
173
174
175
176
177
178
179
180
181
182
183
184
185
TOOLCHAIN_CMD = $(TOOLCHAIN)-

TWAPI_VERSION = 3.1.17
TWAPI_URL = http://sourceforge.net/projects/twapi/files/Current%20Releases/Tcl%20Windows%20API/twapi-$(TWAPI_VERSION)/twapi-$(TWAPI_VERSION).zip
TWAPI_ZIP = archive/twapi-$(TWAPI_VERSION).zip
TWAPI_SHA256 = 8803e90fdc60c8d6a1ca3d559b145e8d09ae2e1259df603ca27c89ff7b0416f4

TCPDUMP_VERSION = 4.0.0-3.20090921gitdf3cb4.2.el6
TCPDUMP_SRPM    = archive/tcpdump-$(TCPDUMP_VERSION).src.rpm
TCPDUMP_TARBALL = archive/tcpdump-$(TCPDUMP_VERSION).tar.bz2
TCPDUMP_LOCAL_PATCHES = archive/tcpdump-$(TCPDUMP_VERSION)-local.patches
TCPDUMP_PATCHES = archive/tcpdump-$(TCPDUMP_VERSION).patches
TCPDUMP_SHA256  = 0e654b3df95d338efc1ed9f97984878c2203ae8527f3f589b6acce66d88d357d

WINPCAP_DEV_VERSION = 4.1.2
WINPCAP_DEV_URL = http://www.winpcap.org/install/bin/WpdPack_4_1_2.zip
WINPCAP_DEV_ZIP = archive/winpcap-dev-$(WINPCAP_DEV_VERSION).zip
WINPCAP_DEV_SHA256 = ea799cf2f26e4afb1892938070fd2b1ca37ce5cf75fec4349247df12b784edbd

WINPCAP_INST_VERSION = 4.1.3
................................................................................
	cp '__TMP_WPCAP__/$$SYSDIR/pthreadVC.dll' files/pthreadvc.dll
	cp '__TMP_WPCAP__/$$SYSDIR/wpcap.dll' files/wpcap.dll
	cp '__TMP_WPCAP__/$$SYSDIR/drivers/npf_1.sys' files/npf64.sys
	cp '__TMP_WPCAP__/$$SYSDIR/drivers/npf.sys' files/npf32.sys
	rm -rf __TMP_WPCAP__

# TCPDUMP
$(TCPDUMP_PATCHES): $(TCPDUMP_SRPM) $(TCPDUMP_LOCAL_PATCHES)
	for patch in `rpm2cpio '$(TCPDUMP_SRPM)' | cpio --extract --to-stdout tcpdump.spec | awk '/^Patch[0-9][0-9]*: tcpdump/{ print $$2 }'`; do \
		rpm2cpio '$(TCPDUMP_SRPM)' | cpio --extract --to-stdout "$${patch}" || exit 1; \
	done > '$(TCPDUMP_PATCHES).new'
	cat '$(TCPDUMP_LOCAL_PATCHES)' >> '$(TCPDUMP_PATCHES).new'
	mv '$(TCPDUMP_PATCHES).new' '$(TCPDUMP_PATCHES)'

$(TCPDUMP_TARBALL): $(TCPDUMP_SRPM)
	@-mkdir -p archive >/dev/null 2>/dev/null

	rpm2cpio $(TCPDUMP_SRPM) | cpio --extract --to-stdout 'tcpdump-*.tar.*' > "$(TCPDUMP_TARBALL).new"
	@if test -n "$(TCPDUMP_SHA256)"; then if test "`openssl sha256 "$(TCPDUMP_TARBALL).new" | sed 's@^.*= *@@'`" != "$(TCPDUMP_SHA256)"; then echo "$(TCPDUMP_TARBALL): Checksum Mismatch!"; exit 1; fi; fi
	bzip2 -dc "$(TCPDUMP_TARBALL).new" | tar -tf - >/dev/null
	mv "$(TCPDUMP_TARBALL).new" "$(TCPDUMP_TARBALL)"

$(WINPCAP_DEV_ZIP):
	@-mkdir -p archive >/dev/null 2>/dev/null
	wget --no-use-server-timestamps -O "$(WINPCAP_DEV_ZIP).new" "$(WINPCAP_DEV_URL)"
	@if test -n "$(WINPCAP_DEV_SHA256)"; then if test "`openssl sha256 "$(WINPCAP_DEV_ZIP).new" | sed 's@^.*= *@@'`" != "$(WINPCAP_DEV_SHA256)"; then echo "$(WINPCAP_DEV_ZIP): Checksum Mismatch!"; exit 1; fi; fi
	unzip -l "$(WINPCAP_DEV_ZIP).new"
	mv "$(WINPCAP_DEV_ZIP).new" "$(WINPCAP_DEV_ZIP)"

files/tcpdump.exe: $(TCPDUMP_TARBALL) $(TCPDUMP_PATCHES) $(WINPCAP_DEV_ZIP) pcap-config
	rm -rf __TMP_TCP__
	mkdir __TMP_TCP__
	( \
		set -e; \
		cd __TMP_TCP__; \
		bzip2 -dc ../$(TCPDUMP_TARBALL) | tar -xf -; \
		unzip ../$(WINPCAP_DEV_ZIP); \
		cp ../pcap-config WpdPack/; \
		cd WpdPack; \
		echo '#define pcap_can_set_rfmon(x) 0' >> Include/pcap/pcap.h; \
		echo '#define pcap_set_rfmon(x, y) -1' >> Include/pcap/pcap.h; \
		echo '#define pcap_statustostr(x) ""' >>  Include/pcap/pcap.h; \
		cd ../tcpdump; \
		patch -p1 < "../../$(TCPDUMP_PATCHES)"; \
		if [ -d win32/Include/Arpa -a ! -e win32/Include/arpa ]; then ln -s Arpa win32/Include/arpa; fi; \
		if [ -d win32/Include/Netinet -a ! -e win32/Include/netinet ]; then ln -s Netinet win32/Include/netinet; fi; \
		( echo '#include "config.h"'; cat missing/bittypes.h ) > missing/bittypes.h.new; \
		mv missing/bittypes.h.new missing/bittypes.h; \
		./configure --without-smi --disable-smb --enable-ipv6 --without-crypto --host=$(TOOLCHAIN) PCAP_CONFIG="$$(pwd)/../WpdPack/pcap-config" LIBS='-lws2_32' ac_cv_func_getnameinfo='yes'; \
		sed -i 's@Ws2tcpip\.h@ws2tcpip.h@' tcpdump-stdinc.h; \
		grep -v '^# *define.*UNALIGNED' tcpdump-stdinc.h | \
			grep -v '<net/netdb\.h>' > tcpdump-stdinc.h.new && mv tcpdump-stdinc.h.new tcpdump-stdinc.h; \
		echo '#define HAVE_SOCKADDR_STORAGE 1' >> config.h; \
		echo '#define HAVE_U_INT8_T 1' >> config.h; \
		echo '#define HAVE_U_INT16_T 1' >> config.h; \
................................................................................
		echo '#define HAVE_INT8_T 1' >> config.h; \
		echo '#define HAVE_INT16_T 1' >> config.h; \
		echo '#define HAVE_INT32_T 1' >> config.h; \
		echo '#define HAVE_INT64_T 1' >> config.h; \
		echo '#define HAVE_GENERATED_VERSION 1' >> config.h; \
		echo '#define IN6_IS_ADDR_UNSPECIFIED IN6_IS_ADDR_UNSPECIFIED' >> config.h; \
		echo '#undef HAVE_ALARM' >> config.h; \
		echo '#define getuid() 0' >> config.h; \
		echo '#define geteuid() 0' >> config.h; \
		grep -v '^# *define *inline' config.h > config.h.new && mv config.h.new config.h; \
		$(MAKE); \
	)
	@-mkdir -p files
	cp __TMP_TCP__/tcpdump/tcpdump files/tcpdump.exe.new
	$(TOOLCHAIN_CMD)strip files/tcpdump.exe.new
	mv files/tcpdump.exe.new files/tcpdump.exe
	rm -rf __TMP_TCP__

# TWAPI (TCL Windows API)
$(TWAPI_ZIP):
	@-mkdir -p archive >/dev/null 2>/dev/null
................................................................................
	gzip -dc "$(KITCREATOR_TARBALL).new" | tar -tf - >/dev/null
	mv "$(KITCREATOR_TARBALL).new" "$(KITCREATOR_TARBALL)"

tclkit-zip: $(KITCREATOR_TARBALL) tcpdump.rc icon/tcpdump.ico
	rm -rf kitcreator-$(KITCREATOR_VERSION)
	gzip -dc "$(KITCREATOR_TARBALL)" | tar -xf -
	cp icon/tcpdump.ico kitcreator-$(KITCREATOR_VERSION)/kit.ico
	sed 's/@@TCPDUMP_VERSION_COMMA@@/$(shell echo $(TCPDUMP_VERSION) | cut -f 1 -d - | sed 's@\.@,@g'),0/;s/@@TCPDUMP_VERSION@@/$(TCPDUMP_VERSION)/' tcpdump.rc > kitcreator-$(KITCREATOR_VERSION)/kit.rc
	cd kitcreator-$(KITCREATOR_VERSION) && KITCREATOR_PKGS=' ' AR=$(TOOLCHAIN_CMD)ar CC=$(TOOLCHAIN_CMD)gcc ./kitcreator 8.5.15 --host=$(TOOLCHAIN) --enable-kit-storage=zip --enable-threads
	cp kitcreator-$(KITCREATOR_VERSION)/tclkit-8.5.15 tclkit-zip.new
	mv tclkit-zip.new tclkit-zip
	rm -rf kitcreator-$(KITCREATOR_VERSION)

# The wrapper
## Split Tclkit header from zip file contents
................................................................................
	rm -rf kitcreator-$(KITCREATOR_VERSION)
	rm -rf __TMP_TCP__ __TMP_WPCAP__
	$(MAKE) -C icon clean

distclean: clean
	rm -f "$(TWAPI_ZIP)" "$(TCPDUMP_TARBALL)" "$(WINPCAP_DEV_ZIP)" "$(KITCREATOR_TARBALL)" "$(WINPCAP_INST_7ZIP)"
	rm -f "$(TWAPI_ZIP).new" "$(TCPDUMP_TARBALL).new" "$(WINPCAP_DEV_ZIP).new" "$(KITCREATOR_TARBALL).new" "$(WINPCAP_INST_7ZIP).new"
	rm -f "$(TCPDUMP_PATCHES).new" "$(TCPDUMP_PATCHES)"
	rm -f $(WINPCAP_INST_FILES)
	rm -f tclkit-zip files/tcpdump.exe
	-rmdir archive files

.PHONY: all clean distclean