From: Jan D Date: Sun, 26 Apr 2015 11:55:01 +0000 (+0200) Subject: Merge branch 'master' into cairo X-Git-Tag: emacs-25.0.90~2008^2~3 X-Git-Url: https://code.delx.au/gnu-emacs/commitdiff_plain/f92ac2e82ed199d6f25d2a59508e08addb1150ac Merge branch 'master' into cairo --- f92ac2e82ed199d6f25d2a59508e08addb1150ac diff --cc ChangeLog.1 index c7d586470e,d1b8d0ffb9..565c85bbcf --- a/ChangeLog.1 +++ b/ChangeLog.1 @@@ -1,17 -1,19 +1,33 @@@ +2015-04-11 Jan Djärv + + * configure.ac: Allow jpeg with cairo. + Allow tiff and gif with cairo. + + 2015-04-07 Paul Eggert + + Merge from gnulib + * lib/stddef.in.h: Update from gnulib, incorporating: + 2015-04-02 stddef: port to pre-C11 GCC on x86 + +2015-04-05 Jan Djärv + + * configure.ac: Allow rsvg with cairo. Move back HAVE_RSVG. + +2015-04-03 Jan Djärv + + * configure.ac (HAVE_RSVG): Move after cairo. + (USE_CAIRO): Disable rsvg, don't disable Xpm. + + 2015-04-03 Paul Eggert + + Port 'configure' to clang 3.5 + * configure.ac: Add -Wno-unknown-attributes if clang; + otherwise clang 3.5.0 (Fedora 21 x86-64) complains + "/usr/include/glib-2.0/glib/gmem.h: ... warning: unknown attribute + '__alloc_size__' ignored". Use -Werror when checking for -nopie; + otherwise clang warns about -nopie instead of failing, and then + later it warns everytime the build uses -nopie. + 2015-04-03 Ulrich Müller * configure.ac (LD_SWITCH_SYSTEM_TEMACS): Add -nopie option if it diff --cc configure.ac index f378e3d942,d2f21eedda..bc7081de02 --- a/configure.ac +++ b/configure.ac @@@ -3100,26 -3094,7 +3096,26 @@@ AC_SUBST(LIBOTF_LIBS AC_SUBST(M17N_FLT_CFLAGS) AC_SUBST(M17N_FLT_LIBS) +USE_CAIRO=no +if test "${HAVE_X11}" = "yes"; then + if test "${with_cairo}" != "no"; then + CAIRO_REQUIRED=1.12.0 + CAIRO_MODULE="cairo >= $CAIRO_REQUIRED" + PKG_CHECK_MODULES(CAIRO, $CAIRO_MODULE, USE_CAIRO=yes, :) + if test $USE_CAIRO = yes; then + AC_DEFINE(USE_CAIRO, 1, [Define to 1 if using cairo.]) + else + AC_MSG_ERROR([cairo requested but not found.]) + fi + + CFLAGS="$CFLAGS $CAIRO_CFLAGS" + LIBS="$LIBS $CAIRO_LIBS" + AC_SUBST(CAIRO_CFLAGS) + AC_SUBST(CAIRO_LIBS) + fi +fi + - ### Use -lXpm if available, unless `--with-xpm=no'. + ### Use -lXpm if available, unless '--with-xpm=no'. ### mingw32 doesn't use -lXpm, since it loads the library dynamically. ### In the Cygwin-w32 build, we need to use /usr/include/noX/X11/xpm.h ### rather than /usr/include/X11/xpm.h, so we set CPPFLAGS (and diff --cc src/ChangeLog.13 index 7807007243,328f7982e6..8057b6e75d --- a/src/ChangeLog.13 +++ b/src/ChangeLog.13 @@@ -1,58 -1,22 +1,73 @@@ +2015-04-26 Jan Djärv + + * image.c (xcolor_to_argb32): New function. + (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32. + (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use + XImagePtr if ! USE_CAIRO. + (pbm_load): Add cairo support. + +2015-04-12 Jan Djärv + + * xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO. + (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw. + (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert) + (x_free_frame_resources): Rename x_prepare_for_xlibdraw to + x_free_cr_resources. + + * image.c (get_spec_bg_or_alpha_as_argb) + (create_cairo_image_surface): New functions when USE_CAIRO. + (xpm_load): Call the above functions. Handle XPM without mask + when USE_CAIRO. + (png_load_body): Handle USE_CAIRO case. + (png_load): Remove USE_CAIRO specific fuction, modify png_load_body + instead. + (jpeg_load_body): Call create_cairo_image_surface. + (gif_load, svg_load_image): Handle specified background, call + create_cairo_image_surface. + +2015-04-11 Jan Djärv + + * image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO. + (tiff_load): Create cairo image surface if USE_CAIRO. + (gif_load): Ditto. + + 2015-04-06 Koichi Arakawa (tiny change) + + * w32proc.c (w32_executable_type): Look for the DLL name in the + correct section. This avoids segfaults with some executables. + (Bug#20264) + +2015-04-05 Jan Djärv + + * image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO. + (x_clear_image): Free cr_data and cr_data2 if set. + (xpm_load): Assign data to cr_data2. + (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32. + + * dispextern.h (struct image): add cr_data2 if cairo. + + 2015-04-04 Jan Djärv + + * xselect.c (x_reply_selection_request) + (receive_incremental_selection): Call set_property_change_object + inside block_input. + (wait_for_property_change): Move set property_change_reply(_object) + outside of this function (Bug#16737). + (set_property_change_object): New function. + 2015-04-03 Jan Djärv + * image.c (prepare_image_for_display): Don't load if USE_CAIRO. + (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and + don't return early. + (ALLOC_XPM_COLORS): Don't define when USE_CAIRO. + (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32 + and create a surface. + * xterm.c (handle_one_xevent): Always redraw tool tips on MapNotify. Update tool tip frame sizes on ConfigureNotify. + (x_update_begin): Don't create any surface for non-visible + tip frames, the geometry may be wrong. 2015-03-31 Eli Zaretskii