Skip to content

Commit fe1fbc3

Browse files
committed
Sync up with changes from 1.0 branch.
1 parent 6ec2bb0 commit fe1fbc3

File tree

6 files changed

+178
-163
lines changed

6 files changed

+178
-163
lines changed

BUILD.md

+58-33
Original file line numberDiff line numberDiff line change
@@ -4,38 +4,75 @@ Build Instructions for the IPP Everywhere Printer Self-Certification Tools
44
This file describes how to compile and install the IPP Everywhere Printer Self-
55
Certification Tools.
66

7+
> Note: See the file "TESTING.md" for instructions on how to run tests with a
8+
> local build of the software.
9+
710
> Note: Certification results posted to the IPP Everywhere portal MUST be
811
> generated using the posted binaries. You cannot build and use your own copy
912
> of the tools to generate the results for the portal.
1013
1114

12-
Building on Linux/macOS
13-
-----------------------
15+
Prerequisites
16+
-------------
1417

1518
You'll need an ANSI-compliant C compiler plus a make program and POSIX-compliant
1619
shell (/bin/sh). The GNU compiler tools and Bash work well and we have tested
1720
the current IPP sample code against several versions of Clang and GCC with
1821
excellent results.
1922

20-
The makefiles used by the project should work with most versions of make. We've
21-
tested them with GNU make as well as the make programs shipped by Compaq, HP,
22-
SGI, and Sun. BSD users should use GNU make (gmake) since BSD make does not
23-
support "include".
23+
The makefiles used by the project should work with most versions of make. BSD
24+
users should use GNU make (gmake) since BSD make does not support "include".
2425

2526
Besides these tools you'll want the following libraries:
2627

27-
- Avahi (Linux) or mDNSResponder (all others) for DNS-SD (Bonjour) support
28-
- GNU TLS for encryption support on platforms other than macOS
28+
- Avahi (Linux) or mDNSResponder (all others) for Bonjour (DNS-SD) support
29+
- GNU TLS for encryption support on platforms other than iOS, macOS, or Windows
2930
- ZLIB for compression support
3031

31-
On a stock Debian/Ubuntu install, the following command will install most of the
32-
required prerequisites:
32+
33+
Linux
34+
-----
35+
36+
Packages are targeted for Red Hat Enterprise Linux and Ubuntu. On a stock
37+
Ubuntu install, the following command will install the required prerequisites:
3338

3439
sudo apt-get install build-essential autoconf avahi-daemon avahi-utils \
3540
libavahi-client-dev libgnutls28-dev libnss-mdns zlib1g-dev
3641

37-
CUPS uses GNU autoconf, so you should find the usual `configure` script in the
38-
main CUPS source directory. To configure the code for your system, type:
42+
Run the following to compile the tools:
43+
44+
./configure
45+
make
46+
47+
48+
macOS
49+
-----
50+
51+
You'll need the current Xcode software and command-line tools to build things.
52+
Run the following to compile the tools:
53+
54+
./configure
55+
make
56+
57+
58+
Windows
59+
-------
60+
61+
You'll need the current Visual Studio C++ as well as the code signing tools and
62+
the PWG code signing certificate (available from the PWG officers for official
63+
use only) - without the certificate the build will fail unless you disable the
64+
post-build events that add the code signatures or create a self-signed
65+
certificate with the name "".
66+
67+
Open the "ippeveselfcert.sln" file in the "vcnet" subdirectory and build the
68+
installer project.
69+
70+
71+
Other Platforms
72+
---------------
73+
74+
This project uses GNU autoconf, so you should find the usual `configure` script
75+
in the main source directory. To configure the code for your system, type:
3976

4077
./configure
4178

@@ -72,30 +109,18 @@ or if you have FreeBSD, NetBSD, or OpenBSD type:
72109
to build the software.
73110

74111

75-
Building on Windows
76-
-------------------
77-
78-
A Visual Studio project file can be found in the "vcnet" directory. You'll
79-
need the following minimum software:
112+
Packaging
113+
---------
80114

81-
- Visual Studio 2017 Community Edition
82-
- Advanced Installer 15.4
83-
- Windows SDK 10.0.17763.0
115+
On Linux run:
84116

85-
Open the "ippeveselfcert.sln" file and then build the installer target.
117+
make dist
86118

119+
A tar.gz file will be placed in the current directory.
87120

88-
Getting Debug Logging
89-
---------------------
121+
On macOS you'll need the PWG code signing certificate (available from the PWG officers for official use only) or your own certificate loaded into your login keychain. Then run:
90122

91-
The following environment variables are used to enable and control debug
92-
logging:
123+
CODESIGN_IDENTITY="common name or SHA-1 hash of certificate" make dist
93124

