4 DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH)
5 DEB_BUILD_ARCH := $(shell dpkg-architecture -qDEB_BUILD_ARCH)
6 SOURCE := $(shell dpkg-parsechangelog | sed -ne 's,^Source: *\(.*\)$$,\1,p')
7 VERSION_DEBIAN := $(shell dpkg-parsechangelog | sed -ne 's,^Version: *\(.*\)$$,\1,p')
8 VERSION := $(shell echo "$(VERSION_DEBIAN)" | sed -e 's,^[^:]*:,,' -e 's,-[^-]*$$,,')
10 BUILD_DIR = debian/build
11 STAMPS_DIR = debian/stamps
13 ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
16 ifneq (,$(findstring thumb,$(DEB_BUILD_OPTIONS)))
20 ifneq (,$(findstring parallel,$(DEB_BUILD_OPTIONS)))
21 PARALLEL_JOBS := $(shell echo $(DEB_BUILD_OPTIONS) | \
22 sed -e 's/.*parallel=\([0-9]\+\).*/\1/')
23 ifeq ($(DEB_BUILD_OPTIONS),$(PARALLEL_JOBS))
24 PARALLEL_JOBS := $(shell if [ -f /proc/cpuinfo ]; \
25 then echo `cat /proc/cpuinfo | grep 'processor' | wc -l`; \
28 NJOBS := -j$(PARALLEL_JOBS)
31 source: $(STAMPS_DIR)/source
33 $(STAMPS_DIR)/source: SOURCE_FILES = $(filter-out debian, $(wildcard * .[^.]*))
34 $(STAMPS_DIR)/source: DIR = $(BUILD_DIR)/source
38 mkdir -p $(STAMPS_DIR) '$(DIR)'
39 cp -al $(SOURCE_FILES) '$(DIR)'
40 cd $(DIR); QUILT_PATCHES=$(CURDIR)/debian/patches quilt --quiltrc /dev/null push -a || test $$? = 2
43 setup: $(STAMPS_DIR)/setup_busybox
45 $(STAMPS_DIR)/setup_%: SOURCE_DIR=$(BUILD_DIR)/source
46 $(STAMPS_DIR)/setup_%: DIR=$(BUILD_DIR)/build_$*
47 $(STAMPS_DIR)/setup_%: $(STAMPS_DIR)/source
50 cp -al '$(SOURCE_DIR)' '$(DIR)'
51 cp debian/config/config.$* '$(DIR)'/.config
52 make -C '$(DIR)' oldconfig
55 build: $(STAMPS_DIR)/build_busybox
57 $(STAMPS_DIR)/build_%: DIR=$(BUILD_DIR)/build_$*
58 $(STAMPS_DIR)/build_%: $(STAMPS_DIR)/setup_%
60 make -C '$(DIR)' $(NJOBS) THUMB=$(THUMB) busybox docs/busybox.1 BB_EXTRA_VERSION="$(shell lsb_release -is) $(VERSION_DEBIAN)"
61 make -C '$(DIR)' busybox.links
64 $(BUILD_DIR) $(STAMPS_DIR):
65 @[ -d $@ ] || mkdir $@
68 rm -rf $(filter-out .svn debian, $(wildcard * .[^.]*))
72 rm -rf $(BUILD_DIR) $(STAMPS_DIR)
77 binary-arch: binary-arch_busybox binary-arch_all
79 binary-arch_busybox: DIR = $(BUILD_DIR)/build_busybox
80 binary-arch_busybox: DH_OPTIONS = -pbusybox-power
81 binary-arch_busybox: $(STAMPS_DIR)/build_busybox
85 install -D -m644 debian/scripts/applets debian/busybox-power/opt/busybox-power/applets
86 install -D -m755 debian/scripts/install-binary.sh debian/busybox-power/opt/busybox-power/install-binary.sh
87 install -D -m755 debian/scripts/uninstall-binary.sh debian/busybox-power/opt/busybox-power/uninstall-binary.sh
88 install -D -m755 $(DIR)/busybox_unstripped debian/busybox-power/opt/busybox-power/busybox.power
92 dh_installdocs -pbusybox-power
93 dh_installchangelogs -pbusybox-power
94 dh_strip -pbusybox-power
95 dh_compress -pbusybox-power
101 dh_shlibdeps -pbusybox-power
106 binary: binary-indep binary-arch
108 DIR_ORIG = ../orig/$(SOURCE)-$(VERSION)
109 TAR_ORIG_NAME = $(SOURCE)_$(VERSION).orig.tar.gz
110 TAR_ORIG = $(firstword $(wildcard ../$(TAR_ORIG_NAME)) $(wildcard ../orig/$(TAR_ORIG_NAME)))
113 rsync --delete --exclude debian --exclude .svk --exclude .svn --link-dest=$(DIR_ORIG)/ -a $(DIR_ORIG)/ .
117 $(error Cannot find orig tarball $(TAR_ORIG_NAME))
120 tar -C ../orig -xzf $(TAR_ORIG)