Lib:Sources
From GNUpdf
Contents |
Root directory
The root directory of the distribution contains the following files.
- AUTHORS
- This file contains the names of the people that have contributed to the development of the library writing code or documentation.
- COPYING
- A copy of the GNU General Public License version 3.
- ChangeLog
- A detailed record of the changes made to the library.
- DEPENDENCIES
- List of the third party packages needed to build and run libgnupdf.
- GNUmakefile
- A generic top-level makefile from gnulib.
- INSTALL
- Generic installation instructions from autoconf.
- MANIFEST.wiki
- This file.
- Makefile.am
- Top-level automake configuration file.
- NEWS
- News of each release.
- README
- Brief description of the project and links to the homepage and ftp site.
- README.bzr
- Additional information to build a Bazaar checkout of the library.
- README.cvs
- Additional information to build a CVS checkout of the library. This file is deprecated.
- bootstrap
- Bootstrap script (wrapper for autoreconf) used to regenerate the libtool and autoconf files. Written by Karl Berry.
- cfg.mk
- Configuration for some of the facilities implemented by maint.mk
- configure.ac
- Autoconf file for the library. It is used by autoconf to generate the configure script.
- maint.mk
- Makefile containing useful rules for the maintainer. This file comes from gnulib.
- other files...
- Several generated files.
doc/ Manuals and Manpages
This directory contains the texinfo source files of several manuals.
We may also want to generate manpages for the API documented in the texinfo manual. We don't want to manually maintain the manpages, so we would need a script to extract the contents of the texinfo file.
Automatically generated manpages for the library utilities will be generated (using the help2man command) here.
- MANIFEST.wiki
- This file.
- Makefile.am
- Automake input file.
- fdl.texi
- A copy of the GNU Free Documentation License (included in the manual).
- generate-tsd.pl.in
- Perl script that generates the texinfo sources of the Test Specification Document from the source code of the library.
- gnupdf-arch.texi
- Texinfo sources of the GNU PDF Library Architecture Manual.
- gnupdf-hg.texi
- Texinfo sources of the GNU PDF Library Hackers Guide.
- gnupdf-manual-wiki.init
- texi2html initialization file for wiki pages generation.
- gnupdf-manual.init
- texi2html initialization file for HTML generation.
- gnupdf-tsd.texi
- Texinfo sources of the GNU PDF Library Tests Specification Document.
- gnupdf-utils.texi
- Texinfo sources of the GNU PDF Library Utilities Manual.
- gnupdf.texi
- Texinfo sources of the GNU PDF Library Reference Manual.
- manuals.css
- Cascading Style Sheet for the HTML manuals.
- texinfo.tex
- Implementation of texinfo over TeX.
- pdf_filter.1
- Manual page (generated using help2man) for the pdf_filter utility.
- version.texi.in
- Texinfo snippet containing versioning information.
lib/ Imported Code from gnulib
gnulib is the GNU Portability Library. It provides stubs and portable implementations of facilities known to have portability issues such as strings, getopt, math functions, etc. It also provides portable implementations of useful facilities such as linked lists and trees.
All the files in this directory are imported from gnulib using the gnulib-tool command (see the gnulib manual for more information on using gnulib-tool). The maintainer regularly updates the imported files from latest versions of gnulib.
The gnulib modules used in the GNU PDF library are:
- array-list
- getopt
- list
- math
- xalloc
- malloc
- getline
m4/ M4 macros
This directory contains the definitions of M4 macros implementing tests used by autoconf. Note that some of the files are imported from GNUlib.
- absolute-header.m4
- error.m4
- exitfail.m4
- getopt.m4
- gl_list.m4
- gnulib-cache.m4
- gnulib-common.m4
- gnulib-comp.m4
- gnulib-tool.m4
- include_next.m4
- inline.m4
- math_h.m4
- onceonly_2_57.m4
- size_max.m4
- stdbool.m4
- stdlib_h.m4
- unistd_h.m4
- xalloc.m4
- xsize.m4
- malloc.m4
- extensions.m4
- getdelim.m4
- getline.m4
- realloc.m4
- stdio_h.m4
- Imported from gnulib.
- zlib.m4
- Defines the CHECK_ZLIB macro used in configure.ac. Written by Loic Dachary.
prmgt/ Project Management
This directory contains several files with management information about the project: tasks, reports, etc.
- MANIFEST.wiki
- This file.
- Makefile.am
- Input file for Automake.
- apic2wiki.in
- Script that generates the wiki version of the API consistency report.
- check-api-doc-consistency.pl.in
- Perl script generating API consistency data from the source code of the library.
- docfuncs.in
- Script that lists the documented functions in the GNU PDF Reference Manual.
- fly2org
- Tcl script converting flyspray tasks to org-mode.
- generate-coverage-report
- Shell script that generates a nice HTML report of code coverage.
- get-test-data.sh.in
- Shell script that downloads the test data files needed by the test suites of the library.
- patch_safety_dispatcher.py
- This script runs other QA scripts like the test suite and a syntax check conforming to GCS.
- srcinfo-extractor.pl.in
- Perl script that traverses every directory from topdir and looks for a MANIFEST.wiki file, from which the directory information is then extracted.
- testlog2wiki.in
- Tests run report generator.
- tsdfuncs.in
- List the documented functions in the GNU PDF TSD.
src/ Library Source Code
This directory contains a subdirectory containing the source files for each library layer, plus some global source files and scripts.
- Makefile.am
- Automake source file
- extract-public-hdr.in
- Script used to generate the public header file to be included by client applications.
- pdf-global.h
- Main definitions for the library.
- pdf-global.c
- * Definition of global variables.
- * Library initialization and finalization routines.
src/base Base Layer Source Code
This directory contains the source files for the Base Layer of the library.
- pdf-base.h, pdf-base.c
- Layer-wide main code.
- pdf-stm.h, pdf-stm.c
- Stream library module.
- pdf-stm-f-a85.h, pdf-stm-f-a85.c
- pdf-stm-f-ahex.h, pdf-stm-f-ahex.c
- pdf-stm-f-fax.h, pdf-stm-f-fax.c
- pdf-stm-f-flate.h, pdf-stm-f-flate.c
- pdf-stm-f-lzw.h, pdf-stm-f-lzw.c
- pdf-stm-f-null.h, pdf-stm-f-null.c
- pdf-stm-f-pred.h, pdf-stm-f-pred.c
- pdf-stm-f-rl.h, pdf-stm-f-rl.c
- pdf-stm-f-aesv2.h, pdf-stm-f-aesv2.c
- pdf-stm-f-v2.h, pdf-stm-f-v2.c
- pdf-stm-f-md.h, pdf-stm-f-md.c
- pdf-stm-f-dct.h, pdf-stm-f-dct.c
- Implementation of the PDF standard filters.
- pdf-stm-file.h, pdf-stm-file.c
- pdf-stm-mem.h, pdf-stm-mem.c
- Stream backends.
- pdf-fp.h, pdf-fp.c
- Floating Point Arithmetic Module.
- pdf-types.h, pdf-types.c
- Basic Types Module.
- pdf-fsys.h, pdf-fsys.c
- pdf-fsys-def.h
- pdf-fsys-disk.h, pdf-fsys-disk.c
- pdf-fsys-http.h, pdf-fsys-http.c
- Filesystem Modules
src/document Document Layer Source Code
This directory contains the source files pertanining to the Document Layer of the library.
src/object Object Layer Source Code
This directory contains the source files for the Object Layer of the library.
torture/ Test Suites (torture chamber)
This directory contains the unit tests for the library.
- Makefile.am
- Automake source file
utils/ Utilities
This directory contains several utilities to manipulate PDF documents. These utilities make use of the GNU PDF Library.
- pdf-filter.h, pdf-filter.c
- pdf-filter: a front-end for the standard PDF filters.
- pdf-tokeniser.c
- pdf-tokeniser: a front-end for the PDF tokeniser.



