From 8083a74b34a0d7b12e24bf15be3db5e77635e7b0 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Mon, 2 Jan 2012 13:53:33 +0000 Subject: main/gimp: fix underlinking, enable lcms, tiff, poppler and gio --- main/gimp/APKBUILD | 20 +- main/gimp/gimp-2.6.11-underlinking.patch | 3021 ++++++++++++++++++++++++++++++ main/gimp/gimp-poppler-0.18.patch | 476 +++++ 3 files changed, 3511 insertions(+), 6 deletions(-) create mode 100644 main/gimp/gimp-2.6.11-underlinking.patch create mode 100644 main/gimp/gimp-poppler-0.18.patch (limited to 'main/gimp') diff --git a/main/gimp/APKBUILD b/main/gimp/APKBUILD index d297aae275..208d164f7d 100644 --- a/main/gimp/APKBUILD +++ b/main/gimp/APKBUILD @@ -1,20 +1,24 @@ # Maintainer: Natanael Copa pkgname=gimp pkgver=2.6.11 -pkgrel=6 +pkgrel=7 pkgdesc="GNU Image Manipulation Program" url="http://www.gimp.org/" arch="all" license="GPL" makedepends="gtk+-dev libxpm-dev libxmu-dev librsvg-dev dbus-glib-dev libexif-dev desktop-file-utils intltool gegl-dev tiff-dev - jpeg-dev libpng-dev" + jpeg-dev libpng-dev iso-codes lcms-dev poppler-gtk-dev + autoconf automake libtool" install= subpackages="$pkgname-dev $pkgname-doc $pkgname-lang" source="ftp://ftp.$pkgname.org/pub/$pkgname/v2.6/$pkgname-$pkgver.tar.bz2 gimp-libpng1.5-compat.patch gimp-curl-fix.patch - cve-2011-2896.patch" + cve-2011-2896.patch + gimp-poppler-0.18.patch + gimp-2.6.11-underlinking.patch + " _builddir="${srcdir}/${pkgname}-${pkgver}" prepare() { @@ -28,18 +32,20 @@ prepare() { ;; esac done + libtoolize --force || return 1 + aclocal -I m4macros && autoconf && automake || return 1 } build() { cd "$_builddir" ./configure --prefix=/usr \ + --disable-dependency-tracking \ --sysconfdir=/etc \ --enable-mp \ --enable-gimp-console \ --enable-gimp-remote \ - --disable-devel-docs \ --disable-python \ - --without-gvfs \ + --with-gvfs \ --without-gnomevfs \ --with-gif-compression=lzw \ --without-aa || return 1 @@ -56,4 +62,6 @@ package() { md5sums="bb2939fe13e54fc7255cef5d097bb5dd gimp-2.6.11.tar.bz2 7dfc4006676fdea887f1883ccc6c7772 gimp-libpng1.5-compat.patch 678010acec374e06140e65f7de24ff69 gimp-curl-fix.patch -c317eae455c808b8434e9b600afee648 cve-2011-2896.patch" +c317eae455c808b8434e9b600afee648 cve-2011-2896.patch +bfc73f80e911ed7a7d500d80973469f1 gimp-poppler-0.18.patch +b1fde5d284544440ae2c556b380800ab gimp-2.6.11-underlinking.patch" diff --git a/main/gimp/gimp-2.6.11-underlinking.patch b/main/gimp/gimp-2.6.11-underlinking.patch new file mode 100644 index 0000000000..99ed46be6c --- /dev/null +++ b/main/gimp/gimp-2.6.11-underlinking.patch @@ -0,0 +1,3021 @@ + libgimpthumb/Makefile.am | 2 +- + libgimpthumb/Makefile.in | 2 +- + plug-ins/Makefile.am | 1 + + plug-ins/color-rotate/Makefile.am | 3 +- + plug-ins/color-rotate/Makefile.in | 3 +- + plug-ins/common/Makefile.am | 316 +++++++++++++++++-------------- + plug-ins/common/Makefile.in | 294 +++++++++++++++-------------- + plug-ins/flame/Makefile.am | 3 +- + plug-ins/flame/Makefile.in | 3 +- + plug-ins/fractal-explorer/Makefile.am | 3 +- + plug-ins/fractal-explorer/Makefile.in | 3 +- + plug-ins/gfig/Makefile.am | 3 +- + plug-ins/gfig/Makefile.in | 3 +- + plug-ins/gimpressionist/Makefile.am | 3 +- + plug-ins/gimpressionist/Makefile.in | 3 +- + plug-ins/gradient-flare/Makefile.am | 3 +- + plug-ins/gradient-flare/Makefile.in | 3 +- + plug-ins/ifs-compose/Makefile.am | 3 +- + plug-ins/ifs-compose/Makefile.in | 3 +- + plug-ins/imagemap/Makefile.am | 3 +- + plug-ins/imagemap/Makefile.in | 3 +- + plug-ins/lighting/Makefile.am | 3 +- + plug-ins/lighting/Makefile.in | 3 +- + plug-ins/map-object/Makefile.am | 3 +- + plug-ins/map-object/Makefile.in | 3 +- + plug-ins/pagecurl/Makefile.am | 3 +- + plug-ins/pagecurl/Makefile.in | 3 +- + plug-ins/script-fu/Makefile.am | 3 +- + plug-ins/script-fu/Makefile.in | 3 +- + plug-ins/selection-to-path/Makefile.am | 3 +- + plug-ins/selection-to-path/Makefile.in | 3 +- + 31 files changed, 381 insertions(+), 312 deletions(-) + +diff --git a/libgimpthumb/Makefile.am b/libgimpthumb/Makefile.am +index 2e7b531..1572fa7 100644 +--- a/libgimpthumb/Makefile.am ++++ b/libgimpthumb/Makefile.am +@@ -86,7 +86,7 @@ noinst_PROGRAMS = gimp-thumbnail-list + + gimp_thumbnail_list_SOURCES = gimp-thumbnail-list.c + +-gimp_thumbnail_list_LDADD = libgimpthumb-$(GIMP_API_VERSION).la ++gimp_thumbnail_list_LDADD = libgimpthumb-$(GIMP_API_VERSION).la $(GLIB_LIBS) + + + install-data-local: install-ms-lib install-libtool-import-lib +diff --git a/libgimpthumb/Makefile.in b/libgimpthumb/Makefile.in +index 92ec7d4..d3f333f 100644 +--- a/libgimpthumb/Makefile.in ++++ b/libgimpthumb/Makefile.in +@@ -462,7 +462,7 @@ libgimpthumb_2_0_la_LDFLAGS = \ + + libgimpthumb_2_0_la_LIBADD = $(GDK_PIXBUF_LIBS) $(GLIB_LIBS) + gimp_thumbnail_list_SOURCES = gimp-thumbnail-list.c +-gimp_thumbnail_list_LDADD = libgimpthumb-$(GIMP_API_VERSION).la ++gimp_thumbnail_list_LDADD = libgimpthumb-$(GIMP_API_VERSION).la $(GLIB_LIBS) + + # + # rules to generate built sources +diff --git a/plug-ins/Makefile.am b/plug-ins/Makefile.am +index 25eab53..922ce65 100644 +--- a/plug-ins/Makefile.am ++++ b/plug-ins/Makefile.am +@@ -3,6 +3,7 @@ + EXTRA_DIST = \ + makefile.msc + ++LDADD = -lm + + if BUILD_HELP_BROWSER + help_browser = help-browser +diff --git a/plug-ins/color-rotate/Makefile.am b/plug-ins/color-rotate/Makefile.am +index c713c8c..34366cb 100644 +--- a/plug-ins/color-rotate/Makefile.am ++++ b/plug-ins/color-rotate/Makefile.am +@@ -49,4 +49,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/color-rotate/Makefile.in b/plug-ins/color-rotate/Makefile.in +index 0d8ae02..763aac7 100644 +--- a/plug-ins/color-rotate/Makefile.in ++++ b/plug-ins/color-rotate/Makefile.in +@@ -460,7 +460,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-recursive + +diff --git a/plug-ins/common/Makefile.am b/plug-ins/common/Makefile.am +index 66dc6dd..7c39a1f 100644 +--- a/plug-ins/common/Makefile.am ++++ b/plug-ins/common/Makefile.am +@@ -35,6 +35,7 @@ INCLUDES = \ + $(GTK_CFLAGS) \ + -I$(includedir) + ++ + libexec_PROGRAMS = \ + alien-map \ + align-layers \ +@@ -222,7 +223,8 @@ alien_map_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + align_layers_SOURCES = \ + align-layers.c +@@ -238,7 +240,8 @@ align_layers_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + animation_optimize_SOURCES = \ + animation-optimize.c +@@ -251,7 +254,7 @@ animation_optimize_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + animation_play_SOURCES = \ + animation-play.c +@@ -267,7 +270,8 @@ animation_play_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + antialias_SOURCES = \ + antialias.c +@@ -280,7 +284,8 @@ antialias_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + apply_canvas_SOURCES = \ + apply-canvas.c +@@ -296,7 +301,8 @@ apply_canvas_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) ++ -lm + + blinds_SOURCES = \ + blinds.c +@@ -312,7 +318,8 @@ blinds_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + blur_SOURCES = \ + blur.c +@@ -325,7 +332,8 @@ blur_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + blur_gauss_SOURCES = \ + blur-gauss.c +@@ -341,7 +349,8 @@ blur_gauss_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + blur_gauss_selective_CFLAGS = $(MMX_EXTRA_CFLAGS) + +@@ -359,7 +368,8 @@ blur_gauss_selective_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + blur_motion_SOURCES = \ + blur-motion.c +@@ -375,7 +385,8 @@ blur_motion_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + border_average_SOURCES = \ + border-average.c +@@ -391,7 +402,8 @@ border_average_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + bump_map_SOURCES = \ + bump-map.c +@@ -407,7 +419,8 @@ bump_map_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + cartoon_SOURCES = \ + cartoon.c +@@ -423,7 +436,8 @@ cartoon_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + channel_mixer_SOURCES = \ + channel-mixer.c +@@ -439,7 +453,8 @@ channel_mixer_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + checkerboard_SOURCES = \ + checkerboard.c +@@ -455,7 +470,8 @@ checkerboard_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + cml_explorer_SOURCES = \ + cml-explorer.c +@@ -471,7 +487,8 @@ cml_explorer_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + color_cube_analyze_SOURCES = \ + color-cube-analyze.c +@@ -487,7 +504,8 @@ color_cube_analyze_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + color_enhance_SOURCES = \ + color-enhance.c +@@ -503,7 +521,8 @@ color_enhance_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + color_exchange_SOURCES = \ + color-exchange.c +@@ -519,7 +538,8 @@ color_exchange_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + color_to_alpha_SOURCES = \ + color-to-alpha.c +@@ -535,7 +555,8 @@ color_to_alpha_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + colorify_SOURCES = \ + colorify.c +@@ -551,7 +572,8 @@ colorify_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + colormap_remap_SOURCES = \ + colormap-remap.c +@@ -567,7 +589,8 @@ colormap_remap_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + compose_SOURCES = \ + compose.c +@@ -583,7 +606,8 @@ compose_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) ++ -lm + + contrast_normalize_SOURCES = \ + contrast-normalize.c +@@ -596,7 +620,8 @@ contrast_normalize_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) ++ -lm + + contrast_retinex_SOURCES = \ + contrast-retinex.c +@@ -612,7 +637,8 @@ contrast_retinex_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + contrast_stretch_SOURCES = \ + contrast-stretch.c +@@ -625,7 +651,8 @@ contrast_stretch_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + contrast_stretch_hsv_SOURCES = \ + contrast-stretch-hsv.c +@@ -638,7 +665,8 @@ contrast_stretch_hsv_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + convolution_matrix_SOURCES = \ + convolution-matrix.c +@@ -654,7 +682,8 @@ convolution_matrix_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) ++ -lm + + crop_auto_SOURCES = \ + crop-auto.c +@@ -667,7 +696,8 @@ crop_auto_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + crop_zealous_SOURCES = \ + crop-zealous.c +@@ -696,7 +726,7 @@ cubism_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + curve_bend_SOURCES = \ + curve-bend.c +@@ -712,7 +742,7 @@ curve_bend_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + decompose_SOURCES = \ + decompose.c +@@ -728,7 +758,7 @@ decompose_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + deinterlace_SOURCES = \ + deinterlace.c +@@ -744,7 +774,7 @@ deinterlace_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + depth_merge_SOURCES = \ + depth-merge.c +@@ -760,7 +790,7 @@ depth_merge_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + despeckle_SOURCES = \ + despeckle.c +@@ -776,7 +806,7 @@ despeckle_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + destripe_SOURCES = \ + destripe.c +@@ -792,7 +822,7 @@ destripe_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + diffraction_SOURCES = \ + diffraction.c +@@ -808,7 +838,7 @@ diffraction_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + displace_SOURCES = \ + displace.c +@@ -824,7 +854,7 @@ displace_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_SOURCES = \ + edge.c +@@ -840,7 +870,7 @@ edge_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_dog_SOURCES = \ + edge-dog.c +@@ -856,7 +886,7 @@ edge_dog_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_laplace_SOURCES = \ + edge-laplace.c +@@ -869,7 +899,7 @@ edge_laplace_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_neon_SOURCES = \ + edge-neon.c +@@ -885,7 +915,7 @@ edge_neon_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_sobel_SOURCES = \ + edge-sobel.c +@@ -901,7 +931,7 @@ edge_sobel_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + emboss_SOURCES = \ + emboss.c +@@ -917,7 +947,7 @@ emboss_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + engrave_SOURCES = \ + engrave.c +@@ -933,7 +963,7 @@ engrave_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_aa_SOURCES = \ + file-aa.c +@@ -950,7 +980,7 @@ file_aa_LDADD = \ + $(GTK_LIBS) \ + $(AA_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_cel_SOURCES = \ + file-cel.c +@@ -966,7 +996,7 @@ file_cel_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_compressor_SOURCES = \ + file-compressor.c +@@ -979,7 +1009,7 @@ file_compressor_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_csource_SOURCES = \ + file-csource.c +@@ -995,7 +1025,7 @@ file_csource_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_desktop_link_SOURCES = \ + file-desktop-link.c +@@ -1008,7 +1038,7 @@ file_desktop_link_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_dicom_SOURCES = \ + file-dicom.c +@@ -1024,7 +1054,7 @@ file_dicom_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_gbr_SOURCES = \ + file-gbr.c +@@ -1040,7 +1070,7 @@ file_gbr_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_gif_load_SOURCES = \ + file-gif-load.c +@@ -1053,7 +1083,7 @@ file_gif_load_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_gif_save_SOURCES = \ + file-gif-save.c +@@ -1069,7 +1099,7 @@ file_gif_save_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_gih_SOURCES = \ + file-gih.c +@@ -1085,7 +1115,7 @@ file_gih_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_glob_SOURCES = \ + file-glob.c +@@ -1098,7 +1128,7 @@ file_glob_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_header_SOURCES = \ + file-header.c +@@ -1114,7 +1144,7 @@ file_header_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_html_table_SOURCES = \ + file-html-table.c +@@ -1130,7 +1160,7 @@ file_html_table_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_mng_SOURCES = \ + file-mng.c +@@ -1147,7 +1177,7 @@ file_mng_LDADD = \ + $(GTK_LIBS) \ + $(MNG_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pat_SOURCES = \ + file-pat.c +@@ -1163,7 +1193,7 @@ file_pat_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pcx_SOURCES = \ + file-pcx.c +@@ -1179,7 +1209,7 @@ file_pcx_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pdf_CFLAGS = $(POPPLER_CFLAGS) + +@@ -1198,7 +1228,7 @@ file_pdf_LDADD = \ + $(GTK_LIBS) \ + $(POPPLER_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pix_SOURCES = \ + file-pix.c +@@ -1214,7 +1244,7 @@ file_pix_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_png_CFLAGS = $(PNG_CFLAGS) + +@@ -1233,7 +1263,7 @@ file_png_LDADD = \ + $(GTK_LIBS) \ + $(PNG_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pnm_SOURCES = \ + file-pnm.c +@@ -1249,7 +1279,7 @@ file_pnm_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_ps_SOURCES = \ + file-ps.c +@@ -1265,7 +1295,7 @@ file_ps_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_psp_SOURCES = \ + file-psp.c +@@ -1282,7 +1312,7 @@ file_psp_LDADD = \ + $(GTK_LIBS) \ + $(Z_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_raw_SOURCES = \ + file-raw.c +@@ -1298,7 +1328,7 @@ file_raw_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_sunras_SOURCES = \ + file-sunras.c +@@ -1314,7 +1344,7 @@ file_sunras_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_svg_CFLAGS = $(SVG_CFLAGS) + +@@ -1333,7 +1363,7 @@ file_svg_LDADD = \ + $(GTK_LIBS) \ + $(SVG_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_tga_SOURCES = \ + file-tga.c +@@ -1349,7 +1379,7 @@ file_tga_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_tiff_load_SOURCES = \ + file-tiff-load.c +@@ -1366,7 +1396,7 @@ file_tiff_load_LDADD = \ + $(GTK_LIBS) \ + $(TIFF_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_tiff_save_SOURCES = \ + file-tiff-save.c +@@ -1383,7 +1413,7 @@ file_tiff_save_LDADD = \ + $(GTK_LIBS) \ + $(TIFF_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_wmf_CFLAGS = $(WMF_CFLAGS) + +@@ -1402,7 +1432,7 @@ file_wmf_LDADD = \ + $(GTK_LIBS) \ + $(WMF_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_xbm_SOURCES = \ + file-xbm.c +@@ -1418,7 +1448,7 @@ file_xbm_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_xpm_SOURCES = \ + file-xpm.c +@@ -1435,7 +1465,7 @@ file_xpm_LDADD = \ + $(GTK_LIBS) \ + $(XPM_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_xwd_SOURCES = \ + file-xwd.c +@@ -1451,7 +1481,7 @@ file_xwd_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + film_SOURCES = \ + film.c +@@ -1467,7 +1497,7 @@ film_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + filter_pack_SOURCES = \ + filter-pack.c +@@ -1483,7 +1513,7 @@ filter_pack_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + fractal_trace_SOURCES = \ + fractal-trace.c +@@ -1499,7 +1529,7 @@ fractal_trace_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + gee_SOURCES = \ + gee.c +@@ -1515,7 +1545,7 @@ gee_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + gee_zoom_SOURCES = \ + gee-zoom.c +@@ -1531,7 +1561,7 @@ gee_zoom_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + gradient_map_SOURCES = \ + gradient-map.c +@@ -1544,7 +1574,7 @@ gradient_map_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + grid_SOURCES = \ + grid.c +@@ -1560,7 +1590,7 @@ grid_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + guillotine_SOURCES = \ + guillotine.c +@@ -1573,7 +1603,7 @@ guillotine_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + hot_SOURCES = \ + hot.c +@@ -1589,7 +1619,7 @@ hot_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + illusion_SOURCES = \ + illusion.c +@@ -1605,7 +1635,7 @@ illusion_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + iwarp_SOURCES = \ + iwarp.c +@@ -1621,7 +1651,7 @@ iwarp_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + jigsaw_SOURCES = \ + jigsaw.c +@@ -1637,7 +1667,7 @@ jigsaw_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + lcms_CFLAGS = $(LCMS_CFLAGS) + +@@ -1656,7 +1686,7 @@ lcms_LDADD = \ + $(GTK_LIBS) \ + $(LCMS_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + lens_apply_SOURCES = \ + lens-apply.c +@@ -1672,7 +1702,7 @@ lens_apply_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + lens_distortion_SOURCES = \ + lens-distortion.c +@@ -1688,7 +1718,7 @@ lens_distortion_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + lens_flare_SOURCES = \ + lens-flare.c +@@ -1704,7 +1734,7 @@ lens_flare_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + mail_SOURCES = \ + mail.c +@@ -1720,7 +1750,7 @@ mail_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + max_rgb_SOURCES = \ + max-rgb.c +@@ -1736,7 +1766,7 @@ max_rgb_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + mosaic_SOURCES = \ + mosaic.c +@@ -1752,7 +1782,7 @@ mosaic_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + newsprint_SOURCES = \ + newsprint.c +@@ -1768,7 +1798,7 @@ newsprint_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + nl_filter_SOURCES = \ + nl-filter.c +@@ -1784,7 +1814,7 @@ nl_filter_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_hsv_SOURCES = \ + noise-hsv.c +@@ -1800,7 +1830,7 @@ noise_hsv_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_randomize_SOURCES = \ + noise-randomize.c +@@ -1816,7 +1846,7 @@ noise_randomize_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_rgb_SOURCES = \ + noise-rgb.c +@@ -1832,7 +1862,7 @@ noise_rgb_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_solid_SOURCES = \ + noise-solid.c +@@ -1848,7 +1878,7 @@ noise_solid_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_spread_SOURCES = \ + noise-spread.c +@@ -1864,7 +1894,7 @@ noise_spread_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + nova_SOURCES = \ + nova.c +@@ -1880,7 +1910,7 @@ nova_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + oilify_SOURCES = \ + oilify.c +@@ -1896,7 +1926,7 @@ oilify_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + photocopy_SOURCES = \ + photocopy.c +@@ -1912,7 +1942,7 @@ photocopy_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + pixelize_SOURCES = \ + pixelize.c +@@ -1928,7 +1958,7 @@ pixelize_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + plasma_SOURCES = \ + plasma.c +@@ -1944,7 +1974,7 @@ plasma_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + plugin_browser_SOURCES = \ + plugin-browser.c +@@ -1960,7 +1990,7 @@ plugin_browser_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + polar_coords_SOURCES = \ + polar-coords.c +@@ -1976,7 +2006,7 @@ polar_coords_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + procedure_browser_SOURCES = \ + procedure-browser.c +@@ -1992,7 +2022,7 @@ procedure_browser_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + qbist_SOURCES = \ + qbist.c +@@ -2008,7 +2038,7 @@ qbist_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + red_eye_removal_SOURCES = \ + red-eye-removal.c +@@ -2024,7 +2054,7 @@ red_eye_removal_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + ripple_SOURCES = \ + ripple.c +@@ -2040,7 +2070,7 @@ ripple_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + rotate_SOURCES = \ + rotate.c +@@ -2053,7 +2083,7 @@ rotate_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sample_colorize_SOURCES = \ + sample-colorize.c +@@ -2069,7 +2099,7 @@ sample_colorize_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + screenshot_CFLAGS = $(XFIXES_CFLAGS) + +@@ -2088,7 +2118,7 @@ screenshot_LDADD = \ + $(GTK_LIBS) \ + $(SCREENSHOT_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + semi_flatten_SOURCES = \ + semi-flatten.c +@@ -2101,7 +2131,7 @@ semi_flatten_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sharpen_SOURCES = \ + sharpen.c +@@ -2117,7 +2147,7 @@ sharpen_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + shift_SOURCES = \ + shift.c +@@ -2133,7 +2163,7 @@ shift_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sinus_SOURCES = \ + sinus.c +@@ -2149,7 +2179,7 @@ sinus_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + smooth_palette_SOURCES = \ + smooth-palette.c +@@ -2165,7 +2195,7 @@ smooth_palette_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + softglow_SOURCES = \ + softglow.c +@@ -2181,7 +2211,7 @@ softglow_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sparkle_SOURCES = \ + sparkle.c +@@ -2197,7 +2227,7 @@ sparkle_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sphere_designer_SOURCES = \ + sphere-designer.c +@@ -2213,7 +2243,7 @@ sphere_designer_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + threshold_alpha_SOURCES = \ + threshold-alpha.c +@@ -2229,7 +2259,7 @@ threshold_alpha_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_SOURCES = \ + tile.c +@@ -2245,7 +2275,7 @@ tile_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_glass_SOURCES = \ + tile-glass.c +@@ -2261,7 +2291,7 @@ tile_glass_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_paper_SOURCES = \ + tile-paper.c +@@ -2277,7 +2307,7 @@ tile_paper_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_seamless_SOURCES = \ + tile-seamless.c +@@ -2290,7 +2320,7 @@ tile_seamless_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_small_SOURCES = \ + tile-small.c +@@ -2306,7 +2336,7 @@ tile_small_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + unit_editor_SOURCES = \ + unit-editor.c +@@ -2322,7 +2352,7 @@ unit_editor_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + unsharp_mask_SOURCES = \ + unsharp-mask.c +@@ -2338,7 +2368,7 @@ unsharp_mask_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + value_invert_SOURCES = \ + value-invert.c +@@ -2351,7 +2381,7 @@ value_invert_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + value_propagate_SOURCES = \ + value-propagate.c +@@ -2367,7 +2397,7 @@ value_propagate_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + van_gogh_lic_SOURCES = \ + van-gogh-lic.c +@@ -2383,7 +2413,7 @@ van_gogh_lic_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + video_SOURCES = \ + video.c +@@ -2399,7 +2429,7 @@ video_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + warp_SOURCES = \ + warp.c +@@ -2415,7 +2445,7 @@ warp_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + waves_SOURCES = \ + waves.c +@@ -2431,7 +2461,7 @@ waves_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + web_browser_SOURCES = \ + web-browser.c +@@ -2444,7 +2474,7 @@ web_browser_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + whirl_pinch_SOURCES = \ + whirl-pinch.c +@@ -2460,7 +2490,7 @@ whirl_pinch_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + wind_SOURCES = \ + wind.c +@@ -2476,4 +2506,4 @@ wind_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm +diff --git a/plug-ins/common/Makefile.in b/plug-ins/common/Makefile.in +index 5fb299c..47811b0 100644 +--- a/plug-ins/common/Makefile.in ++++ b/plug-ins/common/Makefile.in +@@ -1458,6 +1458,8 @@ INCLUDES = \ + alien_map_SOURCES = \ + alien-map.c + ++LD = -lm ++ + alien_map_LDADD = \ + $(libgimpui) \ + $(libgimpwidgets) \ +@@ -1469,7 +1471,7 @@ alien_map_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + align_layers_SOURCES = \ + align-layers.c +@@ -1485,7 +1487,8 @@ align_layers_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + animation_optimize_SOURCES = \ + animation-optimize.c +@@ -1498,7 +1501,7 @@ animation_optimize_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + animation_play_SOURCES = \ + animation-play.c +@@ -1514,7 +1517,8 @@ animation_play_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + antialias_SOURCES = \ + antialias.c +@@ -1527,7 +1531,7 @@ antialias_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + apply_canvas_SOURCES = \ + apply-canvas.c +@@ -1559,7 +1563,7 @@ blinds_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + blur_SOURCES = \ + blur.c +@@ -1572,7 +1576,8 @@ blur_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + blur_gauss_SOURCES = \ + blur-gauss.c +@@ -1588,7 +1593,8 @@ blur_gauss_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + blur_gauss_selective_CFLAGS = $(MMX_EXTRA_CFLAGS) + blur_gauss_selective_SOURCES = \ +@@ -1605,7 +1611,7 @@ blur_gauss_selective_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + blur_motion_SOURCES = \ + blur-motion.c +@@ -1621,7 +1627,8 @@ blur_motion_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + border_average_SOURCES = \ + border-average.c +@@ -1637,7 +1644,8 @@ border_average_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + bump_map_SOURCES = \ + bump-map.c +@@ -1653,7 +1661,8 @@ bump_map_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + cartoon_SOURCES = \ + cartoon.c +@@ -1669,7 +1678,8 @@ cartoon_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + channel_mixer_SOURCES = \ + channel-mixer.c +@@ -1685,7 +1695,8 @@ channel_mixer_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + checkerboard_SOURCES = \ + checkerboard.c +@@ -1701,7 +1712,7 @@ checkerboard_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + cml_explorer_SOURCES = \ + cml-explorer.c +@@ -1717,7 +1728,7 @@ cml_explorer_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + color_cube_analyze_SOURCES = \ + color-cube-analyze.c +@@ -1733,7 +1744,7 @@ color_cube_analyze_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + color_enhance_SOURCES = \ + color-enhance.c +@@ -1749,7 +1760,8 @@ color_enhance_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + color_exchange_SOURCES = \ + color-exchange.c +@@ -1765,7 +1777,7 @@ color_exchange_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + color_to_alpha_SOURCES = \ + color-to-alpha.c +@@ -1797,7 +1809,7 @@ colorify_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + colormap_remap_SOURCES = \ + colormap-remap.c +@@ -1829,7 +1841,7 @@ compose_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + contrast_normalize_SOURCES = \ + contrast-normalize.c +@@ -1842,7 +1854,7 @@ contrast_normalize_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + contrast_retinex_SOURCES = \ + contrast-retinex.c +@@ -1858,7 +1870,7 @@ contrast_retinex_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + contrast_stretch_SOURCES = \ + contrast-stretch.c +@@ -1871,7 +1883,7 @@ contrast_stretch_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + contrast_stretch_hsv_SOURCES = \ + contrast-stretch-hsv.c +@@ -1884,7 +1896,7 @@ contrast_stretch_hsv_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + convolution_matrix_SOURCES = \ + convolution-matrix.c +@@ -1900,7 +1912,7 @@ convolution_matrix_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + crop_auto_SOURCES = \ + crop-auto.c +@@ -1913,7 +1925,7 @@ crop_auto_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + crop_zealous_SOURCES = \ + crop-zealous.c +@@ -1926,7 +1938,7 @@ crop_zealous_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + cubism_SOURCES = \ + cubism.c +@@ -1942,7 +1954,7 @@ cubism_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + curve_bend_SOURCES = \ + curve-bend.c +@@ -1958,7 +1970,7 @@ curve_bend_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + decompose_SOURCES = \ + decompose.c +@@ -1974,7 +1986,7 @@ decompose_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + deinterlace_SOURCES = \ + deinterlace.c +@@ -1990,7 +2002,7 @@ deinterlace_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + depth_merge_SOURCES = \ + depth-merge.c +@@ -2006,7 +2018,7 @@ depth_merge_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + despeckle_SOURCES = \ + despeckle.c +@@ -2022,7 +2034,7 @@ despeckle_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + destripe_SOURCES = \ + destripe.c +@@ -2038,7 +2050,7 @@ destripe_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + diffraction_SOURCES = \ + diffraction.c +@@ -2054,7 +2066,7 @@ diffraction_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + displace_SOURCES = \ + displace.c +@@ -2070,7 +2082,7 @@ displace_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_SOURCES = \ + edge.c +@@ -2086,7 +2098,7 @@ edge_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_dog_SOURCES = \ + edge-dog.c +@@ -2102,7 +2114,7 @@ edge_dog_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_laplace_SOURCES = \ + edge-laplace.c +@@ -2115,7 +2127,7 @@ edge_laplace_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_neon_SOURCES = \ + edge-neon.c +@@ -2131,7 +2143,7 @@ edge_neon_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + edge_sobel_SOURCES = \ + edge-sobel.c +@@ -2147,7 +2159,7 @@ edge_sobel_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + emboss_SOURCES = \ + emboss.c +@@ -2163,7 +2175,7 @@ emboss_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + engrave_SOURCES = \ + engrave.c +@@ -2179,7 +2191,7 @@ engrave_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_aa_SOURCES = \ + file-aa.c +@@ -2196,7 +2208,7 @@ file_aa_LDADD = \ + $(GTK_LIBS) \ + $(AA_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_cel_SOURCES = \ + file-cel.c +@@ -2212,7 +2224,7 @@ file_cel_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_compressor_SOURCES = \ + file-compressor.c +@@ -2225,7 +2237,7 @@ file_compressor_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_csource_SOURCES = \ + file-csource.c +@@ -2241,7 +2253,7 @@ file_csource_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_desktop_link_SOURCES = \ + file-desktop-link.c +@@ -2254,7 +2266,7 @@ file_desktop_link_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_dicom_SOURCES = \ + file-dicom.c +@@ -2270,7 +2282,7 @@ file_dicom_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_gbr_SOURCES = \ + file-gbr.c +@@ -2286,7 +2298,7 @@ file_gbr_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_gif_load_SOURCES = \ + file-gif-load.c +@@ -2299,7 +2311,7 @@ file_gif_load_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_gif_save_SOURCES = \ + file-gif-save.c +@@ -2315,7 +2327,7 @@ file_gif_save_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_gih_SOURCES = \ + file-gih.c +@@ -2331,7 +2343,7 @@ file_gih_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_glob_SOURCES = \ + file-glob.c +@@ -2344,7 +2356,7 @@ file_glob_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_header_SOURCES = \ + file-header.c +@@ -2360,7 +2372,7 @@ file_header_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_html_table_SOURCES = \ + file-html-table.c +@@ -2376,7 +2388,7 @@ file_html_table_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_mng_SOURCES = \ + file-mng.c +@@ -2393,7 +2405,7 @@ file_mng_LDADD = \ + $(GTK_LIBS) \ + $(MNG_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pat_SOURCES = \ + file-pat.c +@@ -2409,7 +2421,7 @@ file_pat_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pcx_SOURCES = \ + file-pcx.c +@@ -2425,7 +2437,7 @@ file_pcx_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pdf_CFLAGS = $(POPPLER_CFLAGS) + file_pdf_SOURCES = \ +@@ -2443,7 +2455,7 @@ file_pdf_LDADD = \ + $(GTK_LIBS) \ + $(POPPLER_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pix_SOURCES = \ + file-pix.c +@@ -2459,7 +2471,7 @@ file_pix_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_png_CFLAGS = $(PNG_CFLAGS) + file_png_SOURCES = \ +@@ -2477,7 +2489,7 @@ file_png_LDADD = \ + $(GTK_LIBS) \ + $(PNG_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_pnm_SOURCES = \ + file-pnm.c +@@ -2493,7 +2505,7 @@ file_pnm_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_ps_SOURCES = \ + file-ps.c +@@ -2509,7 +2521,7 @@ file_ps_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_psp_SOURCES = \ + file-psp.c +@@ -2526,7 +2538,7 @@ file_psp_LDADD = \ + $(GTK_LIBS) \ + $(Z_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_raw_SOURCES = \ + file-raw.c +@@ -2542,7 +2554,7 @@ file_raw_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_sunras_SOURCES = \ + file-sunras.c +@@ -2558,7 +2570,7 @@ file_sunras_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_svg_CFLAGS = $(SVG_CFLAGS) + file_svg_SOURCES = \ +@@ -2576,7 +2588,7 @@ file_svg_LDADD = \ + $(GTK_LIBS) \ + $(SVG_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_tga_SOURCES = \ + file-tga.c +@@ -2592,7 +2604,7 @@ file_tga_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_tiff_load_SOURCES = \ + file-tiff-load.c +@@ -2609,7 +2621,7 @@ file_tiff_load_LDADD = \ + $(GTK_LIBS) \ + $(TIFF_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_tiff_save_SOURCES = \ + file-tiff-save.c +@@ -2626,7 +2638,7 @@ file_tiff_save_LDADD = \ + $(GTK_LIBS) \ + $(TIFF_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_wmf_CFLAGS = $(WMF_CFLAGS) + file_wmf_SOURCES = \ +@@ -2644,7 +2656,7 @@ file_wmf_LDADD = \ + $(GTK_LIBS) \ + $(WMF_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_xbm_SOURCES = \ + file-xbm.c +@@ -2660,7 +2672,7 @@ file_xbm_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_xpm_SOURCES = \ + file-xpm.c +@@ -2677,7 +2689,7 @@ file_xpm_LDADD = \ + $(GTK_LIBS) \ + $(XPM_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + file_xwd_SOURCES = \ + file-xwd.c +@@ -2693,7 +2705,7 @@ file_xwd_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + film_SOURCES = \ + film.c +@@ -2709,7 +2721,7 @@ film_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + filter_pack_SOURCES = \ + filter-pack.c +@@ -2725,7 +2737,7 @@ filter_pack_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + fractal_trace_SOURCES = \ + fractal-trace.c +@@ -2741,7 +2753,7 @@ fractal_trace_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + gee_SOURCES = \ + gee.c +@@ -2757,7 +2769,7 @@ gee_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + gee_zoom_SOURCES = \ + gee-zoom.c +@@ -2773,7 +2785,7 @@ gee_zoom_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + gradient_map_SOURCES = \ + gradient-map.c +@@ -2786,7 +2798,7 @@ gradient_map_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + grid_SOURCES = \ + grid.c +@@ -2802,7 +2814,7 @@ grid_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + guillotine_SOURCES = \ + guillotine.c +@@ -2815,7 +2827,7 @@ guillotine_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + hot_SOURCES = \ + hot.c +@@ -2831,7 +2843,7 @@ hot_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + illusion_SOURCES = \ + illusion.c +@@ -2847,7 +2859,7 @@ illusion_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + iwarp_SOURCES = \ + iwarp.c +@@ -2863,7 +2875,7 @@ iwarp_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + jigsaw_SOURCES = \ + jigsaw.c +@@ -2879,7 +2891,7 @@ jigsaw_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + lcms_CFLAGS = $(LCMS_CFLAGS) + lcms_SOURCES = \ +@@ -2897,7 +2909,7 @@ lcms_LDADD = \ + $(GTK_LIBS) \ + $(LCMS_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + lens_apply_SOURCES = \ + lens-apply.c +@@ -2913,7 +2925,7 @@ lens_apply_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + lens_distortion_SOURCES = \ + lens-distortion.c +@@ -2929,7 +2941,7 @@ lens_distortion_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + lens_flare_SOURCES = \ + lens-flare.c +@@ -2945,7 +2957,7 @@ lens_flare_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + mail_SOURCES = \ + mail.c +@@ -2961,7 +2973,7 @@ mail_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + max_rgb_SOURCES = \ + max-rgb.c +@@ -2977,7 +2989,7 @@ max_rgb_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + mosaic_SOURCES = \ + mosaic.c +@@ -2993,7 +3005,7 @@ mosaic_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + newsprint_SOURCES = \ + newsprint.c +@@ -3009,7 +3021,7 @@ newsprint_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + nl_filter_SOURCES = \ + nl-filter.c +@@ -3025,7 +3037,7 @@ nl_filter_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_hsv_SOURCES = \ + noise-hsv.c +@@ -3041,7 +3053,7 @@ noise_hsv_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_randomize_SOURCES = \ + noise-randomize.c +@@ -3057,7 +3069,7 @@ noise_randomize_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_rgb_SOURCES = \ + noise-rgb.c +@@ -3073,7 +3085,7 @@ noise_rgb_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_solid_SOURCES = \ + noise-solid.c +@@ -3089,7 +3101,7 @@ noise_solid_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + noise_spread_SOURCES = \ + noise-spread.c +@@ -3105,7 +3117,7 @@ noise_spread_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + nova_SOURCES = \ + nova.c +@@ -3121,7 +3133,7 @@ nova_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + oilify_SOURCES = \ + oilify.c +@@ -3137,7 +3149,7 @@ oilify_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + photocopy_SOURCES = \ + photocopy.c +@@ -3153,7 +3165,7 @@ photocopy_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + pixelize_SOURCES = \ + pixelize.c +@@ -3169,7 +3181,7 @@ pixelize_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + plasma_SOURCES = \ + plasma.c +@@ -3185,7 +3197,7 @@ plasma_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + plugin_browser_SOURCES = \ + plugin-browser.c +@@ -3201,7 +3213,7 @@ plugin_browser_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + polar_coords_SOURCES = \ + polar-coords.c +@@ -3217,7 +3229,7 @@ polar_coords_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + procedure_browser_SOURCES = \ + procedure-browser.c +@@ -3233,7 +3245,7 @@ procedure_browser_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + qbist_SOURCES = \ + qbist.c +@@ -3249,7 +3261,7 @@ qbist_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + red_eye_removal_SOURCES = \ + red-eye-removal.c +@@ -3265,7 +3277,7 @@ red_eye_removal_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + ripple_SOURCES = \ + ripple.c +@@ -3281,7 +3293,7 @@ ripple_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + rotate_SOURCES = \ + rotate.c +@@ -3294,7 +3306,7 @@ rotate_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sample_colorize_SOURCES = \ + sample-colorize.c +@@ -3310,7 +3322,7 @@ sample_colorize_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + screenshot_CFLAGS = $(XFIXES_CFLAGS) + screenshot_SOURCES = \ +@@ -3328,7 +3340,7 @@ screenshot_LDADD = \ + $(GTK_LIBS) \ + $(SCREENSHOT_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + semi_flatten_SOURCES = \ + semi-flatten.c +@@ -3341,7 +3353,7 @@ semi_flatten_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sharpen_SOURCES = \ + sharpen.c +@@ -3357,7 +3369,7 @@ sharpen_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + shift_SOURCES = \ + shift.c +@@ -3373,7 +3385,7 @@ shift_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sinus_SOURCES = \ + sinus.c +@@ -3389,7 +3401,7 @@ sinus_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + smooth_palette_SOURCES = \ + smooth-palette.c +@@ -3405,7 +3417,7 @@ smooth_palette_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + softglow_SOURCES = \ + softglow.c +@@ -3421,7 +3433,7 @@ softglow_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sparkle_SOURCES = \ + sparkle.c +@@ -3437,7 +3449,7 @@ sparkle_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + sphere_designer_SOURCES = \ + sphere-designer.c +@@ -3453,7 +3465,7 @@ sphere_designer_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + threshold_alpha_SOURCES = \ + threshold-alpha.c +@@ -3469,7 +3481,7 @@ threshold_alpha_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_SOURCES = \ + tile.c +@@ -3485,7 +3497,7 @@ tile_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_glass_SOURCES = \ + tile-glass.c +@@ -3501,7 +3513,7 @@ tile_glass_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_paper_SOURCES = \ + tile-paper.c +@@ -3517,7 +3529,7 @@ tile_paper_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_seamless_SOURCES = \ + tile-seamless.c +@@ -3530,7 +3542,7 @@ tile_seamless_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + tile_small_SOURCES = \ + tile-small.c +@@ -3546,7 +3558,7 @@ tile_small_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + unit_editor_SOURCES = \ + unit-editor.c +@@ -3562,7 +3574,7 @@ unit_editor_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + unsharp_mask_SOURCES = \ + unsharp-mask.c +@@ -3578,7 +3590,7 @@ unsharp_mask_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + value_invert_SOURCES = \ + value-invert.c +@@ -3591,7 +3603,7 @@ value_invert_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + value_propagate_SOURCES = \ + value-propagate.c +@@ -3607,7 +3619,7 @@ value_propagate_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + van_gogh_lic_SOURCES = \ + van-gogh-lic.c +@@ -3623,7 +3635,7 @@ van_gogh_lic_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + video_SOURCES = \ + video.c +@@ -3639,7 +3651,7 @@ video_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + warp_SOURCES = \ + warp.c +@@ -3655,7 +3667,7 @@ warp_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + waves_SOURCES = \ + waves.c +@@ -3671,7 +3683,7 @@ waves_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + web_browser_SOURCES = \ + web-browser.c +@@ -3684,7 +3696,7 @@ web_browser_LDADD = \ + $(libgimpbase) \ + $(GLIB_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + whirl_pinch_SOURCES = \ + whirl-pinch.c +@@ -3700,7 +3712,7 @@ whirl_pinch_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + wind_SOURCES = \ + wind.c +@@ -3716,7 +3728,7 @@ wind_LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) -lm + + all: all-am + +diff --git a/plug-ins/flame/Makefile.am b/plug-ins/flame/Makefile.am +index 262a9aa..cf41f38 100644 +--- a/plug-ins/flame/Makefile.am ++++ b/plug-ins/flame/Makefile.am +@@ -45,4 +45,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/flame/Makefile.in b/plug-ins/flame/Makefile.in +index 5ebbfa1..23c93ba 100644 +--- a/plug-ins/flame/Makefile.in ++++ b/plug-ins/flame/Makefile.in +@@ -416,7 +416,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-am + +diff --git a/plug-ins/fractal-explorer/Makefile.am b/plug-ins/fractal-explorer/Makefile.am +index 16ae83a..ac47d9f 100644 +--- a/plug-ins/fractal-explorer/Makefile.am ++++ b/plug-ins/fractal-explorer/Makefile.am +@@ -41,4 +41,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/fractal-explorer/Makefile.in b/plug-ins/fractal-explorer/Makefile.in +index 0d9363c..c4753e2 100644 +--- a/plug-ins/fractal-explorer/Makefile.in ++++ b/plug-ins/fractal-explorer/Makefile.in +@@ -450,7 +450,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-recursive + +diff --git a/plug-ins/gfig/Makefile.am b/plug-ins/gfig/Makefile.am +index b0a3ae7..a3a7194 100644 +--- a/plug-ins/gfig/Makefile.am ++++ b/plug-ins/gfig/Makefile.am +@@ -72,4 +72,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/gfig/Makefile.in b/plug-ins/gfig/Makefile.in +index 730291e..5bcb2a1 100644 +--- a/plug-ins/gfig/Makefile.in ++++ b/plug-ins/gfig/Makefile.in +@@ -485,7 +485,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-recursive + +diff --git a/plug-ins/gimpressionist/Makefile.am b/plug-ins/gimpressionist/Makefile.am +index bdca573..1decc10 100644 +--- a/plug-ins/gimpressionist/Makefile.am ++++ b/plug-ins/gimpressionist/Makefile.am +@@ -72,6 +72,7 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + EXTRA_DIST = README +diff --git a/plug-ins/gimpressionist/Makefile.in b/plug-ins/gimpressionist/Makefile.in +index 7428a5d..d539ec3 100644 +--- a/plug-ins/gimpressionist/Makefile.in ++++ b/plug-ins/gimpressionist/Makefile.in +@@ -487,7 +487,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + EXTRA_DIST = README + all: all-recursive +diff --git a/plug-ins/gradient-flare/Makefile.am b/plug-ins/gradient-flare/Makefile.am +index 8597665..958ec36 100644 +--- a/plug-ins/gradient-flare/Makefile.am ++++ b/plug-ins/gradient-flare/Makefile.am +@@ -37,4 +37,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/gradient-flare/Makefile.in b/plug-ins/gradient-flare/Makefile.in +index 7682317..ae821fc 100644 +--- a/plug-ins/gradient-flare/Makefile.in ++++ b/plug-ins/gradient-flare/Makefile.in +@@ -444,7 +444,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-recursive + +diff --git a/plug-ins/ifs-compose/Makefile.am b/plug-ins/ifs-compose/Makefile.am +index 6e2de02..0acc963 100644 +--- a/plug-ins/ifs-compose/Makefile.am ++++ b/plug-ins/ifs-compose/Makefile.am +@@ -41,4 +41,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/ifs-compose/Makefile.in b/plug-ins/ifs-compose/Makefile.in +index cd1fcf7..002cce2 100644 +--- a/plug-ins/ifs-compose/Makefile.in ++++ b/plug-ins/ifs-compose/Makefile.in +@@ -412,7 +412,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-am + +diff --git a/plug-ins/imagemap/Makefile.am b/plug-ins/imagemap/Makefile.am +index 1c06f94..940ad74 100644 +--- a/plug-ins/imagemap/Makefile.am ++++ b/plug-ins/imagemap/Makefile.am +@@ -139,7 +139,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + CLEANFILES = y.tab.c y.tab.h + +diff --git a/plug-ins/imagemap/Makefile.in b/plug-ins/imagemap/Makefile.in +index 11e3368..0273db1 100644 +--- a/plug-ins/imagemap/Makefile.in ++++ b/plug-ins/imagemap/Makefile.in +@@ -578,7 +578,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + CLEANFILES = y.tab.c y.tab.h + LEX = flex +diff --git a/plug-ins/lighting/Makefile.am b/plug-ins/lighting/Makefile.am +index 1bf79fc..2e2899b 100644 +--- a/plug-ins/lighting/Makefile.am ++++ b/plug-ins/lighting/Makefile.am +@@ -51,4 +51,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/lighting/Makefile.in b/plug-ins/lighting/Makefile.in +index 53cf170..142433c 100644 +--- a/plug-ins/lighting/Makefile.in ++++ b/plug-ins/lighting/Makefile.in +@@ -462,7 +462,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-recursive + +diff --git a/plug-ins/map-object/Makefile.am b/plug-ins/map-object/Makefile.am +index 2f7b7bc..483b29b 100644 +--- a/plug-ins/map-object/Makefile.am ++++ b/plug-ins/map-object/Makefile.am +@@ -51,4 +51,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/map-object/Makefile.in b/plug-ins/map-object/Makefile.in +index e270c37..ea59968 100644 +--- a/plug-ins/map-object/Makefile.in ++++ b/plug-ins/map-object/Makefile.in +@@ -425,7 +425,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-am + +diff --git a/plug-ins/pagecurl/Makefile.am b/plug-ins/pagecurl/Makefile.am +index 2a6eafb..40680c4 100644 +--- a/plug-ins/pagecurl/Makefile.am ++++ b/plug-ins/pagecurl/Makefile.am +@@ -42,7 +42,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + + PAGECURL_IMAGES = \ +diff --git a/plug-ins/pagecurl/Makefile.in b/plug-ins/pagecurl/Makefile.in +index c8bd4f2..c157820 100644 +--- a/plug-ins/pagecurl/Makefile.in ++++ b/plug-ins/pagecurl/Makefile.in +@@ -411,7 +411,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + PAGECURL_IMAGES = \ + curl0.png \ +diff --git a/plug-ins/script-fu/Makefile.am b/plug-ins/script-fu/Makefile.am +index 3075b83..692b86e 100644 +--- a/plug-ins/script-fu/Makefile.am ++++ b/plug-ins/script-fu/Makefile.am +@@ -74,4 +74,5 @@ LDADD = \ + $(SOCKET_LIBS) \ + $(WINSOCK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/script-fu/Makefile.in b/plug-ins/script-fu/Makefile.in +index 65c8b31..3d0fd50 100644 +--- a/plug-ins/script-fu/Makefile.in ++++ b/plug-ins/script-fu/Makefile.in +@@ -487,7 +487,8 @@ LDADD = \ + $(SOCKET_LIBS) \ + $(WINSOCK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-recursive + +diff --git a/plug-ins/selection-to-path/Makefile.am b/plug-ins/selection-to-path/Makefile.am +index 7e3ac65..385f5ea 100644 +--- a/plug-ins/selection-to-path/Makefile.am ++++ b/plug-ins/selection-to-path/Makefile.am +@@ -59,4 +59,5 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm +diff --git a/plug-ins/selection-to-path/Makefile.in b/plug-ins/selection-to-path/Makefile.in +index d4cbdf1..e4b6d25 100644 +--- a/plug-ins/selection-to-path/Makefile.in ++++ b/plug-ins/selection-to-path/Makefile.in +@@ -433,7 +433,8 @@ LDADD = \ + $(libgimpbase) \ + $(GTK_LIBS) \ + $(RT_LIBS) \ +- $(INTLLIBS) ++ $(INTLLIBS) \ ++ -lm + + all: all-am + diff --git a/main/gimp/gimp-poppler-0.18.patch b/main/gimp/gimp-poppler-0.18.patch new file mode 100644 index 0000000000..0715460bca --- /dev/null +++ b/main/gimp/gimp-poppler-0.18.patch @@ -0,0 +1,476 @@ +From 69f69eed816b89be9a01a48a1f0643d1fd496118 Mon Sep 17 00:00:00 2001 +From: Nils Philippsen +Date: Fri, 6 May 2011 11:58:44 +0200 +Subject: [PATCH] patch: poppler-0.17 + +Squashed commit of the following: + +commit 529d940222dfc352d41fbf72de29134421aa4002 +Author: Nils Philippsen +Date: Fri May 6 11:50:30 2011 +0200 + + use code based on pixbufs instead of cairo surfaces + + this is done to avoid adding to libgimp, thanks to Mukund Sivaraman for + hints how to do this + +commit f8671d8767d4cdab830dc06310e96c63a88ec0fd +Author: Mukund Sivaraman +Date: Thu Apr 21 13:57:13 2011 +0530 + + file-pdf-load: Update attribution, removing bogus copyright + (cherry picked from commit e999122e0b20b6ccd6bde3ce039bb64068fc0019) + +commit 89a78f2590d298dac2f42e6d9a3016fc5d672c70 +Author: Nils Philippsen +Date: Thu Apr 21 13:52:18 2011 +0200 + + file-pdf-load: Use better API + cleanups + + * fixes issues with poppler 0.17 completely + * uses new libgimp API to pass surfaces instead of pixbufs + * uses GTK+ 3 API to convert surfaces to pixbufs where available + (backported from commit 7bdadd80ba479d6ff904e276d805e16f6b940ee2) + +commit 4e92302c4a14a961f112587a0ad86696c88da2f8 +Author: Nils Philippsen +Date: Thu Apr 21 13:38:08 2011 +0200 + + file-pdf-load: Don't use deprecated API (bug #646947) + + (cherry picked from commit 9b3e1c91fd2eac69da6947ec9c7fbf10096ba237) + + Conflicts: + + plug-ins/common/file-pdf.c +--- + plug-ins/common/file-pdf.c | 323 ++++++++++++++++++++++++++++++++++++++------ + 1 files changed, 283 insertions(+), 40 deletions(-) + +diff --git a/plug-ins/common/file-pdf.c b/plug-ins/common/file-pdf.c +index a43b459..43c2b7d 100644 +--- a/plug-ins/common/file-pdf.c ++++ b/plug-ins/common/file-pdf.c +@@ -4,6 +4,9 @@ + * + * Copyright (C) 2005 Nathan Summers + * ++ * Some code in render_page_to_surface() borrowed from ++ * poppler.git/glib/poppler-page.cc. ++ * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or +@@ -80,16 +83,20 @@ static gboolean load_dialog (PopplerDocument *doc, + static PopplerDocument * open_document (const gchar *filename, + GError **error); + +-static GdkPixbuf * get_thumbnail (PopplerDocument *doc, ++static cairo_surface_t * get_thumb_surface (PopplerDocument *doc, ++ gint page, ++ gint preferred_size); ++ ++static GdkPixbuf * get_thumb_pixbuf (PopplerDocument *doc, + gint page, + gint preferred_size); + + static gint32 layer_from_pixbuf (gint32 image, +- const gchar *layer_name, +- gint position, +- GdkPixbuf *buf, +- gdouble progress_start, +- gdouble progress_scale); ++ const gchar *layer_name, ++ gint position, ++ GdkPixbuf *pixbuf, ++ gdouble progress_start, ++ gdouble progress_scale); + + /** + ** the following was formerly part of +@@ -433,11 +440,12 @@ run (const gchar *name, + } + else + { +- gdouble width = 0; +- gdouble height = 0; +- gdouble scale; +- gint32 image = -1; +- GdkPixbuf *pixbuf = NULL; ++ gdouble width = 0; ++ gdouble height = 0; ++ gdouble scale; ++ gint32 image = -1; ++ gint num_pages = 0; ++ GdkPixbuf *pixbuf = NULL; + + /* Possibly retrieve last settings */ + gimp_get_data (LOAD_PROC, &loadvals); +@@ -455,7 +463,10 @@ run (const gchar *name, + g_object_unref (page); + } + +- pixbuf = get_thumbnail (doc, 0, param[1].data.d_int32); ++ num_pages = poppler_document_get_n_pages (doc); ++ ++ pixbuf = get_thumb_pixbuf (doc, 0, param[1].data.d_int32); ++ + g_object_unref (doc); + } + +@@ -548,6 +559,187 @@ open_document (const gchar *filename, + return doc; + } + ++/* FIXME: Remove this someday when we depend fully on GTK+ >= 3 */ ++ ++#if (!GTK_CHECK_VERSION (3, 0, 0)) ++ ++static cairo_format_t ++gdk_cairo_format_for_content (cairo_content_t content) ++{ ++ switch (content) ++ { ++ case CAIRO_CONTENT_COLOR: ++ return CAIRO_FORMAT_RGB24; ++ case CAIRO_CONTENT_ALPHA: ++ return CAIRO_FORMAT_A8; ++ case CAIRO_CONTENT_COLOR_ALPHA: ++ default: ++ return CAIRO_FORMAT_ARGB32; ++ } ++} ++ ++static cairo_surface_t * ++gdk_cairo_surface_coerce_to_image (cairo_surface_t *surface, ++ cairo_content_t content, ++ int src_x, ++ int src_y, ++ int width, ++ int height) ++{ ++ cairo_surface_t *copy; ++ cairo_t *cr; ++ ++ copy = cairo_image_surface_create (gdk_cairo_format_for_content (content), ++ width, ++ height); ++ ++ cr = cairo_create (copy); ++ cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE); ++ cairo_set_source_surface (cr, surface, -src_x, -src_y); ++ cairo_paint (cr); ++ cairo_destroy (cr); ++ ++ return copy; ++} ++ ++static void ++convert_alpha (guchar *dest_data, ++ int dest_stride, ++ guchar *src_data, ++ int src_stride, ++ int src_x, ++ int src_y, ++ int width, ++ int height) ++{ ++ int x, y; ++ ++ src_data += src_stride * src_y + src_x * 4; ++ ++ for (y = 0; y < height; y++) { ++ guint32 *src = (guint32 *) src_data; ++ ++ for (x = 0; x < width; x++) { ++ guint alpha = src[x] >> 24; ++ ++ if (alpha == 0) ++ { ++ dest_data[x * 4 + 0] = 0; ++ dest_data[x * 4 + 1] = 0; ++ dest_data[x * 4 + 2] = 0; ++ } ++ else ++ { ++ dest_data[x * 4 + 0] = (((src[x] & 0xff0000) >> 16) * 255 + alpha / 2) / alpha; ++ dest_data[x * 4 + 1] = (((src[x] & 0x00ff00) >> 8) * 255 + alpha / 2) / alpha; ++ dest_data[x * 4 + 2] = (((src[x] & 0x0000ff) >> 0) * 255 + alpha / 2) / alpha; ++ } ++ dest_data[x * 4 + 3] = alpha; ++ } ++ ++ src_data += src_stride; ++ dest_data += dest_stride; ++ } ++} ++ ++static void ++convert_no_alpha (guchar *dest_data, ++ int dest_stride, ++ guchar *src_data, ++ int src_stride, ++ int src_x, ++ int src_y, ++ int width, ++ int height) ++{ ++ int x, y; ++ ++ src_data += src_stride * src_y + src_x * 4; ++ ++ for (y = 0; y < height; y++) { ++ guint32 *src = (guint32 *) src_data; ++ ++ for (x = 0; x < width; x++) { ++ dest_data[x * 3 + 0] = src[x] >> 16; ++ dest_data[x * 3 + 1] = src[x] >> 8; ++ dest_data[x * 3 + 2] = src[x]; ++ } ++ ++ src_data += src_stride; ++ dest_data += dest_stride; ++ } ++} ++ ++/** ++ * gdk_pixbuf_get_from_surface: ++ * @surface: surface to copy from ++ * @src_x: Source X coordinate within @surface ++ * @src_y: Source Y coordinate within @surface ++ * @width: Width in pixels of region to get ++ * @height: Height in pixels of region to get ++ * ++ * Transfers image data from a #cairo_surface_t and converts it to an RGB(A) ++ * representation inside a #GdkPixbuf. This allows you to efficiently read ++ * individual pixels from cairo surfaces. For #GdkWindows, use ++ * gdk_pixbuf_get_from_window() instead. ++ * ++ * This function will create an RGB pixbuf with 8 bits per channel. ++ * The pixbuf will contain an alpha channel if the @surface contains one. ++ * ++ * Return value: (transfer full): A newly-created pixbuf with a reference ++ * count of 1, or %NULL on error ++ */ ++static GdkPixbuf * ++gdk_pixbuf_get_from_surface (cairo_surface_t *surface, ++ gint src_x, ++ gint src_y, ++ gint width, ++ gint height) ++{ ++ cairo_content_t content; ++ GdkPixbuf *dest; ++ ++ /* General sanity checks */ ++ g_return_val_if_fail (surface != NULL, NULL); ++ g_return_val_if_fail (width > 0 && height > 0, NULL); ++ ++ content = cairo_surface_get_content (surface) | CAIRO_CONTENT_COLOR; ++ dest = gdk_pixbuf_new (GDK_COLORSPACE_RGB, ++ !!(content & CAIRO_CONTENT_ALPHA), ++ 8, ++ width, height); ++ ++ surface = gdk_cairo_surface_coerce_to_image (surface, content, ++ src_x, src_y, ++ width, height); ++ cairo_surface_flush (surface); ++ if (cairo_surface_status (surface) || dest == NULL) ++ { ++ cairo_surface_destroy (surface); ++ return NULL; ++ } ++ ++ if (gdk_pixbuf_get_has_alpha (dest)) ++ convert_alpha (gdk_pixbuf_get_pixels (dest), ++ gdk_pixbuf_get_rowstride (dest), ++ cairo_image_surface_get_data (surface), ++ cairo_image_surface_get_stride (surface), ++ 0, 0, ++ width, height); ++ else ++ convert_no_alpha (gdk_pixbuf_get_pixels (dest), ++ gdk_pixbuf_get_rowstride (dest), ++ cairo_image_surface_get_data (surface), ++ cairo_image_surface_get_stride (surface), ++ 0, 0, ++ width, height); ++ ++ cairo_surface_destroy (surface); ++ return dest; ++} ++ ++#endif ++ + static gint32 + layer_from_pixbuf (gint32 image, + const gchar *layer_name, +@@ -566,6 +758,54 @@ layer_from_pixbuf (gint32 image, + return layer; + } + ++static cairo_surface_t * ++render_page_to_surface (PopplerPage *page, ++ int width, ++ int height, ++ double scale) ++{ ++ cairo_surface_t *surface; ++ cairo_t *cr; ++ ++ surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, width, height); ++ cr = cairo_create (surface); ++ ++ cairo_save (cr); ++ cairo_translate (cr, 0.0, 0.0); ++ ++ if (scale != 1.0) ++ cairo_scale (cr, scale, scale); ++ ++ poppler_page_render (page, cr); ++ cairo_restore (cr); ++ ++ cairo_set_operator (cr, CAIRO_OPERATOR_DEST_OVER); ++ cairo_set_source_rgb (cr, 1.0, 1.0, 1.0); ++ cairo_paint (cr); ++ ++ cairo_destroy (cr); ++ ++ return surface; ++} ++ ++static GdkPixbuf * ++render_page_to_pixbuf (PopplerPage *page, ++ int width, ++ int height, ++ double scale) ++{ ++ GdkPixbuf *pixbuf; ++ cairo_surface_t *surface; ++ ++ surface = render_page_to_surface (page, width, height, scale); ++ pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0, ++ cairo_image_surface_get_width (surface), ++ cairo_image_surface_get_height (surface)); ++ cairo_surface_destroy (surface); ++ ++ return pixbuf; ++} ++ + static gint32 + load_image (PopplerDocument *doc, + const gchar *filename, +@@ -597,7 +837,7 @@ load_image (PopplerDocument *doc, + gdouble page_width; + gdouble page_height; + +- GdkPixbuf *buf; ++ GdkPixbuf *pixbuf; + gint width; + gint height; + +@@ -627,15 +867,13 @@ load_image (PopplerDocument *doc, + gimp_image_set_resolution (image_ID, resolution, resolution); + } + +- buf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, width, height); +- +- poppler_page_render_to_pixbuf (page, 0, 0, width, height, scale, 0, buf); ++ pixbuf = render_page_to_pixbuf (page, width, height, scale); + +- layer_from_pixbuf (image_ID, page_label, i, buf, ++ layer_from_pixbuf (image_ID, page_label, i, pixbuf, + doc_progress, 1.0 / pages->n_pages); + + g_free (page_label); +- g_object_unref (buf); ++ g_object_unref(pixbuf); + + doc_progress = (double) (i + 1) / pages->n_pages; + gimp_progress_update (doc_progress); +@@ -676,30 +914,22 @@ load_image (PopplerDocument *doc, + return image_ID; + } + +-static GdkPixbuf * +-get_thumbnail (PopplerDocument *doc, +- gint page_num, +- gint preferred_size) ++static cairo_surface_t * ++get_thumb_surface (PopplerDocument *doc, ++ gint page_num, ++ gint preferred_size) + { + PopplerPage *page; +- GdkPixbuf *pixbuf; ++ cairo_surface_t *surface; + + page = poppler_document_get_page (doc, page_num); + + if (! page) + return NULL; + +- /* XXX: Remove conditional when we depend on poppler 0.8.0, but also +- * add configure check to make sure POPPLER_WITH_GDK is enabled! +- */ +-#ifdef POPPLER_WITH_GDK +- pixbuf = poppler_page_get_thumbnail_pixbuf (page); +-#else +- pixbuf = poppler_page_get_thumbnail (page); +-#endif +- ++ surface = poppler_page_get_thumbnail (page); + +- if (! pixbuf) ++ if (! surface) + { + gdouble width; + gdouble height; +@@ -712,15 +942,28 @@ get_thumbnail (PopplerDocument *doc, + width *= scale; + height *= scale; + +- pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, +- width, height); +- +- poppler_page_render_to_pixbuf (page, +- 0, 0, width, height, scale, 0, pixbuf); ++ surface = render_page_to_surface (page, width, height, scale); + } + + g_object_unref (page); + ++ return surface; ++} ++ ++static GdkPixbuf * ++get_thumb_pixbuf (PopplerDocument *doc, ++ gint page_num, ++ gint preferred_size) ++{ ++ cairo_surface_t *surface; ++ GdkPixbuf *pixbuf; ++ ++ surface = get_thumb_surface (doc, page_num, preferred_size); ++ pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0, ++ cairo_image_surface_get_width (surface), ++ cairo_image_surface_get_height (surface)); ++ cairo_surface_destroy (surface); ++ + return pixbuf; + } + +@@ -769,8 +1012,8 @@ thumbnail_thread (gpointer data) + idle_data->page_no = i; + + /* FIXME get preferred size from somewhere? */ +- idle_data->pixbuf = get_thumbnail (thread_data->document, i, +- THUMBNAIL_SIZE); ++ idle_data->pixbuf = get_thumb_pixbuf (thread_data->document, i, ++ THUMBNAIL_SIZE); + + g_idle_add (idle_set_thumbnail, idle_data); + +-- +1.7.5 -- cgit v1.2.3