Retain symlinks. $(INSTALL_*) copys the contens of a file, so if we want to keep
[openwrt/svn-archive/archive.git] / libs / glib2 / Makefile
index cd0f39aa2ac30b2e4bdf95c32bda9662b2034811..66dd11315e5267718575fa10ccb861ee83c80418 100644 (file)
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=glib2
-PKG_VERSION:=2.12.12
-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_CAT:=zcat
+PKG_VERSION:=2.18.1
+PKG_RELEASE:=4
 
+PKG_SOURCE:=glib-$(PKG_VERSION).tar.bz2
 PKG_BUILD_DIR:=$(BUILD_DIR)/glib-$(PKG_VERSION)
-PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+PKG_SOURCE_URL:=@GNOME/glib/2.18
+PKG_MD5SUM:=51a9a33f49a4896d4d95d8e980666b9e
+PKG_FIXUP:=libtool
 
 include $(INCLUDE_DIR)/package.mk
 
+PKG_INSTALL=1
+
 define Package/glib2
   SECTION:=libs
   CATEGORY:=Libraries
   DEPENDS:=+libiconv +libintl
   TITLE:=glib 2.0
-  DESCRIPTION:=The GLib library of C routines
   URL:=http://www.gtk.org/
 endef
 
-define Build/Configure 
+define Package/glib2/description
+  The GLib library of C routines
+endef
+
+TARGET_CFLAGS+= \
+       $(FPIC) \
+       -I$(STAGING_DIR)/usr/lib/libiconv/include \
+       -I$(STAGING_DIR)/usr/lib/libintl/include
+
+TARGET_LDFLAGS+= \
+       -L$(STAGING_DIR)/usr/lib/libiconv/lib \
+       -L$(STAGING_DIR)/usr/lib/libintl/lib
+
+define Build/Configure
+       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
+
        $(call Build/Configure/Default, \
                --enable-shared \
                --enable-static \
-               LDFLAGS="-L$(STAGING_DIR)/usr/lib/libiconv/lib \
-                       -L$(STAGING_DIR)/usr/lib/libintl/lib" \
-               CPPFLAGS="-I$(STAGING_DIR)/usr/lib/libiconv/include \
-                       -I$(STAGING_DIR)/usr/lib/libintl/include" \
+               --enable-debug=no \
                , \
                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_func_mmap_fixed_mapped=yes \
+       );
 endef
 
-define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
-               DESTDIR="$(PKG_INSTALL_DIR)" \
-               all install
-endef
+define Build/InstallDev
+       $(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/
 
-define Build/InstallDev
-       mkdir -p $(STAGING_DIR)/usr/include
-       $(CP) $(PKG_INSTALL_DIR)/usr/include/glib-2.0 $(STAGING_DIR)/usr/include/
-       $(CP) $(PKG_BUILD_DIR)/glibconfig.h $(STAGING_DIR)/usr/include/glib-2.0
-       mkdir -p $(STAGING_DIR)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(STAGING_DIR)/usr/lib/
-       mkdir -p $(STAGING_DIR)/usr/lib/pkgconfig
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(STAGING_DIR)/usr/lib/pkgconfig
-       $(SED)  "s,"libdir\=\'/usr/lib\'",libdir='$(STAGING_DIR)/usr/lib\'," $(STAGING_DIR)/usr/lib/{libglib,libgmodule,libgobject,libgthread}-2.0.la
-       $(SED)  "s,"prefix\=/usr",prefix=$(STAGING_DIR)/usr," $(STAGING_DIR)/usr/lib/pkgconfig/{glib,gmodule,gmodule-export,gmodule-no-export,gobject,gthread}-2.0.pc
-       $(SED)  "s,"exec_prefix\=/usr",exec_prefix=$(STAGING_DIR)/usr," $(STAGING_DIR)/usr/lib/pkgconfig/{glib,gmodule,gmodule-export,gmodule-no-export,gobject,gthread}-2.0.pc
-endef
+       $(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
 
-define Build/UninstallDev
-       rm -rf \
-               $(STAGING_DIR)/usr/include/glib-2.0 \
-               $(STAGING_DIR)/usr/lib/libg*-2.0.* \
-               $(STAGING_DIR)/usr/lib/glib-2.0 \
-               $(STAGING_DIR)/usr/lib/pkgconfig/g*-2.0.pc
+       $(INSTALL_DIR) $(2)/share/aclocal/
+       $(INSTALL_DATA) \
+               $(PKG_INSTALL_DIR)/usr/share/aclocal/*.m4  \
+               $(2)/share/aclocal/
+
+       $(INSTALL_DIR) $(2)/bin
+       $(INSTALL_BIN) \
+               $(PKG_BUILD_DIR)/build/$(GNU_HOST_NAME)/bin/* \
+               $(2)/bin
 endef
 
-define Package/glib2/install   
+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 BuildPackage,glib2))