94-
- `CUPS_DEBUG_FILTER`: Specifies a POSIX regular expression to control which
95-
messages are logged.
96-
- `CUPS_DEBUG_LEVEL`: Specifies a number from 0 to 9 to control the verbosity of
97-
the logging. The default level is 1.
98-
- `CUPS_DEBUG_LOG`: Specifies a log file to use. Specify the name "-" to send
99-
the messages to stderr. Prefix a filename with "+" to append to an existing
100-
file. You can include a single "%d" in the filename to embed the current
101-
process ID.
125+
On Windows just build the installer target in Visual Studio - you'll find the
126+
package in a MSI file in the "vcnet" directory.

CHANGES.md

+1-23
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,5 @@
11
# Changes
22

3-
## v1.0 Update 3 (April 4, 2018)
4-
5-
- Issue #22: Print service names could match multiple printers.
6-
- Issue #24: Updated IPP tools to CUPS v2.2.8.
7-
8-
9-
## v1.0 Update 2 (September 26, 2017)
10-
11-
- Issue #15: ipp-tests.test: "document-number" member of "overrides-supported"
12-
should be "document-numbers"
13-
14-
15-
## v1.0 Update 1 (October 11, 2016)
16-
17-
- Issue #3: Fix handling of service instance names starting with "_".
18-
- PR #5: Add date to log files.
19-
- Issue #6: Do exact matches of service instance names.
20-
- Issue #7: Do not require a resource path of "/ipp/print".
21-
- Issue #9: Do not require "document-numbers" member attribute.
22-
- Issue #13: Allow 'unknown' values for "date-time-at-xxx" attributes.
23-
24-
25-
## v1.0 (November 10, 2015)
3+
## v1.1 (Pending)
264

275
Initial release.

KNOWNISSUES.md

+43-29
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,58 @@
1-
Known Issues
2-
============
1+
# Known Issues
32

4-
v1.0 Update 3 (November 9, 2018)
5-
--------------------------------
3+
## v1.1 (Pending)
64

7-
The following is a list of the known issues in v1.0 update 3:
5+
There are no known issues in this release.
86

9-
- The Windows MSI package was missing the "regex.dll" library.
10-
- The Windows ipptool
117

8+
## v1.0 Update 4 (Pending)
129

13-
v1.0 Update 2 (September 26, 2017)
14-
----------------------------------
10+
There are no known issues in this release.
1511

16-
The following is a list of the known issues in v1.0 update 2:
1712

18-
- Printer service names incorrectly match substrings.
19-
- The Windows tools depend on DLLs supplied with Visual Studio.
13+
## v1.0 Update 3 (October 23, 2018)
2014

15+
The following is a list of the known issues in the October 23, 2018 release of
16+
the self-certification tools:
2117

22-
v1.0 Update 1 (December 13, 2016)
23-
---------------------------------
18+
1. The Windows installer was missing a copy of the REGEX.DLL file.
2419

25-
The following is a list of the known issues in v1.0 update 1:
2620

27-
- The repeat limit of 30 is sometimes inadequate for test I-16.
28-
- The 10 second delay is sometimes inadequate for test I-27.
29-
- The "overrides-supported" test incorrectly looked for the "document-number"
30-
member attribute instead of "document-numbers".
21+
## v1.0 Update 2 (September 26, 2017)
3122

23+
The following is a list of the known issues in the September 26, 2017 release of
24+
the self-certification tools:
3225

33-
v1.0 (November 10, 2015)
34-
------------------------
26+
1. Printer service names incorrectly match substrings.
3527

36-
The following is a list of the known issues in v1.0:
28+
2. The Windows tools depend on DLLs supplied with Visual Studio.
3729

38-
- The test suite requires support for the document-number member attribute
39-
(only needed for multiple document jobs).
40-
- The test suite requires that printers follow the best practice of using
41-
"/ipp/print" in the printer URI(s) (not required by IPP Everywhere).
42-
- The test suite matches any substring of the service instance name.
43-
- The test suite does not handle service instance names starting with an
44-
underscore.
30+
31+
## v1.0 Update 1 (December 13, 2016)
32+
33+
The following is a list of the known issues in the December 13, 2016 release of
34+
the self-certification tools:
35+
36+
1. The repeat limit of 30 is sometimes inadequate for test I-16.
37+
38+
2. The 10 second delay is sometimes inadequate for test I-27.
39+
40+
3. The "overrides-supported" test incorrectly looked for the "document-number"
41+
member attribute instead of "document-numbers".
42+
43+
44+
## v1.0 (November 10, 2015)
45+
46+
The following is a list of the known issues in the November 10, 2015 release of
47+
the self-certification tools:
48+
49+
1. The test suite requires support for the document-number member attribute
50+
(only needed for multiple document jobs).
51+
52+
2. The test suite requires that printers follow the best practice of using
53+
"/ipp/print" in the printer URI(s) (not required by IPP Everywhere).
54+
55+
3. The test suite matches any substring of the service instance name.
56+
57+
4. The test suite does not handle service instance names starting with an
58+
underscore.

NOTICE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
IPP Everywhere Printer Self-Certification Tools
22

