Skip to content

Files

Latest commit

0933f5b · Sep 23, 2024

History

History
This branch is 44 commits behind pmem/pmdk:master.

doc

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
May 30, 2022
Feb 12, 2020
May 20, 2024
Jul 17, 2023
May 9, 2024
Jul 17, 2023
Jan 8, 2023
Dec 7, 2022
Jul 4, 2023
Jul 17, 2023
Aug 30, 2022
Jul 17, 2023
Dec 7, 2022
Sep 23, 2024
Apr 15, 2024
Jul 17, 2023
Feb 12, 2020
Persistent Memory Development Kit

This is doc/README.

Subdirectories of this directory contain source for the man pages for the
Persistent Memory Development Kit in markdown format (.md files).
If you're looking for documentation to
get you started using PMDK, start here: https://pmem.io/pmdk and follow the
links to examples and man pages. Developers new to PMDK are probably looking
for libpmemobj.

To generate web-based documentation or Linux man pages, you need to
have groff and pandoc installed. Processing is performed
by the ../utils/md2man.sh script.

All files in the *generated* directory are automatically generated and updated
by the pmdk-bot. **DO NOT MODIFY THE FILES IN THAT DIRECTORY**. All changes to
the documentation must be made by modifying the *.md files in the following
document subdirectories:

libpmem -- low-level persistent memory support
libpmem2 -- low-level persistent memory support
libpmemobj -- transactional object store
libpmempool -- persistent memory pool management library
pmempool -- persistent memory pool management tool
daxio -- perform I/O on Device DAX device

These man pages provide the API specification for the corresponding libraries
and commands in this source tree, so any updates to one should be tested,
reviewed, and committed with changes to the other.

To create more readable text files from the source, use:
	$ [g]make

NOTE: This will write man page output into the *generated* subdirectory. Files
in this directory MUST NOT be included in any pull requests.

The man(1) command may be used to format generated man pages for viewing
in a terminal window (includes bold, underline, etc.), for example:
	$ man generated/libpmem.7
	$ man generated/pmemobj_create.3

In addition, for testing purposes ../utils/md2man.sh will generate a
preprocessed markdown file with the headers stripped off if the TESTOPTS
variable is set. For example:

	$ export TESTOPTS="-DWEB"
	$ ../utils/md2man.sh libpmemobj/libpmemobj.7.md x libpmemobj.7.web.md

will generate a version of the libpmemobj.7 man page for web in markdown
format. The resulting file may be viewed with a markdown-enabled browser.