summaryrefslogtreecommitdiff
path: root/Makefile.am
blob: 01fe1e408b49672eb3ad466a253312dccbaf2be9 (plain)
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
115
116
117
NULL =

SAFE_VERSION	= @XMLSEC_VERSION_SAFE@
SUBDIRS 	= include src apps man docs
TEST_APP 	= apps/xmlsec1
DEFAULT_CRYPTO	= @XMLSEC_CRYPTO@

bin_SCRIPTS 	= xmlsec1-config
pkgconfig_DATA 	= xmlsec1.pc @XMLSEC_CRYPTO_PC_FILES_LIST@
pkgconfigdir 	= $(libdir)/pkgconfig
confexecdir	= $(libdir)
confexec_DATA 	= xmlsec1Conf.sh

DISTCLEANFILES = \
	xmlsec1Conf.sh \
	xmlsec1.pc xmlsec1-openssl.pc xmlsec1-gnutls.pc xmlsec1-nss.pc \
	xmlsec1-config \
	xmlsec1.spec \
	stamp-h2 \
	stamp-h3 \
	stamp-h4 \
	$NULL

EXTRA_DIST = \
	examples \
	scripts \
	tests \
	win32 \
	NEWS \
	ChangeLog \
	Copyright \
	HACKING \
	xmlsec-openssl.pc.in xmlsec-gnutls.pc.in xmlsec-nss.pc.in\
	xmlsec-config.in \
	xmlsecConf.sh.in \
	xmlsec.spec.in \
	xmlsec1Conf.sh \
	xmlsec1.pc @XMLSEC_CRYPTO_PC_FILES_LIST@ \
	xmlsec1-config \
	xmlsec1.spec \
	$(NULL)

EXTRA_CLEAN = \
	examples \
	$(NULL)

xmlsec1.pc: xmlsec1-@XMLSEC_CRYPTO@.pc
	@(rm -f xmlsec1.pc && ln -s xmlsec1-@XMLSEC_CRYPTO@.pc xmlsec1.pc)

docs: docs-man
	@(cd docs; $(MAKE) docs)

docs-clean: 
	@(cd docs; $(MAKE) clean)

docs-man: 
	@(cd man;$(MAKE) docs)

check: check-info check-km check-dsig check-enc

check-info:
	@echo "-------------------------- ATTENTION -----------------------------------"
	@echo "--- 1) Some of the following tests use resources located on external ---"
	@echo "--- HTTP servers. If you have no Internet connection or the external ---"
	@echo "--- resource is not responding then the test will fail.              ---"
	@echo "--- 2) The test fails if corresponding feature(s) is disabled.       ---"
	@echo "--- Please, don't be surprised that many XML Encryption tests fails  ---"
	@echo "--- when you use OpenSSL 0.9.6 (see the FAQ for details)             ---"
	@echo "-------------------------- ATTENTION -----------------------------------"

reset-nss-db:
	@(ABS_BUILDDIR=`pwd`; cd $(top_srcdir);\
	if [ "z$(DEFAULT_CRYPTO)" = "znss" ] ; \
	then \
	    echo "Removing old nss db and replacing with a new one"; \
	    rm -rf ./tests/cert*.db ./tests/key*.db ./tests/secmod*.db; \
	    cp ./tests/nssdb/*.db ./tests; \
	fi)

check-km: $(TEST_APP) reset-nss-db
	@(ABS_BUILDDIR=`pwd`; cd $(top_srcdir); \
	$(SHELL) ./tests/testKeys.sh ./tests $$ABS_BUILDDIR/$(TEST_APP) der)

check-dsig: $(TEST_APP) reset-nss-db
	@(ABS_BUILDDIR=`pwd`; cd $(top_srcdir); \
	$(SHELL) ./tests/testDSig.sh ./tests $$ABS_BUILDDIR/$(top_builddir)/$(TEST_APP) der)

check-enc: $(TEST_APP) reset-nss-db
	@(ABS_BUILDDIR="`pwd`"; cd $(top_srcdir); \
	$(SHELL) ./tests/testEnc.sh ./tests $$ABS_BUILDDIR/$(TEST_APP) der)

memcheck-res:
	@grep -i lost /tmp/*.log | sed 's/==.*== *//' | sort -u
	@grep -i leak /tmp/*.log | sed 's/==.*== *//' | sort -u
	@grep -i 'in use' /tmp/*.log | sed 's/==.*== *//' | sort -u

memcheck: $(TEST_APP)
	@(export DEBUG_MEMORY=1;$(MAKE) check;$(MAKE) memcheck-res)

perfcheck: $(TEST_APP)
	@(export PERF_TEST=10;$(MAKE) check)

dist-hook:
	@(rm -rf `find $(distdir) -name CVS`)

cleantar:
	@(rm -f xmlsec*.tar.gz COPYING.LIB)

rpm: cleantar
	@(unset CDPATH ; $(MAKE) dist && rpmbuild -ta $(distdir).tar.gz)

tag-release:
	@cvs tag -F xmlsec-$(SAFE_VERSION) > /dev/null

rpm-release: clean cleantar rpm tag-release