2018-07-04 09:06:45 +00:00
|
|
|
|
# Copyright (C) 2001-2018, Python Software Foundation
|
2018-07-04 09:08:42 +00:00
|
|
|
|
# For licence information, see README file.
|
2016-10-30 09:46:26 +00:00
|
|
|
|
#
|
|
|
|
|
msgid ""
|
|
|
|
|
msgstr ""
|
|
|
|
|
"Project-Id-Version: Python 3.6\n"
|
|
|
|
|
"Report-Msgid-Bugs-To: \n"
|
2018-11-29 15:13:39 +00:00
|
|
|
|
"POT-Creation-Date: 2018-11-29 16:06+0100\n"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
|
|
|
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
2018-07-04 09:14:25 +00:00
|
|
|
|
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
|
2017-05-23 22:40:56 +00:00
|
|
|
|
"Language: fr\n"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
"MIME-Version: 1.0\n"
|
|
|
|
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
|
|
|
"Content-Transfer-Encoding: 8bit\n"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:5
|
|
|
|
|
msgid "Writing the Setup Script"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:7
|
|
|
|
|
msgid ""
|
|
|
|
|
"The setup script is the centre of all activity in building, distributing, "
|
|
|
|
|
"and installing modules using the Distutils. The main purpose of the setup "
|
|
|
|
|
"script is to describe your module distribution to the Distutils, so that the "
|
|
|
|
|
"various commands that operate on your modules do the right thing. As we saw "
|
|
|
|
|
"in section :ref:`distutils-simple-example` above, the setup script consists "
|
|
|
|
|
"mainly of a call to :func:`setup`, and most information supplied to the "
|
|
|
|
|
"Distutils by the module developer is supplied as keyword arguments to :func:"
|
|
|
|
|
"`setup`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:15
|
|
|
|
|
msgid ""
|
|
|
|
|
"Here's a slightly more involved example, which we'll follow for the next "
|
|
|
|
|
"couple of sections: the Distutils' own setup script. (Keep in mind that "
|
|
|
|
|
"although the Distutils are included with Python 1.6 and later, they also "
|
|
|
|
|
"have an independent existence so that Python 1.5.2 users can use them to "
|
|
|
|
|
"install other module distributions. The Distutils' own setup script, shown "
|
|
|
|
|
"here, is used to install the package into Python 1.5.2.) ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:35
|
|
|
|
|
msgid ""
|
|
|
|
|
"There are only two differences between this and the trivial one-file "
|
|
|
|
|
"distribution presented in section :ref:`distutils-simple-example`: more "
|
|
|
|
|
"metadata, and the specification of pure Python modules by package, rather "
|
|
|
|
|
"than by module. This is important since the Distutils consist of a couple "
|
|
|
|
|
"of dozen modules split into (so far) two packages; an explicit list of every "
|
|
|
|
|
"module would be tedious to generate and difficult to maintain. For more "
|
|
|
|
|
"information on the additional meta-data, see section :ref:`meta-data`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:43
|
|
|
|
|
msgid ""
|
|
|
|
|
"Note that any pathnames (files or directories) supplied in the setup script "
|
|
|
|
|
"should be written using the Unix convention, i.e. slash-separated. The "
|
|
|
|
|
"Distutils will take care of converting this platform-neutral representation "
|
|
|
|
|
"into whatever is appropriate on your current platform before actually using "
|
|
|
|
|
"the pathname. This makes your setup script portable across operating "
|
|
|
|
|
"systems, which of course is one of the major goals of the Distutils. In "
|
|
|
|
|
"this spirit, all pathnames in this document are slash-separated."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:51
|
|
|
|
|
msgid ""
|
|
|
|
|
"This, of course, only applies to pathnames given to Distutils functions. If "
|
|
|
|
|
"you, for example, use standard Python functions such as :func:`glob.glob` "
|
|
|
|
|
"or :func:`os.listdir` to specify files, you should be careful to write "
|
|
|
|
|
"portable code instead of hardcoding path separators::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:63
|
|
|
|
|
msgid "Listing whole packages"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:65
|
|
|
|
|
msgid ""
|
|
|
|
|
"The ``packages`` option tells the Distutils to process (build, distribute, "
|
|
|
|
|
"install, etc.) all pure Python modules found in each package mentioned in "
|
|
|
|
|
"the ``packages`` list. In order to do this, of course, there has to be a "
|
|
|
|
|
"correspondence between package names and directories in the filesystem. The "
|
|
|
|
|
"default correspondence is the most obvious one, i.e. package :mod:"
|
|
|
|
|
"`distutils` is found in the directory :file:`distutils` relative to the "
|
|
|
|
|
"distribution root. Thus, when you say ``packages = ['foo']`` in your setup "
|
|
|
|
|
"script, you are promising that the Distutils will find a file :file:`foo/"
|
|
|
|
|
"__init__.py` (which might be spelled differently on your system, but you get "
|
|
|
|
|
"the idea) relative to the directory where your setup script lives. If you "
|
|
|
|
|
"break this promise, the Distutils will issue a warning but still process the "
|
|
|
|
|
"broken package anyway."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:77
|
|
|
|
|
msgid ""
|
|
|
|
|
"If you use a different convention to lay out your source directory, that's "
|
|
|
|
|
"no problem: you just have to supply the ``package_dir`` option to tell the "
|
|
|
|
|
"Distutils about your convention. For example, say you keep all Python "
|
|
|
|
|
"source under :file:`lib`, so that modules in the \"root package\" (i.e., not "
|
|
|
|
|
"in any package at all) are in :file:`lib`, modules in the :mod:`foo` package "
|
|
|
|
|
"are in :file:`lib/foo`, and so forth. Then you would put ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:86
|
|
|
|
|
msgid ""
|
|
|
|
|
"in your setup script. The keys to this dictionary are package names, and an "
|
|
|
|
|
"empty package name stands for the root package. The values are directory "
|
|
|
|
|
"names relative to your distribution root. In this case, when you say "
|
|
|
|
|
"``packages = ['foo']``, you are promising that the file :file:`lib/foo/"
|
|
|
|
|
"__init__.py` exists."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:91
|
|
|
|
|
msgid ""
|
|
|
|
|
"Another possible convention is to put the :mod:`foo` package right in :file:"
|
|
|
|
|
"`lib`, the :mod:`foo.bar` package in :file:`lib/bar`, etc. This would be "
|
|
|
|
|
"written in the setup script as ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:97
|
|
|
|
|
msgid ""
|
|
|
|
|
"A ``package: dir`` entry in the ``package_dir`` dictionary implicitly "
|
|
|
|
|
"applies to all packages below *package*, so the :mod:`foo.bar` case is "
|
|
|
|
|
"automatically handled here. In this example, having ``packages = ['foo', "
|
|
|
|
|
"'foo.bar']`` tells the Distutils to look for :file:`lib/__init__.py` and :"
|
|
|
|
|
"file:`lib/bar/__init__.py`. (Keep in mind that although ``package_dir`` "
|
|
|
|
|
"applies recursively, you must explicitly list all packages in ``packages``: "
|
|
|
|
|
"the Distutils will *not* recursively scan your source tree looking for any "
|
|
|
|
|
"directory with an :file:`__init__.py` file.)"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:110
|
|
|
|
|
msgid "Listing individual modules"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:112
|
|
|
|
|
msgid ""
|
|
|
|
|
"For a small module distribution, you might prefer to list all modules rather "
|
|
|
|
|
"than listing packages---especially the case of a single module that goes in "
|
|
|
|
|
"the \"root package\" (i.e., no package at all). This simplest case was "
|
|
|
|
|
"shown in section :ref:`distutils-simple-example`; here is a slightly more "
|
|
|
|
|
"involved example::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:119
|
|
|
|
|
msgid ""
|
|
|
|
|
"This describes two modules, one of them in the \"root\" package, the other "
|
|
|
|
|
"in the :mod:`pkg` package. Again, the default package/directory layout "
|
|
|
|
|
"implies that these two modules can be found in :file:`mod1.py` and :file:"
|
|
|
|
|
"`pkg/mod2.py`, and that :file:`pkg/__init__.py` exists as well. And again, "
|
|
|
|
|
"you can override the package/directory correspondence using the "
|
|
|
|
|
"``package_dir`` option."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:129
|
|
|
|
|
msgid "Describing extension modules"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:131
|
|
|
|
|
msgid ""
|
|
|
|
|
"Just as writing Python extension modules is a bit more complicated than "
|
|
|
|
|
"writing pure Python modules, describing them to the Distutils is a bit more "
|
|
|
|
|
"complicated. Unlike pure modules, it's not enough just to list modules or "
|
|
|
|
|
"packages and expect the Distutils to go out and find the right files; you "
|
|
|
|
|
"have to specify the extension name, source file(s), and any compile/link "
|
|
|
|
|
"requirements (include directories, libraries to link with, etc.)."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:140
|
|
|
|
|
msgid ""
|
|
|
|
|
"All of this is done through another keyword argument to :func:`setup`, the "
|
|
|
|
|
"``ext_modules`` option. ``ext_modules`` is just a list of :class:"
|
|
|
|
|
"`~distutils.core.Extension` instances, each of which describes a single "
|
|
|
|
|
"extension module. Suppose your distribution includes a single extension, "
|
|
|
|
|
"called :mod:`foo` and implemented by :file:`foo.c`. If no additional "
|
|
|
|
|
"instructions to the compiler/linker are needed, describing this extension is "
|
|
|
|
|
"quite simple::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:150
|
|
|
|
|
msgid ""
|
|
|
|
|
"The :class:`Extension` class can be imported from :mod:`distutils.core` "
|
|
|
|
|
"along with :func:`setup`. Thus, the setup script for a module distribution "
|
|
|
|
|
"that contains only this one extension and nothing else might be::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:160
|
|
|
|
|
msgid ""
|
|
|
|
|
"The :class:`Extension` class (actually, the underlying extension-building "
|
|
|
|
|
"machinery implemented by the :command:`build_ext` command) supports a great "
|
|
|
|
|
"deal of flexibility in describing Python extensions, which is explained in "
|
|
|
|
|
"the following sections."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:167
|
|
|
|
|
msgid "Extension names and packages"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:169
|
|
|
|
|
msgid ""
|
|
|
|
|
"The first argument to the :class:`~distutils.core.Extension` constructor is "
|
|
|
|
|
"always the name of the extension, including any package names. For "
|
|
|
|
|
"example, ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:174
|
|
|
|
|
msgid "describes an extension that lives in the root package, while ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:178
|
|
|
|
|
msgid ""
|
|
|
|
|
"describes the same extension in the :mod:`pkg` package. The source files "
|
|
|
|
|
"and resulting object code are identical in both cases; the only difference "
|
|
|
|
|
"is where in the filesystem (and therefore where in Python's namespace "
|
|
|
|
|
"hierarchy) the resulting extension lives."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:183
|
|
|
|
|
msgid ""
|
|
|
|
|
"If you have a number of extensions all in the same package (or all under the "
|
|
|
|
|
"same base package), use the ``ext_package`` keyword argument to :func:"
|
|
|
|
|
"`setup`. For example, ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:193
|
|
|
|
|
msgid ""
|
|
|
|
|
"will compile :file:`foo.c` to the extension :mod:`pkg.foo`, and :file:`bar."
|
|
|
|
|
"c` to :mod:`pkg.subpkg.bar`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:198
|
|
|
|
|
msgid "Extension source files"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:200
|
|
|
|
|
msgid ""
|
|
|
|
|
"The second argument to the :class:`~distutils.core.Extension` constructor is "
|
|
|
|
|
"a list of source files. Since the Distutils currently only support C, C++, "
|
|
|
|
|
"and Objective-C extensions, these are normally C/C++/Objective-C source "
|
2017-04-02 20:14:06 +00:00
|
|
|
|
"files. (Be sure to use appropriate extensions to distinguish C++ source "
|
2016-10-30 09:46:26 +00:00
|
|
|
|
"files: :file:`.cc` and :file:`.cpp` seem to be recognized by both Unix and "
|
|
|
|
|
"Windows compilers.)"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:207
|
|
|
|
|
msgid ""
|
|
|
|
|
"However, you can also include SWIG interface (:file:`.i`) files in the list; "
|
|
|
|
|
"the :command:`build_ext` command knows how to deal with SWIG extensions: it "
|
|
|
|
|
"will run SWIG on the interface file and compile the resulting C/C++ file "
|
|
|
|
|
"into your extension."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:214
|
|
|
|
|
msgid ""
|
|
|
|
|
"This warning notwithstanding, options to SWIG can be currently passed like "
|
|
|
|
|
"this::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:223
|
|
|
|
|
msgid "Or on the commandline like this::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:227
|
|
|
|
|
msgid ""
|
|
|
|
|
"On some platforms, you can include non-source files that are processed by "
|
|
|
|
|
"the compiler and included in your extension. Currently, this just means "
|
|
|
|
|
"Windows message text (:file:`.mc`) files and resource definition (:file:`."
|
|
|
|
|
"rc`) files for Visual C++. These will be compiled to binary resource (:file:"
|
|
|
|
|
"`.res`) files and linked into the executable."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:235
|
|
|
|
|
msgid "Preprocessor options"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:237
|
|
|
|
|
msgid ""
|
|
|
|
|
"Three optional arguments to :class:`~distutils.core.Extension` will help if "
|
|
|
|
|
"you need to specify include directories to search or preprocessor macros to "
|
|
|
|
|
"define/undefine: ``include_dirs``, ``define_macros``, and ``undef_macros``."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:241
|
|
|
|
|
msgid ""
|
|
|
|
|
"For example, if your extension requires header files in the :file:`include` "
|
|
|
|
|
"directory under your distribution root, use the ``include_dirs`` option::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:246
|
|
|
|
|
msgid ""
|
|
|
|
|
"You can specify absolute directories there; if you know that your extension "
|
|
|
|
|
"will only be built on Unix systems with X11R6 installed to :file:`/usr`, you "
|
|
|
|
|
"can get away with ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:252
|
|
|
|
|
msgid ""
|
|
|
|
|
"You should avoid this sort of non-portable usage if you plan to distribute "
|
|
|
|
|
"your code: it's probably better to write C code like ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:257
|
|
|
|
|
msgid ""
|
|
|
|
|
"If you need to include header files from some other Python extension, you "
|
|
|
|
|
"can take advantage of the fact that header files are installed in a "
|
|
|
|
|
"consistent way by the Distutils :command:`install_headers` command. For "
|
|
|
|
|
"example, the Numerical Python header files are installed (on a standard Unix "
|
|
|
|
|
"installation) to :file:`/usr/local/include/python1.5/Numerical`. (The exact "
|
|
|
|
|
"location will differ according to your platform and Python installation.) "
|
|
|
|
|
"Since the Python include directory---\\ :file:`/usr/local/include/python1.5` "
|
|
|
|
|
"in this case---is always included in the search path when building Python "
|
|
|
|
|
"extensions, the best approach is to write C code like ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:269
|
|
|
|
|
msgid ""
|
|
|
|
|
"If you must put the :file:`Numerical` include directory right into your "
|
|
|
|
|
"header search path, though, you can find that directory using the Distutils :"
|
|
|
|
|
"mod:`distutils.sysconfig` module::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:279
|
|
|
|
|
msgid ""
|
|
|
|
|
"Even though this is quite portable---it will work on any Python "
|
|
|
|
|
"installation, regardless of platform---it's probably easier to just write "
|
|
|
|
|
"your C code in the sensible way."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:283
|
|
|
|
|
msgid ""
|
|
|
|
|
"You can define and undefine pre-processor macros with the ``define_macros`` "
|
|
|
|
|
"and ``undef_macros`` options. ``define_macros`` takes a list of ``(name, "
|
|
|
|
|
"value)`` tuples, where ``name`` is the name of the macro to define (a "
|
|
|
|
|
"string) and ``value`` is its value: either a string or ``None``. (Defining "
|
|
|
|
|
"a macro ``FOO`` to ``None`` is the equivalent of a bare ``#define FOO`` in "
|
|
|
|
|
"your C source: with most compilers, this sets ``FOO`` to the string ``1``.) "
|
|
|
|
|
"``undef_macros`` is just a list of macros to undefine."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:291
|
|
|
|
|
msgid "For example::"
|
2018-07-03 09:49:47 +00:00
|
|
|
|
msgstr "Par exemple ::"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:298
|
|
|
|
|
msgid "is the equivalent of having this at the top of every C source file::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:307
|
|
|
|
|
msgid "Library options"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:309
|
|
|
|
|
msgid ""
|
|
|
|
|
"You can also specify the libraries to link against when building your "
|
|
|
|
|
"extension, and the directories to search for those libraries. The "
|
|
|
|
|
"``libraries`` option is a list of libraries to link against, "
|
|
|
|
|
"``library_dirs`` is a list of directories to search for libraries at link-"
|
|
|
|
|
"time, and ``runtime_library_dirs`` is a list of directories to search for "
|
|
|
|
|
"shared (dynamically loaded) libraries at run-time."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:315
|
|
|
|
|
msgid ""
|
|
|
|
|
"For example, if you need to link against libraries known to be in the "
|
|
|
|
|
"standard library search path on target systems ::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:321
|
|
|
|
|
msgid ""
|
|
|
|
|
"If you need to link with libraries in a non-standard location, you'll have "
|
|
|
|
|
"to include the location in ``library_dirs``::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:328
|
|
|
|
|
msgid ""
|
|
|
|
|
"(Again, this sort of non-portable construct should be avoided if you intend "
|
|
|
|
|
"to distribute your code.)"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:335
|
|
|
|
|
msgid "Other options"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:337
|
|
|
|
|
msgid ""
|
|
|
|
|
"There are still some other options which can be used to handle special cases."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:339
|
|
|
|
|
msgid ""
|
|
|
|
|
"The ``optional`` option is a boolean; if it is true, a build failure in the "
|
|
|
|
|
"extension will not abort the build process, but instead simply not install "
|
|
|
|
|
"the failing extension."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:343
|
|
|
|
|
msgid ""
|
|
|
|
|
"The ``extra_objects`` option is a list of object files to be passed to the "
|
|
|
|
|
"linker. These files must not have extensions, as the default extension for "
|
|
|
|
|
"the compiler is used."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:347
|
|
|
|
|
msgid ""
|
|
|
|
|
"``extra_compile_args`` and ``extra_link_args`` can be used to specify "
|
|
|
|
|
"additional command line options for the respective compiler and linker "
|
|
|
|
|
"command lines."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:351
|
|
|
|
|
msgid ""
|
|
|
|
|
"``export_symbols`` is only useful on Windows. It can contain a list of "
|
|
|
|
|
"symbols (functions or variables) to be exported. This option is not needed "
|
|
|
|
|
"when building compiled extensions: Distutils will automatically add "
|
|
|
|
|
"``initmodule`` to the list of exported symbols."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:356
|
|
|
|
|
msgid ""
|
|
|
|
|
"The ``depends`` option is a list of files that the extension depends on (for "
|
|
|
|
|
"example header files). The build command will call the compiler on the "
|
|
|
|
|
"sources to rebuild extension if any on this files has been modified since "
|
|
|
|
|
"the previous build."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:362
|
|
|
|
|
msgid "Relationships between Distributions and Packages"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:364
|
|
|
|
|
msgid "A distribution may relate to packages in three specific ways:"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:366
|
|
|
|
|
msgid "It can require packages or modules."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:368
|
|
|
|
|
msgid "It can provide packages or modules."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:370
|
|
|
|
|
msgid "It can obsolete packages or modules."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:372
|
|
|
|
|
msgid ""
|
|
|
|
|
"These relationships can be specified using keyword arguments to the :func:"
|
|
|
|
|
"`distutils.core.setup` function."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:375
|
|
|
|
|
msgid ""
|
|
|
|
|
"Dependencies on other Python modules and packages can be specified by "
|
|
|
|
|
"supplying the *requires* keyword argument to :func:`setup`. The value must "
|
|
|
|
|
"be a list of strings. Each string specifies a package that is required, and "
|
|
|
|
|
"optionally what versions are sufficient."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:380
|
|
|
|
|
msgid ""
|
|
|
|
|
"To specify that any version of a module or package is required, the string "
|
|
|
|
|
"should consist entirely of the module or package name. Examples include "
|
|
|
|
|
"``'mymodule'`` and ``'xml.parsers.expat'``."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:384
|
|
|
|
|
msgid ""
|
|
|
|
|
"If specific versions are required, a sequence of qualifiers can be supplied "
|
|
|
|
|
"in parentheses. Each qualifier may consist of a comparison operator and a "
|
|
|
|
|
"version number. The accepted comparison operators are::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:391
|
|
|
|
|
msgid ""
|
|
|
|
|
"These can be combined by using multiple qualifiers separated by commas (and "
|
|
|
|
|
"optional whitespace). In this case, all of the qualifiers must be matched; "
|
|
|
|
|
"a logical AND is used to combine the evaluations."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:395
|
|
|
|
|
msgid "Let's look at a bunch of examples:"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:398
|
|
|
|
|
msgid "Requires Expression"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:398 ../Doc/distutils/setupscript.rst:416
|
|
|
|
|
msgid "Explanation"
|
2017-12-05 06:54:15 +00:00
|
|
|
|
msgstr "Explication"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:400
|
|
|
|
|
msgid "``==1.0``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:400
|
|
|
|
|
msgid "Only version ``1.0`` is compatible"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:402
|
|
|
|
|
msgid "``>1.0, !=1.5.1, <2.0``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:402
|
|
|
|
|
msgid ""
|
|
|
|
|
"Any version after ``1.0`` and before ``2.0`` is compatible, except ``1.5.1``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:406
|
|
|
|
|
msgid ""
|
|
|
|
|
"Now that we can specify dependencies, we also need to be able to specify "
|
|
|
|
|
"what we provide that other distributions can require. This is done using "
|
|
|
|
|
"the *provides* keyword argument to :func:`setup`. The value for this keyword "
|
|
|
|
|
"is a list of strings, each of which names a Python module or package, and "
|
|
|
|
|
"optionally identifies the version. If the version is not specified, it is "
|
|
|
|
|
"assumed to match that of the distribution."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:413
|
|
|
|
|
msgid "Some examples:"
|
|
|
|
|
msgstr "Quelques exemples :"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:416
|
|
|
|
|
msgid "Provides Expression"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:418
|
|
|
|
|
msgid "``mypkg``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:418
|
|
|
|
|
msgid "Provide ``mypkg``, using the distribution version"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:421
|
|
|
|
|
msgid "``mypkg (1.1)``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:421
|
|
|
|
|
msgid "Provide ``mypkg`` version 1.1, regardless of the distribution version"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:425
|
|
|
|
|
msgid ""
|
|
|
|
|
"A package can declare that it obsoletes other packages using the *obsoletes* "
|
|
|
|
|
"keyword argument. The value for this is similar to that of the *requires* "
|
|
|
|
|
"keyword: a list of strings giving module or package specifiers. Each "
|
|
|
|
|
"specifier consists of a module or package name optionally followed by one or "
|
|
|
|
|
"more version qualifiers. Version qualifiers are given in parentheses after "
|
|
|
|
|
"the module or package name."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:432
|
|
|
|
|
msgid ""
|
|
|
|
|
"The versions identified by the qualifiers are those that are obsoleted by "
|
|
|
|
|
"the distribution being described. If no qualifiers are given, all versions "
|
|
|
|
|
"of the named module or package are understood to be obsoleted."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:439
|
|
|
|
|
msgid "Installing Scripts"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:441
|
|
|
|
|
msgid ""
|
|
|
|
|
"So far we have been dealing with pure and non-pure Python modules, which are "
|
|
|
|
|
"usually not run by themselves but imported by scripts."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:444
|
|
|
|
|
msgid ""
|
|
|
|
|
"Scripts are files containing Python source code, intended to be started from "
|
|
|
|
|
"the command line. Scripts don't require Distutils to do anything very "
|
|
|
|
|
"complicated. The only clever feature is that if the first line of the script "
|
|
|
|
|
"starts with ``#!`` and contains the word \"python\", the Distutils will "
|
|
|
|
|
"adjust the first line to refer to the current interpreter location. By "
|
|
|
|
|
"default, it is replaced with the current interpreter location. The :option:"
|
2017-04-02 20:14:06 +00:00
|
|
|
|
"`!--executable` (or :option:`!-e`) option will allow the interpreter path to "
|
2016-10-30 09:46:26 +00:00
|
|
|
|
"be explicitly overridden."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:452
|
|
|
|
|
msgid ""
|
|
|
|
|
"The ``scripts`` option simply is a list of files to be handled in this way. "
|
|
|
|
|
"From the PyXML setup script::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:459
|
|
|
|
|
msgid ""
|
|
|
|
|
"All the scripts will also be added to the ``MANIFEST`` file if no template "
|
|
|
|
|
"is provided. See :ref:`manifest`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:467
|
|
|
|
|
msgid "Installing Package Data"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:469
|
|
|
|
|
msgid ""
|
|
|
|
|
"Often, additional files need to be installed into a package. These files "
|
|
|
|
|
"are often data that's closely related to the package's implementation, or "
|
|
|
|
|
"text files containing documentation that might be of interest to programmers "
|
|
|
|
|
"using the package. These files are called :dfn:`package data`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:474
|
|
|
|
|
msgid ""
|
|
|
|
|
"Package data can be added to packages using the ``package_data`` keyword "
|
|
|
|
|
"argument to the :func:`setup` function. The value must be a mapping from "
|
|
|
|
|
"package name to a list of relative path names that should be copied into the "
|
|
|
|
|
"package. The paths are interpreted as relative to the directory containing "
|
|
|
|
|
"the package (information from the ``package_dir`` mapping is used if "
|
|
|
|
|
"appropriate); that is, the files are expected to be part of the package in "
|
|
|
|
|
"the source directories. They may contain glob patterns as well."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:482
|
|
|
|
|
msgid ""
|
|
|
|
|
"The path names may contain directory portions; any necessary directories "
|
|
|
|
|
"will be created in the installation."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:485
|
|
|
|
|
msgid ""
|
|
|
|
|
"For example, if a package should contain a subdirectory with several data "
|
|
|
|
|
"files, the files can be arranged like this in the source tree::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:498
|
|
|
|
|
msgid "The corresponding call to :func:`setup` might be::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:507
|
|
|
|
|
msgid ""
|
|
|
|
|
"All the files that match ``package_data`` will be added to the ``MANIFEST`` "
|
|
|
|
|
"file if no template is provided. See :ref:`manifest`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:515
|
|
|
|
|
msgid "Installing Additional Files"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:517
|
|
|
|
|
msgid ""
|
|
|
|
|
"The ``data_files`` option can be used to specify additional files needed by "
|
|
|
|
|
"the module distribution: configuration files, message catalogs, data files, "
|
|
|
|
|
"anything which doesn't fit in the previous categories."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:521
|
|
|
|
|
msgid ""
|
|
|
|
|
"``data_files`` specifies a sequence of (*directory*, *files*) pairs in the "
|
|
|
|
|
"following way::"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:530
|
|
|
|
|
msgid ""
|
|
|
|
|
"Note that you can specify the directory names where the data files will be "
|
|
|
|
|
"installed, but you cannot rename the data files themselves."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:533
|
|
|
|
|
msgid ""
|
|
|
|
|
"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."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:542
|
|
|
|
|
msgid ""
|
|
|
|
|
"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 :"
|
|
|
|
|
"command:`install` command will print a warning in this case. To install data "
|
|
|
|
|
"files directly in the target directory, an empty string should be given as "
|
|
|
|
|
"the directory."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:548
|
|
|
|
|
msgid ""
|
|
|
|
|
"All the files that match ``data_files`` will be added to the ``MANIFEST`` "
|
|
|
|
|
"file if no template is provided. See :ref:`manifest`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:556
|
|
|
|
|
msgid "Additional meta-data"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:558
|
|
|
|
|
msgid ""
|
|
|
|
|
"The setup script may include additional meta-data beyond the name and "
|
|
|
|
|
"version. This information includes:"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:562
|
|
|
|
|
msgid "Meta-Data"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:562
|
|
|
|
|
msgid "Description"
|
|
|
|
|
msgstr "Description"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:562
|
|
|
|
|
msgid "Value"
|
|
|
|
|
msgstr "Valeur"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:562
|
|
|
|
|
msgid "Notes"
|
|
|
|
|
msgstr "Notes"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:564
|
|
|
|
|
msgid "``name``"
|
2017-04-03 07:23:36 +00:00
|
|
|
|
msgstr "``name``"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:564
|
|
|
|
|
msgid "name of the package"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:564 ../Doc/distutils/setupscript.rst:566
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:568 ../Doc/distutils/setupscript.rst:573
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:580 ../Doc/distutils/setupscript.rst:596
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "short string"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:564 ../Doc/distutils/setupscript.rst:578
|
|
|
|
|
msgid "\\(1)"
|
|
|
|
|
msgstr "\\(1)"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:566
|
|
|
|
|
msgid "``version``"
|
|
|
|
|
msgstr "``version``"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:566
|
|
|
|
|
msgid "version of this release"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:566
|
|
|
|
|
msgid "(1)(2)"
|
|
|
|
|
msgstr "(1)(2)"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:568
|
|
|
|
|
msgid "``author``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:568
|
|
|
|
|
msgid "package author's name"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:568 ../Doc/distutils/setupscript.rst:570
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:573 ../Doc/distutils/setupscript.rst:575
|
|
|
|
|
msgid "\\(3)"
|
|
|
|
|
msgstr "\\(3)"
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:570
|
|
|
|
|
msgid "``author_email``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:570
|
|
|
|
|
msgid "email address of the package author"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:570 ../Doc/distutils/setupscript.rst:575
|
|
|
|
|
msgid "email address"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:573
|
|
|
|
|
msgid "``maintainer``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:573
|
|
|
|
|
msgid "package maintainer's name"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:575
|
|
|
|
|
msgid "``maintainer_email``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:575
|
|
|
|
|
msgid "email address of the package maintainer"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:578
|
|
|
|
|
msgid "``url``"
|
2017-04-03 07:23:36 +00:00
|
|
|
|
msgstr "``url``"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:578
|
|
|
|
|
msgid "home page for the package"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:578 ../Doc/distutils/setupscript.rst:587
|
|
|
|
|
msgid "URL"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:580
|
|
|
|
|
msgid "``description``"
|
2017-04-03 07:23:36 +00:00
|
|
|
|
msgstr "``description``"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:580
|
|
|
|
|
msgid "short, summary description of the package"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:584
|
|
|
|
|
msgid "``long_description``"
|
2017-04-03 07:23:36 +00:00
|
|
|
|
msgstr "``long_description``"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:584
|
|
|
|
|
msgid "longer description of the package"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:584
|
|
|
|
|
msgid "long string"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:584
|
2018-06-28 13:32:56 +00:00
|
|
|
|
msgid "\\(4)"
|
|
|
|
|
msgstr "\\(4)"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:587
|
|
|
|
|
msgid "``download_url``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:587
|
|
|
|
|
msgid "location where the package may be downloaded"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:590
|
|
|
|
|
msgid "``classifiers``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:590
|
|
|
|
|
msgid "a list of classifiers"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:590 ../Doc/distutils/setupscript.rst:592
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:594
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "list of strings"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:590
|
|
|
|
|
msgid "(6)(7)"
|
2018-07-03 09:14:42 +00:00
|
|
|
|
msgstr "(6)(7)"
|
2018-06-28 13:32:56 +00:00
|
|
|
|
|
2016-10-30 09:46:26 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:592
|
|
|
|
|
msgid "``platforms``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:592
|
|
|
|
|
msgid "a list of platforms"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:592 ../Doc/distutils/setupscript.rst:594
|
|
|
|
|
msgid "(6)(8)"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:594
|
|
|
|
|
msgid "``keywords``"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2016-10-30 09:46:26 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:594
|
2018-06-28 13:32:56 +00:00
|
|
|
|
msgid "a list of keywords"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:596
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "``license``"
|
2017-04-03 07:23:36 +00:00
|
|
|
|
msgstr "``license``"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:596
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "license for the package"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:596
|
|
|
|
|
msgid "\\(5)"
|
|
|
|
|
msgstr "\\(5)"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:599
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "Notes:"
|
2018-07-03 09:14:42 +00:00
|
|
|
|
msgstr "Notes :"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:602
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "These fields are required."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:605
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"It is recommended that versions take the form *major.minor[.patch[.sub]]*."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:608
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"Either the author or the maintainer must be identified. If maintainer is "
|
|
|
|
|
"provided, distutils lists it as the author in :file:`PKG-INFO`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:612
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"The ``long_description`` field is used by PyPI when you are :ref:"
|
|
|
|
|
"`registering <package-register>` a package, to :ref:`build its home page "
|
|
|
|
|
"<package-display>`."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:617
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"The ``license`` field is a text indicating the license covering the package "
|
|
|
|
|
"where the license is not a selection from the \"License\" Trove classifiers. "
|
|
|
|
|
"See the ``Classifier`` field. Notice that there's a ``licence`` distribution "
|
|
|
|
|
"option which is deprecated but still acts as an alias for ``license``."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:624
|
|
|
|
|
msgid "This field must be a list."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2016-10-30 09:46:26 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:627
|
2018-06-28 13:32:56 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"The valid classifiers are listed on `PyPI <https://pypi.org/classifiers>`_."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:631
|
|
|
|
|
msgid ""
|
|
|
|
|
"To preserve backward compatibility, this field also accepts a string. If you "
|
|
|
|
|
"pass a comma-separated string ``'foo, bar'``, it will be converted to "
|
|
|
|
|
"``['foo', 'bar']``, Otherwise, it will be converted to a list of one string."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
|
|
|
|
#: ../Doc/distutils/setupscript.rst:637
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "'short string'"
|
|
|
|
|
msgstr "'chaîne courte'"
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:637
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "A single line of text, not more than 200 characters."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:641
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "'long string'"
|
|
|
|
|
msgstr "'chaîne longue'"
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:640
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"Multiple lines of plain text in reStructuredText format (see http://docutils."
|
|
|
|
|
"sourceforge.net/)."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:644
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "'list of strings'"
|
|
|
|
|
msgstr "'liste de chaînes'"
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:644
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "See below."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:646
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"Encoding the version information is an art in itself. Python packages "
|
|
|
|
|
"generally adhere to the version format *major.minor[.patch][sub]*. The major "
|
|
|
|
|
"number is 0 for initial, experimental releases of software. It is "
|
|
|
|
|
"incremented for releases that represent major milestones in a package. The "
|
|
|
|
|
"minor number is incremented when important new features are added to the "
|
|
|
|
|
"package. The patch number increments when bug-fix releases are made. "
|
|
|
|
|
"Additional trailing version information is sometimes used to indicate sub-"
|
|
|
|
|
"releases. These are \"a1,a2,...,aN\" (for alpha releases, where "
|
|
|
|
|
"functionality and API may change), \"b1,b2,...,bN\" (for beta releases, "
|
|
|
|
|
"which only fix bugs) and \"pr1,pr2,...,prN\" (for final pre-release release "
|
|
|
|
|
"testing). Some examples:"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:658
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "0.1.0"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:658
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "the first, experimental release of a package"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:661
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "1.0.1a2"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:661
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "the second alpha release of the first patch version of 1.0"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:663
|
|
|
|
|
msgid "``classifiers`` must be specified in a list::"
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-06-28 13:32:56 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:684
|
|
|
|
|
msgid ""
|
2018-11-29 15:13:39 +00:00
|
|
|
|
":class:`~distutils.core.setup` now warns when ``classifiers``, ``keywords`` "
|
|
|
|
|
"or ``platforms`` fields are not specified as a list or a string."
|
2018-06-28 13:32:56 +00:00
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-11-29 15:13:39 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:691
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid "Debugging the setup script"
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-11-29 15:13:39 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:693
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"Sometimes things go wrong, and the setup script doesn't do what the "
|
|
|
|
|
"developer wants."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-11-29 15:13:39 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:696
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"Distutils catches any exceptions when running the setup script, and print a "
|
|
|
|
|
"simple error message before the script is terminated. The motivation for "
|
|
|
|
|
"this behaviour is to not confuse administrators who don't know much about "
|
|
|
|
|
"Python and are trying to install a package. If they get a big long "
|
|
|
|
|
"traceback from deep inside the guts of Distutils, they may think the package "
|
|
|
|
|
"or the Python installation is broken because they don't read all the way "
|
|
|
|
|
"down to the bottom and see that it's a permission problem."
|
|
|
|
|
msgstr ""
|
|
|
|
|
|
2018-11-29 15:13:39 +00:00
|
|
|
|
#: ../Doc/distutils/setupscript.rst:704
|
2016-10-30 09:46:26 +00:00
|
|
|
|
msgid ""
|
|
|
|
|
"On the other hand, this doesn't help the developer to find the cause of the "
|
|
|
|
|
"failure. For this purpose, the :envvar:`DISTUTILS_DEBUG` environment "
|
|
|
|
|
"variable can be set to anything except an empty string, and distutils will "
|
|
|
|
|
"now print detailed information about what it is doing, dump the full "
|
|
|
|
|
"traceback when an exception occurs, and print the whole command line when an "
|
|
|
|
|
"external program (like a C compiler) fails."
|
|
|
|
|
msgstr ""
|
2018-06-28 13:32:56 +00:00
|
|
|
|
|
|
|
|
|
#~ msgid "\\(6)"
|
|
|
|
|
#~ msgstr "\\(6)"
|