Package: glslang
Version: 7.8.2853-1
Severity: normal
Tags: patch

Attached is a patch with man pages for spirv-remap and
glslangValidator. That should allow you to remove the
glslang-tools.lintian-overrides file.
diff --git a/debian/changelog b/debian/changelog
index 88cb240d..90b4abc9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -10,6 +10,9 @@ glslang (7.8.2853-2) unstable; urgency=medium
   * d/lintian: Add glslang-tools lintian override for binary-without-manpage
   * d/control: Fix Vcs-Git and Vcs-Browser urls
 
+  [ Brett Johnson ]
+  * Add man pages for spirv-remap and glslangValidator
+
  -- Timo Aaltonen <tjaal...@debian.org>  Wed, 22 Aug 2018 23:25:24 +0300
 
 glslang (7.8.2853-1) unstable; urgency=medium
diff --git a/debian/control b/debian/control
index 19c0680a..346376cf 100644
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,7 @@ Section: libdevel
 Priority: optional
 Maintainer: Debian X Strike Force <debia...@lists.debian.org>
 Uploaders: Timo Aaltonen <tjaal...@debian.org>
-Build-Depends: debhelper (>= 11),
+Build-Depends: debhelper (>= 9),
  cmake,
  spirv-headers,
 Standards-Version: 4.2.0
