[Spice-devel] [PATCH 0/8] Rework autotools build system

Christophe Fergeau cfergeau at redhat.com
Thu Apr 21 05:00:14 PDT 2011


Hi,

The autotools build system looked a bit convoluted when I looked at it,
and after toying a bit with it when preparing the earlier patchset, it
seemed more fragile than autotools build systems generally are. This
patchseries rework the Makefile.am to get something more "standard".

make distcheck still passes, but I couldn't test what happens on windows,
let me know if you can test it and want help fixing it ;)

This patch series applies on top of the cleanup series I just sent.

Christophe

Christophe Fergeau (8):
  autotools: refactor the whole build machinery
  configure.ac: remove unused AC_SUBST
  autotools: correctly build canvas-related code
  add #include <config.h> to all source files
  add config.h to autogenerated files too
  use AC_DEFINE instead of hardcoding preprocessor flags
  s/USE_OGL/USE_OPENGL
  add comment to beginning of autogenerated files

 client/Makefile.am                 |  342 +++++++++++++++++++++++++-----------
 client/application.cpp             |   13 +-
 client/application.h               |    2 +-
 client/canvas.cpp                  |    3 +
 client/canvas.h                    |    1 -
 client/client_net_socket.cpp       |    3 +
 client/cmd_line_parser.cpp         |    3 +
 client/common.h                    |    2 +-
 client/controller.cpp              |    3 +
 client/cursor.cpp                  |    3 +
 client/cursor_channel.cpp          |    3 +
 client/display_channel.cpp         |   43 +++--
 client/display_channel.h           |   12 +-
 client/foreign_menu.cpp            |    3 +
 client/glz_decode_tmpl.c           |    3 +
 client/glz_decoder.cpp             |    3 +
 client/glz_decoder.h               |    2 +-
 client/glz_decoder_window.cpp      |    3 +
 client/gui/gui.cpp                 |    4 +
 client/gui/resource_provider.cpp   |    4 +
 client/gui/softrenderer.cpp        |    3 +-
 client/gui/softtexture.cpp         |    3 +-
 client/hot_keys.cpp                |    3 +
 client/inputs_channel.cpp          |    3 +
 client/jpeg_decoder.cpp            |    3 +
 client/jpeg_decoder.h              |    2 +-
 client/menu.cpp                    |    3 +
 client/mjpeg_decoder.cpp           |    3 +
 client/monitor.cpp                 |    3 +
 client/playback_channel.cpp        |    3 +
 client/process_loop.cpp            |    3 +
 client/record_channel.cpp          |    3 +
 client/red_canvas_base.h           |   26 +++
 client/red_channel.cpp             |    3 +
 client/red_client.cpp              |    5 +-
 client/red_gdi_canvas.cpp          |    9 +
 client/red_gdi_canvas.h            |    4 +
 client/red_gl_canvas.cpp           |    9 +
 client/red_gl_canvas.h             |    5 +
 client/red_peer.cpp                |    3 +
 client/red_sw_canvas.cpp           |    9 +
 client/red_sw_canvas.h             |    4 +
 client/red_window.h                |    2 +-
 client/screen.cpp                  |    9 +-
 client/screen.h                    |    6 +-
 client/screen_layer.cpp            |    3 +
 client/smartcard_channel.cpp       |    4 +
 client/threads.cpp                 |    3 +
 client/tunnel_channel.cpp          |    3 +
 client/utils.cpp                   |    3 +
 client/windows/Makefile.am         |  236 -------------------------
 client/windows/event_sources_p.cpp |    3 +
 client/windows/main.cpp            |    3 +
 client/windows/my_getopt.cpp       |    3 +
 client/windows/named_pipe.cpp      |    3 +
 client/windows/pixels_source.cpp   |    3 +
 client/windows/platform.cpp        |    3 +
 client/windows/platform_utils.cpp  |    3 +
 client/windows/playback.cpp        |    3 +
 client/windows/record.cpp          |    3 +
 client/windows/red_drawable.cpp    |    3 +
 client/windows/red_pixmap.cpp      |    3 +
 client/windows/red_pixmap_gdi.cpp  |    3 +
 client/windows/red_pixmap_sw.cpp   |    7 +-
 client/windows/red_window.cpp      |    5 +-
 client/x11/Makefile.am             |  223 -----------------------
 client/x11/event_sources_p.cpp     |    3 +
 client/x11/images/Makefile.am      |    5 -
 client/x11/main.cpp                |    3 +
 client/x11/named_pipe.cpp          |    3 +
 client/x11/pixels_source.cpp       |    3 +
 client/x11/pixels_source_p.h       |   20 +-
 client/x11/platform.cpp            |   27 ++--
 client/x11/platform_utils.cpp      |    3 +
 client/x11/playback.cpp            |    3 +
 client/x11/record.cpp              |    3 +
 client/x11/red_drawable.cpp        |   31 ++--
 client/x11/red_pixmap.cpp          |    3 +
 client/x11/red_pixmap_gl.cpp       |    3 +
 client/x11/red_pixmap_sw.cpp       |    3 +
 client/x11/red_window.cpp          |   27 ++--
 client/x11/red_window_p.h          |   16 +-
 client/x11/res.cpp                 |    3 +
 client/x11/x_icon.cpp              |    3 +
 client/x11/x_platform.h            |    4 +-
 client/zlib_decoder.cpp            |    4 +
 client/zlib_decoder.h              |    2 +-
 common/Makefile.am                 |   83 ++++++----
 common/canvas_base.c               |    8 +
 common/canvas_base.h               |    3 +
 common/canvas_utils.c              |    3 +
 common/gdi_canvas.c                |    7 +
 common/gdi_canvas.h                |    4 +
 common/gl_canvas.c                 |    8 +-
 common/gl_canvas.h                 |    4 +
 common/glc.c                       |    3 +
 common/lines.c                     |    4 +-
 common/lz.c                        |    3 +
 common/lz_compress_tmpl.c          |    3 +
 common/lz_decompress_tmpl.c        |    4 +
 common/marshaller.c                |    5 +-
 common/mem.c                       |    3 +
 common/ogl_ctx.c                   |    3 +
 common/pixman_utils.c              |    4 +-
 common/quic.c                      |    4 +
 common/quic_family_tmpl.c          |    3 +
 common/quic_rgb_tmpl.c             |    3 +
 common/quic_tmpl.c                 |    3 +
 common/region.c                    |    3 +
 common/rop3.c                      |    3 +
 common/sw_canvas.c                 |    7 +
 common/sw_canvas.h                 |    4 +
 configure.ac                       |   18 +--
 server/Makefile.am                 |  139 ++++++---------
 server/agent-msg-filter.c          |    3 +
 server/glz_encode_match_tmpl.c     |    3 +
 server/glz_encode_tmpl.c           |    3 +
 server/glz_encoder.c               |    3 +
 server/glz_encoder_dictionary.c    |    3 +
 server/inputs_channel.c            |    3 +
 server/jpeg_encoder.c              |    3 +
 server/main_channel.c              |    3 +
 server/mjpeg_encoder.c             |    3 +
 server/red_channel.c               |    3 +
 server/red_dispatcher.c            |   17 +-
 server/red_memslots.c              |    3 +
 server/red_parse_qxl.c             |    3 +
 server/red_tunnel_worker.c         |    3 +
 server/red_worker.c                |   15 +-
 server/reds.c                      |    5 +-
 server/reds.h                      |    2 -
 server/reds_gl_canvas.c            |   26 +++
 server/reds_gl_canvas.h            |   27 +++
 server/reds_sw_canvas.c            |   26 +++
 server/reds_sw_canvas.h            |   26 +++
 server/smartcard.c                 |    4 +
 server/snd_worker.c                |    3 +
 server/tests/Makefile.am           |   25 +--
 server/zlib_encoder.c              |    4 +
 spice_codegen.py                   |    6 +
 140 files changed, 999 insertions(+), 844 deletions(-)
 create mode 100644 client/red_canvas_base.h
 delete mode 100644 client/windows/Makefile.am
 delete mode 100644 client/x11/Makefile.am
 delete mode 100644 client/x11/images/Makefile.am
 create mode 100644 server/reds_gl_canvas.c
 create mode 100644 server/reds_gl_canvas.h
 create mode 100644 server/reds_sw_canvas.c
 create mode 100644 server/reds_sw_canvas.h

-- 
1.7.4.4



More information about the Spice-devel mailing list