summaryrefslogtreecommitdiffstats
path: root/Makefile.in
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile.in')
-rw-r--r--Makefile.in98
1 files changed, 70 insertions, 28 deletions
diff --git a/Makefile.in b/Makefile.in
index 1bdeb51..e991cce 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -329,7 +329,8 @@ TAGHDR = \
TAGFILES = $(SRC) $(HDR) $(TAGHDR) $(LIBNETDISSECT_SRC) \
print-smb.c smbutil.c
-CLEANFILES = $(PROG) $(OBJ) $(LIBNETDISSECT_OBJ) print-smb.o smbutil.o
+CLEANFILES = $(PROG) $(OBJ) $(LIBNETDISSECT_OBJ) \
+ print-smb.o smbutil.o instrument-functions.o
EXTRA_DIST = \
CHANGES \
@@ -343,6 +344,7 @@ EXTRA_DIST = \
README.md \
VERSION \
aclocal.m4 \
+ autogen.sh \
atime.awk \
bpf_dump.c \
cmake/Modules/FindCRYPTO.cmake \
@@ -351,15 +353,15 @@ EXTRA_DIST = \
cmake_uninstall.cmake.in \
cmakeconfig.h.in \
config.guess \
- config.h.in \
config.sub \
- configure \
configure.ac \
doc/README.aix.md \
+ doc/README.haiku.md \
doc/README.NetBSD.md \
doc/README.solaris.md \
- doc/README.Win32.md \
+ doc/README.windows.md \
install-sh \
+ instrument-functions.c \
lbl/os-osf4.h \
lbl/os-solaris2.h \
lbl/os-sunos4.h \
@@ -384,7 +386,7 @@ EXTRA_DIST = \
stime.awk \
tcpdump.1.in
-TEST_DIST= `git ls-files tests | grep -v 'tests/\..*'`
+TEST_DIST= `git -C "$$DIR" ls-files tests | grep -v 'tests/\..*'`
RELEASE_FILES = $(CSRC) $(HDR) $(LIBNETDISSECT_SRC) $(EXTRA_DIST) $(TEST_DIST)
@@ -440,10 +442,11 @@ lint:
grep -v 'possible pointer alignment problem'
clean:
- rm -f $(CLEANFILES) $(PROG)-`cat ${srcdir}/VERSION`.tar.gz
+ rm -f $(CLEANFILES) $(PROG)-`cat ${srcdir}/VERSION`.tar.gz \
+ config.h.in~ configure~ configure.ac~
-distclean:
- rm -f $(CLEANFILES) Makefile config.cache config.log config.status \
+distclean: clean
+ rm -f Makefile config.cache config.log config.status \
config.h os-proto.h stamp-h stamp-h.in $(PROG).1 \
libnetdissect.a tests/.failed tests/.passed \
tests/failure-outputs.txt
@@ -461,17 +464,52 @@ tags: $(TAGFILES)
TAGS: $(TAGFILES)
etags $(TAGFILES)
+#
+# Use git archive piped to tar to construct a subdirectory whose name
+# is tcpdump-{release}, containing all the checked-in source files,
+# and then run autoreconf in that directory to generate the configure
+# script and other files from that source. Then remove autom4te.cache,
+# construct the release tarball from that subdirectory, and remove
+# the subdirectory.
+#
+# The --format=tar is to force git archive to write a non-compressed
+# archive, in case the platform's tar command doesn't have built-in
+# decompression.
+#
+# The ^{tree} is there to force git archive not to write out the
+# "helpful" global extended pax header with a commit ID, as not all
+# versions of tar can handle that (Solaris tar can't, for example).
+# (It turns HEAD, or a tag, both of which are apparently "tree-ish"es,
+# into a tree; apparently, unlike HEAD, or a tag, which have a commit
+# ID associated with them, the tree associated with them doesn't have
+# a commit ID, so no commit ID is available to write, and thus
+# git archive doesn't write one.)
+#
releasetar:
@TAG=$(PROG)-`cat VERSION` && \
- if git show-ref --tags --quiet --verify -- "refs/tags/$$TAG"; then \
- git archive --prefix="$$TAG"/ -o "$$TAG".tar.gz "$$TAG" \
- $(RELEASE_FILES) && \
+ if [ ! -d .git ]; then echo 'Not in a git clone, stop.'; exit 1; fi && \
+ TMPTESTFILE=`mktemp -t tmptestfile_XXXXXXXX` && \
+ rm -f "$$TMPTESTFILE" && \
+ AUTORECONF_DIR=`dirname "$$TMPTESTFILE"`/"$(PROG)"_build_autoreconf_$$$$ && \
+ DIR=`pwd` && \
+ rm -rf "$$AUTORECONF_DIR" && \
+ mkdir "$$AUTORECONF_DIR" && \
+ cd "$$AUTORECONF_DIR" && \
+ if git -C "$$DIR" show-ref --tags --quiet --verify -- "refs/tags/$$TAG"; then \
+ (git -C "$$DIR" archive --format=tar --prefix="$$TAG"/ "$$TAG^{tree}" $(RELEASE_FILES) | \
+ tar xf -) && \
echo "Archive build from tag $$TAG."; \
else \
- git archive --prefix="$$TAG"/ -o "$$TAG".tar.gz HEAD \
- $(RELEASE_FILES) && \
+ (git -C "$$DIR" archive --format=tar --prefix="$$TAG"/ "HEAD^{tree}" $(RELEASE_FILES) | \
+ tar xf -) && \
echo "No $$TAG tag. Archive build from HEAD."; \
- fi
+ fi && \
+ (cd "$$TAG" && "$${AUTORECONF:-autoreconf}" && rm -rf autom4te.cache) && \
+ tar cf "$$DIR/$$TAG".tar "$$TAG" && \
+ rm -f "$$DIR/$$TAG".tar.gz && \
+ gzip --best "$$DIR/$$TAG".tar && \
+ cd "$$DIR" && \
+ rm -rf "$$AUTORECONF_DIR"
releasecheck: releasetar
@TAG=$(PROG)-`cat VERSION` && \
@@ -482,17 +520,21 @@ releasecheck: releasetar
rm -rf "$$INSTALL_DIR" && \
tar xf "$$DIR"/"$$TAG".tar.gz && \
cd "$$TAG" && \
- echo "[$@] $$ ./configure --enable-smb --quiet --prefix=$$INSTALL_DIR" && \
- ./configure --enable-smb --quiet --prefix="$$INSTALL_DIR" && \
- echo '[$@] $$ make -s all check' && \
- make -s all check >/dev/null && \
- echo '[$@] $$ make -s install' && \
- make -s install && \
+ echo "[$@] $$ touch .devel" && \
+ touch .devel && \
+ echo "[$@] $$ ./configure --enable-instrument-functions --enable-smb --quiet --prefix=$$INSTALL_DIR" && \
+ ./configure --enable-instrument-functions --enable-smb --quiet --prefix="$$INSTALL_DIR" && \
+ echo '[$@] $$ $(MAKE) -s all check' && \
+ $(MAKE) -s all check >/dev/null && \
+ echo '[$@] $$ $(MAKE) -s install' && \
+ $(MAKE) -s install && \
cd .. && \
rm -rf "$$TAG" && \
rm -rf "$$INSTALL_DIR" && \
tar xf "$$DIR"/"$$TAG".tar.gz && \
cd "$$TAG" && \
+ echo "[$@] $$ touch .devel" && \
+ touch .devel && \
mkdir build && \
cd build && \
echo '[$@] $$ cmake -DENABLE_SMB=yes [...] ..' && \
@@ -502,10 +544,10 @@ releasecheck: releasetar
-DCMAKE_RULE_MESSAGES=OFF \
-DCMAKE_INSTALL_MESSAGE=NEVER \
.. && \
- echo '[$@] $$ make -s all check' && \
- make -s all check >/dev/null && \
- echo '[$@] $$ make -s install' && \
- make -s install && \
+ echo '[$@] $$ $(MAKE) -s all check' && \
+ $(MAKE) -s all check >/dev/null && \
+ echo '[$@] $$ $(MAKE) -s install' && \
+ $(MAKE) -s install && \
cd ../.. && \
rm -rf "$$TAG" && \
rm -rf "$$INSTALL_DIR" && \
@@ -518,8 +560,7 @@ whitespacecheck:
exit 1; \
fi
@# trailing tab(s)?
- @# install-sh has a tab at the end of one line
- @if git grep -I -n ' $$' $$(git ls-files|grep -vE '^(tests/|install-sh$$)'); then \
+ @if git grep -I -n ' $$' $$(git ls-files|grep -v '^tests/'); then \
echo 'Error: Trailing tabs(s).'; \
exit 1; \
fi
@@ -533,7 +574,8 @@ testlist:
echo $(TEST_DIST)
depend:
- $(MKDEP) -c "$(CC)" -m "$(DEPENDENCY_CFLAG)" -s "$(srcdir)" $(DEFS) $(INCLS) $(SRC) $(LIBNETDISSECT_SRC)
+ @echo $(MKDEP) -c $(CC) -m "$(DEPENDENCY_CFLAG)" -s "$(srcdir)" $(DEFS) $(INCLS) $(SRC) '<libnetdissect src list>'
+ @$(MKDEP) -c $(CC) -m "$(DEPENDENCY_CFLAG)" -s "$(srcdir)" $(DEFS) $(INCLS) $(SRC) $(LIBNETDISSECT_SRC)
shellcheck:
- shellcheck -f gcc -e SC2006 build.sh build_matrix.sh build_common.sh
+ shellcheck -f gcc -e SC2006 autogen.sh build.sh build_matrix.sh build_common.sh mkdep .ci-coverity-scan-build.sh