glib2: clean up makefile, use libtool fixup, fix libiconv usage, convert to host...
[openwrt/svn-archive/archive.git] / libs / glib2 / Makefile
index 3ba88d69641da8fa05af3d9240a46fd120d03029..ca49bd8a9b44fe154ce754c3aa7d368ad326e2cc 100644 (file)
@@ -4,22 +4,27 @@
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
 #
-# $Id$
 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=glib2
-PKG_VERSION:=2.12.12
+PKG_VERSION:=2.20.0
 PKG_RELEASE:=1
 
-PKG_SOURCE:=glib-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=ftp://ftp.gtk.org/pub/glib/2.12/
-PKG_MD5SUM:=6c6a61e4b08fb4b110ca7953f71c8b5e
-
+PKG_SOURCE:=glib-$(PKG_VERSION).tar.bz2
 PKG_BUILD_DIR:=$(BUILD_DIR)/glib-$(PKG_VERSION)
+PKG_SOURCE_URL:=@GNOME/glib/2.20
+PKG_MD5SUM:=05188e560dbd8bddd568e24ce10dd003
+
+PKG_FIXUP = libtool
+PKG_BUILD_DEPENDS := glib2/host
 
+HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/glib-$(PKG_VERSION)
+
+include $(INCLUDE_DIR)/host-build.mk
 include $(INCLUDE_DIR)/package.mk
 
+PKG_INSTALL:=1
 
 define Package/glib2
   SECTION:=libs
@@ -30,61 +35,67 @@ define Package/glib2
 endef
 
 define Package/glib2/description
-The GLib library of C routines
+  The GLib library of C routines
 endef
 
+TARGET_CFLAGS+= \
+       $(FPIC) \
+       -I$(STAGING_DIR)/usr/lib/libiconv/include \
+       -I$(STAGING_DIR)/usr/lib/libintl/include
 
-define Build/Configure
-endef
-
-define Build/Compile
-       mkdir -p $(PKG_BUILD_DIR)/build/$(GNU_HOST_NAME)
-       ( cd $(PKG_BUILD_DIR); CONFIG_SITE= \
-               ./configure \
-               --target=$(GNU_HOST_NAME) \
-               --host=$(GNU_HOST_NAME) \
-               --build=$(GNU_HOST_NAME) \
-               --prefix=$(PKG_BUILD_DIR)/build/$(GNU_HOST_NAME) \
-               --disable-shared \
-               --enable-static \
-               --enable-debug=no \
-       );
-       $(MAKE) -C $(PKG_BUILD_DIR) install clean
+TARGET_LDFLAGS+= \
+       -L$(STAGING_DIR)/usr/lib/libiconv/lib \
+       -L$(STAGING_DIR)/usr/lib/libintl/lib
 
+define Build/Configure
        $(call Build/Configure/Default, \
                --enable-shared \
                --enable-static \
                --enable-debug=no \
+               --with-libiconv=gnu \
                , \
-               CPPFLAGS="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/lib/libiconv/include" \
-               CPPFLAGS="$$$$CPPFLAGS -I$(STAGING_DIR)/usr/lib/libintl/include" \
-               LDFLAGS="$$$$LDFLAGS -L$(STAGING_DIR)/usr/lib/libiconv/lib" \
-               LDFLAGS="$$$$LDFLAGS -L$(STAGING_DIR)/usr/lib/libintl/lib" \
                glib_cv_stack_grows=no \
                glib_cv_uscore=no \
-               ac_cv_path_GLIB_GENMARSHAL=$(PKG_BUILD_DIR)/build/$(GNU_HOST_NAME)/bin/glib-genmarshal \
+               ac_cv_path_GLIB_GENMARSHAL=$(STAGING_DIR_HOST)/bin/glib-genmarshal \
+               ac_cv_func_mmap_fixed_mapped=yes \
        );
-       $(call libtool_disable_rpath)
-       $(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 $(1)/usr/include
-       $(CP) $(PKG_INSTALL_DIR)/usr/include/glib-2.0 $(1)/usr/include/
-       mkdir -p $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/glib-2.0 $(1)/usr/lib/
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libg{lib,module,object,thread}-2.0.{a,so*} $(1)/usr/lib/
-       mkdir -p $(1)/usr/lib/pkgconfig
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/g{lib,module,module-no-export,object,thread}-2.0.pc $(1)/usr/lib/pkgconfig
+       $(INSTALL_DIR) $(1)/usr/include
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/include/glib-2.0 \
+               $(1)/usr/include/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/include/gio-unix-2.0 \
+               $(1)/usr/include/
+
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/glib-2.0 \
+               $(1)/usr/lib/
+
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a,la} \
+               $(1)/usr/lib/
+
+       $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+       $(INSTALL_DATA) \
+               $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/*.pc \
+               $(1)/usr/lib/pkgconfig
+
+       $(INSTALL_DIR) $(2)/share/aclocal/
+       $(INSTALL_DATA) \
+               $(PKG_INSTALL_DIR)/usr/share/aclocal/*.m4  \
+               $(2)/share/aclocal/
 endef
 
 define Package/glib2/install
        $(INSTALL_DIR) $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libg*-2.0.so* $(1)/usr/lib/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/*.so* \
+               $(1)/usr/lib/
 endef
 
-
+$(eval $(call HostBuild))
 $(eval $(call BuildPackage,glib2))
-