diff --git a/openwrt/package/Config.in b/openwrt/package/Config.in index e6679d7573..34883ffc35 100644 --- a/openwrt/package/Config.in +++ b/openwrt/package/Config.in @@ -83,6 +83,7 @@ source "package/fuse/Config.in" source "package/speex/Config.in" source "package/libusb/Config.in" source "package/libpng/Config.in" +source "package/libgd/Config.in" comment "Extra stuff" source "package/sdk/Config.in" diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile index 404d890c53..922bc17f10 100644 --- a/openwrt/package/Makefile +++ b/openwrt/package/Makefile @@ -73,13 +73,14 @@ package-$(BR2_PACKAGE_WIRELESS_TOOLS) += wireless-tools package-$(BR2_PACKAGE_WOL) += wol package-$(BR2_PACKAGE_ZLIB) += zlib package-$(BR2_PACKAGE_DHCPFWD) += dhcp-forwarder +package-$(BR2_PACKAGE_LIBGD) += libgd package-$(BR2_PACKAGE_LIBNET) += libnet package-$(BR2_PACKAGE_LIBMYSQLCLIENT) += mysql package-$(BR2_PACKAGE_LIBPCAP) += libpcap package-$(BR2_PACKAGE_LIBPNG) += libpng package-$(BR2_PACKAGE_LIBPQ) += postgresql -DEV_LIBS:=tcp_wrappers glib ncurses openssl pcre popt zlib libnet libpcap mysql postgresql iptables matrixssl lzo gmp fuse portmap libelf uclibc++ speex libpng +DEV_LIBS:=tcp_wrappers glib ncurses openssl pcre popt zlib libnet libpcap mysql postgresql iptables matrixssl lzo gmp fuse portmap libelf uclibc++ speex libpng libgd DEV_LIBS_COMPILE:=$(patsubst %,%-compile,$(DEV_LIBS)) SDK_DEFAULT_PACKAGES:=busybox dnsmasq iptables wireless-tools dropbear bridge ipkg SDK_DEFAULT_COMPILE:=$(patsubst %,%-compile,$(SDK_DEFAULT_PACKAGES)) @@ -101,6 +102,7 @@ endif ifneq ($(BR2_PACKAGE_ASTERISK_MYSQL),) asterisk-compile: mysql-compile endif +libgd-compile: libpng-compile screen-compile: ncurses-compile openswan-compile: gmp-compile nocatsplash-compile: glib-compile diff --git a/openwrt/package/libgd/Config.in b/openwrt/package/libgd/Config.in new file mode 100644 index 0000000000..e468a5d31f --- /dev/null +++ b/openwrt/package/libgd/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_LIBGD + tristate "libgd" + default m if CONFIG_DEVEL + help + The GD Graphics Library + diff --git a/openwrt/package/libgd/Makefile b/openwrt/package/libgd/Makefile new file mode 100644 index 0000000000..87fb49ba9b --- /dev/null +++ b/openwrt/package/libgd/Makefile @@ -0,0 +1,90 @@ +# $Id$ + +include $(TOPDIR)/rules.mk + +PKG_NAME := gd +PKG_VERSION := 2.0.33 +PKG_RELEASE := 1 +PKG_MD5SUM := be0a6d326cd8567e736fbc75df0a5c45 + +PKG_SOURCE_SITE := http://www.boutell.com/gd/http +PKG_SOURCE_FILE := $(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_DIR := $(PKG_NAME)-$(PKG_VERSION) +PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_SOURCE_DIR) +PKG_IPK := $(PACKAGE_DIR)/$(PKG_NAME)_$(PKG_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk +PKG_CAT := zcat +PKG_IPK_DIR := $(PKG_BUILD_DIR)/ipkg + +$(DL_DIR)/$(PKG_SOURCE_FILE): + $(SCRIPT_DIR)/download.pl $(DL_DIR) $(PKG_SOURCE_FILE) $(PKG_MD5SUM) $(PKG_SOURCE_SITE) + +$(PKG_BUILD_DIR)/.unpacked: $(DL_DIR)/$(PKG_SOURCE_FILE) + $(PKG_CAT) $(DL_DIR)/$(PKG_SOURCE_FILE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - + $(PATCH) $(PKG_BUILD_DIR) ./patches + touch $(PKG_BUILD_DIR)/.unpacked + +$(PKG_BUILD_DIR)/.configured: $(PKG_BUILD_DIR)/.unpacked + (cd $(PKG_BUILD_DIR) ; \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include" \ + LIBPNG12_CONFIG="$(STAGING_DIR)/usr/bin/libpng12-config" \ + LDFLAGS="-L$(STAGING_DIR)/usr/lib" \ + sys_lib_dlsearch_path_spec="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib" \ + sys_lib_search_path_spec="$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib" \ + ./configure \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --prefix="$(STAGING_DIR)/usr" \ + --exec-prefix=/usr \ + --bindir=/usr/bin \ + --sbindir=/usr/sbin \ + --libexecdir=/usr/lib \ + --datadir=/usr/share \ + --infodir=/usr/share/info \ + --mandir=/usr/share/man \ + --localstatedir=/var \ + --sysconfdir=/etc \ + --disable-rpath \ + --without-x \ + --with-png=$(STAGING_DIR)/usr \ + $(DISABLE_NLS) \ + ) + touch $(PKG_BUILD_DIR)/.configured + +$(PKG_BUILD_DIR)/.libs/libgd.so: $(PKG_BUILD_DIR)/.configured + $(MAKE) -C $(PKG_BUILD_DIR) \ + CC=$(TARGET_CC) \ + CFLAGS="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include -L$(STAGING_DIR)/usr/lib" \ + LDFLAGS="-L$(STAGING_DIR)/usr/lib" \ + libdir="$(STAGING_DIR)/usr/lib" \ + all + +$(STAGING_DIR)/usr/lib/libgd.so: $(PKG_BUILD_DIR)/.libs/libgd.so + $(MAKE) -C $(PKG_BUILD_DIR) \ + DESTDIR="$(STAGING_DIR)" \ + install + rm -f $(STAGING_DIR)/usr/lib/libgd*.la + +$(PKG_IPK): $(PKG_BUILD_DIR)/.libs/libgd.so + $(SCRIPT_DIR)/make-ipkg-dir.sh $(PKG_IPK_DIR) libgd.control $(PKG_VERSION)-$(PKG_RELEASE) $(ARCH) + mkdir -p $(PKG_IPK_DIR)/usr/lib + cp -a $(PKG_BUILD_DIR)/.libs/*.so* $(PKG_IPK_DIR)/usr/lib/ + $(STRIP) $(PKG_IPK_DIR)/usr/lib/* + find $(PKG_IPK_DIR) -name CVS | xargs rm -rf + mkdir -p $(PACKAGE_DIR) + $(IPKG_BUILD) $(PKG_IPK_DIR) $(PACKAGE_DIR) + +$(IPKG_STATE_DIR)/info/libgd.list: $(PKG_IPK) + $(IPKG) install $(PKG_IPK) + +source: $(DL_DIR)/$(PKG_SOURCE) +prepare: $(PKG_BUILD_DIR)/.unpacked +compile: $(STAGING_DIR)/usr/lib/libgd.so $(PKG_IPK) +install: $(IPKG_STATE_DIR)/info/libgd.list + +clean: + rm -rf $(PKG_BUILD_DIR) + rm -f $(STAGING_DIR)/usr/bin/libgd* + rm -f $(STAGING_DIR)/usr/lib/libgd* + rm -f $(PKG_IPK) diff --git a/openwrt/package/libgd/libgd.control b/openwrt/package/libgd/libgd.control new file mode 100644 index 0000000000..efdfc6edcb --- /dev/null +++ b/openwrt/package/libgd/libgd.control @@ -0,0 +1,7 @@ +Package: libgd +Priority: optional +Section: libs +Maintainer: Felix Fietkau +Source: buildroot internal +Depends: libpng +Description: A library for the dynamic creation of images diff --git a/openwrt/package/libgd/patches/100-configure_fix.patch b/openwrt/package/libgd/patches/100-configure_fix.patch new file mode 100644 index 0000000000..dd7d6bc457 --- /dev/null +++ b/openwrt/package/libgd/patches/100-configure_fix.patch @@ -0,0 +1,40 @@ +diff -urN gd-2.0.33.old/configure gd-2.0.33.dev/configure +--- gd-2.0.33.old/configure 2004-11-04 00:14:47.000000000 +0100 ++++ gd-2.0.33.dev/configure 2005-05-05 15:06:26.000000000 +0200 +@@ -7217,8 +7217,6 @@ + shlibpath_overrides_runpath=unknown + version_type=none + dynamic_linker="$host_os ld.so" +-sys_lib_dlsearch_path_spec="/lib /usr/lib" +-sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + + case $host_os in + aix3*) +@@ -7481,8 +7479,6 @@ + *) + ;; + esac +- sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" +- sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" + ;; + + netbsd*) +@@ -11032,14 +11028,14 @@ + fi + + if test -n "$LIBPNG12_CONFIG"; then +- libpng_CPPFLAGS=`libpng12-config --cflags` ++ libpng_CPPFLAGS=`$LIBPNG12_CONFIG --cflags` + # should be --ldopts, but it's currently broken +- libpng_LDFLAGS=`libpng12-config --ldflags` ++ libpng_LDFLAGS=`$LIBPNG12_CONFIG --ldflags` + libpng_LDFLAGS=`echo " $libpng_LDFLAGS" | sed 's/ -l[^ ][^ ]*//g'` + elif test -n "$LIBPNG_CONFIG"; then +- libpng_CPPFLAGS=`libpng-config --cflags` ++ libpng_CPPFLAGS=`$LIBPNG_CONFIG --cflags` + # should be --ldopts, but it's currently broken +- libpng_LDFLAGS=`libpng-config --ldflags` ++ libpng_LDFLAGS=`$LIBPNG_CONFIG --ldflags` + libpng_LDFLAGS=`echo " $libpng_LDFLAGS" | sed 's/ -l[^ ][^ ]*//g'` + elif test -d "$withval"; then + libpng_CPPFLAGS="-I$withval/include"