diff --git a/debian/glslang-tools.manpages b/debian/glslang-tools.manpages
new file mode 100644
index 00000000..2d2df99f
--- /dev/null
+++ b/debian/glslang-tools.manpages
@@ -0,0 +1,2 @@
+debian/man/glslangValidator.1
+debian/man/spirv-remap.1
diff --git a/debian/man/glslangValidator.1 b/debian/man/glslangValidator.1
new file mode 100644
index 00000000..aadaa55e
--- /dev/null
+++ b/debian/man/glslangValidator.1
@@ -0,0 +1,261 @@
+.\" Initially generated by help2man 1.47.4.
+.TH GLSLANGVALIDATOR "1" "December 2017" "glslangValidator"
+.SH NAME
+glslangValidator \- OpenGL (ES) Shading Language Reference Compiler
+.SH SYNOPSIS
+.B glslangValidator
+[\fI\,OPTION\/\fR]... [\fI\,FILE\/\fR]...
+.SH DESCRIPTION
+Glslang is the official reference compiler front end for the OpenGL ES and OpenGL shading languages. It implements a strict interpretation of the specifications for these languages. It is open and free for anyone to use, either from a command line or programmatically. The OpenGL and OpenGL ES working groups are committed to maintaining consistency between the reference compiler and the corresponding shading language specifications.
+
+The purpose of the reference compiler is to identify shader portability issues. If glslang accepts a shader without errors, then all OpenGL and OpenGL ES implementations claiming to support the shader's language version should also accept the shader without errors. Likewise, if glslang reports an error when compiling a shader, all OpenGL and OpenGL ES implementations for that language version should report errors, unless the glslang errors are caused by differences in implementation-defined limits or extension support.
+
+Glslang can also be used to generate SPIR-V from GLSL. But this feature is experimental and non-optimized.
+.SH FILE
+The file extension of \&\fI\,FILE\/\fR results in auto-stage classification:
+.TP
+\&.conf
+to provide a config file that replaces the default configuration (see \fB\-c\fR option below for generating a template)
+.TP
+\&.vert
+for a vertex shader
+.TP
+\&.tesc
+for a tessellation control shader
+.TP
+\&.tese
+for a tessellation evaluation shader
+.TP
+\&.geom
+for a geometry shader
+.TP
+\&.frag
+for a fragment shader
+.TP
+\&.comp
+for a compute shader
+.SH OPTIONS
+.TP
+\fB\-C\fR
+cascading errors; risk crash from accumulation of error recoveries
+.TP
+\fB\-D\fR
+input is HLSL
+.HP
+\fB\-D\fR<macro=def>
+.TP
+\fB\-D\fR<macro>
+define a pre\-processor macro
+.TP
+\fB\-E\fR
+print pre\-processed GLSL; cannot be used with \fB\-l\fR; errors will appear on stderr.
+.TP
+\fB\-G[ver]\fR
+create SPIR\-V binary, under OpenGL semantics; turns on \fB\-l\fR; default file name is <stage>.spv (\fB\-o\fR overrides this) 'ver', when present, is the version of the input semantics, which will appear in #define GL_SPIRV ver. \fB\-\-client opengl100\fR is the same as \fB\-G100\fR and \fB\-\-target\-env\fR for OpenGL will also imply \fB\-G\fR
+.TP
+\fB\-H\fR
+print human readable form of SPIR\-V; turns on \fB\-V\fR
+.TP
+\fB\-I\fR<dir>
+add dir to the include search path; includer's directory is searched first, followed by left\-to\-right order of \fB\-I\fR
+.TP
+\fB\-Od\fR
+disables optimization. May cause illegal SPIR\-V for HLSL.
+.TP
+\fB\-Os\fR
+optimizes SPIR\-V to minimize size.
+.TP
+\fB\-S\fR <stage>
+uses specified stage rather than parsing the file extension choices for <stage> are vert, tesc, tese, geom, frag, or comp
+.TP
+\fB\-U\fR<macro>
+undefine a pre\-processor macro
+.TP
+\fB\-V[ver]\fR
+create SPIR\-V binary, under Vulkan semantics; turns on \fB\-l\fR; default file name is <stage>.spv (\fB\-o\fR overrides this) 'ver', when present, is the version of the input semantics, which will appear in #define VULKAN ver. \fB\-\-client vulkan100\fR is the same as \fB\-V100\fR and \fB\-\-target\-env\fR for Vulkan will also imply \fB\-V\fR
+.TP
+\fB\-c\fR
+configuration dump; creates the default configuration file (redirect to a .conf file)
+.TP
+\fB\-d\fR
+default to desktop (#version 110) when there is no shader #version (default is ES version 100)
+.TP
+\fB\-e\fR <name>
+specify <name> as the entry\-point name
+.TP
+\fB\-g\fR
+generate debug information
+.TP
+\fB\-h\fR
+print this usage message
+.TP
+\fB\-i\fR
+intermediate tree (glslang AST) is printed out
+.TP
+\fB\-l\fR
+link all input files together to form a single module
+.TP
+\fB\-m\fR
+memory leak mode
+.TP
+\fB\-o\fR <file>
+save binary to <file>, requires a binary option (e.g., \fB\-V\fR)
+.TP
+\fB\-q\fR
+dump reflection query database
+.TP
+\fB\-r\fR
+synonym for \fB\-\-relaxed\-errors\fR
+.TP
+\fB\-s\fR
+silence syntax and semantic error reporting
+.TP
+\fB\-t\fR
+multi\-threaded mode
+.TP
+\fB\-v\fR
+print version strings
+.TP
+\fB\-w\fR
+synonym for \fB\-\-suppress\-warnings\fR
+.TP
+\fB\-x\fR
+save binary output as text\-based 32\-bit hexadecimal numbers
+.TP
+\fB\-\-auto\-map\-bindings\fR
+automatically bind uniform variables without explicit bindings.
+.TP
+\fB\-\-amb\fR
+synonym for \fB\-\-auto\-map\-bindings\fR
+.TP
+\fB\-\-auto\-map\-locations\fR
+automatically locate input/output lacking 'location' (fragile, not cross stage)
+.TP
+\fB\-\-aml\fR
+synonym for \fB\-\-auto\-map\-locations\fR
+.TP
+\fB\-\-client\fR {vulkan<ver>|opengl<ver>}
+see \fB\-V\fR and \fB\-G\fR
+.TP
+\fB\-\-flatten\-uniform\-arrays\fR
+flatten uniform texture/sampler arrays to scalars
+.TP
+\fB\-\-fua\fR
+synonym for \fB\-\-flatten\-uniform\-arrays\fR
+.TP
+\fB\-\-hlsl\-offsets\fR
+Allow block offsets to follow HLSL rules. Works independently of source language
+.TP
+\fB\-\-hlsl\-iomap\fR
+Perform IO mapping in HLSL register space
+.TP
+\fB\-\-keep\-uncalled\fR
+don't eliminate uncalled functions
+.TP
+\fB\-\-ku\fR
+synonym for \fB\-\-keep\-uncalled\fR
+.TP
+\fB\-\-no\-storage\-format\fR
+use Unknown image format
+.TP
+\fB\-\-nsf\fR
+synonym for \fB\-\-no\-storage\-format\fR
+.TP
+\fB\-\-relaxed\-errors\fR
+relaxed GLSL semantic error\-checking mode
+.HP
+\fB\-\-resource\-set\-binding\fR [stage] name set binding
+.IP
+Set descriptor set and binding for individual resources
+.HP
+\fB\-\-resource\-set\-binding\fR [stage] set
+.IP
+Set descriptor set for all resources
+.TP
+\fB\-\-rsb\fR [stage] type set binding
+synonym for \fB\-\-resource\-set\-binding\fR
+.TP
+\fB\-\-shift\-image\-binding\fR [stage] num
+base binding number for images (uav)
+.HP
+\fB\-\-shift\-image\-binding\fR [stage] [num set]...
+per\-descriptor\-set shift values
+.TP
+\fB\-\-sib\fR [stage] num
+synonym for \fB\-\-shift\-image\-binding\fR
+.TP
+\fB\-\-shift\-sampler\-binding\fR [stage] num
+base binding number for samplers
+.HP
+\fB\-\-shift\-sampler\-binding\fR [stage] [num set]...
+per\-descriptor\-set shift values
+.TP
+\fB\-\-ssb\fR [stage] num
+synonym for \fB\-\-shift\-sampler\-binding\fR
+.TP
+\fB\-\-shift\-ssbo\-binding\fR [stage] num
+base binding number for SSBOs
+.HP
+\fB\-\-shift\-ssbo\-binding\fR [stage] [num set]...
+per\-descriptor\-set shift values
+.TP
+\fB\-\-sbb\fR [stage] num
+synonym for \fB\-\-shift\-ssbo\-binding\fR
+.TP
+\fB\-\-shift\-texture\-binding\fR [stage] num
+base binding number for textures
+.HP
+\fB\-\-shift\-texture\-binding\fR [stage] [num set]...
+per\-descriptor\-set shift values
+.TP
+\fB\-\-stb\fR [stage] num
+synonym for \fB\-\-shift\-texture\-binding\fR
+.TP
+\fB\-\-shift\-uav\-binding\fR [stage] num
+base binding number for UAVs
+.HP
+\fB\-\-shift\-uav\-binding\fR [stage] [num set]...
+per\-descriptor\-set shift values
+.TP
+\fB\-\-suavb\fR [stage] num
+synonym for \fB\-\-shift\-uav\-binding\fR
+.TP
+\fB\-\-shift\-UBO\-binding\fR [stage] num
+base binding number for UBOs
+.HP
+\fB\-\-shift\-UBO\-binding\fR [stage] [num set]...
+per\-descriptor\-set shift values
+.TP
+\fB\-\-shift\-cbuffer\-binding\fR [stage] num
+synonym for \fB\-\-shift\-UBO\-binding\fR
+.HP
+\fB\-\-shift\-cbuffer\-binding\fR [stage] [num set]...
+per\-descriptor\-set shift values
+.TP
+\fB\-\-sub\fR [stage] num
+synonym for \fB\-\-shift\-UBO\-binding\fR
+.TP
+\fB\-\-source\-entrypoint\fR <name>
+the given shader source function is renamed to be the <name> given in \fB\-e\fR
+.TP
+\fB\-\-sep\fR
+synonym for \fB\-\-source\-entrypoint\fR
+.TP
+\fB\-\-stdin\fR
+Read from stdin instead of from a file. You'll have to provide the shader stageusing \fB\-S\fR.
+.TP
+\fB\-\-suppress\-warnings\fR
+suppress GLSL warnings (except as required by #extension : warn)
+.TP
+\fB\-\-target\-env\fR {vulkan1.0|opengl}
+set the execution environment code will execute in (as opposed to language semantics selected by \fB\-\-client\fR) defaults: 'vulkan1.0' under \fB\-\-client vulkan<ver>\fR 'opengl' under \fB\-\-client opengl<ver>\fR
+.TP
+\fB\-\-variable\-name\fR <name>
+Creates a C header file that contains a uint32_t array named <name> initialized with the shader binary code.
+.TP
+\fB\-\-vn\fR <name>
+synonym for \fB\-\-variable\-name\fR <name>
+.SH ALSO SEE
+https://github.com/KhronosGroup/glslang
+
+https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/
diff --git a/debian/man/spirv-remap.1 b/debian/man/spirv-remap.1
new file mode 100644
index 00000000..7d80ecf4
--- /dev/null
+++ b/debian/man/spirv-remap.1
@@ -0,0 +1,72 @@
+.\" Initially generated by help2man 1.47.4.
+.TH SPIRV-REMAP "1" "December 2017" "User Commands"
+.SH NAME
+spirv-remap \- a utility to compress of SPIR-V binary files
+.SH SYNOPSIS
+.B spirv\-remap
+[\fI\,OPTION\/\fR]...
+.SH DESCRIPTION
+spirv-remap is a utility to improve compression of SPIR-V binary files via
+entropy reduction, plus optional stripping of debug information and
+load/store optimization.  It transforms SPIR-V to SPIR-V, remapping IDs.  The
+resulting modules have an increased ID range (IDs are not as tightly packed
+around zero), but will compress better when multiple modules are compressed
+together, since compressor's dictionary can find better cross module
+commonality.
+
+Remapping is accomplished via canonicalization.  Thus, modules can be
+compressed one at a time with no loss of quality relative to operating on
+many modules at once.  The command line tool operates on multiple modules
+only in the trivial repetition sense, for ease of use.  The remapper API
+only accepts a single module at a time.
+
+spirv-remap is currently in an alpha state.  Although there are no known
+remapping defects, it has only been exercised on one real world game shader
+workload.
+.SH OPTIONS
+.TP
+\fB-?\fR \fB--help\fR
+shows help
+.TP
+\fB-V\fR \fB--version\fR
+shows version
+.TP
+\fB-v\fR \fB-vv\fR ... \fB--verbose\fR [int] 
+sets verbosity. With no verbosity, the command is silent.
+.TP
+\fB-i\fR \fB--input\fR file1 [file2...]
+files to process
+.TP
+\fB-o\fR \fB--output\fR DESTDIR
+output directory
+.TP
+\fB-s\fR --strip-all \fB--strip\fR all
+strips all debug info
+.TP
+\fB--map\fR (all|types|names|funcs)
+canonicalizes type IDs / named data / function bodies
+.TP
+\fB--dce\fR (all|types|funcs)
+removes dead types / functions
+.TP
+\fB--opt\fR (all|loadstore)
+optimizes unneeded loads/stores
+.TP
+\fB--do-everything\fR
+Synonym for \fB--map all --dce all --opt all --strip all\fR
+.SH RETURNS
+0 on success
+
+a positive integer error on failure.
+.SH EXAMPLES
+.TP
+spirv-remap -v --map all --input *.spv --output /tmp/out_dir
+Perform ID remapping on all shaders in "*.spv", writing new files with
+the same basenames to /tmp/out_dir.
+.TP
+spirv-remap-linux-64 -v --do-everything --input *.spv --output /tmp/out_dir
+Perform all possible size reductions
+
+Note that 
+.SH ALSO SEE
+https://github.com/KhronosGroup/glslang

Reply via email to