[package] fix libtorrent build failure (#6981)
[openwrt/svn-archive/archive.git] / libs / libtorrent / Makefile
index df490b36fc1bac9c546a0588efc47e46dd846851..5cfe8b8b4afcd279f84497a3f1a42768c4e86106 100644 (file)
@@ -1,24 +1,26 @@
 #
-# Copyright (C) 2007-2008 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:=libtorrent
-PKG_VERSION:=0.11.9
-PKG_RELEASE:=1
+PKG_REV:=1130
+PKG_VERSION:=0.12.6_r$(PKG_REV)
+PKG_RELEASE:=3
 
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://libtorrent.rakshasa.no/downloads/
-PKG_MD5SUM:=8974dc9499b382a09fb952cabcfef9a0
 
-PKG_BUILD_DEPENDS:=libtool
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=svn://rakshasa.no/libtorrent/trunk/libtorrent
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
+PKG_SOURCE_VERSION:=$(PKG_REV)
+PKG_SOURCE_PROTO:=svn
 
-PKG_FIXUP = libtool
+PKG_FIXUP:=libtool
+PKG_INSTALL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -27,49 +29,43 @@ define Package/libtorrent
   CATEGORY:=Libraries
   TITLE:=Rakshasa's BitTorrent library
   URL:=http://libtorrent.rakshasa.no/
-  DEPENDS:=+libsigcxx
+  DEPENDS:=+libopenssl +libsigcxx
 endef
 
 define Package/libtorrent/description
- LibTorrent is a BitTorrent library written in C++ for *nix, with a focus 
- on high performance and good code. The library differentiates itself from 
- other implementations by transfering directly from file pages to the 
- network stack. On high-bandwidth connections it is able to seed at 3 times 
+ LibTorrent is a BitTorrent library written in C++ for *nix, with a focus
+ on high performance and good code. The library differentiates itself from
+ other implementations by transfering directly from file pages to the
+ network stack. On high-bandwidth connections it is able to seed at 3 times
  the speed of the official client.
 endef
 
+ifneq ($(CONFIG_GCC_VERSION_3_4)$(CONFIG_GCC_VERSION_4_1),)
+TARGET_CPPFLAGS += -fno-strict-aliasing
+endif
+
+TARGET_CPPFLAGS += -fno-inline
+
+# XXX: rtorrent needs encryption (--enable-openssl)
 CONFIGURE_ARGS+= \
        --enable-shared \
        --enable-static \
        --enable-aligned \
        --disable-debug \
-       --disable-openssl \
-
-CONFIGURE_VARS += \
-       CXX="g++-uc+std" \
-       CXXFLAGS="$$$$CXXFLAGS -fno-rtti"  \
+       --enable-openssl \
 
 define Build/Configure
-       $(call Build/Configure/Default,)
-       $(SED) 's|^sys_lib_dlsearch_path_spec=.*|sys_lib_dlsearch_path_spec="$(STAGING_DIR)/usr/lib"|g' \
-               $(PKG_BUILD_DIR)/libtool
-       $(SED) 's|^postdeps=.*|postdeps=|g' $(PKG_BUILD_DIR)/libtool
-endef
-
-define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) all
-       $(call libtool_fixup_libdir,$(PKG_INSTALL_DIR))
-       $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" install
+       (cd $(PKG_BUILD_DIR); ./autogen.sh );
+       $(call Build/Configure/Default)
 endef
 
 define Build/InstallDev
-       mkdir -p $(1)/usr/include
+       $(INSTALL_DIR) $(1)/usr/include
        $(CP) $(PKG_INSTALL_DIR)/usr/include/torrent $(1)/usr/include/
-       mkdir -p $(1)/usr/lib
+       $(INSTALL_DIR) $(1)/usr/lib
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/libtorrent.{a,so*} $(1)/usr/lib/
-       mkdir -p $(1)/usr/lib/pkgconfig
+       $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
        $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libtorrent.pc $(1)/usr/lib/pkgconfig/
-       $(SED) 's,$(TARGET_LDFLAGS),,g' $(1)/usr/lib/pkgconfig/libtorrent.pc
 endef
 
 define Package/libtorrent/install