Lib:Sources

From GNUpdf
Jump to: navigation, search

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.
autogen.sh
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.
libgnupdf.pc.in
pkg-config file for libgnupdf.
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-filereader.h, pdf-filereader.c
pdf-filereader: a utility for testing PDF filtesystem implementation.
pdf-tokeniser.c
pdf-tokeniser: a front-end for the PDF tokeniser.
Personal tools
Namespaces

Variants
Actions
project
Tools