From patchwork Sun Jul 22 13:28:36 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Samuel Martin X-Patchwork-Id: 172510 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from hemlock.osuosl.org (hemlock.osuosl.org [140.211.166.133]) by ozlabs.org (Postfix) with ESMTP id B8D982C0143 for ; Sun, 22 Jul 2012 23:32:31 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id A543AA0664; Sun, 22 Jul 2012 13:32:30 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id h-O70aXnrAGg; Sun, 22 Jul 2012 13:32:27 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 030D8A00FF; Sun, 22 Jul 2012 13:32:27 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (whitealder.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 1AC8C8F753 for ; Sun, 22 Jul 2012 13:30:42 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id E90E48F591 for ; Sun, 22 Jul 2012 13:30:41 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OAMhhYNvIZIb for ; Sun, 22 Jul 2012 13:30:22 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-wg0-f53.google.com (mail-wg0-f53.google.com [74.125.82.53]) by whitealder.osuosl.org (Postfix) with ESMTPS id BE7448E828 for ; Sun, 22 Jul 2012 13:30:20 +0000 (UTC) Received: by mail-wg0-f53.google.com with SMTP id fm10so4169247wgb.10 for ; Sun, 22 Jul 2012 06:30:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; bh=n7rmJ8ocxrC9p3JpiRT1oP+jbys1ZSmepLJIJPYluWc=; b=aikVvThLnEJLjc8msU4q5jzRgf7RHrgIl92FziF/ruMkkkOvHoth8DCtG34CurS6hw bjq131jLgAb7+C7rlh4qMOBT63es81dLfT+QkvtBp5Yq5CAGBoBHPRw4uOjCYMRupsfi O/EgjR0RdvVVOCUCJWAQ94O7lPVimc/R/mhZ0z5i/dlgubQ8qLzTBKujygaSydQI+Bhy rbpTmKyzUH0NunfDVC4YvI/AkLBOC149KQ3ViSvuNsU+j3YWlxbnmSPR3RDnVKeuSJSv /A3m5FnWdoqQS9xMwbIIkBJ6ArYxOr1mp3XLLO+iTqxMtq3W1MWRzrEMk0A1elW74hWk 9qFw== Received: by 10.180.99.232 with SMTP id et8mr21362030wib.11.1342963820527; Sun, 22 Jul 2012 06:30:20 -0700 (PDT) Received: from localhost.localdomain (ivr94-4-82-229-165-48.fbx.proxad.net. [82.229.165.48]) by mx.google.com with ESMTPS id fb20sm16263469wid.1.2012.07.22.06.30.18 (version=SSLv3 cipher=OTHER); Sun, 22 Jul 2012 06:30:19 -0700 (PDT) From: Samuel Martin To: buildroot@busybox.net Date: Sun, 22 Jul 2012 15:28:36 +0200 Message-Id: <1342963719-1810-9-git-send-email-s.martin49@gmail.com> X-Mailer: git-send-email 1.7.11.2 In-Reply-To: <1342963719-1810-1-git-send-email-s.martin49@gmail.com> References: <1342963719-1810-1-git-send-email-s.martin49@gmail.com> Subject: [Buildroot] [PATCH 08/11] libpng: fix host-libpng build on system on which zlib.h is missing. X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: buildroot-bounces@busybox.net This patch ensures libpng.sym is generated using the same zlib.h as the one used for building binaries. As a side effect, this patch fix host-libpng build on freshly installed debian-based systems, on which zlib development data may be not installed. Signed-off-by: Samuel Martin create mode 100644 package/libpng/libpng-fix-build-if-zlib-h-is-missing-on-the-host.patch diff --git a/package/libpng/libpng-fix-build-if-zlib-h-is-missing-on-the-host.patch b/package/libpng/libpng-fix-build-if-zlib-h-is-missing-on-the-host.patch new file mode 100644 index 0000000..4e22498 --- /dev/null +++ b/package/libpng/libpng-fix-build-if-zlib-h-is-missing-on-the-host.patch @@ -0,0 +1,47 @@ +This patch ensure that '$(O)/host/usr/include' is added to the command generating +libpng.sym. + +This allows building host-libpng on a system missing zlib development data, which +are provided by '$(O)/host/usr/include' though. + +This avoid the following error occurs: + +/usr/bin/cpp -DPNG_CONFIGURE_LIBPNG -DPNG_BUILDSYMS ./png.h | \ + /bin/sed -n -e \ + 's|^.*PNG_FUNCTION_EXPORT[ ]*\(['_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789']*\).*$|\1|p' \ + -e 's|^.*PNG_DATA_EXPORT[ ]*\(['_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789']*\).*$|\1|p' \ + >libpng.sym.new +./png.h:421:18: fatal error: zlib.h: No such file or directory +[...] +libtool: link: /usr/bin/gcc -shared .libs/libpng14_la-png.o .libs/libpng14_la-pngset.o .libs/libpng14_la-pngget.o .libs/libpng14_la-pngrutil.o .libs/libpng14_la-pngtrans.o .libs/libpng14_la-pngwutil.o .libs/libpng14_la-pngread.o .libs/libpng14_la-pngrio.o .libs/libpng14_la-pngwio.o .libs/libpng14_la-pngwrite.o .libs/libpng14_la-pngrtran.o .libs/libpng14_la-pngwtran.o .libs/libpng14_la-pngmem.o .libs/libpng14_la-pngerror.o .libs/libpng14_la-pngpread.o -L/opt/buildroot/output/host/lib -L/opt/buildroot/output/host/usr/lib -lz -lm -Wl,--version-script=libpng.vers -Wl,-rpath -Wl,/opt/buildroot/output/host/usr/lib -Wl,-soname -Wl,libpng14.so.14 -o .libs/libpng14.so.14.11.0 +/usr/bin/ld:libpng.vers:2: syntax error in VERSION script +collect2: ld returned 1 exit status +make[2]: *** [libpng14.la] Error 1 + +Signed-off-by: Samuel Martin + +--- +diff -purN host-libpng-1.4.11.orig/Makefile.am host-libpng-1.4.11/Makefile.am +--- host-libpng-1.4.11.orig/Makefile.am 2012-07-22 01:06:18.692261599 +0000 ++++ host-libpng-1.4.11/Makefile.am 2012-07-22 01:11:59.350414529 +0000 +@@ -95,7 +95,7 @@ $(PNGLIB_BASENAME)-config: libpng-config + + libpng.sym: png.h pngconf.h + rm -f $@ $@.new +- $(CPP) @LIBPNG_DEFINES@ $(CPPFLAGS) -DPNG_BUILDSYMS $(srcdir)/png.h | \ ++ $(CPP) @LIBPNG_DEFINES@ $(CPPFLAGS) $(CFLAGS) -DPNG_BUILDSYMS $(srcdir)/png.h | \ + $(SED) -n -e \ + 's|^.*PNG_FUNCTION_EXPORT[ ]*\([$(AN)]*\).*$$|$(SYMBOL_PREFIX)\1|p' \ + -e 's|^.*PNG_DATA_EXPORT[ ]*\([$(AN)]*\).*$$|$(SYMBOL_PREFIX)\1|p' \ +diff -purN host-libpng-1.4.11.orig/Makefile.in host-libpng-1.4.11/Makefile.in +--- host-libpng-1.4.11.orig/Makefile.in 2012-07-22 01:06:18.692261599 +0000 ++++ host-libpng-1.4.11/Makefile.in 2012-07-22 01:12:38.093537811 +0000 +@@ -1214,7 +1214,7 @@ $(PNGLIB_BASENAME)-config: libpng-config + + libpng.sym: png.h pngconf.h + rm -f $@ $@.new +- $(CPP) @LIBPNG_DEFINES@ $(CPPFLAGS) -DPNG_BUILDSYMS $(srcdir)/png.h | \ ++ $(CPP) @LIBPNG_DEFINES@ $(CPPFLAGS) $(CFLAGS) -DPNG_BUILDSYMS $(srcdir)/png.h | \ + $(SED) -n -e \ + 's|^.*PNG_FUNCTION_EXPORT[ ]*\([$(AN)]*\).*$$|$(SYMBOL_PREFIX)\1|p' \ + -e 's|^.*PNG_DATA_EXPORT[ ]*\([$(AN)]*\).*$$|$(SYMBOL_PREFIX)\1|p' \ diff --git a/package/libpng/libpng.mk b/package/libpng/libpng.mk index dd295c6..7b17e72 100644 --- a/package/libpng/libpng.mk +++ b/package/libpng/libpng.mk @@ -30,5 +30,7 @@ ifneq ($(BR2_HAVE_DEVFILES),y) LIBPNG_POST_INSTALL_TARGET_HOOKS += LIBPNG_REMOVE_CONFIG_SCRIPTS endif +HOST_LIBPNG_AUTORECONF = YES + $(eval $(autotools-package)) $(eval $(host-autotools-package))