diff options
author | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-03 00:43:33 +0000 |
---|---|---|
committer | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-03 00:43:33 +0000 |
commit | 7e43da7c595c0ab9c7089477bb52bbf6ab421c81 (patch) | |
tree | efa7722ab5b6d23488b42f61a9be4d7db8922ad5 /third_party | |
parent | f28fbdb03c984d8d7edee21b7a4bae5a700669e2 (diff) | |
download | chromium_src-7e43da7c595c0ab9c7089477bb52bbf6ab421c81.zip chromium_src-7e43da7c595c0ab9c7089477bb52bbf6ab421c81.tar.gz chromium_src-7e43da7c595c0ab9c7089477bb52bbf6ab421c81.tar.bz2 |
Mangle the names of the libjpeg functions so gtk/gdk doesn't try to use our libjpeg.
TEST=along with <http://codereview.chromium.org/151100>, it's possible to preview jpeg images
BUG=none
Review URL: http://codereview.chromium.org/151163
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19873 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party')
-rw-r--r-- | third_party/libjpeg/README.chromium | 4 | ||||
-rw-r--r-- | third_party/libjpeg/jpeglib.h | 4 | ||||
-rw-r--r-- | third_party/libjpeg/jpeglibmangler.h | 113 |
3 files changed, 121 insertions, 0 deletions
diff --git a/third_party/libjpeg/README.chromium b/third_party/libjpeg/README.chromium index 11da09d..809abe7 100644 --- a/third_party/libjpeg/README.chromium +++ b/third_party/libjpeg/README.chromium @@ -8,3 +8,7 @@ Also not included are files obviously not needed: jmemdos.c jmemname.c along with all of the frontend files for doing utility programs. + +We added a new file jpeglibmangler.h and included it from jpeglib.h that changes +the names of all externally visible functions to chromium_* so that we can avoid +conflicts that arise when system libraries attempt to use our libjpeg. diff --git a/third_party/libjpeg/jpeglib.h b/third_party/libjpeg/jpeglib.h index d1be8dd..668beb6 100644 --- a/third_party/libjpeg/jpeglib.h +++ b/third_party/libjpeg/jpeglib.h @@ -13,6 +13,10 @@ #ifndef JPEGLIB_H #define JPEGLIB_H +/* Begin chromium edits */ +#include "jpeglibmangler.h" +/* End chromium edits */ + /* * First we include the configuration files that record how this * installation of the JPEG library is set up. jconfig.h can be diff --git a/third_party/libjpeg/jpeglibmangler.h b/third_party/libjpeg/jpeglibmangler.h new file mode 100644 index 0000000..85ab8a0 --- /dev/null +++ b/third_party/libjpeg/jpeglibmangler.h @@ -0,0 +1,113 @@ +// Copyright (c) 2009 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef THIRD_PARTY_LIBJPEG_JPEGLIBMANGLER_H_ +#define THIRD_PARTY_LIBJPEG_JPEGLIBMANGLER_H_ + +// Mangle all externally visible function names so we can build our own libjpeg +// without system libraries trying to use it. + +#define jpeg_make_c_derived_tbl chromium_jpeg_make_c_derived_tbl +#define jpeg_gen_optimal_table chromium_jpeg_gen_optimal_table +#define jpeg_make_d_derived_tbl chromium_jpeg_make_d_derived_tbl +#define jpeg_fill_bit_buffer chromium_jpeg_fill_bit_buffer +#define jpeg_huff_decode chromium_jpeg_huff_decode +#define jpeg_fdct_islow chromium_jpeg_fdct_islow +#define jpeg_fdct_ifast chromium_jpeg_fdct_ifast +#define jpeg_fdct_float chromium_jpeg_fdct_float +#define jpeg_idct_islow chromium_jpeg_idct_islow +#define jpeg_idct_ifast chromium_jpeg_idct_ifast +#define jpeg_idct_float chromium_jpeg_idct_float +#define jpeg_idct_4x4 chromium_jpeg_idct_4x4 +#define jpeg_idct_2x2 chromium_jpeg_idct_2x2 +#define jpeg_idct_1x1 chromium_jpeg_idct_1x1 +#define jinit_compress_master chromium_jinit_compress_master +#define jinit_c_master_control chromium_jinit_c_master_control +#define jinit_c_main_controller chromium_jinit_c_main_controller +#define jinit_c_prep_controller chromium_jinit_c_prep_controller +#define jinit_c_coef_controller chromium_jinit_c_coef_controller +#define jinit_color_converter chromium_jinit_color_converter +#define jinit_downsampler chromium_jinit_downsampler +#define jinit_forward_dct chromium_jinit_forward_dct +#define jinit_huff_encoder chromium_jinit_huff_encoder +#define jinit_phuff_encoder chromium_jinit_phuff_encoder +#define jinit_marker_writer chromium_jinit_marker_writer +#define jinit_master_decompress chromium_jinit_master_decompress +#define jinit_d_main_controller chromium_jinit_d_main_controller +#define jinit_d_coef_controller chromium_jinit_d_coef_controller +#define jinit_d_post_controller chromium_jinit_d_post_controller +#define jinit_input_controller chromium_jinit_input_controller +#define jinit_marker_reader chromium_jinit_marker_reader +#define jinit_huff_decoder chromium_jinit_huff_decoder +#define jinit_phuff_decoder chromium_jinit_phuff_decoder +#define jinit_inverse_dct chromium_jinit_inverse_dct +#define jinit_upsampler chromium_jinit_upsampler +#define jinit_color_deconverter chromium_jinit_color_deconverter +#define jinit_1pass_quantizer chromium_jinit_1pass_quantizer +#define jinit_2pass_quantizer chromium_jinit_2pass_quantizer +#define jinit_merged_upsampler chromium_jinit_merged_upsampler +#define jinit_memory_mgr chromium_jinit_memory_mgr +#define jdiv_round_up chromium_jdiv_round_up +#define jround_up chromium_jround_up +#define jcopy_sample_rows chromium_jcopy_sample_rows +#define jcopy_block_row chromium_jcopy_block_row +#define jzero_far chromium_jzero_far +#define jpeg_std_error chromium_jpeg_std_error +#define jpeg_CreateCompress chromium_jpeg_CreateCompress +#define jpeg_CreateDecompress chromium_jpeg_CreateDecompress +#define jpeg_destroy_compress chromium_jpeg_destroy_compress +#define jpeg_destroy_decompress chromium_jpeg_destroy_decompress +#define jpeg_stdio_dest chromium_jpeg_stdio_dest +#define jpeg_stdio_src chromium_jpeg_stdio_src +#define jpeg_set_defaults chromium_jpeg_set_defaults +#define jpeg_set_colorspace chromium_jpeg_set_colorspace +#define jpeg_default_colorspace chromium_jpeg_default_colorspace +#define jpeg_set_quality chromium_jpeg_set_quality +#define jpeg_set_linear_quality chromium_jpeg_set_linear_quality +#define jpeg_add_quant_table chromium_jpeg_add_quant_table +#define jpeg_quality_scaling chromium_jpeg_quality_scaling +#define jpeg_simple_progression chromium_jpeg_simple_progression +#define jpeg_suppress_tables chromium_jpeg_suppress_tables +#define jpeg_alloc_quant_table chromium_jpeg_alloc_quant_table +#define jpeg_alloc_huff_table chromium_jpeg_alloc_huff_table +#define jpeg_start_compress chromium_jpeg_start_compress +#define jpeg_write_scanlines chromium_jpeg_write_scanlines +#define jpeg_finish_compress chromium_jpeg_finish_compress +#define jpeg_write_raw_data chromium_jpeg_write_raw_data +#define jpeg_write_marker chromium_jpeg_write_marker +#define jpeg_write_m_header chromium_jpeg_write_m_header +#define jpeg_write_m_byte chromium_jpeg_write_m_byte +#define jpeg_write_tables chromium_jpeg_write_tables +#define jpeg_read_header chromium_jpeg_read_header +#define jpeg_start_decompress chromium_jpeg_start_decompress +#define jpeg_read_scanlines chromium_jpeg_read_scanlines +#define jpeg_finish_decompress chromium_jpeg_finish_decompress +#define jpeg_read_raw_data chromium_jpeg_read_raw_data +#define jpeg_has_multiple_scans chromium_jpeg_has_multiple_scans +#define jpeg_start_output chromium_jpeg_start_output +#define jpeg_finish_output chromium_jpeg_finish_output +#define jpeg_input_complete chromium_jpeg_input_complete +#define jpeg_new_colormap chromium_jpeg_new_colormap +#define jpeg_consume_input chromium_jpeg_consume_input +#define jpeg_calc_output_dimensions chromium_jpeg_calc_output_dimensions +#define jpeg_save_markers chromium_jpeg_save_markers +#define jpeg_set_marker_processor chromium_jpeg_set_marker_processor +#define jpeg_read_coefficients chromium_jpeg_read_coefficients +#define jpeg_write_coefficients chromium_jpeg_write_coefficients +#define jpeg_copy_critical_parameters chromium_jpeg_copy_critical_parameters +#define jpeg_abort_compress chromium_jpeg_abort_compress +#define jpeg_abort_decompress chromium_jpeg_abort_decompress +#define jpeg_abort chromium_jpeg_abort +#define jpeg_destroy chromium_jpeg_destroy +#define jpeg_resync_to_restart chromium_jpeg_resync_to_restart +#define jpeg_get_small chromium_jpeg_get_small +#define jpeg_free_small chromium_jpeg_free_small +#define jpeg_get_large chromium_jpeg_get_large +#define jpeg_free_large chromium_jpeg_free_large +#define jpeg_mem_available chromium_jpeg_mem_available +#define jpeg_open_backing_store chromium_jpeg_open_backing_store +#define jpeg_mem_init chromium_jpeg_mem_init +#define jpeg_mem_term chromium_jpeg_mem_term + +#endif // THIRD_PARTY_LIBJPEG_JPEGLIBMANGLER_H_ |