New patches for multiquantum

Questions and postings pertaining to the development of ImageMagick, feature enhancements, and ImageMagick internals. ImageMagick source code and algorithms are discussed here. Usage questions which are too arcane for the normal user list should also be posted here.
Post Reply
broucaries
Posts: 467
Joined: 2008-12-21T11:51:10-07:00

New patches for multiquantum

Post by broucaries »

Hi,

I have done a few patch for multi arch multi quantum:
- first one is an multiarch enhancement, it allow to have all except magick-baseconfig.h architecture independant.
- the second one allow headers to be quantum depth neutral. At the price of using two define during compilation, but old automatic ways work also.
It will allow to install only once the headers file.

Please found the patches at usual mail adress.

Next step will be to have multiple perl magick for each quantum depth.
Image::Magick::Q16 for instance

In order to be backward compatible we will need to alias Image::Magick to default implementation Image::Magick::Q16 for instance.
Using http://search.cpan.org/~ovid/aliased-0. ... aliased.pm it is only a matter of doing in magick.pm
use aliased "Image::Magick::Q16" => "Image::Magick";

Thanks

Bastien
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: New patches for multiquantum

Post by magick »

Thanks for the arch patches. Look for them in ImageMagick SVN in about an hour.
broucaries
Posts: 467
Joined: 2008-12-21T11:51:10-07:00

Re: New patches for multiquantum

Post by broucaries »

I have created a new patch for multiquantum and perl. Please review.

It does not pass the whole test suite (I forget @EXPORT some routine). Please review.
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: New patches for multiquantum

Post by magick »

We have not added this patch to SVN yet. In our development environment we added the patch and got:
  • [magick@studio PerlMagick]# perl Makefile.PL
    Warning: -L../magick/.libs changed to -L/home/cristy/ImageMagick-6.8.1-9/PerlMagick/../magick/.libs
    Note (probably harmless): No library found for -lperl
    Warning: -L../../magick/.libs changed to -L/home/cristy/ImageMagick-6.8.1-9/PerlMagick/QUANTUM/../../magick/.libs
    Note (probably harmless): No library found for -lperl
    Writing Makefile for Image::Magick::Q16
    Writing MYMETA.yml and MYMETA.json
    Writing Makefile for Image::Magick
    Writing MYMETA.yml and MYMETA.json
    [magick@studio PerlMagick]# make
    Skip blib/lib/Image/Magick.pm (unchanged)
    make[1]: Entering directory `/home/cristy/ImageMagick-6.8.1-9/PerlMagick/QUANTUM'
    make[1]: *** No rule to make target `Q16.pm', needed by `pm_to_blib'. Stop.
    make[1]: Leaving directory `/home/cristy/ImageMagick-6.8.1-9/PerlMagick/QUANTUM'
    make: *** [subdirs] Error 2
broucaries
Posts: 467
Joined: 2008-12-21T11:51:10-07:00

Re: New patches for multiquantum

Post by broucaries »

I know it need automaker in order to work

Do
Autoreconf -f -i
Make dist-clean
Configure --with-perl
Make perl-build

I am not a perl monk so I use automake to do substitution

Might be achiviable in perlmaker?

Bastien
broucaries
Posts: 467
Joined: 2008-12-21T11:51:10-07:00

Re: New patches for multiquantum

Post by broucaries »

Have you tried using automake ?

bastien
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: New patches for multiquantum

Post by magick »

We tried automake and autoreconf, but returned the same result:
  • cd PerlMagick && /usr/bin/perl Makefile.PL
    Warning: -L../magick/.libs changed to -L/home/cristy/ImageMagick-6.8.1-10/PerlMagick/../magick/.libs
    Note (probably harmless): No library found for -lperl
    Warning: -L../../magick/.libs changed to -L/home/cristy/ImageMagick-6.8.1-10/PerlMagick/QUANTUM/../../magick/.libs
    Note (probably harmless): No library found for -lperl
    Writing Makefile for Image::Magick::Q16
    Writing MYMETA.yml and MYMETA.json
    Writing Makefile for Image::Magick
    Writing MYMETA.yml and MYMETA.json
    ( cd PerlMagick && make CC='gcc -std=gnu99 -std=gnu99' )
    make[1]: Entering directory `/home/cristy/ImageMagick-6.8.1-10/PerlMagick'
    Skip blib/lib/Image/Magick.pm (unchanged)
    make[2]: Entering directory `/home/cristy/ImageMagick-6.8.1-10/PerlMagick/QUANTUM'
    make[2]: *** No rule to make target `Q16.pm', needed by `pm_to_blib'. Stop.
    make[2]: Leaving directory `/home/cristy/ImageMagick-6.8.1-10/PerlMagick/QUANTUM'
    make[1]: *** [subdirs] Error 2
    make[1]: Leaving directory `/home/cristy/ImageMagick-6.8.1-10/PerlMagick'
    make: *** [perl-build] Error 2
Post Reply