1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
nacl:
$(Q)echo "$(bold)$(WHAT) $@:$(normal)"
$(Q)cd curvetun/ && ./nacl_build.sh ~/nacl
$(Q)source ~/.bashrc
tarball.gz: ; $(call GIT_ARCHIVE,gzip,gz)
tarball.bz2: ; $(call GIT_ARCHIVE,bzip2,bz2)
tarball.xz: ; $(call GIT_ARCHIVE,xz,xz)
tarball: tarball.gz tarball.bz2 tarball.xz
tag:
$(GIT_TAG)
people:
$(GIT_PEOPLE)
log:
$(GIT_LOG)
announcement:
$(Q)echo -e " *** BLURB HERE (general bits, optional) ***\n\n---\n" > .MAIL_MSG
$(Q)echo -e "netsniff-ng $(VERSION_SHORT) has been released to the public (http://netsniff-ng.org/).\n" >> .MAIL_MSG
$(Q)echo -e "It can be fetched via Git:\n" >> .MAIL_MSG
$(Q)echo -e " git clone git://github.com/borkmann/netsniff-ng.git" >> .MAIL_MSG
$(Q)echo -e " git checkout v$(VERSION_SHORT)\n" >> .MAIL_MSG
$(Q)echo -e "Or via HTTP:\n" >> .MAIL_MSG
$(Q)echo -e " wget http://pub.netsniff-ng.org/netsniff-ng/netsniff-ng-$(VERSION_SHORT).tar.gz\n" >> .MAIL_MSG
$(Q)echo -e "The release can be verified via Git (see README):\n" >> .MAIL_MSG
$(Q)echo -e " git tag -v v$(VERSION_SHORT)\n" >> .MAIL_MSG
$(Q)echo -e "Major high-level changes since the last release are:\n" >> .MAIL_MSG
$(Q)echo -e " *** BLURB HERE (specific bits) ***\n" >> .MAIL_MSG
$(Q)echo -e "Contributions since last release:\n" >> .MAIL_MSG
$(GIT_PEOPLE) >> .MAIL_MSG
$(Q)echo -e "\nGit changelog since last release:\n" >> .MAIL_MSG
$(GIT_LOG) >> .MAIL_MSG
sign:
$(call GPG_SIGN,gz)
$(call GPG_SIGN,bz2)
$(call GPG_SIGN,xz)
release: tag announcement tarball sign
$(Q)echo "Released $(bold)$(VERSION_SHORT)$(normal)"
FIND_SOURCE_FILES = ( git ls-files '*.[hcS]' 2>/dev/null || \
find . \( -name .git -type d -prune \) \
-o \( -name '*.[hcS]' -type f -print \) )
tags ctags:
$(Q)$(call RM,tags)
$(FIND_SOURCE_FILES) | xargs ctags -a
cscope:
$(Q)$(call RM,cscope*)
$(FIND_SOURCE_FILES) | xargs cscope -b
# these need to be specified on the command line
COV_EMAIL =
COV_PASSWD =
coverity:
$(Q)test -n "$(COV_EMAIL)" || (echo "COV_EMAIL not set" && false)
$(Q)test -n "$(COV_PASSWD)" || (echo "COV_PASSWD not set" && false)
$(Q)$(MAKE) distclean
$(Q)$(call RM,cov-int)
$(Q)$(call MKDIR,cov-int)
$(Q)./configure
$(Q)cov-build --dir cov-int $(MAKE) CCACHE=
$(Q)tar czvf netsniff-ng-coverity.tgz cov-int
$(Q)echo "Uploading snapshot to Coverity scanner"
$(Q)curl --form file=@netsniff-ng-coverity.tgz --form project=netsniff-ng \
--form password=$(COV_PASSWD) --form email=$(COV_EMAIL) \
--form version=`$(GIT_VERSION)` http://scan5.coverity.com/cgi-bin/upload.py
help:
$(Q)echo "$(bold)Available tools from the toolkit:$(normal)"
$(Q)echo " <tool>:={$(TOOLS)}"
$(Q)echo "$(bold)Targets for building the toolkit:$(normal)"
$(Q)echo " all|toolkit - Build the whole toolkit"
$(Q)echo " allbutcurvetun - Build all except curvetun"
$(Q)echo " allbutmausezahn - Build all except mausezahn"
$(Q)echo " <tool> - Build only one of the tools"
$(Q)echo "$(bold)Targets for cleaning the toolkit's build files:$(normal)"
$(Q)echo " clean - Remove all build files"
$(Q)echo " <tool>_clean - Remove only one of the tool's files"
$(Q)echo " distclean - Remove all build and build config files"
$(Q)echo " mrproper - Remove all files not in source distribution"
$(Q)echo "$(bold)Targets for installing the toolkit:$(normal)"
$(Q)echo " install - Install the whole toolkit"
$(Q)echo " <tool>_install - Install only one of the tools"
$(Q)echo "$(bold)Targets for removing the toolkit:$(normal)"
$(Q)echo " uninstall - Remove the whole toolkit from the system"
$(Q)echo " <toolname>_uninstall - Remove only one of the tools"
$(Q)echo "$(bold)Hacking/development targets:$(normal)"
$(Q)echo " tag - Generate Git tag of current version"
$(Q)echo " tarball - Generate tarball of latest version"
$(Q)echo " release - Generate a new release"
$(Q)echo " tags - Generate sparse ctags"
$(Q)echo " cscope - Generate cscope files"
$(Q)echo "$(bold)Misc targets:$(normal)"
$(Q)echo " nacl - Execute the build_nacl script"
$(Q)echo " help - Show this help"
$(Q)echo "$(bold)Available parameters:$(normal)"
$(Q)echo " DEBUG=1 / DISTRO=1 - Enable debugging / Build for distros"
$(Q)echo " HARDENING=1 - Enable GCC hardening of executables"
$(Q)echo " PREFIX=/path - Install path prefix"
$(Q)echo " CROSS_COMPILE=/path-prefix - Kernel-like cross-compiling prefix"
$(Q)echo " CROSS_LD_LIBRARY_PATH=/path - Library search path for cross-compiling"
$(Q)echo " CC=cgcc - Use sparse compiler wrapper"
$(Q)echo " CFLAGS=\"-O2 -Wall ...\" - Overwrite CFLAGS for compilation"
$(Q)echo " CPPFLAGS=\"-I <path> ...\" - Additional CFLAGS for compilation"
$(Q)echo " LDFLAGS=\"-L <path> ...\" - Additional LDFLAGS for compilation"
$(Q)echo " CCACHE= - Do not use ccache for compilation"
$(Q)echo " Q= - Show verbose garbage"
|