Skip to content

Commit

Permalink
bpo-25592: Improve documentation of distutils data_files (pythonGH-9767
Browse files Browse the repository at this point in the history
…) (pythonGH-11701)

(cherry picked from commit 598e15d)

Co-authored-by: jdemeyer <J.Demeyer@UGent.be>
  • Loading branch information
2 people authored and pitrou committed Jan 30, 2019
1 parent 10354cb commit ebae1ce
Showing 1 changed file with 14 additions and 11 deletions.
25 changes: 14 additions & 11 deletions Doc/distutils/setupscript.rst
Original file line number Diff line number Diff line change
Expand Up @@ -524,20 +524,23 @@ following way::
setup(...,
data_files=[('bitmaps', ['bm/b1.gif', 'bm/b2.gif']),
('config', ['cfg/data.cfg']),
('/etc/init.d', ['init-script'])]
)

Note that you can specify the directory names where the data files will be
installed, but you cannot rename the data files themselves.

Each (*directory*, *files*) pair in the sequence specifies the installation
directory and the files to install there. If *directory* is a relative path, it
is interpreted relative to the installation prefix (Python's ``sys.prefix`` for
pure-Python packages, ``sys.exec_prefix`` for packages that contain extension
modules). Each file name in *files* is interpreted relative to the
:file:`setup.py` script at the top of the package source distribution. No
directory information from *files* is used to determine the final location of
the installed file; only the name of the file is used.
directory and the files to install there.

Each file name in *files* is interpreted relative to the :file:`setup.py`
script at the top of the package source distribution. Note that you can
specify the directory where the data files will be installed, but you cannot
rename the data files themselves.

The *directory* should be a relative path. It is interpreted relative to the
installation prefix (Python's ``sys.prefix`` for system installations;
``site.USER_BASE`` for user installations). Distutils allows *directory* to be
an absolute installation path, but this is discouraged since it is
incompatible with the wheel packaging format. No directory information from
*files* is used to determine the final location of the installed file; only
the name of the file is used.

You can specify the ``data_files`` options as a simple sequence of files
without specifying a target directory, but this is not recommended, and the
Expand Down

0 comments on commit ebae1ce

Please sign in to comment.