add libtool fixes, remove uneeded packages files, cleanup
authorNicolas Thill <nico@openwrt.org>
Sat, 22 Sep 2007 16:04:11 +0000 (16:04 +0000)
committerNicolas Thill <nico@openwrt.org>
Sat, 22 Sep 2007 16:04:11 +0000 (16:04 +0000)
SVN-Revision: 8952

libs/libsigc++/Makefile

index 89ad6a8..55beb3f 100644 (file)
@@ -1,5 +1,5 @@
 # 
-# Copyright (C) 2006 OpenWrt.org
+# Copyright (C) 2006,2007 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -15,10 +15,8 @@ PKG_RELEASE:=1
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.0/
 PKG_MD5SUM:=fde0ee69e3125e982746d9fe005763e1
-PKG_CAT:=bzcat
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
-PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+PKG_BUILD_DEPENDS:=libtool
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -27,33 +25,54 @@ define Package/libsigcxx
   SECTION:=libs
   CATEGORY:=Libraries
   TITLE:=typesafe callback system for standard C++
-  DESCRIPTION:=\
-       It allows you to define signals and to connect those signals to any \\\
-       callback function, either global or a member function, regardless of \\\
-       whether it is static or virtual.
-  URL:=http://libsigc++.sourceforge.net
+  URL:=http://libsigc++.sourceforge.net/
+  DEPENDS:=+uclibcxx
 endef
 
+define Package/libsigcxx/description
+ It allows you to define signals and to connect those signals to any 
+ callback function, either global or a member function, regardless of 
+ whether it is static or virtual.
+endef
+
+CONFIGURE_ARGS += \
+       --enable-shared \
+       --enable-static \
+
+CONFIGURE_VARS += \
+       CXX="g++-uc+std" \
+       CXXFLAGS="$$$$CXXFLAGS -fno-rtti"  \
+
 define Build/Configure
-       $(call Build/Configure/Default)
+       $(call Build/Configure/Default,)
+       $(call libtool_disable_rpath)
+       $(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) \
-               DESTDIR="$(PKG_INSTALL_DIR)" \
-               all install
+       $(MAKE) -C $(PKG_BUILD_DIR) all
+       $(call libtool_fixup_libdir,$(PKG_INSTALL_DIR))
+       $(MAKE) -C $(PKG_BUILD_DIR) DESTDIR="$(PKG_INSTALL_DIR)" install
 endef
 
 define Build/InstallDev
        mkdir -p $(STAGING_DIR)/usr/include
-       $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(STAGING_DIR)/usr/include/
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(STAGING_DIR)/usr/lib/
+       $(CP) $(PKG_INSTALL_DIR)/usr/include/sigc++-2.0 $(STAGING_DIR)/usr/include/
+       mkdir -p $(STAGING_DIR)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsigc-2.0.{a,so*} $(STAGING_DIR)/usr/lib/
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/sigc++-2.0 $(STAGING_DIR)/usr/lib/
+       mkdir -p $(STAGING_DIR)/usr/lib/pkgconfig
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/sigc++-2.0.pc $(STAGING_DIR)/usr/lib/pkgconfig/
+       $(SED) 's,^includedir=.*,includedir=$(STAGING_DIR)/usr/include,g' $(STAGING_DIR)/usr/lib/pkgconfig/sigc++-2.0.pc
+       $(SED) 's,^libdir=.*,libdir=$(STAGING_DIR)/usr/lib,g' $(STAGING_DIR)/usr/lib/pkgconfig/sigc++-2.0.pc
+       $(SED) 's,$(TARGET_LDFLAGS),,g' $(STAGING_DIR)/usr/lib/pkgconfig/sigc++-2.0.pc
 endef
 
 define Build/UninstallDev
-       rm -rf \
-               $(STAGING_DIR)/usr/include/sigc++-2.0 \
-               $(STAGING_DIR)/usr/lib/libsigc-2.0.* \
+       rm -rf  $(STAGING_DIR)/usr/include/sigc++-2.0 \
+               $(STAGING_DIR)/usr/lib/libsigc-2.0.{a,so*} \
                $(STAGING_DIR)/usr/lib/sigc++-2.0 \
                $(STAGING_DIR)/usr/lib/pkgconfig/sigc++-2.0.pc
                
@@ -61,8 +80,8 @@ endef
 
 define Package/libsigcxx/install
        $(INSTALL_DIR) $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsigc-2.0.* $(1)/usr/lib/
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/sigc++-2.0 $(1)/usr/lib/
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsigc-2.0.so.* $(1)/usr/lib/
 endef
 
 $(eval $(call BuildPackage,libsigcxx))
+