3
# Base definitions and rules
4
include $(XEN_ROOT)/tools/vtpm/Rules.mk
6
# Dir name for emulator (as dom0 tpm driver)
7
TPM_EMULATOR_DIR = tpm_emulator
8
# Dir name for vtpm instance
12
# Emulator tarball name
13
TPM_EMULATOR_NAME = tpm_emulator-0.5.1
14
TPM_EMULATOR_TARFILE = $(TPM_EMULATOR_NAME).tar.gz
16
GMP_HEADER = /usr/include/gmp.h
26
$(MAKE) -C $(VTPM_DIR) $@
30
@if [ -d $(TPM_EMULATOR_DIR) ]; \
31
then $(MAKE) -C $(TPM_EMULATOR_DIR) clean; \
33
@if [ -d $(VTPM_DIR) ]; \
34
then $(MAKE) -C $(VTPM_DIR) clean; \
39
rm -f $(TPM_EMULATOR_TARFILE) tpm_emulator.patch.old vtpm.patch.old
40
rm -rf $(TPM_EMULATOR_DIR) $(VTPM_DIR) $(ORIG_DIR)
42
# Download Swiss emulator
43
$(TPM_EMULATOR_TARFILE):
44
wget http://download.berlios.de/tpm-emulator/$(TPM_EMULATOR_TARFILE)
47
$(VTPM_DIR)/tpmd/tpmd: $(TPM_EMULATOR_TARFILE) vtpm-0.5.1.patch
49
tar -xzf $(TPM_EMULATOR_TARFILE)
50
mv $(TPM_EMULATOR_NAME) $(VTPM_DIR)
52
set -e; cd $(VTPM_DIR); \
53
patch -p1 < ../vtpm-0.5.1.patch
55
orig: $(TPM_EMULATOR_TARFILE)
57
set -e; cd $(ORIG_DIR); \
58
tar -xzf ../$(TPM_EMULATOR_TARFILE);
60
updatepatches: clean orig
61
find $(VTPM_DIR) -name "*.orig" -print | xargs rm -f;
62
mv vtpm.patch vtpm.patch.old;
63
diff -uprN $(TPM_EMULATOR_DIR) $(VTPM_DIR) > vtpm.patch || true;
66
build_sub: $(VTPM_DIR)/tpmd/tpmd
67
set -e; if [ -e $(GMP_HEADER) ]; then \
68
$(MAKE) -C $(VTPM_DIR); \
70
echo "=== Unable to build VTPMs. libgmp could not be found."; \