1 /* Copyright (C) 2001-2019 Artifex Software, Inc. 2 All Rights Reserved. 3 4 This software is provided AS-IS with no warranty, either express or 5 implied. 6 7 This software is distributed under license and may not be copied, 8 modified or distributed except as expressly authorized under the terms 9 of the license contained in the file LICENSE in this distribution. 10 11 Refer to licensing information at http://www.artifex.com or contact 12 Artifex Software, Inc., 1305 Grant Avenue - Suite 200, Novato, 13 CA 94945, U.S.A., +1(415)492-9861, for further information. 14 */ 15 16 17 /* jconfig.h file for Independent JPEG Group code */ 18 19 #ifndef gsjconf_INCLUDED 20 # define gsjconf_INCLUDED 21 22 /* 23 * We should have the following here: 24 25 #include "stdpre.h" 26 27 * But because of the directory structure used to build the IJG library, we 28 * actually concatenate stdpre.h on the front of this file instead to 29 * construct the jconfig.h file used for the compilation. 30 */ 31 32 #include "arch.h" 33 34 #ifdef GS_HIDE_INTERNAL_JPEG 35 /* The first list is culled from NEED_SHORT_EXTERNAL_NAMES */ 36 #define jpeg_std_error gpeg_std_error 37 #define jpeg_CreateCompress gpeg_CreateCompress 38 #define jpeg_CreateDecompress gpeg_CreateDecompress 39 #define jpeg_destroy_compress gpeg_destroy_compress 40 #define jpeg_destroy_decompress gpeg_destroy_decompress 41 #define jpeg_stdio_dest gpeg_stdio_dest 42 #define jpeg_stdio_src gpeg_stdio_src 43 #define jpeg_mem_dest gpeg_mem_dest 44 #define jpeg_mem_src gpeg_mem_src 45 #define jpeg_set_defaults gpeg_set_defaults 46 #define jpeg_set_colorspace gpeg_set_colorspace 47 #define jpeg_default_colorspace gpeg_default_colorspace 48 #define jpeg_set_quality gpeg_set_quality 49 #define jpeg_set_linear_quality gpeg_set_linear_quality 50 #define jpeg_default_qtables gpeg_default_qtables 51 #define jpeg_add_quant_table gpeg_add_quant_table 52 #define jpeg_quality_scaling gpeg_quality_scaling 53 #define jpeg_simple_progression gpeg_simple_progression 54 #define jpeg_suppress_tables gpeg_suppress_tables 55 #define jpeg_alloc_quant_table gpeg_alloc_quant_table 56 #define jpeg_alloc_huff_table gpeg_alloc_huff_table 57 #define jpeg_start_compress gpeg_start_compress 58 #define jpeg_write_scanlines gpeg_write_scanlines 59 #define jpeg_finish_compress gpeg_finish_compress 60 #define jpeg_calc_jpeg_dimensions gpeg_calc_jpeg_dimensions 61 #define jpeg_write_raw_data gpeg_write_raw_data 62 #define jpeg_write_marker gpeg_write_marker 63 #define jpeg_write_m_header gpeg_write_m_header 64 #define jpeg_write_m_byte gpeg_write_m_byte 65 #define jpeg_write_tables gpeg_write_tables 66 #define jpeg_read_header gpeg_read_header 67 #define jpeg_start_decompress gpeg_start_decompress 68 #define jpeg_read_scanlines gpeg_read_scanlines 69 #define jpeg_finish_decompress gpeg_finish_decompress 70 #define jpeg_read_raw_data gpeg_read_raw_data 71 #define jpeg_has_multiple_scans gpeg_has_multiple_scans 72 #define jpeg_start_output gpeg_start_output 73 #define jpeg_finish_output gpeg_finish_output 74 #define jpeg_input_complete gpeg_input_complete 75 #define jpeg_new_colormap gpeg_new_colormap 76 #define jpeg_consume_input gpeg_consume_input 77 #define jpeg_core_output_dimensions gpeg_core_output_dimensions 78 #define jpeg_calc_output_dimensions gpeg_calc_output_dimensions 79 #define jpeg_save_markers gpeg_save_markers 80 #define jpeg_set_marker_processor gpeg_set_marker_processor 81 #define jpeg_read_coefficients gpeg_read_coefficients 82 #define jpeg_write_coefficients gpeg_write_coefficients 83 #define jpeg_copy_critical_parameters gpeg_copy_critical_parameters 84 #define jpeg_abort_compress gpeg_abort_compress 85 #define jpeg_abort_decompress gpeg_abort_decompress 86 #define jpeg_abort gpeg_abort 87 #define jpeg_destroy gpeg_destroy 88 #define jpeg_resync_to_restart gpeg_resync_to_restart 89 90 /* This second list comes from examination of symbols in the lib */ 91 #define jpeg_free_small gpeg_free_small 92 #define jpeg_get_small gpeg_get_small 93 #define jpeg_get_large gpeg_get_large 94 #define jpeg_free_large gpeg_free_large 95 #define jpeg_mem_available gpeg_mem_available 96 #define jpeg_open_backing_store gpeg_open_backing_store 97 #define jpeg_mem_init gpeg_mem_init 98 #define jpeg_mem_term gpeg_mem_term 99 #define jpeg_natural_order gpeg_natural_order 100 #define jpeg_natural_order2 gpeg_natural_order2 101 #define jpeg_natural_order3 gpeg_natural_order3 102 #define jpeg_natural_order4 gpeg_natural_order4 103 #define jpeg_natural_order5 gpeg_natural_order5 104 #define jpeg_natural_order6 gpeg_natural_order6 105 #define jpeg_natural_order7 gpeg_natural_order7 106 #define jpeg_fdct_10x10 gpeg_fdct_10x10 107 #define jpeg_fdct_10x5 gpeg_fdct_10x5 108 #define jpeg_fdct_11x11 gpeg_fdct_11x11 109 #define jpeg_fdct_12x12 gpeg_fdct_12x12 110 #define jpeg_fdct_12x6 gpeg_fdct_12x6 111 #define jpeg_fdct_13x13 gpeg_fdct_13x13 112 #define jpeg_fdct_14x14 gpeg_fdct_14x14 113 #define jpeg_fdct_14x7 gpeg_fdct_14x7 114 #define jpeg_fdct_15x15 gpeg_fdct_15x15 115 #define jpeg_fdct_16x16 gpeg_fdct_16x16 116 #define jpeg_fdct_16x8 gpeg_fdct_16x8 117 #define jpeg_fdct_1x1 gpeg_fdct_1x1 118 #define jpeg_fdct_1x2 gpeg_fdct_1x2 119 #define jpeg_fdct_2x1 gpeg_fdct_2x1 120 #define jpeg_fdct_2x2 gpeg_fdct_2x2 121 #define jpeg_fdct_2x4 gpeg_fdct_2x4 122 #define jpeg_fdct_3x3 gpeg_fdct_3x3 123 #define jpeg_fdct_3x6 gpeg_fdct_3x6 124 #define jpeg_fdct_4x2 gpeg_fdct_4x2 125 #define jpeg_fdct_4x4 gpeg_fdct_4x4 126 #define jpeg_fdct_4x8 gpeg_fdct_4x8 127 #define jpeg_fdct_5x10 gpeg_fdct_5x10 128 #define jpeg_fdct_5x5 gpeg_fdct_5x5 129 #define jpeg_fdct_6x12 gpeg_fdct_6x12 130 #define jpeg_fdct_6x3 gpeg_fdct_6x3 131 #define jpeg_fdct_6x6 gpeg_fdct_6x6 132 #define jpeg_fdct_7x14 gpeg_fdct_7x14 133 #define jpeg_fdct_7x7 gpeg_fdct_7x7 134 #define jpeg_fdct_8x16 gpeg_fdct_8x16 135 #define jpeg_fdct_8x4 gpeg_fdct_8x4 136 #define jpeg_fdct_9x9 gpeg_fdct_9x9 137 #define jpeg_cust_mem_init gpeg_cust_mem_init 138 #define jpeg_cust_mem_set_private gpeg_cust_mem_set_private 139 #define jpeg_fill_bit_buffer gpeg_fill_bit_buffer 140 #define jpeg_huff_decode gpeg_huff_decode 141 #define jpeg_make_c_derived_tbl gpeg_make_c_derived_tbl 142 #define jpeg_make_d_derived_tbl gpeg_make_d_derived_tbl 143 #define jpeg_zigzag_order gpeg_zigzag_order 144 #define jpeg_zigzag_order2 gpeg_zigzag_order2 145 #define jpeg_zigzag_order3 gpeg_zigzag_order3 146 #define jpeg_zigzag_order4 gpeg_zigzag_order4 147 #define jpeg_zigzag_order5 gpeg_zigzag_order5 148 #define jpeg_zigzag_order6 gpeg_zigzag_order6 149 #define jpeg_zigzag_order7 gpeg_zigzag_order7 150 #define jpeg_std_message_table gpeg_std_message_table 151 #define jpeg_aritab gpeg_aritab 152 #define jpeg_idct_islow gpeg_idct_islow 153 #define jpeg_fdct_islow gpeg_fdct_islow 154 #define jpeg_aritab gpeg_aritab 155 #define jpeg_gen_optimal_table gpeg_gen_optimal_table 156 #define jinit_marker_reader ginit_marker_reader 157 #define jdiv_round_up gdiv_round_up 158 #define jround_up ground_up 159 #define jcopy_block_row gcopy_block_row 160 #define jcopy_sample_rows gcopy_sample_rows 161 #define jinit_input_controller ginit_input_controller 162 #define jinit_memory_mgr ginit_memory_mgr 163 #define jinit_master_decompress ginit_master_decompress 164 #define jinit_huff_decoder ginit_huff_decoder 165 #define jinit_d_coef_controller ginit_d_coef_controller 166 #define jinit_color_deconverter ginit_color_deconverter 167 #define jinit_inverse_dct ginit_inverse_dct 168 #define jinit_d_main_controller ginit_d_main_controller 169 #define jinit_arith_decoder ginit_arith_decoder 170 #define jinit_color_deconverter ginit_color_deconverter 171 #define jinit_d_coef_controller ginit_d_coef_controller 172 #define jinit_d_main_controller ginit_d_main_controller 173 #define jinit_d_post_controller ginit_d_post_controller 174 #define jinit_huff_decoder ginit_huff_decoder 175 #define jinit_master_decompress ginit_master_decompress 176 #define jinit_upsampler ginit_upsampler 177 #define jinit_d_post_controller ginit_d_post_controller 178 #define jinit_downsampler ginit_downsampler 179 #define jinit_arith_decoder ginit_arith_decoder 180 #define jinit_marker_writer ginit_marker_writer 181 #define jinit_marker_mgr ginit_marker_mgr 182 #define jinit_compress_master ginit_compress_master 183 #define jinit_c_coef_controller ginit_c_coef_controller 184 #define jinit_color_converter ginit_color_converter 185 #define jinit_forward_dct ginit_forward_dct 186 #define jinit_arith_encoder ginit_arith_encoder 187 #define jinit_huff_encoder ginit_huff_encoder 188 #define jinit_c_main_controller ginit_c_main_controller 189 #define jinit_marker_writer ginit_marker_writer 190 #define jinit_c_master_control ginit_c_master_control 191 #define jinit_c_prep_controller ginit_c_prep_controller 192 #endif 193 194 /* See IJG's jconfig.doc for the contents of this file. */ 195 196 #ifdef __PROTOTYPES__ 197 # define HAVE_PROTOTYPES 198 #endif 199 200 #define HAVE_UNSIGNED_CHAR 201 #define HAVE_UNSIGNED_SHORT 202 #undef CHAR_IS_UNSIGNED 203 204 #ifdef __STDC__ /* is this right? */ 205 # ifndef HAVE_STDDEF_H 206 # define HAVE_STDDEF_H 207 # endif 208 # ifndef HAVE_STDLIB_H 209 # define HAVE_STDLIB_H 210 # endif 211 #endif 212 213 #undef NEED_BSD_STRINGS /* WRONG */ 214 #undef NEED_SYS_TYPES_H /* WRONG */ 215 #undef NEED_FAR_POINTERS 216 #undef NEED_SHORT_EXTERNAL_NAMES 217 218 #undef INCOMPLETE_TYPES_BROKEN 219 220 /* The following is documented in jmemsys.h, not jconfig.doc. */ 221 #if ARCH_LOG2_SIZEOF_INT <= 1 222 # undef MAX_ALLOC_CHUNK 223 # define MAX_ALLOC_CHUNK 0xfff0 224 #endif 225 226 #ifdef JPEG_INTERNALS 227 228 #if ARCH_ARITH_RSHIFT == 0 229 # define RIGHT_SHIFT_IS_UNSIGNED 230 #else 231 # undef RIGHT_SHIFT_IS_UNSIGNED 232 #endif 233 234 #endif /* JPEG_INTERNALS */ 235 236 #endif /* gsjconf_INCLUDED */ 237