ref: a5e3db56e79f8561650469f856834c6759826cdb
parent: 394e3b05973edea07196710e10caa1af5c840a56
author: Sebastian Rasmussen <sebras@gmail.com>
date: Fri Jun 14 11:09:12 EDT 2019
jbig2dec: Avoid duplicate declarations of Huffman tables in test code. This is done by moving the tables into a separate compilation module and declaring the tables extern in the header file that is used elsewhere.
--- a/Makefile.am
+++ b/Makefile.am
@@ -12,7 +12,7 @@
libjbig2dec_la_LDFLAGS = -version-info @JBIG2DEC_LT_CURRENT@:@JBIG2DEC_LT_REVISION@:@JBIG2DEC_LT_AGE@ -no-undefined
libjbig2dec_la_SOURCES = jbig2.c \
- jbig2_arith.c jbig2_arith_int.c jbig2_arith_iaid.c jbig2_huffman.c \
+ jbig2_arith.c jbig2_arith_int.c jbig2_arith_iaid.c jbig2_huffman.c jbig2_hufftab.c \
jbig2_segment.c jbig2_page.c \
jbig2_symbol_dict.c jbig2_text.c \
jbig2_generic.c jbig2_refinement.c jbig2_mmr.c \
--- a/Makefile.unix
+++ b/Makefile.unix
@@ -8,9 +8,9 @@
LIB_SRCS := \
jbig2_arith.c jbig2_arith_int.c jbig2_arith_iaid.c \
- jbig2_huffman.c jbig2_segment.c jbig2_page.c jbig2_symbol_dict.c \
- jbig2_text.c jbig2_halftone.c jbig2_generic.c jbig2_refinement.c \
- jbig2_mmr.c jbig2_image.c jbig2.c
+ jbig2_huffman.c jbig2_hufftab.c jbig2_segment.c jbig2_page.c \
+ jbig2_symbol_dict.c jbig2_text.c jbig2_halftone.c jbig2_generic.c \
+ jbig2_refinement.c jbig2_mmr.c jbig2_image.c jbig2.c
LIB_OBJS := $(LIB_SRCS:%.c=%.o)
LIB_HDRS := \
jbig2.h jbig2_arith.h jbig2_arith_iaid.h jbig2_arith_int.h \
--- /dev/null
+++ b/jbig2_hufftab.c
@@ -1,0 +1,318 @@
+/* Copyright (C) 2001-2019 Artifex Software, Inc.
+ All Rights Reserved.
+
+ This software is provided AS-IS with no warranty, either express or
+ implied.
+
+ This software is distributed under license and may not be copied,
+ modified or distributed except as expressly authorized under the terms
+ of the license contained in the file LICENSE in this distribution.
+
+ Refer to licensing information at http://www.artifex.com or contact
+ Artifex Software, Inc., 1305 Grant Avenue - Suite 200, Novato,
+ CA 94945, U.S.A., +1(415)492-9861, for further information.
+*/
+
+/*
+ jbig2dec
+*/
+
+/* predefined Huffman table definitions
+ -- See Annex B of the JBIG2 specification */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+#include "os_types.h"
+
+#include <stdlib.h>
+
+#include "jbig2.h"
+#include "jbig2_priv.h"
+#include "jbig2_huffman.h"
+#include "jbig2_hufftab.h"
+
+#define JBIG2_COUNTOF(x) (sizeof((x)) / sizeof((x)[0]))
+
+/* Table B.1 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_A[] = {+ {1, 4, 0},+ {2, 8, 16},+ {3, 16, 272},+ {0, 32, -1}, /* low */+ {3, 32, 65808} /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_A = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_A), jbig2_huffman_lines_A };+
+/* Table B.2 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_B[] = {+ {1, 0, 0},+ {2, 0, 1},+ {3, 0, 2},+ {4, 3, 3},+ {5, 6, 11},+ {0, 32, -1}, /* low */+ {6, 32, 75}, /* high */+ {6, 0, 0} /* OOB */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_B = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_B), jbig2_huffman_lines_B };+
+/* Table B.3 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_C[] = {+ {8, 8, -256},+ {1, 0, 0},+ {2, 0, 1},+ {3, 0, 2},+ {4, 3, 3},+ {5, 6, 11},+ {8, 32, -257}, /* low */+ {7, 32, 75}, /* high */+ {6, 0, 0} /* OOB */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_C = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_C), jbig2_huffman_lines_C };+
+/* Table B.4 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_D[] = {+ {1, 0, 1},+ {2, 0, 2},+ {3, 0, 3},+ {4, 3, 4},+ {5, 6, 12},+ {0, 32, -1}, /* low */+ {5, 32, 76}, /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_D = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_D), jbig2_huffman_lines_D };+
+/* Table B.5 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_E[] = {+ {7, 8, -255},+ {1, 0, 1},+ {2, 0, 2},+ {3, 0, 3},+ {4, 3, 4},+ {5, 6, 12},+ {7, 32, -256}, /* low */+ {6, 32, 76} /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_E = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_E), jbig2_huffman_lines_E };+
+/* Table B.6 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_F[] = {+ {5, 10, -2048},+ {4, 9, -1024},+ {4, 8, -512},+ {4, 7, -256},+ {5, 6, -128},+ {5, 5, -64},+ {4, 5, -32},+ {2, 7, 0},+ {3, 7, 128},+ {3, 8, 256},+ {4, 9, 512},+ {4, 10, 1024},+ {6, 32, -2049}, /* low */+ {6, 32, 2048} /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_F = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_F), jbig2_huffman_lines_F };+
+/* Table B.7 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_G[] = {+ {4, 9, -1024},+ {3, 8, -512},+ {4, 7, -256},+ {5, 6, -128},+ {5, 5, -64},+ {4, 5, -32},+ {4, 5, 0},+ {5, 5, 32},+ {5, 6, 64},+ {4, 7, 128},+ {3, 8, 256},+ {3, 9, 512},+ {3, 10, 1024},+ {5, 32, -1025}, /* low */+ {5, 32, 2048} /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_G = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_G), jbig2_huffman_lines_G };+
+/* Table B.8 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_H[] = {+ {8, 3, -15},+ {9, 1, -7},+ {8, 1, -5},+ {9, 0, -3},+ {7, 0, -2},+ {4, 0, -1},+ {2, 1, 0},+ {5, 0, 2},+ {6, 0, 3},+ {3, 4, 4},+ {6, 1, 20},+ {4, 4, 22},+ {4, 5, 38},+ {5, 6, 70},+ {5, 7, 134},+ {6, 7, 262},+ {7, 8, 390},+ {6, 10, 646},+ {9, 32, -16}, /* low */+ {9, 32, 1670}, /* high */+ {2, 0, 0} /* OOB */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_H = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_H), jbig2_huffman_lines_H };+
+/* Table B.9 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_I[] = {+ {8, 4, -31},+ {9, 2, -15},+ {8, 2, -11},+ {9, 1, -7},+ {7, 1, -5},+ {4, 1, -3},+ {3, 1, -1},+ {3, 1, 1},+ {5, 1, 3},+ {6, 1, 5},+ {3, 5, 7},+ {6, 2, 39},+ {4, 5, 43},+ {4, 6, 75},+ {5, 7, 139},+ {5, 8, 267},+ {6, 8, 523},+ {7, 9, 779},+ {6, 11, 1291},+ {9, 32, -32}, /* low */+ {9, 32, 3339}, /* high */+ {2, 0, 0} /* OOB */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_I = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_I), jbig2_huffman_lines_I };+
+/* Table B.10 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_J[] = {+ {7, 4, -21},+ {8, 0, -5},+ {7, 0, -4},+ {5, 0, -3},+ {2, 2, -2},+ {5, 0, 2},+ {6, 0, 3},+ {7, 0, 4},+ {8, 0, 5},+ {2, 6, 6},+ {5, 5, 70},+ {6, 5, 102},+ {6, 6, 134},+ {6, 7, 198},+ {6, 8, 326},+ {6, 9, 582},+ {6, 10, 1094},+ {7, 11, 2118},+ {8, 32, -22}, /* low */+ {8, 32, 4166}, /* high */+ {2, 0, 0} /* OOB */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_J = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_J), jbig2_huffman_lines_J };+
+/* Table B.11 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_K[] = {+ {1, 0, 1},+ {2, 1, 2},+ {4, 0, 4},+ {4, 1, 5},+ {5, 1, 7},+ {5, 2, 9},+ {6, 2, 13},+ {7, 2, 17},+ {7, 3, 21},+ {7, 4, 29},+ {7, 5, 45},+ {7, 6, 77},+ {0, 32, -1}, /* low */+ {7, 32, 141} /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_K = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_K), jbig2_huffman_lines_K };+
+/* Table B.12 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_L[] = {+ {1, 0, 1},+ {2, 0, 2},+ {3, 1, 3},+ {5, 0, 5},+ {5, 1, 6},+ {6, 1, 8},+ {7, 0, 10},+ {7, 1, 11},+ {7, 2, 13},+ {7, 3, 17},+ {7, 4, 25},+ {8, 5, 41},+ {8, 32, 73},+ {0, 32, -1}, /* low */+ {0, 32, 0} /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_L = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_L), jbig2_huffman_lines_L };+
+/* Table B.13 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_M[] = {+ {1, 0, 1},+ {3, 0, 2},+ {4, 0, 3},+ {5, 0, 4},+ {4, 1, 5},+ {3, 3, 7},+ {6, 1, 15},+ {6, 2, 17},+ {6, 3, 21},+ {6, 4, 29},+ {6, 5, 45},+ {7, 6, 77},+ {0, 32, -1}, /* low */+ {7, 32, 141} /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_M = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_M), jbig2_huffman_lines_M };+
+/* Table B.14 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_N[] = {+ {3, 0, -2},+ {3, 0, -1},+ {1, 0, 0},+ {3, 0, 1},+ {3, 0, 2},+ {0, 32, -1}, /* low */+ {0, 32, 3}, /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_N = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_N), jbig2_huffman_lines_N };+
+/* Table B.15 */
+static const Jbig2HuffmanLine jbig2_huffman_lines_O[] = {+ {7, 4, -24},+ {6, 2, -8},+ {5, 1, -4},+ {4, 0, -2},+ {3, 0, -1},+ {1, 0, 0},+ {3, 0, 1},+ {4, 0, 2},+ {5, 1, 3},+ {6, 2, 5},+ {7, 4, 9},+ {7, 32, -25}, /* low */+ {7, 32, 25} /* high */+};
+
+const Jbig2HuffmanParams jbig2_huffman_params_O = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_O), jbig2_huffman_lines_O };--- a/jbig2_hufftab.h
+++ b/jbig2_hufftab.h
@@ -18,298 +18,25 @@
*/
/* predefined Huffman table definitions
- -- See Annex B of the JBIG2 specification */
+ -- See Annex B.5 of the JBIG2 specification */
#ifndef _JBIG2_HUFFTAB_H
#define _JBIG2_HUFFTAB_H
-/* types are in jbig2_huffman.h, you must include that first */
-
-#define JBIG2_COUNTOF(x) (sizeof((x)) / sizeof((x)[0]))
-
-/* Table B.1 */
-const Jbig2HuffmanLine jbig2_huffman_lines_A[] = {- {1, 4, 0},- {2, 8, 16},- {3, 16, 272},- {0, 32, -1}, /* low */- {3, 32, 65808} /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_A = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_A), jbig2_huffman_lines_A };-
-/* Table B.2 */
-const Jbig2HuffmanLine jbig2_huffman_lines_B[] = {- {1, 0, 0},- {2, 0, 1},- {3, 0, 2},- {4, 3, 3},- {5, 6, 11},- {0, 32, -1}, /* low */- {6, 32, 75}, /* high */- {6, 0, 0} /* OOB */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_B = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_B), jbig2_huffman_lines_B };-
-/* Table B.3 */
-const Jbig2HuffmanLine jbig2_huffman_lines_C[] = {- {8, 8, -256},- {1, 0, 0},- {2, 0, 1},- {3, 0, 2},- {4, 3, 3},- {5, 6, 11},- {8, 32, -257}, /* low */- {7, 32, 75}, /* high */- {6, 0, 0} /* OOB */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_C = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_C), jbig2_huffman_lines_C };-
-/* Table B.4 */
-const Jbig2HuffmanLine jbig2_huffman_lines_D[] = {- {1, 0, 1},- {2, 0, 2},- {3, 0, 3},- {4, 3, 4},- {5, 6, 12},- {0, 32, -1}, /* low */- {5, 32, 76}, /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_D = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_D), jbig2_huffman_lines_D };-
-/* Table B.5 */
-const Jbig2HuffmanLine jbig2_huffman_lines_E[] = {- {7, 8, -255},- {1, 0, 1},- {2, 0, 2},- {3, 0, 3},- {4, 3, 4},- {5, 6, 12},- {7, 32, -256}, /* low */- {6, 32, 76} /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_E = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_E), jbig2_huffman_lines_E };-
-/* Table B.6 */
-const Jbig2HuffmanLine jbig2_huffman_lines_F[] = {- {5, 10, -2048},- {4, 9, -1024},- {4, 8, -512},- {4, 7, -256},- {5, 6, -128},- {5, 5, -64},- {4, 5, -32},- {2, 7, 0},- {3, 7, 128},- {3, 8, 256},- {4, 9, 512},- {4, 10, 1024},- {6, 32, -2049}, /* low */- {6, 32, 2048} /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_F = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_F), jbig2_huffman_lines_F };-
-/* Table B.7 */
-const Jbig2HuffmanLine jbig2_huffman_lines_G[] = {- {4, 9, -1024},- {3, 8, -512},- {4, 7, -256},- {5, 6, -128},- {5, 5, -64},- {4, 5, -32},- {4, 5, 0},- {5, 5, 32},- {5, 6, 64},- {4, 7, 128},- {3, 8, 256},- {3, 9, 512},- {3, 10, 1024},- {5, 32, -1025}, /* low */- {5, 32, 2048} /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_G = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_G), jbig2_huffman_lines_G };-
-/* Table B.8 */
-const Jbig2HuffmanLine jbig2_huffman_lines_H[] = {- {8, 3, -15},- {9, 1, -7},- {8, 1, -5},- {9, 0, -3},- {7, 0, -2},- {4, 0, -1},- {2, 1, 0},- {5, 0, 2},- {6, 0, 3},- {3, 4, 4},- {6, 1, 20},- {4, 4, 22},- {4, 5, 38},- {5, 6, 70},- {5, 7, 134},- {6, 7, 262},- {7, 8, 390},- {6, 10, 646},- {9, 32, -16}, /* low */- {9, 32, 1670}, /* high */- {2, 0, 0} /* OOB */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_H = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_H), jbig2_huffman_lines_H };-
-/* Table B.9 */
-const Jbig2HuffmanLine jbig2_huffman_lines_I[] = {- {8, 4, -31},- {9, 2, -15},- {8, 2, -11},- {9, 1, -7},- {7, 1, -5},- {4, 1, -3},- {3, 1, -1},- {3, 1, 1},- {5, 1, 3},- {6, 1, 5},- {3, 5, 7},- {6, 2, 39},- {4, 5, 43},- {4, 6, 75},- {5, 7, 139},- {5, 8, 267},- {6, 8, 523},- {7, 9, 779},- {6, 11, 1291},- {9, 32, -32}, /* low */- {9, 32, 3339}, /* high */- {2, 0, 0} /* OOB */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_I = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_I), jbig2_huffman_lines_I };-
-/* Table B.10 */
-const Jbig2HuffmanLine jbig2_huffman_lines_J[] = {- {7, 4, -21},- {8, 0, -5},- {7, 0, -4},- {5, 0, -3},- {2, 2, -2},- {5, 0, 2},- {6, 0, 3},- {7, 0, 4},- {8, 0, 5},- {2, 6, 6},- {5, 5, 70},- {6, 5, 102},- {6, 6, 134},- {6, 7, 198},- {6, 8, 326},- {6, 9, 582},- {6, 10, 1094},- {7, 11, 2118},- {8, 32, -22}, /* low */- {8, 32, 4166}, /* high */- {2, 0, 0} /* OOB */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_J = { TRUE, JBIG2_COUNTOF(jbig2_huffman_lines_J), jbig2_huffman_lines_J };-
-/* Table B.11 */
-const Jbig2HuffmanLine jbig2_huffman_lines_K[] = {- {1, 0, 1},- {2, 1, 2},- {4, 0, 4},- {4, 1, 5},- {5, 1, 7},- {5, 2, 9},- {6, 2, 13},- {7, 2, 17},- {7, 3, 21},- {7, 4, 29},- {7, 5, 45},- {7, 6, 77},- {0, 32, -1}, /* low */- {7, 32, 141} /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_K = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_K), jbig2_huffman_lines_K };-
-/* Table B.12 */
-const Jbig2HuffmanLine jbig2_huffman_lines_L[] = {- {1, 0, 1},- {2, 0, 2},- {3, 1, 3},- {5, 0, 5},- {5, 1, 6},- {6, 1, 8},- {7, 0, 10},- {7, 1, 11},- {7, 2, 13},- {7, 3, 17},- {7, 4, 25},- {8, 5, 41},- {8, 32, 73},- {0, 32, -1}, /* low */- {0, 32, 0} /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_L = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_L), jbig2_huffman_lines_L };-
-/* Table B.13 */
-const Jbig2HuffmanLine jbig2_huffman_lines_M[] = {- {1, 0, 1},- {3, 0, 2},- {4, 0, 3},- {5, 0, 4},- {4, 1, 5},- {3, 3, 7},- {6, 1, 15},- {6, 2, 17},- {6, 3, 21},- {6, 4, 29},- {6, 5, 45},- {7, 6, 77},- {0, 32, -1}, /* low */- {7, 32, 141} /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_M = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_M), jbig2_huffman_lines_M };-
-/* Table B.14 */
-const Jbig2HuffmanLine jbig2_huffman_lines_N[] = {- {3, 0, -2},- {3, 0, -1},- {1, 0, 0},- {3, 0, 1},- {3, 0, 2},- {0, 32, -1}, /* low */- {0, 32, 3}, /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_N = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_N), jbig2_huffman_lines_N };-
-/* Table B.15 */
-const Jbig2HuffmanLine jbig2_huffman_lines_O[] = {- {7, 4, -24},- {6, 2, -8},- {5, 1, -4},- {4, 0, -2},- {3, 0, -1},- {1, 0, 0},- {3, 0, 1},- {4, 0, 2},- {5, 1, 3},- {6, 2, 5},- {7, 4, 9},- {7, 32, -25}, /* low */- {7, 32, 25} /* high */-};
-
-const Jbig2HuffmanParams jbig2_huffman_params_O = { FALSE, JBIG2_COUNTOF(jbig2_huffman_lines_O), jbig2_huffman_lines_O };-
-#undef JBIG2_COUNTOF
+extern const Jbig2HuffmanParams jbig2_huffman_params_A;
+extern const Jbig2HuffmanParams jbig2_huffman_params_B;
+extern const Jbig2HuffmanParams jbig2_huffman_params_C;
+extern const Jbig2HuffmanParams jbig2_huffman_params_D;
+extern const Jbig2HuffmanParams jbig2_huffman_params_E;
+extern const Jbig2HuffmanParams jbig2_huffman_params_F;
+extern const Jbig2HuffmanParams jbig2_huffman_params_G;
+extern const Jbig2HuffmanParams jbig2_huffman_params_H;
+extern const Jbig2HuffmanParams jbig2_huffman_params_I;
+extern const Jbig2HuffmanParams jbig2_huffman_params_J;
+extern const Jbig2HuffmanParams jbig2_huffman_params_K;
+extern const Jbig2HuffmanParams jbig2_huffman_params_L;
+extern const Jbig2HuffmanParams jbig2_huffman_params_M;
+extern const Jbig2HuffmanParams jbig2_huffman_params_N;
+extern const Jbig2HuffmanParams jbig2_huffman_params_O;
#endif /* _JBIG2_HUFFTAB_H */
--- a/msvc.mak
+++ b/msvc.mak
@@ -42,10 +42,11 @@
#
OBJS=getopt$(OBJ) getopt1$(OBJ) jbig2$(OBJ) jbig2_arith$(OBJ) \
jbig2_arith_iaid$(OBJ) jbig2_arith_int$(OBJ) jbig2_huffman$(OBJ) \
- jbig2_generic$(OBJ) jbig2_refinement$(OBJ) jbig2_halftone$(OBJ)\
- jbig2_image$(OBJ) jbig2_image_pbm$(OBJ) $(JBIG2_IMAGE_PNG_OBJ) \
- jbig2_segment$(OBJ) jbig2_symbol_dict$(OBJ) jbig2_text$(OBJ) \
- jbig2_mmr$(OBJ) jbig2_page$(OBJ) jbig2dec$(OBJ) sha1$(OBJ)
+ jbig2_hufftab$(OBJ) jbig2_generic$(OBJ) jbig2_refinement$(OBJ) \
+ jbig2_halftone$(OBJ) jbig2_image$(OBJ) jbig2_image_pbm$(OBJ) \
+ $(JBIG2_IMAGE_PNG_OBJ) jbig2_segment$(OBJ) jbig2_symbol_dict$(OBJ) \
+ jbig2_text$(OBJ) jbig2_mmr$(OBJ) jbig2_page$(OBJ) jbig2dec$(OBJ) \
+ sha1$(OBJ)
HDRS=getopt.h jbig2.h jbig2_arith.h jbig2_arith_iaid.h jbig2_arith_int.h \
jbig2_generic.h jbig2_huffman.h jbig2_hufftab.h jbig2_image.h \
@@ -82,6 +83,9 @@
jbig2_huffman$(OBJ): jbig2_huffman.c $(HDRS)
$(CC) $(CFLAGS) -c jbig2_huffman.c
+
+jbig2_hufftab$(OBJ): jbig2_hufftab.c $(HDRS)
+ $(CC) $(CFLAGS) -c jbig2_hufftab.c
jbig2_image$(OBJ): jbig2_image.c $(HDRS)
$(CC) $(CFLAGS) -c jbig2_image.c
--
⑨