Link with libgcc_s it would fail otherwise on x86_64-uclibc (and maybe others)
[openwrt/svn-archive/archive.git] / net / cbtt / Makefile
index ebae8bbaf3a7a366356bbc46724023e53ec74edb..8377429bbbe7f4ba484e1d1470337544b18c7de0 100644 (file)
@@ -8,59 +8,77 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=cbtt
-PKG_VERSION:=20060211
+PKG_VERSION:=20060727
 PKG_RELEASE:=1
-PKG_MD5SUM:=19abea2817c49ccc9438e9671c402984
 
-PKG_SOURCE_URL:=@SF/bnbtusermods 
 PKG_SOURCE:=$(PKG_NAME)80-$(PKG_VERSION)-src.tar.gz
-PKG_CAT:=zcat
+PKG_SOURCE_URL:=@SF/bnbtusermods 
+PKG_MD5SUM:=d6edf0a11d7e68fa3d121e91308f22f5
 
 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)80-$(PKG_VERSION)-src
-PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
 
 include $(INCLUDE_DIR)/package.mk
 
-PKG_BUILDDEP=zlib mysql
-
-define Package/cbtt
+define Package/cbtt/Default
+  SUBMENU:=BitTorrent
   SECTION:=net
   CATEGORY:=Network
-  DEPENDS:=zlib
-  MENU:=1
+  DEPENDS:=+libpthread +uclibcxx +zlib
   TITLE:=Bittorrent tracker
-  DESCRIPTION:=a C BitTorrent Tracker
-  URL:=http://bnbtusermods.sourceforge.net
+  URL:=http://bnbtusermods.sourceforge.net/
+endef
+
+define Package/cbtt
+$(call Package/cbtt/Default)
 endef
 
 define Package/cbtt-mysql
-  SECTION:=net
-  CATEGORY:=Network
-  DEPENDS:=cbtt libmysqlclient
-  TITLE:=Bittorrent tracker with mysql support
-  DESCRIPTION:=Bittorrent tracker with mysql support
-  URL:=http://bnbtusermods.sourceforge.net
+$(call Package/cbtt/Default)
+  DEPENDS+= +libmysqlclient
+  TITLE+= (with mysql support)
 endef
 
-define Build/Compile
-       rm -rf $(PKG_INSTALL_DIR)
-       mkdir -p $(PKG_INSTALL_DIR)
+
+define Build/Template
+
+$(STAMP_BUILT)-$(2): $(STAMP_PREPARED)
        $(MAKE) -C $(PKG_BUILD_DIR) \
                $(TARGET_CONFIGURE_OPTS) \
-               LFLAGS="-L$(STAGING_DIR)/usr/lib -L $(STAGING_DIR)/usr/lib/mysql -L. -lz -lmysqlclient" \
-               CFLAGS="-I$(STAGING_DIR)/usr/include"
-       mkdir -p $(PKG_INSTALL_DIR)/usr/bin
+               CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS) -I$(STAGING_DIR)/usr/include/uClibc++ -fno-builtin -nostdinc++" \
+               LFLAGS="$(TARGET_LDFLAGS) -L. -nodefaultlibs $(4) -lz -luClibc++ -lm -lpthread -lgcc_s" \
+               $(3)
+       touch $$@
+
+$(STAMP_BUILT): $(STAMP_BUILT)-$(2)
+
+define Package/$(1)/install
+       $(INSTALL_DIR) $$(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/$(3) $$(1)/usr/bin/
 endef
 
-define Package/cbtt/install
-       install -d -m0755 $(1)/usr/bin
-       install -m0755 $(PKG_BUILD_DIR)/bnbt $(1)/usr/bin/
 endef
 
-define Package/cbtt-mysql/install
-       install -d -m0755 $(1)/usr/bin
-       install -m0755 $(PKG_BUILD_DIR)/bnbtmysql $(1)/usr/bin/
+define Build/Configure
 endef
 
+define Build/Compile
+endef
+
+ifneq ($(SDK)$(CONFIG_PACKAGE_cbtt),)
+  define Build/without-mysql
+    $(call Build/Template,cbtt,without-mysql,bnbt,)
+  endef
+endif
+$(eval $(Build/without-mysql))
+
+ifneq ($(SDK)$(CONFIG_PACKAGE_cbtt-mysql),)
+  define Build/with-mysql
+    $(call Build/Template,cbtt-mysql,with-mysql,bnbtmysql, \
+       -L$(STAGING_DIR)/usr/lib/mysql -lmysqlclient \
+    )
+  endef
+endif
+$(eval $(Build/with-mysql))
+
 $(eval $(call BuildPackage,cbtt))
 $(eval $(call BuildPackage,cbtt-mysql))