Martin Herren writes:

here is a small patch to add libpng to buildroot.
It's the first application which i integrated in the buildroot build
system, so i welcome any comments, feedbacks and/or improvements about
it.  I tested it using directfb on a arm/pxa platform, and as far as i
could test it it seems to work.
This commit is contained in:
Mike Frysinger 2004-12-14 01:18:23 +00:00
parent 752cc448d1
commit c71b9520a6
4 changed files with 82 additions and 0 deletions

View File

@ -58,6 +58,7 @@ source "package/less/Config.in"
source "package/libfloat/Config.in"
source "package/libglib12/Config.in"
source "package/libmad/Config.in"
source "package/libpng/Config.in"
source "package/libtool/Config.in"
source "package/links/Config.in"
source "package/linux/Config.in"

8
package/libpng/Config.in Normal file
View File

@ -0,0 +1,8 @@
config BR2_PACKAGE_LIBPNG
bool "libpng"
default n
help
Library for handling PNG (Portable Network Graphics)
images.
http://www.libpng.org/

View File

@ -0,0 +1,3 @@
ifeq ($(strip $(BR2_PACKAGE_LIBPNG)),y)
TARGETS+=libpng
endif

70
package/libpng/libpng.mk Normal file
View File

@ -0,0 +1,70 @@
#############################################################
#
# libpng (Portable Network Graphic library)
#
#############################################################
# Copyright (C) 2001-2003 by Erik Andersen <andersen@codepoet.org>
# Copyright (C) 2002 by Tim Riker <Tim@Rikers.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Library General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA
LIBPNG_VER:=1.2.7
LIBPNG_DIR:=$(BUILD_DIR)/libpng-$(LIBPNG_VER)
LIBPNG_SITE:=ftp://sunsite.cnlab-switch.ch/mirror/freetype/png
LIBPNG_SOURCE:=libpng-$(LIBPNG_VER).tar.bz2
LIBPNG_CAT:=bzcat
$(DL_DIR)/$(LIBPNG_SOURCE):
$(WGET) -P $(DL_DIR) $(LIBPNG_SITE)/$(LIBPNG_SOURCE)
libpng-source: $(DL_DIR)/$(LIBPNG_SOURCE)
$(LIBPNG_DIR)/.unpacked: $(DL_DIR)/$(LIBPNG_SOURCE)
$(LIBPNG_CAT) $(DL_DIR)/$(LIBPNG_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
touch $(LIBPNG_DIR)/.unpacked
$(LIBPNG_DIR)/.configured: $(LIBPNG_DIR)/.unpacked
( \
cd $(LIBPNG_DIR) ; \
cp scripts/makefile.linux Makefile ; \
$(SED) 's~prefix=/usr/local/~$(STAGING_DIR)~' Makefile ; \
$(SED) 's~gcc~${TARGET_CC}~' Makefile ; \
$(SED) "s~-O3 -funroll-loops~${TARGET_CFLAGS}~" Makefile ; \
)
touch $(LIBPNG_DIR)/.configured
$(LIBPNG_DIR)/.compiled: $(LIBPNG_DIR)/.configured
$(MAKE) -C $(LIBPNG_DIR)
touch $(LIBPNG_DIR)/.compiled
$(STAGING_DIR)/lib/libpng.so: $(LIBPNG_DIR)/.compiled
$(MAKE) \
-C $(LIBPNG_DIR) \
prefix=$(STAGING_DIR) \
exec_prefix=$(STAGING_DIR) \
bindir=$(STAGING_DIR)/bin \
datadir=$(STAGING_DIR)/share \
install
touch -c $(STAGING_DIR)/lib/libpng.so
$(TARGET_DIR)/usr/lib/libpng.so: $(STAGING_DIR)/lib/libpng.so
cp -dpf $(STAGING_DIR)/lib/libpng.so* $(TARGET_DIR)/usr/lib/
-$(STRIP) --strip-unneeded $(TARGET_DIR)/usr/lib/libpng.so
libpng: uclibc zlib $(TARGET_DIR)/usr/lib/libpng.so
libpng-clean:
-$(MAKE) -C $(LIBPNG_DIR) clean