summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGES2
-rw-r--r--package/proftpd/Config.in1
-rw-r--r--package/proftpd/proftpd-1.3.1-fix-kernel-header-capability-version.patch12
-rw-r--r--package/proftpd/proftpd-1.3.3b-fix-kernel-header-capability-version.patch12
-rw-r--r--package/proftpd/proftpd.mk83
5 files changed, 35 insertions, 75 deletions
diff --git a/CHANGES b/CHANGES
index 889f78737..1fdca976f 100644
--- a/CHANGES
+++ b/CHANGES
@@ -44,7 +44,7 @@
mtd-utils, mysql_client, nano, nbd, ncftp, neon, netperf,
netsnmp, ng-spice-rework, ntfsprogs, ntp, openntpd, openssh,
openssl, openvpn, oprofile, pango, patch, pcre, php,
- pkg-config, portmap, pppd, pptp-linux, prboom, radvd,
+ pkg-config, portmap, pppd, pptp-linux, prboom, proftpd, radvd,
rdesktop, readline, rp-pppoe, ruby, qt, quagga, samba, sawman,
sdl_mixer, sdl_sound, setserial, shared-mime-info, speex,
sqlite, squashfs, startup-notification, strace, sylpheed,
diff --git a/package/proftpd/Config.in b/package/proftpd/Config.in
index d495643d9..abdedc9e5 100644
--- a/package/proftpd/Config.in
+++ b/package/proftpd/Config.in
@@ -3,3 +3,4 @@ config BR2_PACKAGE_PROFTPD
help
ProFTPD, a highly configurable FTP server.
+ http://www.proftpd.org/
diff --git a/package/proftpd/proftpd-1.3.1-fix-kernel-header-capability-version.patch b/package/proftpd/proftpd-1.3.1-fix-kernel-header-capability-version.patch
deleted file mode 100644
index 2899c7f6b..000000000
--- a/package/proftpd/proftpd-1.3.1-fix-kernel-header-capability-version.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/lib/libcap/libcap.h 2008-04-24 19:46:29.475883739 +0200
-+++ b/lib/libcap/libcap.h 2008-04-24 19:48:31.116088563 +0200
-@@ -52,7 +52,8 @@
- */
-
- #if !defined(_LINUX_CAPABILITY_VERSION) || \
-- (_LINUX_CAPABILITY_VERSION != 0x19980330)
-+ ((_LINUX_CAPABILITY_VERSION != 0x19980330) && \
-+ (_LINUX_CAPABILITY_VERSION != 0x20071026))
-
- # error "Kernel <linux/capability.h> does not match library"
- # error "file "libcap.h" --> fix and recompile libcap"
diff --git a/package/proftpd/proftpd-1.3.3b-fix-kernel-header-capability-version.patch b/package/proftpd/proftpd-1.3.3b-fix-kernel-header-capability-version.patch
new file mode 100644
index 000000000..4401c9aea
--- /dev/null
+++ b/package/proftpd/proftpd-1.3.3b-fix-kernel-header-capability-version.patch
@@ -0,0 +1,12 @@
+--- a/lib/libcap/libcap.h 2008-08-22 19:49:48.000000000 -0700
++++ b/lib/libcap/libcap.h 2010-10-06 15:31:11.000000000 -0700
+@@ -65,7 +65,8 @@ struct _cap_struct {
+ */
+
+ #if !defined(_LINUX_CAPABILITY_VERSION_1) || \
+- (_LINUX_CAPABILITY_VERSION_1 != 0x19980330)
++ ((_LINUX_CAPABILITY_VERSION_1 != 0x19980330) && \
++ (_LINUX_CAPABILITY_VERSION_1 != 0x20071026))
+
+ # error "Kernel <linux/capability.h> does not match library"
+ # error "file "libcap.h" --> fix and recompile libcap"
diff --git a/package/proftpd/proftpd.mk b/package/proftpd/proftpd.mk
index 11ef1ef85..191f61149 100644
--- a/package/proftpd/proftpd.mk
+++ b/package/proftpd/proftpd.mk
@@ -3,83 +3,42 @@
# proftpd
#
#############################################################
-PROFTPD_VERSION:=1.3.1
-PROFTPD_SOURCE:=proftpd-$(PROFTPD_VERSION).tar.bz2
-PROFTPD_SITE:=ftp://ftp.proftpd.org/distrib/source/
-PROFTPD_DIR:=$(BUILD_DIR)/proftpd-$(PROFTPD_VERSION)
-PROFTPD_CAT:=$(BZCAT)
-PROFTPD_BINARY:=proftpd
-PROFTPD_TARGET_BINARY:=usr/sbin/proftpd
+PROFTPD_VERSION = 1.3.3b
+PROFTPD_SOURCE = proftpd-$(PROFTPD_VERSION).tar.bz2
+PROFTPD_SITE = ftp://ftp.proftpd.org/distrib/source/
-ifeq ($(BR2_INET_IPV6),y)
-ENABLE_IPV6:=--enable-ipv6
-endif
+PROFTPD_CONF_ENV = ac_cv_func_setpgrp_void=yes \
+ ac_cv_func_setgrent_void=yes
-$(DL_DIR)/$(PROFTPD_SOURCE):
- $(call DOWNLOAD,$(PROFTPD_SITE),$(PROFTPD_SOURCE))
-
-proftpd-source: $(DL_DIR)/$(PROFTPD_SOURCE)
-
-$(PROFTPD_DIR)/.unpacked: $(DL_DIR)/$(PROFTPD_SOURCE)
- $(PROFTPD_CAT) $(DL_DIR)/$(PROFTPD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
- $(CONFIG_UPDATE) $(PROFTPD_DIR)
- toolchain/patch-kernel.sh $(PROFTPD_DIR) package/proftpd/ proftpd-$(PROFTPD_VERSION)\*.patch;
- touch $@
-
-$(PROFTPD_DIR)/.configured: $(PROFTPD_DIR)/.unpacked
- (cd $(PROFTPD_DIR); rm -rf config.cache; \
- $(TARGET_CONFIGURE_OPTS) \
- $(TARGET_CONFIGURE_ARGS) \
- ac_cv_func_setpgrp_void=yes \
- ac_cv_func_setgrent_void=yes \
- ./configure $(QUIET) \
- --target=$(GNU_TARGET_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --build=$(GNU_HOST_NAME) \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var/run \
+PROFTPD_CONF_OPT = --localstatedir=/var/run \
--disable-static \
--disable-curses \
--disable-ncurses \
--disable-facl \
--disable-dso \
--enable-shadow \
- $(DISABLE_LARGEFILE) \
- $(ENABLE_IPV6) \
- --with-gnu-ld \
- )
- touch $@
+ --with-gnu-ld
-$(PROFTPD_DIR)/$(PROFTPD_BINARY): $(PROFTPD_DIR)/.configured
- $(MAKE1) CC="$(HOSTCC)" CFLAGS="" LDFLAGS="" \
- -C $(PROFTPD_DIR)/lib/libcap _makenames
- $(MAKE1) -C $(PROFTPD_DIR)
+define PROFTPD_MAKENAMES
+ $(MAKE1) CC="$(HOSTCC)" CFLAGS="" LDFLAGS="" -C $(@D)/lib/libcap _makenames
+endef
-$(TARGET_DIR)/$(PROFTPD_TARGET_BINARY): $(PROFTPD_DIR)/$(PROFTPD_BINARY)
- cp -dpf $(PROFTPD_DIR)/$(PROFTPD_BINARY) \
- $(TARGET_DIR)/$(PROFTPD_TARGET_BINARY)
+PROFTPD_POST_CONFIGURE_HOOKS = PROFTPD_MAKENAMES
+
+PROFTPD_MAKE=$(MAKE1)
+
+define PROFTPD_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 0755 $(@D)/proftpd $(TARGET_DIR)/usr/sbin/proftpd
@if [ ! -f $(TARGET_DIR)/etc/proftpd.conf ]; then \
- $(INSTALL) -m 0644 -D $(PROFTPD_DIR)/sample-configurations/basic.conf $(TARGET_DIR)/etc/proftpd.conf; \
+ $(INSTALL) -m 0644 -D $(@D)/sample-configurations/basic.conf $(TARGET_DIR)/etc/proftpd.conf; \
fi
$(INSTALL) -m 0755 package/proftpd/S50proftpd $(TARGET_DIR)/etc/init.d
+endef
-proftpd: $(TARGET_DIR)/$(PROFTPD_TARGET_BINARY)
-
-proftpd-clean:
+define PROFTPD_UNINSTALL_TARGET_CMDS
rm -f $(TARGET_DIR)/$(PROFTPD_TARGET_BINARY)
rm -f $(TARGET_DIR)/etc/init.d/S50proftpd
rm -f $(TARGET_DIR)/etc/proftpd.conf
- -$(MAKE) -C $(PROFTPD_DIR) clean
+endef
-proftpd-dirclean:
- rm -rf $(PROFTPD_DIR)
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_PROFTPD),y)
-TARGETS+=proftpd
-endif
+$(eval $(call AUTOTARGETS,package,proftpd))