3-
Copyright © 2014-2019 by the IEEE-ISTO Printer Working Group.
3+
Copyright © 2014-2020 by the IEEE-ISTO Printer Working Group.
44
Copyright © 2007-2019 by Apple Inc.
55
Copyright © 1997-2007 by Easy Software Products.
66

README.md

+10-77
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,16 @@ Standard 5100.20-20xx: IPP Everywhere™ v1.1 Printer Self-Certification Manual.
88

99
The [IPP Everywhere™ home page](http://www.pwg.org/ipp/everywhere.html) provides
1010
access to all information relevant to IPP Everywhere™. Sample PWG Raster files
11-
needed for the document tests canbe downloaded from the
12-
[PWG FTP server IPP Examples folder](https://ftp.pwg.org/pub/pwg/ipp/examples).
11+
(needed for the document tests) can be downloaded from the PWG FTP server at
12+
<https://ftp.pwg.org/pub/pwg/ipp/examples> - only the files dated on or after
13+
June 7th, 2018 can be used.
1314

14-
The "[email protected]" mailing list is used to discuss IPP Everywhere
15+
The "[email protected]" mailing list is used to discuss IPP Everywhere
1516
Printer Self-Certification. You can subscribe at
16-
[https://www.pwg.org/mailman/listinfo/ippeveselfcert](https://www.pwg.org/mailman/listinfo/ippeveselfcert).
17+
<https://www.pwg.org/mailman/listinfo/ippeveselfcert>.
1718

18-
Issues found in the tools should be reported using the
19-
[Github issues page](https://github.com/istopwg/ippeveselfcert).
19+
Issues found in the tools should be reported using the Github issues page at
20+
<https://github.com/istopwg/ippeveselfcert>.
2021

2122
> Note: Tests are intended to be run on an isolated network, or at least when no
2223
> other users are printing using the target printer. Otherwise the test scripts
@@ -26,84 +27,16 @@ Issues found in the tools should be reported using the
2627
Compiling
2728
---------
2829

29-
See the file "BUILD.md" for instructions on compiling the self-certification
30-
tools.
30+
Please see the file "BUILD.md" for instructions on compiling the software.
3131

3232
> Note: Self-certification results submitted to the PWG IPP Everywhere™ portal
33-
> MUST be generated using the tools provides on the PWG web site. The following
34-
> instructions are provided for developers to build and test using unofficial
35-
> builds.
36-
37-
38-
Running/Testing with Local Builds
39-
---------------------------------
40-
41-
### Linux and macOS
42-
43-
The "runtests.sh" script can be used to run any of the test scripts using the
44-
locally-built tools. For example:
45-
46-
./runtests.sh dns-sd-tests.sh "Example Test Printer"
47-
./runtests.sh ipp-tests.sh "Example Test Printer"
48-
./runtests.sh document-tests.sh "Example Test Printer"
49-
50-
The corresponding PWG Raster sample files (see link in the introduction) MUST
51-
be placed in a subdirectory of the "tests" directory. For example:
52-
53-
cd tests
54-
curl http://ftp.pwg.org/pub/pwg/ipp/examples/pwg-raster-samples-NNNdpi-YYYYMMDD.zip >temp.zip
55-
unzip temp.zip
56-
rm temp.zip
57-
cd ..
58-
59-
60-
### Windows
61-
62-
You'll need to manually copy the DLL and EXE files from the "vcnet" directory to
63-
the "tests" directory. Then run the corresponding test from that directory, for
64-
example:
65-
66-
cd tests
67-
dns-sd-tests.bat "Example Test Printer"
68-
ipp-tests.bat "Example Test Printer"
69-
document-tests.bat "Example Test Printer"
70-
71-
The corresponding PWG Raster sample files (see link in the introduction) MUST be
72-
placed in a subdirectory of the "tests" directory. After downloading the files
73-
just extract them using Windows Explorer.
74-
75-
76-
Packaging
77-
---------
78-
79-
### Linux
80-
81-
Run this:
82-
83-
make dist
84-
85-
A GZipped tar ball (.tar.gz) file will be placed in the current directory.
86-
87-
88-
### macOS
89-
90-
You'll need the PWG code signing certificate (available from the PWG officers
91-
for official use only) or your own certificate loaded into your login keychain.
92-
Then run:
93-
94-
CODESIGN_IDENTITY="common name or SHA-1 hash of certificate" make dist
95-
96-
97-
### Windows
98-
99-
Building the installer target successfully will produce an MSI installer package
100-
file in the "vcnet" directory.
33+
> MUST be generated using the tools provides on the PWG web site.
10134
10235

10336
Legal Stuff
10437
-----------
10538

106-
Copyright © 2014-2019 by the IEEE-ISTO Printer Working Group.
39+
Copyright © 2014-2020 by the IEEE-ISTO Printer Working Group.
10740
Copyright © 2007-2019 by Apple Inc.
10841
Copyright © 1997-2007 by Easy Software Products.
10942

0 commit comments

Comments
 (0)