[packages] kismet: force linking against libnl-tiny (#8138)
[openwrt/svn-archive/archive.git] / net / wget / Makefile
index 01e0e34e0c3efa265d43f162507183ff0f960c9e..ab933968c1b3b70a53587bfae5ad640a1c4ec987 100644 (file)
@@ -1,20 +1,21 @@
-# 
-# Copyright (C) 2007 OpenWrt.org
+#
+# Copyright (C) 2007-2010 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
-# $Id$
 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=wget
-PKG_VERSION:=1.10.2
+PKG_VERSION:=1.12
 PKG_RELEASE:=2
 
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=@GNU/$(PKG_NAME)
-PKG_MD5SUM:=795fefbb7099f93e2d346b026785c4b8
+PKG_MD5SUM:=308a5476fc096a8a525d07279a6f6aa3
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -26,19 +27,19 @@ define Package/wget/Default
 endef
 
 define Package/wget/Default/description
-       Wget is a network utility to retrieve files from the Web
-       using http and ftp, the two most widely used Internet
-       protocols. It works non-interactively, so it will work in
-       the background, after having logged off. The program supports
-       recursive retrieval of web-authoring pages as well as ftp
-       sites -- you can use wget to make mirrors of archives and
-       home pages or to travel the Web like a WWW robot.
+ Wget is a network utility to retrieve files from the Web using http
+ and ftp, the two most widely used Internet protocols. It works
+ non-interactively, so it will work in the background, after having
+ logged off. The program supports recursive retrieval of web-authoring
+ pages as well as ftp sites -- you can use wget to make mirrors of
+ archives and home pages or to travel the Web like a WWW robot.
 endef
 
 define Package/wget
 $(call Package/wget/Default)
   DEPENDS+= +libopenssl
   TITLE+= (with SSL support)
+  VARIANT:=ssl
 endef
 
 define Package/wget/description
@@ -49,6 +50,7 @@ endef
 define Package/wget-nossl
 $(call Package/wget/Default)
   TITLE+= (without SSL support)
+  VARIANT:=nossl
 endef
 
 define Package/wget-nossl/description
@@ -56,52 +58,65 @@ $(call Package/wget/Default/description)
  This package is built without SSL support.
 endef
 
+CONFIGURE_ARGS+= \
+       --disable-rpath
 
-define Build/Template
+ifeq ($(BUILD_VARIANT),ssl)
+       CONFIGURE_ARGS+= \
+               --with-ssl \
+               --with-libssl-prefix="$(STAGING_DIR)/usr"
+endif
 
-$(STAMP_BUILT)-$(2): $(STAMP_PREPARED)
-       -$(MAKE) -C $(PKG_BUILD_DIR) clean
-       $(call Build/Configure/Default,$(3))
-       $(MAKE) -C $(PKG_BUILD_DIR)
-       ( cd $(PKG_BUILD_DIR)/src; mv -f wget wget-$(2) )
-       touch $$@
+ifeq ($(BUILD_VARIANT),nossl)
+       CONFIGURE_ARGS+= \
+               --without-ssl
+endif
 
-$(STAMP_BUILT): $(STAMP_BUILT)-$(2)
+define Package/wget/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/wget $(1)/usr/bin/wget-ssl
+endef
 
-define Package/$(1)/install
-       $(INSTALL_DIR) $$(1)/usr/bin
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/wget-$(2) $$(1)/usr/bin/wget
+define Package/wget-nossl/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/wget $(1)/usr/bin/wget-nossl
 endef
 
-# FIXME: check if busybox really provides a wget applet
-define Package/wget/postrm
-!/bin/sh
-ln -sf ../../bin/busybox $${IPKG_INSTROOT}/usr/bin/wget
+define Package/wget/postinst
+#!/bin/sh
+if [ -e $${IPKG_INSTROOT}/usr/bin/wget ]; then
+  rm -rf $${IPKG_INSTROOT}/usr/bin/wget;
+fi
+ln -sf ./wget-ssl $${IPKG_INSTROOT}/usr/bin/wget
 endef
 
+define Package/wget/postrm
+#!/bin/sh
+rm $${IPKG_INSTROOT}/usr/bin/wget
+[ -x $${IPKG_INSTROOT}/usr/bin/wget-nossl ] && ln -s ./wget-nossl $${IPKG_INSTROOT}/usr/bin/wget || {
+  ln -s ../../bin/busybox $${IPKG_INSTROOT}/usr/bin/wget
+  $${IPKG_INSTROOT}/usr/bin/wget 2>&1 | grep 'applet not found' > /dev/null 2>&1 && rm $${IPKG_INSTROOT}/usr/bin/wget
+}
+exit 0
 endef
 
-CONFIGURE_ARGS += \
-       --disable-rpath
+define Package/wget-nossl/postinst
+#!/bin/sh
+if [ -e $${IPKG_INSTROOT}/usr/bin/wget ]; then
+  rm -rf $${IPKG_INSTROOT}/usr/bin/wget;
+fi
+ln -s ./wget-nossl $${IPKG_INSTROOT}/usr/bin/wget
+endef
 
-ifneq ($(SDK)$(CONFIG_PACKAGE_wget),)
-  define Build/with-ssl
-    $(call Build/Template,wget,with-ssl, \
-       --with-ssl \
-       --with-libssl-prefix="$(STAGING_DIR)/usr" \
-    )
-  endef
-endif
-$(eval $(Build/with-ssl))
-
-ifneq ($(SDK)$(CONFIG_PACKAGE_wget-nossl),)
-  define Build/without-ssl
-    $(call Build/Template,wget-nossl,without-ssl, \
-       --without-ssl \
-    )  
-  endef
-endif
-$(eval $(Build/without-ssl))
+define Package/wget-nossl/postrm
+#!/bin/sh
+rm $${IPKG_INSTROOT}/usr/bin/wget
+[ -x $${IPKG_INSTROOT}/usr/bin/wget-ssl ] && ln -s ./wget-ssl $${IPKG_INSTROOT}/usr/bin/wget || {
+  ln -s ../../bin/busybox $${IPKG_INSTROOT}/usr/bin/wget
+  $${IPKG_INSTROOT}/usr/bin/wget 2>&1 | grep 'applet not found' > /dev/null 2>&1 && rm $${IPKG_INSTROOT}/usr/bin/wget
+}
+exit 0
+endef
 
 $(eval $(call BuildPackage,wget))
 $(eval $(call BuildPackage,wget-nossl))