|
Packit |
95bb47 |
Persistent Memory Development Kit
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
This is doc/README.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
Subdirectories of this directory contain source for the man pages for the
|
|
Packit |
95bb47 |
Persistent Memory Development Kit in markdown format (.md files).
|
|
Packit |
95bb47 |
If you're looking for documentation to
|
|
Packit |
95bb47 |
get you started using PMDK, start here: http://pmem.io/pmdk and follow the
|
|
Packit |
95bb47 |
links to examples and man pages. Developers new to PMDK are probably looking
|
|
Packit |
95bb47 |
for libpmemobj.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
To generate web-based documentation or Linux/FreeBSD man pages, you need to
|
|
Packit |
95bb47 |
have groff and pandoc installed. m4 macros are used in the document
|
|
Packit |
95bb47 |
sources to generate OS-specific variants of man pages and web-based
|
|
Packit |
95bb47 |
documentation. The macros are defined in macros.man. Processing is performed
|
|
Packit |
95bb47 |
by the ../utils/md2man.sh script.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
All files in the *generated* directory are automatically generated and updated
|
|
Packit |
95bb47 |
by the pmdk-bot. **DO NOT MODIFY THE FILES IN THAT DIRECTORY**. All changes to
|
|
Packit |
95bb47 |
the documentation must be made by modifying the *.md files in the following
|
|
Packit |
95bb47 |
document subdirectories:
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
libpmem -- low-level persistent memory support
|
|
Packit |
95bb47 |
libpmemblk -- pmem-resident arrays of blocks
|
|
Packit |
95bb47 |
libpmemlog -- pmem-resident log files
|
|
Packit |
95bb47 |
libpmemobj -- transactional object store
|
|
Packit |
95bb47 |
libvmem -- volatile memory allocation library
|
|
Packit |
95bb47 |
libvmmalloc -- general purpose volatile memory allocation library
|
|
Packit |
95bb47 |
libpmempool -- persistent memory pool management library
|
|
Packit |
95bb47 |
pmempool -- Persistent Memory Pool Management Tool
|
|
Packit |
95bb47 |
librpmem -- remote access to persistent memory (EXPERIMENTAL)
|
|
Packit |
95bb47 |
rpmemd -- remote persistent memory daemon (EXPERIMENTAL)
|
|
Packit |
95bb47 |
daxio -- perform I/O on Device DAX device
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
These man pages provide the API specification for the corresponding libraries
|
|
Packit |
95bb47 |
and commands in this source tree, so any updates to one should be tested,
|
|
Packit |
95bb47 |
reviewed, and committed with changes to the other.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
To create more readable text files from the source, use:
|
|
Packit |
95bb47 |
$ [g]make
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
NOTE: This will write man page output into the *generated* subdirectory. Files
|
|
Packit |
95bb47 |
in this directory MUST NOT be included in any pull requests.
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
The man(1) command may be used to format generated man pages for viewing
|
|
Packit |
95bb47 |
in a terminal window (includes bold, underline, etc.), for example:
|
|
Packit |
95bb47 |
$ man generated/libpmem.7
|
|
Packit |
95bb47 |
$ man generated/pmemobj_create.3
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
In addition, for testing purposes ../utils/md2man.sh will generate a
|
|
Packit |
95bb47 |
preprocessed markdown file with the headers stripped off if the TESTOPTS
|
|
Packit |
95bb47 |
variable is set. For example:
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
$ export TESTOPTS="-DWIN32 -UFREEBSD -UWEB"
|
|
Packit |
95bb47 |
$ ../utils/md2man.sh libpmemobj/libpmemobj.7.md x libpmemobj.7.win.md
|
|
Packit |
95bb47 |
|
|
Packit |
95bb47 |
will generate a version of the libpmemobj.7 man page for Windows in markdown
|
|
Packit |
95bb47 |
format. The resulting file may be viewed with a markdown-enabled browser.
|