don't fail if BR2_USE_UPDATES tries to update non-checkout
[buildroot.git] / package / vsftpd / vsftpd.mk
blob1d525d4769a655c532cdf2ff05b3f4f67825e00f
1 #############################################################
3 # vsftpd
5 #############################################################
6 VSFTPD_VERSION:=2.0.5
7 VSFTPD_SOURCE:=vsftpd-$(VSFTPD_VERSION).tar.gz
8 VSFTPD_SITE:=ftp://vsftpd.beasts.org/users/cevans
9 VSFTPD_DIR:=$(BUILD_DIR)/vsftpd-$(VSFTPD_VERSION)
10 VSFTPD_CAT:=$(ZCAT)
11 VSFTPD_BINARY:=vsftpd
13 ifeq ($(BR2_PACKAGE_OPENSSL),y)
14 VSFTPF_PREREQ:=openssl
15 endif
16 ifeq ($(BR2_LARGEFILE),)
17 #BR2_VSFTPD_CFLAGS:=-U_LARGEFILE64_SOURCE -U_FILE_OFFSET_BITS
18 endif
20 $(DL_DIR)/$(VSFTPD_SOURCE):
21 $(WGET) -P $(DL_DIR) $(VSFTPD_SITE)/$(VSFTPD_SOURCE)
23 vsftpd-source: $(DL_DIR)/$(VSFTPD_SOURCE)
25 $(VSFTPD_DIR)/.unpacked: $(DL_DIR)/$(VSFTPD_SOURCE)
26 $(VSFTPD_CAT) $(DL_DIR)/$(VSFTPD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
27 toolchain/patch-kernel.sh $(VSFTPD_DIR) package/vsftpd/ vsftpd\*.patch
28 touch $(VSFTPD_DIR)/.unpacked
30 $(VSFTPD_DIR)/.configured: $(VSFTPD_DIR)/.unpacked
31 ifeq ($(BR2_PACKAGE_OPENSSL),y)
32 $(SED) 's,#undef[[:space:]]*VSF_BUILD_SSL.*,#define VSF_BUILD_SSL,g' $(VSFTPD_DIR)/builddefs.h
33 else
34 $(SED) 's,#define[[:space:]]*VSF_BUILD_SSL.*,#undef VSF_BUILD_SSL,g' $(VSFTPD_DIR)/builddefs.h
35 endif
36 ifneq ($(findstring uclibc,$(BR2_GNU_TARGET_SUFFIX)),)
37 $(SED) 's,#define[[:space:]]*VSF_BUILDDEFS_H.*,#define VSF_BUILDDEFS_H\n#define __UCLIBC__,g' $(VSFTPD_DIR)/builddefs.h
38 $(SED) 's,.*__UCLIBC_HAS_LFS__.*,,g' $(VSFTPD_DIR)/builddefs.h
39 ifeq ($(BR2_LARGEFILE),y)
40 $(SED) 's,#define[[:space:]]*VSF_BUILDDEFS_H.*,#define VSF_BUILDDEFS_H\n#define __UCLIBC_HAS_LFS__,g' $(VSFTPD_DIR)/builddefs.h
41 endif
42 else # not uclibc
43 $(SED) 's,.*__UCLIBC_.*,,g' $(VSFTPD_DIR)/builddefs.h
44 endif
47 $(VSFTPD_DIR)/$(VSFTPD_BINARY): $(VSFTPF_PREREQ) $(VSFTPD_DIR)/.configured
48 $(MAKE) CC=$(TARGET_CC) CFLAGS="$(TARGET_CFLAGS) $(BR2_VSFTPD_CFLAGS)" -C $(VSFTPD_DIR)
50 $(TARGET_DIR)/usr/sbin/$(VSFTPD_BINARY): $(VSFTPD_DIR)/$(VSFTPD_BINARY)
51 cp -dpf $< $@
53 vsftpd: libgmp $(TARGET_DIR)/$(VSFTPD_TARGET_BINARY)
55 vsftpd-clean:
56 -$(MAKE) -C $(VSFTPD_DIR) clean
57 rm -f $(TARGET_DIR)/usr/sbin/$(VSFTPD_BINARY)
59 vsftpd-dirclean:
60 rm -rf $(VSFTPD_DIR)
62 #############################################################
64 # Toplevel Makefile options
66 #############################################################
67 ifeq ($(BR2_PACKAGE_VSFTPD),y)
68 TARGETS+=vsftpd
69 endif