Bug 139975

Summary: [PATCH] graphics/GraphicsMagick13: missing support for png, jpeg and others
Product: Ports & Packages Reporter: mwisnicki+freebsd
Component: Individual Port(s)Assignee: Greg Larkin <glarkin>
Status: Closed FIXED    
Severity: Affects Only Me CC: glarkin
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
GraphicsMagick-1.3.7_1.patch
none
make-configure.log
none
config.log.gz none

Description mwisnicki+freebsd 2009-10-25 23:00:12 UTC
When building with OPENMP (default) LDFLAGS variable in CONFIGURE_ENV is overriden.
Unfortunately configure script will continue and automatically disable failing
components. This results in a build that's missing all functionality provided
by dependencies (libpng, lipjpeg, etc).

Following patch adjusts LDFLAGS properly.
For completeness some kind of modification to configure script is need so that it
will always fail hard in case of errors.

Alternate versions of port likely have similar problems.


Port maintainer (glarkin@FreeBSD.org) is cc'd.

Generated with FreeBSD Port Tools 0.99
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2009-10-25 23:00:23 UTC
Responsible Changed
From-To: freebsd-ports-bugs->glarkin

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 Greg Larkin freebsd_committer freebsd_triage 2009-10-29 01:07:51 UTC
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Marcin Wisnicki wrote:

> When building with OPENMP (default) LDFLAGS variable in CONFIGURE_ENV is overriden.
> Unfortunately configure script will continue and automatically disable failing
> components. This results in a build that's missing all functionality provided
> by dependencies (libpng, lipjpeg, etc).
> 
> Following patch adjusts LDFLAGS properly.
> For completeness some kind of modification to configure script is need so that it
> will always fail hard in case of errors.
> 
> Alternate versions of port likely have similar problems.
> 
> 

Hi Marcin,

Thank you for the bug report, and would you mind sending me a transcript
of your port build with the error notated?  I tried to reproduce the
problem here, and I can't seem to do so yet.

Without your patch, I see this at the end of the configure output:

LDFLAGS  = -L/usr/local/lib -pthread -L/usr/local/lib -R/usr/local/lib
- -L/usr/local/lib -L/usr/local/lib
LIBS     = -ljbig -llcms -ltiff -lfreetype -ljasper -ljpeg -lpng -lfpx
- -lwmflite -ldpstk -ldps -lXext -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm
- -lgomp -lpthread

Let me know if you see something different.

Thank you,
Greg
- --
Greg Larkin

