2
# Separate tarball/patch build system by Adam Heath <doogie@debian.org>
3
# Modified by Ben Collins <bcollins@debian.org>
6
SOURCE_DIR := build-tree
8
PATCH_DIR := debian/patches
10
patched := $(STAMP_DIR)/patch
11
unpacked := $(STAMP_DIR)/unpack
14
BUILD_TREE := $(SOURCE_DIR)/$(TAR_DIR)
16
BUILD_TREE := $(SOURCE_DIR)
19
dh_mak_deps := $(shell DH_COMPAT=$(DH_COMPAT) perl debian/scripts/dh_split makedeps)
20
dh_gen_deps := $(shell DH_COMPAT=$(DH_COMPAT) perl debian/scripts/dh_split gendeps)
22
$(dh_mak_deps): $(dh_gen_deps)
23
perl debian/scripts/dh_split
28
$(MAKE) -f debian/rules $(unpacked) $(patched)
30
$(patched)/: $(STAMP_DIR)/created $(unpacked)
31
test -d $(STAMP_DIR)/patches || mkdir -p $(STAMP_DIR)/patches
32
@if [ -d "$(PATCH_DIR)" ]; then \
33
mkdir -p $(STAMP_DIR)/log/patches; \
34
for f in `(cd $(PATCH_DIR); find -type f ! -name 'chk-*') | sort | \
36
stampfile=$(STAMP_DIR)/patches/$$f; \
37
log=$(STAMP_DIR)/log/patches/$$f; \
38
if [ ! -e $$stampfile ]; then \
39
echo -n "Applying patch $(PATCH_DIR)/$$f ... "; \
40
if $(SHELL) debian/scripts/file2cat $(PATCH_DIR)/$$f | \
41
(cd $(BUILD_TREE);patch -p1 --no-backup-if-mismatch) > $$log 2>&1; then \
45
echo "failed! (check $$log for reason)"; \
49
echo Already applied $(PATCH_DIR)/$$f.; \
55
$(unpacked): $(STAMP_DIR)/created
56
mkdir -p $(STAMP_DIR)/sources $(SOURCE_DIR) $(STAMP_DIR)/log/sources
57
@for f in `find . -type f -maxdepth 1 -name \*.tgz -o -name \*.tar.gz -o \
58
-name \*.tar.bz -o -name \*.tar.bz2 | sort | sed s,'./',,g`; do \
59
stampfile=$(STAMP_DIR)/sources/`basename $$f`; \
60
log=$(STAMP_DIR)/log/sources/`basename $$f`; \
61
if [ ! -e $$stampfile ]; then \
62
echo -n "Extracting source $$f ... "; \
63
if $(SHELL) debian/scripts/file2cat $$f | \
64
(cd $(SOURCE_DIR); tar xv) > $$log 2>&1; then \
72
echo Already unpacked $$f.; \
78
mv $(BUILD_TREE) $(BUILD_TREE).new
80
$(MAKE) -f debian/rules $(unpacked) $(patched)
82
diff -urN $(BUILD_TREE) $(BUILD_TREE).new > new.diff
84
(cd $(SOURCE_DIR) && diff -urN $(TAR_DIR) $(TAR_DIR).new || true) > new.diff
87
mv $(BUILD_TREE).new $(BUILD_TREE)
91
test -d $(STAMP_DIR) || mkdir $(STAMP_DIR)
92
touch $(STAMP_DIR)/created