summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'toolbin')
-rw-r--r--toolbin/GenSubstCID.psbin5702 -> 5702 bytes
-rwxr-xr-xtoolbin/afmutil.py2
-rw-r--r--toolbin/color/icc_creator/ICC_Creator/CIELAB.h2
-rw-r--r--toolbin/color/icc_creator/ICC_Creator/ICC_Creator.cpp2
-rw-r--r--toolbin/color/icc_creator/ICC_Creator/ICC_Creator.h2
-rw-r--r--toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.cpp2
-rw-r--r--toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.h2
-rw-r--r--toolbin/color/icc_creator/ICC_Creator/icc_create.cpp2
-rw-r--r--toolbin/color/icc_creator/ICC_Creator/icc_create.h2
-rw-r--r--toolbin/color/icc_creator/README.txt2
-rw-r--r--toolbin/encs2c.ps23
-rwxr-xr-xtoolbin/errlist.tcl2
-rw-r--r--toolbin/extractFonts.ps2
-rw-r--r--toolbin/extractICCprofiles.ps2
-rw-r--r--toolbin/gen_ldf_jb2.py2
-rw-r--r--toolbin/genfontmap.ps2
-rwxr-xr-xtoolbin/gitlog2changelog.py6
-rwxr-xr-xtoolbin/gsmake.tcl2
-rw-r--r--toolbin/halftone/ETS/test_ets.c97
-rw-r--r--toolbin/halftone/ETS/win32/ETS.sln11
-rw-r--r--toolbin/halftone/ETS/win32/ETS.vcproj196
-rw-r--r--toolbin/halftone/ETS/win32/ETS.vcxproj93
-rw-r--r--toolbin/halftone/ETS/win32/ETS.vcxproj.filters33
-rw-r--r--toolbin/halftone/gen_ordered/README2
-rw-r--r--toolbin/halftone/gen_ordered/gen_ordered_main.c2
-rw-r--r--toolbin/halftone/gen_stochastic/gen_stochastic.c2
-rw-r--r--toolbin/halftone/thresh_remap/thresh_remap.c2
-rwxr-xr-xtoolbin/headers.tcl2
-rw-r--r--toolbin/jpxtopdf.c2
-rwxr-xr-xtoolbin/leaks.tcl2
-rwxr-xr-xtoolbin/localcluster/clusterpush.pl45
-rwxr-xr-xtoolbin/makehist.tcl2
-rwxr-xr-xtoolbin/memory.py2
-rwxr-xr-xtoolbin/ocheck.py2
-rwxr-xr-xtoolbin/pre.tcl2
-rwxr-xr-xtoolbin/precheck.tcl2
-rwxr-xr-xtoolbin/split_changelog.py2
-rwxr-xr-xtoolbin/suite.tcl2
-rwxr-xr-xtoolbin/tests/build_revision.py2
-rwxr-xr-xtoolbin/tests/check_all.py2
-rwxr-xr-xtoolbin/tests/check_comments.py2
-rwxr-xr-xtoolbin/tests/check_dirs.py2
-rwxr-xr-xtoolbin/tests/check_docrefs.py2
-rw-r--r--toolbin/tests/cmpi.py2
-rwxr-xr-xtoolbin/tests/compare_checksumdb.py2
-rwxr-xr-xtoolbin/tests/compare_checksums.py2
-rwxr-xr-xtoolbin/tests/dump_checksum.py2
-rwxr-xr-xtoolbin/tests/dump_checksum_plus.py2
-rwxr-xr-xtoolbin/tests/dump_checksum_raw.py2
-rw-r--r--toolbin/tests/fuzzy.c2
-rwxr-xr-xtoolbin/tests/get_baseline_log.py2
-rwxr-xr-xtoolbin/tests/get_baselines.py2
-rwxr-xr-xtoolbin/tests/gscheck_all.py2
-rwxr-xr-xtoolbin/tests/gscheck_fuzzypdf.py2
-rwxr-xr-xtoolbin/tests/gscheck_pdfwrite.py2
-rwxr-xr-xtoolbin/tests/gscheck_raster.py2
-rwxr-xr-xtoolbin/tests/gscheck_testfiles.py2
-rw-r--r--toolbin/tests/gsconf.py2
-rw-r--r--toolbin/tests/gsparamsets.py2
-rw-r--r--toolbin/tests/gssum.py2
-rw-r--r--toolbin/tests/gstestgs.py2
-rw-r--r--toolbin/tests/gstestutils.py2
-rw-r--r--toolbin/tests/gsutil.py2
-rwxr-xr-xtoolbin/tests/make_baselinedb.py2
-rwxr-xr-xtoolbin/tests/make_testdb.py2
-rwxr-xr-xtoolbin/tests/make_two_pdfversions2
-rwxr-xr-xtoolbin/tests/make_two_versions2
-rwxr-xr-xtoolbin/tests/myoptparse.py2
-rw-r--r--toolbin/tests/rasterdb.py2
-rwxr-xr-xtoolbin/tests/revert_baseline2
-rwxr-xr-xtoolbin/tests/revert_pdfbaseline2
-rwxr-xr-xtoolbin/tests/run_nightly.py2
-rwxr-xr-xtoolbin/tests/run_parallel2
-rwxr-xr-xtoolbin/tests/run_regression.py2
-rwxr-xr-xtoolbin/tests/testdiff.py2
-rwxr-xr-xtoolbin/tests/update_baseline.py2
-rwxr-xr-xtoolbin/tests/update_specific2
-rwxr-xr-xtoolbin/tmake.tcl2
78 files changed, 336 insertions, 306 deletions
diff --git a/toolbin/GenSubstCID.ps b/toolbin/GenSubstCID.ps
index 12fb96ca..d8828672 100644
--- a/toolbin/GenSubstCID.ps
+++ b/toolbin/GenSubstCID.ps
Binary files differ
diff --git a/toolbin/afmutil.py b/toolbin/afmutil.py
index 375380a1..1517fc78 100755
--- a/toolbin/afmutil.py
+++ b/toolbin/afmutil.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-## Copyright (C) 2001-2020 Artifex Software, Inc.
+## Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/color/icc_creator/ICC_Creator/CIELAB.h b/toolbin/color/icc_creator/ICC_Creator/CIELAB.h
index 660f8939..a8a35b6d 100644
--- a/toolbin/color/icc_creator/ICC_Creator/CIELAB.h
+++ b/toolbin/color/icc_creator/ICC_Creator/CIELAB.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.cpp b/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.cpp
index a981b03e..e23bb87c 100644
--- a/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.cpp
+++ b/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.cpp
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.h b/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.h
index a9c79b8e..acfbee13 100644
--- a/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.h
+++ b/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.cpp b/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.cpp
index b943180b..f143a9e1 100644
--- a/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.cpp
+++ b/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.cpp
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.h b/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.h
index 0b73d1aa..7fa42375 100644
--- a/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.h
+++ b/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/color/icc_creator/ICC_Creator/icc_create.cpp b/toolbin/color/icc_creator/ICC_Creator/icc_create.cpp
index e9f2bc5d..d38d51ea 100644
--- a/toolbin/color/icc_creator/ICC_Creator/icc_create.cpp
+++ b/toolbin/color/icc_creator/ICC_Creator/icc_create.cpp
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/color/icc_creator/ICC_Creator/icc_create.h b/toolbin/color/icc_creator/ICC_Creator/icc_create.h
index 949bad6b..9a611d6d 100644
--- a/toolbin/color/icc_creator/ICC_Creator/icc_create.h
+++ b/toolbin/color/icc_creator/ICC_Creator/icc_create.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/color/icc_creator/README.txt b/toolbin/color/icc_creator/README.txt
index bc236d05..d57c133f 100644
--- a/toolbin/color/icc_creator/README.txt
+++ b/toolbin/color/icc_creator/README.txt
@@ -1,4 +1,4 @@
- Copyright (C) 2001-2020 Artifex Software, Inc.
+ Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/encs2c.ps b/toolbin/encs2c.ps
index f734b603..773b8a80 100644
--- a/toolbin/encs2c.ps
+++ b/toolbin/encs2c.ps
@@ -1,5 +1,5 @@
%!
-% Copyright (C) 2001-2020 Artifex Software, Inc.
+% Copyright (C) 2001-2021 Artifex Software, Inc.
% All Rights Reserved.
%
% This software is provided AS-IS with no warranty, either express or
@@ -22,8 +22,8 @@
% represent them in a compact format described in src/gscencs.c.
% The generated files are named gscedata.[ch] and are included in the
% source distribution in the src directory. The canonical invocation is
-% gs -dNODISPLAY -q -SO=gscedata.h toolbin/encs2c.ps > src/gscedata.h
-% gs -dNODISPLAY -q -SO=gscedata.c toolbin/encs2c.ps > src/gscedata.c
+% gs -dNOSAFER -Ilib -dNODISPLAY -q -SO=gscedata.h toolbin/encs2c.ps > src/gscedata.h
+% gs -dNOSAFER -Ilib -dNODISPLAY -q -SO=gscedata.c toolbin/encs2c.ps > src/gscedata.c
%
% NOTE: If the C representation of encodings changes, this file
% (toolbin/encs2c.ps), src/gscencs.h, and src/gscencs.c must be kept
@@ -33,8 +33,19 @@
% WinAnsiEncoding, StandardEncoding, MacExpertEncoding, SymbolEncoding
% for pdfwrite device.
%
-% gs -dNODISPLAY -q -SO=gdevpdtv.h toolbin/encs2c.ps > src/gdevpdtv.h
-% gs -dNODISPLAY -q -SO=gdevpdtv.c toolbin/encs2c.ps > src/gdevpdtv.c
+% gs -dNOSAFER -Ilib -dNODISPLAY -q -SO=gdevpdtv.h toolbin/encs2c.ps > src/gdevpdtv.h
+% gs -dNOSAFER -Ilib -dNODISPLAY -q -SO=gdevpdtv.c toolbin/encs2c.ps > src/gdevpdtv.c
+%
+% For "-Ilib" you need to point that at a valid "lib" directory from
+% the ghostpdl tree - since gs_css_e.ps now lives there.
+
+% .namestring is longer available as an operator, define an
+% equivalent here
+/.namestring
+{
+ dup length string cvs
+} bind def
+
% ================ Write header file ================ %
@@ -314,7 +325,7 @@ estrs readonly pop
} loop pop def
% Write the initial boilerplate.
-(/* Copyright (C) 2001-2020 Artifex Software, Inc.) =
+(/* Copyright (C) 2001-2021 Artifex Software, Inc.) =
( All Rights Reserved.) =
( ) =
( This software is provided AS-IS with no warranty, either express or) =
diff --git a/toolbin/errlist.tcl b/toolbin/errlist.tcl
index 2df10aa7..00674ddf 100755
--- a/toolbin/errlist.tcl
+++ b/toolbin/errlist.tcl
@@ -2,7 +2,7 @@
# hack to restart using tclsh \
exec tclsh "$0" "$@"
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/extractFonts.ps b/toolbin/extractFonts.ps
index 5234e498..610a1ce5 100644
--- a/toolbin/extractFonts.ps
+++ b/toolbin/extractFonts.ps
@@ -1,4 +1,4 @@
-% Copyright (C) 2001-2020 Artifex Software, Inc.
+% Copyright (C) 2001-2021 Artifex Software, Inc.
% All Rights Reserved.
%
% This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/extractICCprofiles.ps b/toolbin/extractICCprofiles.ps
index 9781c532..3f1ea4ec 100644
--- a/toolbin/extractICCprofiles.ps
+++ b/toolbin/extractICCprofiles.ps
@@ -1,4 +1,4 @@
-% Copyright (C) 2001-2020 Artifex Software, Inc.
+% Copyright (C) 2001-2021 Artifex Software, Inc.
% All Rights Reserved.
%
% This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/gen_ldf_jb2.py b/toolbin/gen_ldf_jb2.py
index fe7f1358..9cbd973e 100644
--- a/toolbin/gen_ldf_jb2.py
+++ b/toolbin/gen_ldf_jb2.py
@@ -1,5 +1,5 @@
#!/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/genfontmap.ps b/toolbin/genfontmap.ps
index ee013914..cf9ed12d 100644
--- a/toolbin/genfontmap.ps
+++ b/toolbin/genfontmap.ps
@@ -1,5 +1,5 @@
%!PS
-% Copyright (C) 2001-2020 Artifex Software, Inc.
+% Copyright (C) 2001-2021 Artifex Software, Inc.
% All Rights Reserved.
%
% This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/gitlog2changelog.py b/toolbin/gitlog2changelog.py
index 2b464253..69ff601f 100755
--- a/toolbin/gitlog2changelog.py
+++ b/toolbin/gitlog2changelog.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
@@ -51,7 +51,9 @@ else:
for csum in commit_list:
# we have to use the slightly baroque syntax: git log --cc --topo-order <commit>^...<commit>
# where the "^" indicates the commit prior to the one we're processing with
- cmd="git log --name-only --topo-order --date=iso -n1 " + csum + "^" + "..." + csum
+# cmd="git log --name-only --topo-order --date=iso -n1 " + csum + "^" + "..." + csum
+
+ cmd="git log --name-only --topo-order --date=iso -n1 " + csum + "^" + "..." + csum # this leaves out the file list for each commit
res = os.popen(cmd, "r")
commit=res.readlines()
# This assumes the order of the lines.....
diff --git a/toolbin/gsmake.tcl b/toolbin/gsmake.tcl
index 9deb44f0..8232781a 100755
--- a/toolbin/gsmake.tcl
+++ b/toolbin/gsmake.tcl
@@ -1,6 +1,6 @@
#!/usr/bin/tclsh
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/halftone/ETS/test_ets.c b/toolbin/halftone/ETS/test_ets.c
index 617f1794..22d1deaf 100644
--- a/toolbin/halftone/ETS/test_ets.c
+++ b/toolbin/halftone/ETS/test_ets.c
@@ -222,7 +222,7 @@ static void read_psd_line16(ETS_SrcPixel **ibufs, int xs, FILE *fi, int planes,
{
temp_value1 = ibufs[psd_ctx->permute[kk]][i];
temp_value2 = ((temp_value1 & 0xff) << 8) + ((temp_value1 & 0xff00) >> 8);
- ibufs[psd_ctx->permute[kk]][i] = temp_value2;
+ ibufs[psd_ctx->permute[kk]][i] = (unsigned char) temp_value2;
}
#endif
/* Update where we are in each band */
@@ -310,11 +310,13 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
if (!(depth == 8 || depth == 16))
die("Only 8 or 16 bit PSD files supported");
- if (depth == 16 && (sizeof(ETS_SrcPixel) != 2 || ETS_SRC_MAX != 65535))
+#ifdef CHAR_SOURCE
+ if (depth == 16)
die("ETS_SrcPixel type and ETS_SRC_MAX in ets.h not set for 16 bit support!");
-
- if (depth == 8 && (sizeof(ETS_SrcPixel) != 1 || ETS_SRC_MAX != 255))
+#else
+ if (depth == 8)
die("ETS_SrcPixel type and ETS_SRC_MAX in ets.h not set for 8 bit support!");
+#endif
/* Dont handle duotone or indexed data at this time */
if (color_mode == 2 || color_mode == 8)
@@ -345,7 +347,11 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
fread(buf, 1, 4, fi);
get4(&size, buf);
fwrite(buf, 1, 4, fo);
+
temp_buff = (uchar*) malloc(size);
+ if (temp_buff == NULL)
+ die("Malloc failure in read_psd");
+
fread(temp_buff, 1, size, fi);
fwrite(temp_buff, 1, size, fo);
free(temp_buff);
@@ -355,7 +361,11 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
fread(buf, 1, 4, fi);
get4(&size, buf);
fwrite(buf, 1, 4, fo);
+
temp_buff = (uchar*) malloc(size);
+ if (temp_buff == NULL)
+ die("Malloc failure in read_psd");
+
fread(temp_buff, 1, size, fi);
fwrite(temp_buff, 1, size, fo);
free(temp_buff);
@@ -377,6 +387,8 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
/* Allocate the output buffer */
psd_ctx->output_buffer = malloc(num_channel * height * width * bytes);
+ if (psd_ctx->output_buffer == NULL)
+ die("Malloc failure in read_psd");
if (codec == 1)
{
@@ -384,8 +396,17 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
compressed. First read in the size for each compressed line */
data_size = num_channel * height;
psd_ctx->row_lengths = (int*) malloc(data_size * sizeof(int));
+ if (psd_ctx->row_lengths == NULL)
+ die("Malloc failure in read_psd");
+
psd_ctx->band_file_offset = (long*) malloc(num_channel * sizeof(long));
+ if (psd_ctx->band_file_offset == NULL)
+ die("Malloc failure in read_psd");
+
psd_ctx->band_row_length_index = (int*) malloc(num_channel * sizeof(int));
+ if (psd_ctx->band_row_length_index == NULL)
+ die("Malloc failure in read_psd");
+
count += (2 * data_size); /* This gets us to the start of the image data */
/* Here we compute where in the file we need to go, to get the start of
the scan line in each band, we compute the max length of all the
@@ -404,6 +425,9 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
}
}
psd_ctx->rle_row = (void*) malloc(maxlength);
+ if (psd_ctx->rle_row == NULL)
+ die("Malloc failure in read_psd");
+
psd_ctx->read_line = read_psd_line_rle8;
psd_ctx->write_line = write_psd_line8;
for (kk = 0; kk < num_channel; kk++)
@@ -413,7 +437,13 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
#ifdef TEST_PSD_DUMP
/* Now do the decode for testing */
in_buff = (uchar*) malloc(maxlength);
+ if (in_buff == NULL)
+ die("Malloc failure in read_psd");
+
out_buff = (uchar*) malloc(width);
+ if (out_buff == NULL)
+ die("Malloc failure in read_psd");
+
for (kk = 0; kk < data_size; kk++)
{
fread(in_buff, 1, (psd_ctx->row_lengths)[kk], fi);
@@ -433,9 +463,13 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
psd_ctx->rle_row = NULL;
psd_ctx->band_row_length_index = NULL;
psd_ctx->band_file_offset = (long*) malloc(num_channel * sizeof(long));
- for (kk = 0; kk < num_channel; kk++)
- {
- (psd_ctx->band_file_offset)[kk] = count + height * width * kk * bytes;
+ if (psd_ctx->band_file_offset == NULL)
+ die("Memory allocation failure in read_psd");
+ else {
+ for (kk = 0; kk < num_channel; kk++)
+ {
+ (psd_ctx->band_file_offset)[kk] = count + height * width * kk * bytes;
+ }
}
if (depth == 8)
{
@@ -449,11 +483,16 @@ static void read_psd(FILE *fi, psd_ctx_t *psd_ctx, FILE *fo)
}
}
psd_ctx->finalize = finalize_psd;
+
psd_ctx->permute = (uchar*) malloc(num_channel);
- /* A default initialization */
- for (kk = 0; kk < num_channel; kk++)
- {
- psd_ctx->permute[kk] = kk;
+ if (psd_ctx->permute == NULL) {
+ die("Memory allocation failure in read_psd");
+ } else {
+ /* A default initialization */
+ for (kk = 0; kk < num_channel; kk++)
+ {
+ psd_ctx->permute[kk] = kk;
+ }
}
}
@@ -461,22 +500,23 @@ static void read_pgm(FILE *fi, int *xs, int *ys, FILE *fo)
{
char buf[256];
int depth;
+ int count;
do
fgets(buf, sizeof(buf), fi);
while (buf[0] == '#');
- sscanf (buf, "%d", xs);
+ count = sscanf(buf, "%d", xs);
do
fgets (buf, sizeof(buf), fi);
while (buf[0] == '#');
- sscanf (buf, "%d", ys);
+ count = sscanf (buf, "%d", ys);
if (*xs <= 0 || *ys <= 0 || *xs > MAX_SIZE || *ys > MAX_SIZE)
die("Input image size out of range");
do
fgets(buf, sizeof(buf), fi);
while (buf[0] == '#');
- sscanf(buf, "%d", &depth);
+ count = sscanf(buf, "%d", &depth);
if (depth != 255)
die("Only works with depth=255 images");
@@ -529,7 +569,7 @@ static int read_pam(FILE *fi, int *xs, int *ys, FILE *fo)
{
fprintf(fo, "TUPLTYPE CMYK\n");
}
- else if (sscanf(buf, "TUPLTYP%c") && c == 'E')
+ else if (sscanf(buf, "TUPLTYP%c", &c) && c == 'E')
{
die("Only CMYK/DEVN pams supported");
}
@@ -540,7 +580,7 @@ static int read_pam(FILE *fi, int *xs, int *ys, FILE *fo)
}
else
{
- printf(stderr, "Unknown header field: %s\n", buf);
+ fprintf(stderr, "Unknown header field: %s\n", buf);
die("Unknown header field\n");
}
}
@@ -608,7 +648,7 @@ main(int argc, char **argv)
char buf[256];
int xs, ys;
int xsb;
- ETS_POLARITY polarity;
+ ETS_POLARITY polarity = ETS_BLACK_IS_ZERO;
ETS_Params params;
ETS_Ctx *ctx;
int lut[ETS_SRC_MAX+1], i;
@@ -637,11 +677,11 @@ main(int argc, char **argv)
int c1_scale[] = { 1, 1, 1, 1, 1, 1, 1, 1, 1 };
ETS_SrcPixel *ibufs[M] = { 0 };
uchar *obufs[M] = { 0 };
- int planes;
+ int planes = 0;
void (*read_line)(ETS_SrcPixel **ibufs, int xs, FILE *fi, int planes, void *image_ctx);
void (*write_line)(uchar **obufs, int xs, FILE *fo, int planes, void *image_ctx);
- void (*finalize)(void *image_ctx);
- char *gamma_tab = NULL;
+ void (*finalize)(void *image_ctx) = NULL;
+ const char *gamma_tab = NULL;
int multiplane = 1;
int ets_style = 1;
int r_style = 1;
@@ -652,6 +692,7 @@ main(int argc, char **argv)
psd_ctx_t psd_ctx;
void *image_ctx = NULL;
uchar byte_count = 1;
+ int count;
int y;
@@ -696,7 +737,7 @@ main(int argc, char **argv)
noise = atoi(arg_value);
break;
case 'a':
- sscanf(arg_value, "%d:%d", &aspect_x, &aspect_y);
+ count = sscanf(arg_value, "%d:%d", &aspect_x, &aspect_y);
break;
default:
goto usage_exit;
@@ -756,7 +797,12 @@ main(int argc, char **argv)
for (i = 0; i < planes; i++)
{
ibufs[i] = (ETS_SrcPixel*) malloc(xs * byte_count);
+ if (ibufs[i] == NULL)
+ die("Malloc failure in main");
+
obufs[i] = (uchar*) ets_malloc_aligned(xsb + 16, 16);
+ if (obufs[i] == NULL)
+ die("Malloc failure in main");
}
/* This sets up a simple gamma lookup table. */
@@ -764,7 +810,7 @@ main(int argc, char **argv)
{
FILE *lutf = fopen(gamma_tab, "r");
for (i = 0; i < (ETS_SRC_MAX+1); i++)
- fscanf(lutf, "%d", &lut[i]);
+ count = fscanf(lutf, "%d", &lut[i]);
fclose(lutf);
}
else
@@ -794,7 +840,12 @@ main(int argc, char **argv)
for (i = 0; i < planes; i++)
luts[i] = lut;
params.luts = luts;
- params.strengths = (multiplane ? strengths[planes-1] : strengths[0]);
+
+ if (planes > 0)
+ params.strengths = (multiplane ? strengths[planes - 1] : strengths[0]);
+ else
+ params.strengths = strengths[0];
+
params.aspect_x = aspect_x;
params.aspect_y = aspect_y;
params.distscale = 0;
diff --git a/toolbin/halftone/ETS/win32/ETS.sln b/toolbin/halftone/ETS/win32/ETS.sln
index 63c293e3..3f2f644b 100644
--- a/toolbin/halftone/ETS/win32/ETS.sln
+++ b/toolbin/halftone/ETS/win32/ETS.sln
@@ -1,7 +1,9 @@

-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ETS", "ETS.vcproj", "{9F937420-ED89-4C41-AED3-52937666B60E}"
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.30611.23
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ETS", "ETS.vcxproj", "{9F937420-ED89-4C41-AED3-52937666B60E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -17,4 +19,7 @@ Global
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {0CA610AF-110F-439C-AD8A-ABED393D6C3C}
+ EndGlobalSection
EndGlobal
diff --git a/toolbin/halftone/ETS/win32/ETS.vcproj b/toolbin/halftone/ETS/win32/ETS.vcproj
deleted file mode 100644
index 09f6c14d..00000000
--- a/toolbin/halftone/ETS/win32/ETS.vcproj
+++ /dev/null
@@ -1,196 +0,0 @@
-<?xml version="1.0" encoding="Windows-1252"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="8.00"
- Name="ETS"
- ProjectGUID="{9F937420-ED89-4C41-AED3-52937666B60E}"
- RootNamespace="ETS"
- TargetFrameworkVersion="196613"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
- CharacterSet="2"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- WarningLevel="3"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- GenerateDebugInformation="true"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)"
- IntermediateDirectory="$(ConfigurationName)"
- ConfigurationType="1"
- CharacterSet="2"
- WholeProgramOptimization="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- EnableIntrinsicFunctions="true"
- RuntimeLibrary="2"
- EnableFunctionLevelLinking="true"
- WarningLevel="3"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- GenerateDebugInformation="true"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath="..\ets.c"
- >
- </File>
- <File
- RelativePath="..\test_ets.c"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
- >
- <File
- RelativePath="..\ets.h"
- >
- </File>
- <File
- RelativePath="..\tm.h"
- >
- </File>
- </Filter>
- <Filter
- Name="Resource Files"
- Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
- UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
- >
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/toolbin/halftone/ETS/win32/ETS.vcxproj b/toolbin/halftone/ETS/win32/ETS.vcxproj
new file mode 100644
index 00000000..882b463d
--- /dev/null
+++ b/toolbin/halftone/ETS/win32/ETS.vcxproj
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup Label="ProjectConfigurations">
+ <ProjectConfiguration Include="Debug|Win32">
+ <Configuration>Debug</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ <ProjectConfiguration Include="Release|Win32">
+ <Configuration>Release</Configuration>
+ <Platform>Win32</Platform>
+ </ProjectConfiguration>
+ </ItemGroup>
+ <PropertyGroup Label="Globals">
+ <ProjectGuid>{9F937420-ED89-4C41-AED3-52937666B60E}</ProjectGuid>
+ <RootNamespace>ETS</RootNamespace>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v142</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ <WholeProgramOptimization>true</WholeProgramOptimization>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+ <ConfigurationType>Application</ConfigurationType>
+ <PlatformToolset>v142</PlatformToolset>
+ <CharacterSet>MultiByte</CharacterSet>
+ </PropertyGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+ <ImportGroup Label="ExtensionSettings">
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+ <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+ </ImportGroup>
+ <PropertyGroup Label="UserMacros" />
+ <PropertyGroup>
+ <_ProjectFileVersion>16.0.30523.133</_ProjectFileVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <OutDir>$(SolutionDir)$(Configuration)\</OutDir>
+ <IntDir>$(Configuration)\</IntDir>
+ </PropertyGroup>
+ <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <OutDir>$(SolutionDir)$(Configuration)\</OutDir>
+ <IntDir>$(Configuration)\</IntDir>
+ </PropertyGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+ <ClCompile>
+ <Optimization>Disabled</Optimization>
+ <MinimalRebuild>true</MinimalRebuild>
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_MBCS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ <Link>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+ <ClCompile>
+ <Optimization>MaxSpeed</Optimization>
+ <IntrinsicFunctions>true</IntrinsicFunctions>
+ <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
+ <FunctionLevelLinking>true</FunctionLevelLinking>
+ <WarningLevel>Level3</WarningLevel>
+ <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
+ <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_MBCS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ </ClCompile>
+ <Link>
+ <GenerateDebugInformation>true</GenerateDebugInformation>
+ <OptimizeReferences>true</OptimizeReferences>
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
+ <TargetMachine>MachineX86</TargetMachine>
+ </Link>
+ </ItemDefinitionGroup>
+ <ItemGroup>
+ <ClCompile Include="..\ets.c" />
+ <ClCompile Include="..\test_ets.c" />
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\ets.h" />
+ <ClInclude Include="..\tm.h" />
+ </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <ImportGroup Label="ExtensionTargets">
+ </ImportGroup>
+</Project> \ No newline at end of file
diff --git a/toolbin/halftone/ETS/win32/ETS.vcxproj.filters b/toolbin/halftone/ETS/win32/ETS.vcxproj.filters
new file mode 100644
index 00000000..b25f8358
--- /dev/null
+++ b/toolbin/halftone/ETS/win32/ETS.vcxproj.filters
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <ItemGroup>
+ <Filter Include="Source Files">
+ <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
+ <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
+ </Filter>
+ <Filter Include="Header Files">
+ <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
+ <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
+ </Filter>
+ <Filter Include="Resource Files">
+ <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
+ <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
+ </Filter>
+ </ItemGroup>
+ <ItemGroup>
+ <ClCompile Include="..\ets.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ <ClCompile Include="..\test_ets.c">
+ <Filter>Source Files</Filter>
+ </ClCompile>
+ </ItemGroup>
+ <ItemGroup>
+ <ClInclude Include="..\ets.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ <ClInclude Include="..\tm.h">
+ <Filter>Header Files</Filter>
+ </ClInclude>
+ </ItemGroup>
+</Project> \ No newline at end of file
diff --git a/toolbin/halftone/gen_ordered/README b/toolbin/halftone/gen_ordered/README
index 178210d2..af7bb6c0 100644
--- a/toolbin/halftone/gen_ordered/README
+++ b/toolbin/halftone/gen_ordered/README
@@ -1,4 +1,4 @@
-Ordered Dither Screen Creation Tool. Copyright 2010-2018 Artifex Software, Inc.
+Ordered Dither Screen Creation Tool. Copyright 2010-2021 Artifex Software, Inc.
This code is designed to enable the creation of clustered dot threshold arrays
for halftoning, which can provide high lpi without quantization issues. As
diff --git a/toolbin/halftone/gen_ordered/gen_ordered_main.c b/toolbin/halftone/gen_ordered/gen_ordered_main.c
index e792ebdc..57b69d51 100644
--- a/toolbin/halftone/gen_ordered/gen_ordered_main.c
+++ b/toolbin/halftone/gen_ordered/gen_ordered_main.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/halftone/gen_stochastic/gen_stochastic.c b/toolbin/halftone/gen_stochastic/gen_stochastic.c
index 3b05d2ef..dca7f0b8 100644
--- a/toolbin/halftone/gen_stochastic/gen_stochastic.c
+++ b/toolbin/halftone/gen_stochastic/gen_stochastic.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/halftone/thresh_remap/thresh_remap.c b/toolbin/halftone/thresh_remap/thresh_remap.c
index 59ad8b65..7c2aedcf 100644
--- a/toolbin/halftone/thresh_remap/thresh_remap.c
+++ b/toolbin/halftone/thresh_remap/thresh_remap.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2009-2018 Artifex Software Inc. All rights reserved.
+/* Copyright (C) 2009-2021 Artifex Software Inc. All rights reserved.
This software is provided AS-IS with no warranty, either express or
implied.
diff --git a/toolbin/headers.tcl b/toolbin/headers.tcl
index c1297b5a..e2b09fa9 100755
--- a/toolbin/headers.tcl
+++ b/toolbin/headers.tcl
@@ -1,6 +1,6 @@
#!/usr/bin/tclsh
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/jpxtopdf.c b/toolbin/jpxtopdf.c
index bc3691db..7e9b3414 100644
--- a/toolbin/jpxtopdf.c
+++ b/toolbin/jpxtopdf.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/leaks.tcl b/toolbin/leaks.tcl
index 7b9c5a11..933d5481 100755
--- a/toolbin/leaks.tcl
+++ b/toolbin/leaks.tcl
@@ -1,6 +1,6 @@
#!/usr/bin/tclsh
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/localcluster/clusterpush.pl b/toolbin/localcluster/clusterpush.pl
index e4db5331..a7d9cb57 100755
--- a/toolbin/localcluster/clusterpush.pl
+++ b/toolbin/localcluster/clusterpush.pl
@@ -7,7 +7,7 @@ use Data::Dumper;
my $verbose=0;
-# bmpcmp usage: [gs] [pcl] [xps] [mupdf] [mujstest] [murun] [mudrawpy] [bmpcmp] [arm] [lowres] [highres] [32] [pdfwrite] [ps2write] [xpswrite] [nopdfwrite] [relaxtimeout] [extended] [smoke] [cull] [avx2] [$user] | abort
+# bmpcmp usage: [gs] [pcl] [xps] [mupdf] [mujstest] [murun] [mudrawpy] [runtests] [extract] [extractmu] [extractgs] [bmpcmp] [arm] [lowres] [highres] [32] [pdfwrite] [ps2write] [xpswrite] [nopdfwrite] [relaxtimeout] [extended] [smoke] [cull] [avx2] [$user] | abort
@@ -24,7 +24,11 @@ my %products=('abort' =>1,
'mupdf'=>1,
'mujstest'=>1,
'murun'=>1,
- 'mudrawpy'=>1);
+ 'mudrawpy'=>1,
+ 'runtests'=>1,
+ 'extract'=>1,
+ 'extractmu'=>1,
+ 'extractgs'=>1);
my $user;
my $product="";
@@ -72,7 +76,7 @@ while ($t1=shift) {
$cull="cull";
} elsif ($t1 eq "avx2") {
$avx2="avx2";
- } elsif ($t1 eq "nr" || $t1 eq "nonredundnat") {
+ } elsif ($t1 eq "nr" || $t1 eq "nonredundant") {
$nr="nonredundant";
} elsif ($t1 eq "pdfwrite" || $t1 eq "ps2write" || $t1 eq "xpswrite") {
$pdfwrite="pdfwrite";
@@ -137,8 +141,17 @@ my $directory=`pwd`;
chomp $directory;
$directory =~ s|.+/||;
-if ($directory ne 'gs' && $directory ne 'ghostpdl' && $directory ne 'mupdf' && $directory ne 'ghostpdl.git' && $directory ne 'mupdf.git') {
+if ($directory ne 'gs' &&
+ $directory ne 'ghostpdl' &&
+ $directory ne 'mupdf' &&
+ $directory ne 'ghostpdl.git' &&
+ $directory ne 'mupdf.git' &&
+ $directory ne 'extract' &&
+ $directory ne 'extract.git') {
$directory="";
+ if (-f "include/extract.h") {
+ $directory='extract';
+ }
if (-d "base" && -d "Resource") {
$directory='gs';
}
@@ -153,11 +166,13 @@ if ($directory ne 'gs' && $directory ne 'ghostpdl' && $directory ne 'mupdf' && $
#$directory="gs" if ($directory eq "" && $product eq "bmpcmp");
$directory="gs" if ($directory eq "" && $product && $product eq "abort");
-die "can't figure out if this is a ghostpdl, gs, or mupdf source directory" if ($directory eq "");
+die "can't figure out if this is a ghostpdl, gs, mupdf or extract source directory" if ($directory eq "");
if (!$product) {
if ($directory eq 'mupdf') {
$product='mupdf';
+ } elsif ($directory eq 'extract') {
+ $product='extract';
} else {
$product='gs pcl xps gpdl'
}
@@ -197,8 +212,19 @@ if ($msys) {
$hostpath="regression:$dir/$user/$directory";
}
-my $cmd="rsync -avxcz ".
-" --max-size=30000000".
+my $cmd="rsync -axcz";
+
+if ($product eq "extractgs") {
+ $cmd .= "L"; # expand links.
+}
+
+if ($verbose) {
+ $cmd .= "i";
+} else {
+ $cmd .= "v";
+}
+
+$cmd .= " --max-size=30000000".
" --delete --delete-excluded".
" --exclude .svn --exclude .git".
" --exclude _darcs --exclude .bzr --exclude .hg".
@@ -228,6 +254,11 @@ my $cmd="rsync -avxcz ".
" --exclude /build/".
+# Excludes for extract library.
+" --exclude /src/build/".
+" --exclude extract/src/build/".
+" --exclude extract/test/generated/".
+
# " --exclude Makefile". We can't just exclude Makefile, since the MuPDF Makefile is not a derived file.
" -e \"$ssh\" ".
" .".
diff --git a/toolbin/makehist.tcl b/toolbin/makehist.tcl
index 8d2e2a6a..491f8b60 100755
--- a/toolbin/makehist.tcl
+++ b/toolbin/makehist.tcl
@@ -1,6 +1,6 @@
#!/usr/bin/tclsh
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/memory.py b/toolbin/memory.py
index 879b868f..1a417924 100755
--- a/toolbin/memory.py
+++ b/toolbin/memory.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/ocheck.py b/toolbin/ocheck.py
index fc4a80dd..914301f8 100755
--- a/toolbin/ocheck.py
+++ b/toolbin/ocheck.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/pre.tcl b/toolbin/pre.tcl
index 7276e0b2..e425456d 100755
--- a/toolbin/pre.tcl
+++ b/toolbin/pre.tcl
@@ -1,6 +1,6 @@
#!/usr/bin/tclsh
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/precheck.tcl b/toolbin/precheck.tcl
index c852e0c3..5c87fec1 100755
--- a/toolbin/precheck.tcl
+++ b/toolbin/precheck.tcl
@@ -1,6 +1,6 @@
#!/usr/bin/tclsh
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/split_changelog.py b/toolbin/split_changelog.py
index bf55f6c3..260ff087 100755
--- a/toolbin/split_changelog.py
+++ b/toolbin/split_changelog.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/suite.tcl b/toolbin/suite.tcl
index 81d90847..7a51bc6f 100755
--- a/toolbin/suite.tcl
+++ b/toolbin/suite.tcl
@@ -1,6 +1,6 @@
#!/usr/bin/tclsh
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/build_revision.py b/toolbin/tests/build_revision.py
index d02eef36..c8e47994 100755
--- a/toolbin/tests/build_revision.py
+++ b/toolbin/tests/build_revision.py
@@ -1,7 +1,7 @@
#!/usr/bin/python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/check_all.py b/toolbin/tests/check_all.py
index 6411579a..31099fce 100755
--- a/toolbin/tests/check_all.py
+++ b/toolbin/tests/check_all.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/check_comments.py b/toolbin/tests/check_comments.py
index abe8bdbd..523ae525 100755
--- a/toolbin/tests/check_comments.py
+++ b/toolbin/tests/check_comments.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/check_dirs.py b/toolbin/tests/check_dirs.py
index 58f0d12f..f95740fb 100755
--- a/toolbin/tests/check_dirs.py
+++ b/toolbin/tests/check_dirs.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/check_docrefs.py b/toolbin/tests/check_docrefs.py
index cc5ae2ec..ca093220 100755
--- a/toolbin/tests/check_docrefs.py
+++ b/toolbin/tests/check_docrefs.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/cmpi.py b/toolbin/tests/cmpi.py
index 38a275da..e48a5c93 100644
--- a/toolbin/tests/cmpi.py
+++ b/toolbin/tests/cmpi.py
@@ -1,5 +1,5 @@
#!/usr/bin/python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/compare_checksumdb.py b/toolbin/tests/compare_checksumdb.py
index 59330928..d450875b 100755
--- a/toolbin/tests/compare_checksumdb.py
+++ b/toolbin/tests/compare_checksumdb.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/compare_checksums.py b/toolbin/tests/compare_checksums.py
index b2f3d4f8..d8d45617 100755
--- a/toolbin/tests/compare_checksums.py
+++ b/toolbin/tests/compare_checksums.py
@@ -1,7 +1,7 @@
#!/usr/bin/python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/dump_checksum.py b/toolbin/tests/dump_checksum.py
index f009666b..58695db6 100755
--- a/toolbin/tests/dump_checksum.py
+++ b/toolbin/tests/dump_checksum.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/dump_checksum_plus.py b/toolbin/tests/dump_checksum_plus.py
index 7a31a56b..0c399fd0 100755
--- a/toolbin/tests/dump_checksum_plus.py
+++ b/toolbin/tests/dump_checksum_plus.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/dump_checksum_raw.py b/toolbin/tests/dump_checksum_raw.py
index 1a647156..e466b836 100755
--- a/toolbin/tests/dump_checksum_raw.py
+++ b/toolbin/tests/dump_checksum_raw.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/fuzzy.c b/toolbin/tests/fuzzy.c
index 29694f0a..4cacad58 100644
--- a/toolbin/tests/fuzzy.c
+++ b/toolbin/tests/fuzzy.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2001-2020 Artifex Software, Inc.
+/* Copyright (C) 2001-2021 Artifex Software, Inc.
All Rights Reserved.
This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/get_baseline_log.py b/toolbin/tests/get_baseline_log.py
index 230942b1..2dd84393 100755
--- a/toolbin/tests/get_baseline_log.py
+++ b/toolbin/tests/get_baseline_log.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/get_baselines.py b/toolbin/tests/get_baselines.py
index 7333821f..3ef8623e 100755
--- a/toolbin/tests/get_baselines.py
+++ b/toolbin/tests/get_baselines.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gscheck_all.py b/toolbin/tests/gscheck_all.py
index 2fe3fd8a..1947d7d4 100755
--- a/toolbin/tests/gscheck_all.py
+++ b/toolbin/tests/gscheck_all.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gscheck_fuzzypdf.py b/toolbin/tests/gscheck_fuzzypdf.py
index af312cb8..0d25efd4 100755
--- a/toolbin/tests/gscheck_fuzzypdf.py
+++ b/toolbin/tests/gscheck_fuzzypdf.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gscheck_pdfwrite.py b/toolbin/tests/gscheck_pdfwrite.py
index bc841554..29b637dc 100755
--- a/toolbin/tests/gscheck_pdfwrite.py
+++ b/toolbin/tests/gscheck_pdfwrite.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gscheck_raster.py b/toolbin/tests/gscheck_raster.py
index 78fe4da8..3ff28164 100755
--- a/toolbin/tests/gscheck_raster.py
+++ b/toolbin/tests/gscheck_raster.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gscheck_testfiles.py b/toolbin/tests/gscheck_testfiles.py
index 9baa64b3..8024d56a 100755
--- a/toolbin/tests/gscheck_testfiles.py
+++ b/toolbin/tests/gscheck_testfiles.py
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gsconf.py b/toolbin/tests/gsconf.py
index a2451969..845a5274 100644
--- a/toolbin/tests/gsconf.py
+++ b/toolbin/tests/gsconf.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gsparamsets.py b/toolbin/tests/gsparamsets.py
index b278537d..0dcc17bc 100644
--- a/toolbin/tests/gsparamsets.py
+++ b/toolbin/tests/gsparamsets.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gssum.py b/toolbin/tests/gssum.py
index 0867fd48..373a1105 100644
--- a/toolbin/tests/gssum.py
+++ b/toolbin/tests/gssum.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gstestgs.py b/toolbin/tests/gstestgs.py
index fd8b2fcc..b279b625 100644
--- a/toolbin/tests/gstestgs.py
+++ b/toolbin/tests/gstestgs.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gstestutils.py b/toolbin/tests/gstestutils.py
index 0c4fa168..646babff 100644
--- a/toolbin/tests/gstestutils.py
+++ b/toolbin/tests/gstestutils.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/gsutil.py b/toolbin/tests/gsutil.py
index 55f47772..3a54fb8b 100644
--- a/toolbin/tests/gsutil.py
+++ b/toolbin/tests/gsutil.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/make_baselinedb.py b/toolbin/tests/make_baselinedb.py
index 6e984a57..a24fdda3 100755
--- a/toolbin/tests/make_baselinedb.py
+++ b/toolbin/tests/make_baselinedb.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/make_testdb.py b/toolbin/tests/make_testdb.py
index 70f568d3..d6d31534 100755
--- a/toolbin/tests/make_testdb.py
+++ b/toolbin/tests/make_testdb.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/make_two_pdfversions b/toolbin/tests/make_two_pdfversions
index 0aeb2db4..fa9a5570 100755
--- a/toolbin/tests/make_two_pdfversions
+++ b/toolbin/tests/make_two_pdfversions
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/make_two_versions b/toolbin/tests/make_two_versions
index 70fe5fb2..035e9b50 100755
--- a/toolbin/tests/make_two_versions
+++ b/toolbin/tests/make_two_versions
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/myoptparse.py b/toolbin/tests/myoptparse.py
index 50b37ef3..d03d2670 100755
--- a/toolbin/tests/myoptparse.py
+++ b/toolbin/tests/myoptparse.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/rasterdb.py b/toolbin/tests/rasterdb.py
index 6e5485a4..f089cfa4 100644
--- a/toolbin/tests/rasterdb.py
+++ b/toolbin/tests/rasterdb.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/revert_baseline b/toolbin/tests/revert_baseline
index fb3b87b2..9d554593 100755
--- a/toolbin/tests/revert_baseline
+++ b/toolbin/tests/revert_baseline
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/revert_pdfbaseline b/toolbin/tests/revert_pdfbaseline
index 833bb770..188fca92 100755
--- a/toolbin/tests/revert_pdfbaseline
+++ b/toolbin/tests/revert_pdfbaseline
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/run_nightly.py b/toolbin/tests/run_nightly.py
index 65ea07b2..31a96475 100755
--- a/toolbin/tests/run_nightly.py
+++ b/toolbin/tests/run_nightly.py
@@ -1,7 +1,7 @@
#!/usr/bin/python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/run_parallel b/toolbin/tests/run_parallel
index 0360ca67..a3f552b2 100755
--- a/toolbin/tests/run_parallel
+++ b/toolbin/tests/run_parallel
@@ -1,6 +1,6 @@
#!/usr/bin/env python
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/run_regression.py b/toolbin/tests/run_regression.py
index 96a5af77..c77dafe1 100755
--- a/toolbin/tests/run_regression.py
+++ b/toolbin/tests/run_regression.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/testdiff.py b/toolbin/tests/testdiff.py
index d0f6dc4f..a8bda5d5 100755
--- a/toolbin/tests/testdiff.py
+++ b/toolbin/tests/testdiff.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/update_baseline.py b/toolbin/tests/update_baseline.py
index c6e0926b..02b468cc 100755
--- a/toolbin/tests/update_baseline.py
+++ b/toolbin/tests/update_baseline.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tests/update_specific b/toolbin/tests/update_specific
index 0a90c339..a477aa34 100755
--- a/toolbin/tests/update_specific
+++ b/toolbin/tests/update_specific
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# -*- Mode: python -*-
-## Copyright (C) 2001-2020 Artifex Software, Inc.
+## Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or
diff --git a/toolbin/tmake.tcl b/toolbin/tmake.tcl
index e14dc908..2d56fc60 100755
--- a/toolbin/tmake.tcl
+++ b/toolbin/tmake.tcl
@@ -2,7 +2,7 @@
# hack to restart using tclsh \
exec tclsh "$0" "$@"
-# Copyright (C) 2001-2020 Artifex Software, Inc.
+# Copyright (C) 2001-2021 Artifex Software, Inc.
# All Rights Reserved.
#
# This software is provided AS-IS with no warranty, either express or