Fix the various '-clean' targets so that they don't fail if the source has not
[buildrom.git] / buildrom-devel / packages / mkelfimage / mkelfimage.mk
blob4d33f07ac93bd9d3f1d0a8fdc9065a99a943da72
1 MKELFIMAGE_URL=ftp://ftp.lnxi.com/pub/mkelfImage/
2 MKELFIMAGE_SOURCE=mkelfImage-2.7.tar.gz
3 MKELFIMAGE_DIR=$(BUILD_DIR)/mkelfimage
4 MKELFIMAGE_SRC_DIR=$(MKELFIMAGE_DIR)/mkelfImage-2.7
5 MKELFIMAGE_STAMP_DIR=$(MKELFIMAGE_DIR)/stamps
6 MKELFIMAGE_LOG_DIR=$(MKELFIMAGE_DIR)/logs
7 MKELFIMAGE_PATCHES=$(PACKAGE_DIR)/mkelfimage/mkelfImage-2.7-x86_64.patch
8 MKELFIMAGE_PATCHES+=$(PACKAGE_DIR)/mkelfimage/mkelfimage-autoconf.patch
10 ifeq ($(CONFIG_VERBOSE),y)
11 MKELFIMAGE_BUILD_LOG=/dev/stdout
12 MKELFIMAGE_CONFIG_LOG=/dev/stdout
13 else
14 MKELFIMAGE_BUILD_LOG=$(MKELFIMAGE_LOG_DIR)/build.log
15 MKELFIMAGE_CONFIG_LOG=$(MKELFIMAGE_LOG_DIR)/config.log
16 endif
18 $(MKELFIMAGE_STAMP_DIR) $(MKELFIMAGE_LOG_DIR):
19 @ mkdir -p $@
21 $(SOURCE_DIR)/$(MKELFIMAGE_SOURCE):
22 @ mkdir -p $(SOURCE_DIR)
23 @ wget -P $(SOURCE_DIR) $(MKELFIMAGE_URL)/$(MKELFIMAGE_SOURCE)
25 $(MKELFIMAGE_STAMP_DIR)/.unpacked: $(SOURCE_DIR)/$(MKELFIMAGE_SOURCE) | $(MKELFIMAGE_STAMP_DIR) $(MKELFIMAGE_LOG_DIR)
26 @ echo "Unpacking mkelfimage..."
27 @ tar -C $(MKELFIMAGE_DIR) -zxf $(SOURCE_DIR)/$(MKELFIMAGE_SOURCE)
28 @ touch $@
30 $(MKELFIMAGE_STAMP_DIR)/.patched: $(MKELFIMAGE_STAMP_DIR)/.unpacked
31 @ echo "Patching mkelfimage..."
32 @ $(BIN_DIR)/doquilt.sh $(MKELFIMAGE_SRC_DIR) $(MKELFIMAGE_PATCHES)
33 @ touch $@
35 $(MKELFIMAGE_STAMP_DIR)/.configured: $(MKELFIMAGE_STAMP_DIR)/.patched
36 @ ( export CC=$(HOST_CC); export HOST_CFLAGS="$(HOST_CFLAGS)"; \
37 export I386_CFLAGS="$(HOST_CFLAGS)"; \
38 export LDFLAGS=$(HOST_LDFLAGS); unset LIBS; \
39 cd $(MKELFIMAGE_SRC_DIR); ./configure \
40 --with-i386 --without-ia64 > $(MKELFIMAGE_CONFIG_LOG) 2>&1 )
41 @ touch $@
43 $(MKELFIMAGE_SRC_DIR)/objdir/sbin/mkelfImage: $(MKELFIMAGE_STAMP_DIR)/.configured
44 @ echo "Building mkelfImage..."
45 @ $(MAKE) -C $(MKELFIMAGE_SRC_DIR) all > $(MKELFIMAGE_BUILD_LOG) 2>&1
47 $(STAGING_DIR)/sbin/mkelfImage: $(MKELFIMAGE_SRC_DIR)/objdir/sbin/mkelfImage
48 @ install -d $(STAGING_DIR)/sbin
49 @ install -m 0755 $< $@
51 mkelfimage: $(STAGING_DIR)/sbin/mkelfImage
53 mkelfimage-clean:
54 ifneq ($(wildcard "$(MKELFIMAGE_SRC_DIR)/Makefile"),)
55 $(MAKE) -C $(MKELFIMAGE_SRC_DIR) clean
56 endif
58 mkelfimage-distclean:
59 @ rm -rf $(MKELFIMAGE_DIR)/*
61 mkelfimage-bom:
62 echo "Package: mkelfimage"
63 echo "Source: $(MKELFIMAGE_URL)/$(MKELFIMAGE_SOURCE)"
64 echo ""
66 mkelfimage-extract: $(MKELFIMAGE_STAMP_DIR)/.patched