http://www.FreeBSD.org/           - The Power To Serve
http://www.sourcehosting.net/     - Ready. Set. Code.
http://twitter.com/sourcehosting/ - Follow me, follow you
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iD8DBQFK6Orn0sRouByUApARApM2AJ9t8g7tzYxnDd71AC30LFbJIpDIOgCffTLO
5+jJgoClraKgGRgyXD0VI78=
=OMl6
-----END PGP SIGNATURE-----
Comment 3 mwisnicki+freebsd 2009-11-12 20:06:16 UTC
Forgot to cc bug-followup :(

---------- Forwarded message ----------
From: Marcin Wisnicki <mwisnicki+freebsd@gmail.com>
Date: Thu, Oct 29, 2009 at 03:09
Subject: Re: ports/139975: [PATCH] graphics/GraphicsMagick13: missing support for png, jpeg and others
To: glarkin@freebsd.org


On Thu, Oct 29, 2009 at 02:07, Greg Larkin <glarkin@freebsd.org> wrote:
> Thank you for the bug report, and would you mind sending me a transcript
> of your port build with the error notated?  I tried to reproduce the
> problem here, and I can't seem to do so yet.
>


It goes like this (full logs attached):

checking for PNG support ...
checking png.h usability... yes
checking png.h presence... yes
checking for png.h... yes
checking for png_get_io_ptr in -lpng... no
checking if PNG package is complete... no -- some components failed test

Ending with following summary:

======== 8< ======== 8< ========
Delegate Configuration:
BZLIB             --with-bzlib=yes              yes
DPS               --with-dps=no                 no
FlashPIX          --with-fpx=yes                no (failed tests)
FreeType 2.0      --with-ttf=yes                yes
Ghostscript       None                          gs (8.64)
Ghostscript fonts --with-gs-font-dir=default
/usr/local/share/ghostscript/fonts/
Ghostscript lib   --with-gslib=no               no
JBIG              --with-jbig=yes               yes
JPEG v1           --with-jpeg=yes               no (failed tests)
JPEG-2000         --with-jp2=yes                no (failed tests)
LCMS              --with-lcms=yes               no (failed tests)
Magick++          --with-magick-plus-plus=yes   yes
PERL              --with-perl=no                no
PNG               --with-png=yes                no (failed tests)
TIFF              --with-tiff=yes               yes
TRIO              --with-trio=yes               no
Windows fonts     --with-windows-font-dir=      none
WMF               --with-wmf=yes                yes
X11               --with-x=                     no
XML               --with-xml=yes                yes
ZLIB              --with-zlib=yes               yes

X11 Configuration:
 Not using X11.

Options used to compile and link:
 LDFLAGS  = -pthread -L/usr/local/lib -L/usr/local/lib
 LIBS     = -ljbig -ltiff -lfreetype -lwmflite -lbz2 -lxml2 -lz -lm
-lgomp -lpthread
======== 8< ======== 8< ========

# make showconfig
===> The following configuration options are available for GraphicsMagick-1.3.7:
    Q8BIT=off "Use 8-bit pixels (speed) instead of 16 (quality)"
    FPX=on "Enable FlashPIX support"
    DPS=off "Enable Display Ghostscript support"
    OPENMP=on "Enable OpenMP support"
    SSE=off "Enable SSE opcodes on supported CPUs"
    TESTS=on "Run bundled self-tests after build"
===> Use 'make config' to modify these settings
ghost# make -V WITHOUT_X11

# make -V CONFIGURE_ARGS
--without-perl --enable-shared --enable-static
--with-ltdl-include=/usr/local/include  --with-ltdl-lib=/usr/local/lib
--with-fpx --without-dps --with-threads --enable-openmp
--disable-openmp-slow --with-quantum-depth=16 --prefix=/usr/local
${_LATE_CONFIGURE_ARGS}
# make -V CONFIGURE_ENV
CPPFLAGS="-I/usr/local/include"        LDFLAGS="-L/usr/local/lib"
LDFLAGS=-pthread SHELL=/bin/sh CONFIG_SHELL=/bin/sh
LIBTOOL=/usr/local/bin/libtool LIBTOOLIZE=/usr/local/bin/libtoolize
LIBTOOL_M4=/usr/local/share/aclocal/libtool.m4
lt_cv_sys_max_cmd_len=262144


Note that I don't have X libraries, however I did not set WITHOUT_X11.
Not only GraphicsMagick configure script is broken because it
autodisables features instead of failing,
but port's Makefile is missing explicit dependency on X11 libraries.
Oh and X11 OPTION would be nice too ;)


But back to CONFIGURE_ENV, this clearly cannot work because:

$ LDFLAGS="-L/usr/local/lib" LDFLAGS=-pthread printenv LDFLAGS
-pthread

What's your `make -V CONFIGURE_ENV` ?

> Without your patch, I see this at the end of the configure output:
>
> LDFLAGS  = -L/usr/local/lib -pthread -L/usr/local/lib -R/usr/local/lib
> - -L/usr/local/lib -L/usr/local/lib
> LIBS     = -ljbig -llcms -ltiff -lfreetype -ljasper -ljpeg -lpng -lfpx
> - -lwmflite -ldpstk -ldps -lXext -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm
> - -lgomp -lpthread
>


Well given my result of:
LDFLAGS  = -pthread -L/usr/local/lib -L/usr/local/lib

I'm missing two instances of -L/usr/local/lib and one of
-R/usr/local/lib but that
should not matter.

> Let me know if you see something different.

>
Comment 4 dfilter service freebsd_committer freebsd_triage 2009-11-15 18:54:36 UTC
glarkin     2009-11-15 18:54:23 UTC

  FreeBSD ports repository

  Modified files:
    graphics/GraphicsMagick12 Makefile 
    graphics/GraphicsMagick13 Makefile 
  Log:
  - Added explicit X11 support option
  
  - Fixed LDFLAGS handling when OpenMP is enabled and X11 support is disabled.
    The previous way it was handled caused optional image support (JPG, PNG,
    etc.) to fail
  
  NOTE: graphics/GraphicsMagick is not affected since it doesn't have OpenMP
        support
  
  PR:             ports/139975
  Submitted by:   Marcin Wisnicki <mwisnicki+freebsd@gmail.com>
  
  Revision  Changes    Path
  1.32      +6 -3      ports/graphics/GraphicsMagick12/Makefile
  1.35      +6 -3      ports/graphics/GraphicsMagick13/Makefile
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 5 Greg Larkin freebsd_committer freebsd_triage 2009-11-15 18:54:51 UTC
State Changed
From-To: open->closed

Committed, thank you!