Update upstream source from tag 'upstream/3.13.1'
Update to upstream version '3.13.1' with Debian dir 9a0c1f375314d62ebb40f5c8e76fe81b03dfe75e
This commit is contained in:
commit
c26ad67258
@ -8,3 +8,15 @@ driver option and the rest of the option string defines linker arguments using
|
||||
|
||||
For example, ``"LINKER:-z,defs"`` becomes ``-Xlinker -z -Xlinker defs`` for
|
||||
``Clang`` and ``-Wl,-z,defs`` for ``GNU GCC``.
|
||||
|
||||
The ``LINKER:`` prefix can be specified as part of a ``SHELL:`` prefix
|
||||
expression.
|
||||
|
||||
The ``LINKER:`` prefix supports, as alternate syntax, specification of
|
||||
arguments using ``SHELL:`` prefix and space as separator. Previous example
|
||||
becomes ``"LINKER:SHELL:-z defs"``.
|
||||
|
||||
.. note::
|
||||
|
||||
Specifying ``SHELL:`` prefix elsewhere than at the beginning of the
|
||||
``LINKER:`` prefix is not supported.
|
||||
|
@ -21,6 +21,6 @@ the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)`
|
||||
manual for available expressions. See the :manual:`cmake-buildsystem(7)`
|
||||
manual for more on defining buildsystem properties.
|
||||
|
||||
.. include:: LINK_OPTIONS_LINKER.txt
|
||||
|
||||
.. include:: OPTIONS_SHELL.txt
|
||||
|
||||
.. include:: LINK_OPTIONS_LINKER.txt
|
||||
|
@ -37,6 +37,6 @@ with the syntax ``$<...>``. See the :manual:`cmake-generator-expressions(7)`
|
||||
manual for available expressions. See the :manual:`cmake-buildsystem(7)`
|
||||
manual for more on defining buildsystem properties.
|
||||
|
||||
.. include:: LINK_OPTIONS_LINKER.txt
|
||||
|
||||
.. include:: OPTIONS_SHELL.txt
|
||||
|
||||
.. include:: LINK_OPTIONS_LINKER.txt
|
||||
|
@ -1,20 +1,20 @@
|
||||
CPack Deb Generator
|
||||
CPack DEB Generator
|
||||
-------------------
|
||||
|
||||
The built in (binary) CPack Deb generator (Unix only)
|
||||
The built in (binary) CPack DEB generator (Unix only)
|
||||
|
||||
Variables specific to CPack Debian (DEB) generator
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The CPack Deb generator may be used to create Deb package using :module:`CPack`.
|
||||
The CPack Deb generator is a :module:`CPack` generator thus it uses the
|
||||
The CPack DEB generator may be used to create DEB package using :module:`CPack`.
|
||||
The CPack DEB generator is a :module:`CPack` generator thus it uses the
|
||||
``CPACK_XXX`` variables used by :module:`CPack`.
|
||||
|
||||
The CPack Deb generator should work on any Linux host but it will produce
|
||||
The CPack DEB generator should work on any Linux host but it will produce
|
||||
better deb package when Debian specific tools ``dpkg-xxx`` are usable on
|
||||
the build system.
|
||||
|
||||
The CPack Deb generator has specific features which are controlled by the
|
||||
The CPack DEB generator has specific features which are controlled by the
|
||||
specifics :code:`CPACK_DEBIAN_XXX` variables.
|
||||
|
||||
:code:`CPACK_DEBIAN_<COMPONENT>_XXXX` variables may be used in order to have
|
||||
@ -22,13 +22,13 @@ specifics :code:`CPACK_DEBIAN_XXX` variables.
|
||||
the **grouping name** written in upper case. It may be either a component name
|
||||
or a component GROUP name.
|
||||
|
||||
Here are some CPack Deb generator wiki resources that are here for historic
|
||||
Here are some CPack DEB generator wiki resources that are here for historic
|
||||
reasons and are no longer maintained but may still prove useful:
|
||||
|
||||
- https://gitlab.kitware.com/cmake/community/wikis/doc/cpack/Configuration
|
||||
- https://gitlab.kitware.com/cmake/community/wikis/doc/cpack/PackageGenerators#deb-unix-only
|
||||
|
||||
List of CPack Deb generator specific variables:
|
||||
List of CPack DEB generator specific variables:
|
||||
|
||||
.. variable:: CPACK_DEB_COMPONENT_INSTALL
|
||||
|
||||
@ -64,7 +64,7 @@ List of CPack Deb generator specific variables:
|
||||
* Mandatory : YES
|
||||
* Default : ``<CPACK_PACKAGE_FILE_NAME>[-<component>].deb``
|
||||
|
||||
This may be set to ``DEB-DEFAULT`` to allow the CPack Deb generator to generate
|
||||
This may be set to ``DEB-DEFAULT`` to allow the CPack DEB generator to generate
|
||||
package file name by itself in deb format::
|
||||
|
||||
<PackageName>_<VersionNumber>-<DebianRevisionNumber>_<DebianArchitecture>.deb
|
||||
@ -75,7 +75,7 @@ List of CPack Deb generator specific variables:
|
||||
.. note::
|
||||
|
||||
Preferred setting of this variable is ``DEB-DEFAULT`` but for backward
|
||||
compatibility with the CPack Deb generator in CMake prior to version 3.6 this
|
||||
compatibility with the CPack DEB generator in CMake prior to version 3.6 this
|
||||
feature is disabled by default.
|
||||
|
||||
.. note::
|
||||
@ -279,7 +279,7 @@ List of CPack Deb generator specific variables:
|
||||
.. variable:: CPACK_DEBIAN_PACKAGE_DEBUG
|
||||
|
||||
May be set when invoking cpack in order to trace debug information
|
||||
during the CPack Deb generator run.
|
||||
during the CPack DEB generator run.
|
||||
|
||||
* Mandatory : NO
|
||||
* Default : -
|
||||
@ -553,5 +553,5 @@ Reproducible packages
|
||||
|
||||
The environment variable ``SOURCE_DATE_EPOCH`` may be set to a UNIX
|
||||
timestamp, defined as the number of seconds, excluding leap seconds,
|
||||
since 01 Jan 1970 00:00:00 UTC. If set, the CPack Deb generator will
|
||||
since 01 Jan 1970 00:00:00 UTC. If set, the CPack DEB generator will
|
||||
use its value for timestamps in the package.
|
||||
|
@ -1,7 +1,7 @@
|
||||
CPack DMG Generator
|
||||
-------------------
|
||||
CPack DragNDrop Generator
|
||||
-------------------------
|
||||
|
||||
DragNDrop CPack generator (macOS).
|
||||
The DragNDrop CPack generator (macOS) creates a DMG image.
|
||||
|
||||
Variables specific to CPack DragNDrop generator
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -21,11 +21,11 @@ install and package files as required.
|
||||
|
||||
Alternatively CPack can invoke an external packaging software
|
||||
through an optional custom CMake script in
|
||||
:variable:`CPACK_EXT_PACKAGE_SCRIPT` instead.
|
||||
:variable:`CPACK_EXTERNAL_PACKAGE_SCRIPT` instead.
|
||||
|
||||
Staging of installation files may also optionally be
|
||||
taken care of by the generator when enabled through the
|
||||
:variable:`CPACK_EXT_ENABLE_STAGING` variable.
|
||||
:variable:`CPACK_EXTERNAL_ENABLE_STAGING` variable.
|
||||
|
||||
JSON Format
|
||||
^^^^^^^^^^^
|
||||
@ -46,10 +46,10 @@ always of the format ``major.minor``. In other words, it always has exactly two
|
||||
parts, separated by a period.
|
||||
|
||||
You can request one or more specific versions of the output format as described
|
||||
below with :variable:`CPACK_EXT_REQUESTED_VERSIONS`. The output format will
|
||||
below with :variable:`CPACK_EXTERNAL_REQUESTED_VERSIONS`. The output format will
|
||||
have a major version that exactly matches the requested major version, and a
|
||||
minor version that is greater than or equal to the requested minor version. If
|
||||
no version is requested with :variable:`CPACK_EXT_REQUESTED_VERSIONS`, the
|
||||
no version is requested with :variable:`CPACK_EXTERNAL_REQUESTED_VERSIONS`, the
|
||||
latest known major version is used by default. Currently, the only supported
|
||||
format is 1.0, which is described below.
|
||||
|
||||
@ -234,7 +234,7 @@ following fields in the root:
|
||||
Variables specific to CPack External generator
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. variable:: CPACK_EXT_REQUESTED_VERSIONS
|
||||
.. variable:: CPACK_EXTERNAL_REQUESTED_VERSIONS
|
||||
|
||||
This variable is used to request a specific version of the CPack External
|
||||
generator. It is a list of ``major.minor`` values, separated by semicolons.
|
||||
@ -248,7 +248,7 @@ Variables specific to CPack External generator
|
||||
The generator knows how to generate the version if it has a versioned
|
||||
generator whose major version exactly matches the requested major version,
|
||||
and whose minor version is greater than or equal to the requested minor
|
||||
version. For example, if ``CPACK_EXT_REQUESTED_VERSIONS`` contains 1.0, and
|
||||
version. For example, if ``CPACK_EXTERNAL_REQUESTED_VERSIONS`` contains 1.0, and
|
||||
the CPack External generator knows how to generate 1.1, it will generate 1.1.
|
||||
If the generator doesn't know how to generate a version in the list, it skips
|
||||
the version and looks at the next one. If it doesn't know how to generate any
|
||||
@ -257,11 +257,11 @@ Variables specific to CPack External generator
|
||||
If this variable is not set, or is empty, the CPack External generator will
|
||||
generate the highest major and minor version that it knows how to generate.
|
||||
|
||||
If an invalid version is encountered in ``CPACK_EXT_REQUESTED_VERSIONS`` (one
|
||||
If an invalid version is encountered in ``CPACK_EXTERNAL_REQUESTED_VERSIONS`` (one
|
||||
that doesn't match ``major.minor``, where ``major`` and ``minor`` are
|
||||
integers), it is ignored.
|
||||
|
||||
.. variable:: CPACK_EXT_ENABLE_STAGING
|
||||
.. variable:: CPACK_EXTERNAL_ENABLE_STAGING
|
||||
|
||||
This variable can be set to true to enable optional installation
|
||||
into a temporary staging area which can then be picked up
|
||||
@ -274,7 +274,7 @@ Variables specific to CPack External generator
|
||||
It also contains the staging area ``CPACK_TEMPORARY_DIRECTORY``
|
||||
into which CPack performs the installation when staging is enabled.
|
||||
|
||||
.. variable:: CPACK_EXT_PACKAGE_SCRIPT
|
||||
.. variable:: CPACK_EXTERNAL_PACKAGE_SCRIPT
|
||||
|
||||
This variable can optionally specify the full path to
|
||||
a CMake script file to be run as part of the CPack invocation.
|
||||
|
@ -13,7 +13,7 @@ depending on the installed package-management tools -- using :module:`CPack`.
|
||||
The CPack FreeBSD generator is a :module:`CPack` generator and uses the
|
||||
``CPACK_XXX`` variables used by :module:`CPack`. It tries to re-use packaging
|
||||
information that may already be specified for Debian packages for the
|
||||
:cpack_gen:`CPack Deb Generator`. It also tries to re-use RPM packaging
|
||||
:cpack_gen:`CPack DEB Generator`. It also tries to re-use RPM packaging
|
||||
information when Debian does not specify.
|
||||
|
||||
The CPack FreeBSD generator should work on any host with libpkg installed. The
|
||||
|
@ -1,9 +1,9 @@
|
||||
CPack WiX Generator
|
||||
CPack WIX Generator
|
||||
-------------------
|
||||
|
||||
CPack WiX generator specific options
|
||||
CPack WIX generator specific options
|
||||
|
||||
Variables specific to CPack WiX generator
|
||||
Variables specific to CPack WIX generator
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The following variables are specific to the installers built on
|
||||
@ -50,11 +50,11 @@ Windows using WiX.
|
||||
If CPACK_RESOURCE_FILE_LICENSE has an .rtf extension it is used as-is.
|
||||
|
||||
If CPACK_RESOURCE_FILE_LICENSE has an .txt extension it is implicitly
|
||||
converted to RTF by the WiX Generator.
|
||||
converted to RTF by the WIX Generator.
|
||||
The expected encoding of the .txt file is UTF-8.
|
||||
|
||||
With CPACK_WIX_LICENSE_RTF you can override the license file used by the
|
||||
WiX Generator in case CPACK_RESOURCE_FILE_LICENSE is in an unsupported
|
||||
WIX Generator in case CPACK_RESOURCE_FILE_LICENSE is in an unsupported
|
||||
format or the .txt -> .rtf conversion does not work as expected.
|
||||
|
||||
.. variable:: CPACK_WIX_PRODUCT_ICON
|
||||
@ -122,10 +122,10 @@ Windows using WiX.
|
||||
generated WiX sources
|
||||
|
||||
This optional variable can be used to specify an XML file that the
|
||||
WiX generator will use to inject fragments into its generated
|
||||
WIX generator will use to inject fragments into its generated
|
||||
source files.
|
||||
|
||||
Patch files understood by the CPack WiX generator
|
||||
Patch files understood by the CPack WIX generator
|
||||
roughly follow this RELAX NG compact schema:
|
||||
|
||||
.. code-block:: none
|
||||
@ -155,7 +155,7 @@ Windows using WiX.
|
||||
|
||||
The following example illustrates how this works.
|
||||
|
||||
Given that the WiX generator creates the following XML element:
|
||||
Given that the WIX generator creates the following XML element:
|
||||
|
||||
.. code-block:: xml
|
||||
|
||||
|
@ -29,9 +29,10 @@ Options
|
||||
package(s) in that generator's format according to the details provided in
|
||||
the ``CPackConfig.cmake`` configuration file. A generator is responsible for
|
||||
generating the required inputs for a particular package system and invoking
|
||||
that system's package creation tools. Possible generator names are specified
|
||||
in the :manual:`Generators <cmake-generators(7)>` section of the manual and
|
||||
that system's package creation tools. All supported generators are specified
|
||||
in the :manual:`Generators <cpack-generators(7)>` section of the manual and
|
||||
the ``--help`` option lists the generators supported for the target platform.
|
||||
|
||||
If this option is not given, the :variable:`CPACK_GENERATOR` variable
|
||||
determines the default set of generators that will be used.
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
CPackDMG
|
||||
--------
|
||||
|
||||
The documentation for the CPack DMG generator has moved here: :cpack_gen:`CPack DMG Generator`
|
||||
The documentation for the CPack DragNDrop generator has moved here: :cpack_gen:`CPack DragNDrop Generator`
|
||||
|
@ -1,4 +1,4 @@
|
||||
CPackDeb
|
||||
--------
|
||||
|
||||
The documentation for the CPack Deb generator has moved here: :cpack_gen:`CPack Deb Generator`
|
||||
The documentation for the CPack DEB generator has moved here: :cpack_gen:`CPack DEB Generator`
|
||||
|
@ -1,4 +1,4 @@
|
||||
CPackWIX
|
||||
--------
|
||||
|
||||
The documentation for the CPack WiX generator has moved here: :cpack_gen:`CPack WiX Generator`
|
||||
The documentation for the CPack WIX generator has moved here: :cpack_gen:`CPack WIX Generator`
|
||||
|
@ -294,11 +294,11 @@ CPack
|
||||
* :manual:`cpack(1)` gained ``7Z`` and ``TXZ`` generators supporting
|
||||
lzma-compressed archives.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned a new
|
||||
* The :cpack_gen:`CPack DEB Generator` learned a new
|
||||
:variable:`CPACK_DEBIAN_COMPRESSION_TYPE` variable to set the
|
||||
tarball compression type.
|
||||
|
||||
* The :manual:`cpack(1)` ``WiX`` generator learned to support
|
||||
* The :cpack_gen:`CPack WIX Generator` learned to support
|
||||
a :prop_inst:`CPACK_WIX_ACL` installed file property to
|
||||
specify an Access Control List.
|
||||
|
||||
|
@ -186,15 +186,15 @@ CPack
|
||||
|
||||
* A :cpack_gen:`CPack FreeBSD Generator` was added for FreeBSD ``pkg(8)``.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` was enabled on Windows. While not
|
||||
* The :cpack_gen:`CPack DEB Generator` was enabled on Windows. While not
|
||||
fully featured (due to the lack of external UNIX tools) this will allow
|
||||
building basic cross-platform Debian packages.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned to set package release
|
||||
* The :cpack_gen:`CPack DEB Generator` learned to set package release
|
||||
version in ``Version`` info property.
|
||||
See the :variable:`CPACK_DEBIAN_PACKAGE_RELEASE` variable.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned more strict package
|
||||
* The :cpack_gen:`CPack DEB Generator` learned more strict package
|
||||
version checking that complies with Debian rules.
|
||||
|
||||
* The :module:`CPackIFW` module :command:`cpack_ifw_configure_component` and
|
||||
@ -211,7 +211,7 @@ CPack
|
||||
repack dependent components. This feature is only available when
|
||||
using QtIFW 3.1 or later.
|
||||
|
||||
* The :cpack_gen:`CPack RPM Generator` and :cpack_gen:`CPack Deb Generator`
|
||||
* The :cpack_gen:`CPack RPM Generator` and :cpack_gen:`CPack DEB Generator`
|
||||
learned to set the package epoch version.
|
||||
See :variable:`CPACK_RPM_PACKAGE_EPOCH` and
|
||||
:variable:`CPACK_DEBIAN_PACKAGE_EPOCH` variables.
|
||||
|
@ -138,6 +138,9 @@ Properties
|
||||
Modules
|
||||
-------
|
||||
|
||||
* The :module:`FindBoost` module gained a ``Boost_ARCHITECTURE`` option
|
||||
to specify a Boost architecture-specific library filename fragment.
|
||||
|
||||
* The :module:`FindCURL` module learned to find debug and release variants
|
||||
separately.
|
||||
|
||||
@ -178,11 +181,11 @@ CTest
|
||||
CPack
|
||||
-----
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned to split debug symbols into
|
||||
* The :cpack_gen:`CPack DEB Generator` learned to split debug symbols into
|
||||
a corresponding .ddeb package when ``CPACK_DEBIAN_DEBUGINFO_PACKAGE`` is
|
||||
set.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned to honor the ``SOURCE_DATE_EPOCH``
|
||||
* The :cpack_gen:`CPack DEB Generator` learned to honor the ``SOURCE_DATE_EPOCH``
|
||||
environment variable when packaging files. This is useful for generating
|
||||
reproducible packages.
|
||||
|
||||
|
@ -172,11 +172,11 @@ CPack
|
||||
* The :cpack_gen:`CPack IFW Generator` learned to support
|
||||
Qt Framework Installer 2.0 tools.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned a new
|
||||
* The :cpack_gen:`CPack DEB Generator` learned a new
|
||||
:variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_SHLIBDEPS`
|
||||
variable to specify per-component use of ``dpkg-shlibdeps``.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned a new
|
||||
* The :cpack_gen:`CPack DEB Generator` learned a new
|
||||
:variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_DEPENDS`
|
||||
option to specify per-component dependencies.
|
||||
|
||||
|
@ -197,7 +197,7 @@ CTest
|
||||
CPack
|
||||
-----
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned to set package dependencies
|
||||
* The :cpack_gen:`CPack DEB Generator` learned to set package dependencies
|
||||
per component. See variables:
|
||||
|
||||
* :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_BREAKS`
|
||||
@ -249,10 +249,10 @@ Other Changes
|
||||
:module:`CheckSymbolExists`, and :module:`FindThreads` modules learned to
|
||||
work in environments where only CXX is enabled.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` now correctly excludes symlinks
|
||||
* The :cpack_gen:`CPack DEB Generator` now correctly excludes symlinks
|
||||
during package checksum calculation.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` no longer uses fakeroot and
|
||||
* The :cpack_gen:`CPack DEB Generator` no longer uses fakeroot and
|
||||
system tar program for packaging.
|
||||
|
||||
* The :module:`CPack` module no longer mangles settings with CMake-special
|
||||
|
@ -120,23 +120,23 @@ Platforms
|
||||
CPack
|
||||
-----
|
||||
|
||||
* The :cpack_gen:`CPack DMG Generator` learned new variable to
|
||||
* The :cpack_gen:`CPack DragNDrop Generator` learned new variable to
|
||||
specify AppleScript file run to customize appearance of ``DragNDrop``
|
||||
installer folder, including background image setting using supplied
|
||||
PNG or multi-resolution TIFF file.
|
||||
See the :variable:`CPACK_DMG_DS_STORE_SETUP_SCRIPT` and
|
||||
:variable:`CPACK_DMG_BACKGROUND_IMAGE` variables.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned to set the optional config
|
||||
* The :cpack_gen:`CPack DEB Generator` learned to set the optional config
|
||||
file ``Source`` field using a monolithic or per-component variable.
|
||||
See :variable:`CPACK_DEBIAN_PACKAGE_SOURCE`.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned to set Package, Section
|
||||
* The :cpack_gen:`CPack DEB Generator` learned to set Package, Section
|
||||
and Priority control fields per-component.
|
||||
See variables :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_SECTION` and
|
||||
:variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_PRIORITY`.
|
||||
|
||||
* The :cpack_gen:`CPack DMG Generator` learned to add
|
||||
* The :cpack_gen:`CPack DragNDrop Generator` learned to add
|
||||
multi-lingual SLAs to a DMG which is presented to the user when they try to
|
||||
mount the DMG. See the :variable:`CPACK_DMG_SLA_LANGUAGES` and
|
||||
:variable:`CPACK_DMG_SLA_DIR` variables for details.
|
||||
|
@ -165,24 +165,24 @@ CTest
|
||||
CPack
|
||||
-----
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned how to handle ``$ORIGIN``
|
||||
* The :cpack_gen:`CPack DEB Generator` learned how to handle ``$ORIGIN``
|
||||
in ``CMAKE_INSTALL_RPATH`` when :variable:`CPACK_DEBIAN_PACKAGE_SHLIBDEPS`
|
||||
is used for dependency auto detection.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned how to generate
|
||||
* The :cpack_gen:`CPack DEB Generator` learned how to generate
|
||||
``DEBIAN/shlibs`` contorl file when package contains shared libraries.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned how to generate
|
||||
* The :cpack_gen:`CPack DEB Generator` learned how to generate
|
||||
``DEBIAN/postinst`` and ``DEBIAN/postrm`` files if the package installs
|
||||
libraries in ldconfig-controlled locations (e.g. ``/lib/``, ``/usr/lib/``).
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned how to generate dependencies
|
||||
* The :cpack_gen:`CPack DEB Generator` learned how to generate dependencies
|
||||
between Debian packages if multi-component setup is used and
|
||||
:variable:`CPACK_COMPONENT_<compName>_DEPENDS` variables are set.
|
||||
For backward compatibility this feature is disabled by default.
|
||||
See :variable:`CPACK_DEBIAN_ENABLE_COMPONENT_DEPENDS`.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned how to set custom package
|
||||
* The :cpack_gen:`CPack DEB Generator` learned how to set custom package
|
||||
file names including how to generate properly-named Debian packages::
|
||||
|
||||
<PackageName>_<VersionNumber>-<DebianRevisionNumber>_<DebianArchitecture>.deb
|
||||
@ -191,17 +191,17 @@ CPack
|
||||
:variable:`CPACK_DEBIAN_FILE_NAME` and
|
||||
:variable:`CPACK_DEBIAN_<COMPONENT>_FILE_NAME`.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned how to set the package
|
||||
* The :cpack_gen:`CPack DEB Generator` learned how to set the package
|
||||
release number (``DebianRevisionNumber`` in package file name when
|
||||
used in combination with ``DEB-DEFAULT`` value set by
|
||||
:variable:`CPACK_DEBIAN_FILE_NAME`).
|
||||
See :variable:`CPACK_DEBIAN_PACKAGE_RELEASE`.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned how to set the package
|
||||
* The :cpack_gen:`CPack DEB Generator` learned how to set the package
|
||||
architecture per-component.
|
||||
See :variable:`CPACK_DEBIAN_<COMPONENT>_PACKAGE_ARCHITECTURE`.
|
||||
|
||||
* The :cpack_gen:`CPack DMG Generator` learned a new option to skip the
|
||||
* The :cpack_gen:`CPack DragNDrop Generator` learned a new option to skip the
|
||||
``/Applications`` symlink.
|
||||
See the :variable:`CPACK_DMG_DISABLE_APPLICATIONS_SYMLINK` variable.
|
||||
|
||||
|
@ -226,7 +226,7 @@ CPack
|
||||
* CPack gained a new :variable:`CPACK_PACKAGE_CHECKSUM` variable to
|
||||
enable generation of a checksum file for each package file.
|
||||
|
||||
* The :cpack_gen:`CPack Deb Generator` learned to support long file names
|
||||
* The :cpack_gen:`CPack DEB Generator` learned to support long file names
|
||||
when archive format is set to GNU tar.
|
||||
See :variable:`CPACK_DEBIAN_ARCHIVE_TYPE`
|
||||
|
||||
@ -252,19 +252,19 @@ CPack
|
||||
:variable:`CPACK_NSIS_<compName>_INSTALL_DIRECTORY`.
|
||||
This can be used to set component specific installation directories.
|
||||
|
||||
* The :cpack_gen:`CPack WiX Generator` now supports
|
||||
* The :cpack_gen:`CPack WIX Generator` now supports
|
||||
:variable:`CPACK_WIX_SKIP_PROGRAM_FOLDER` to allow specification
|
||||
of a custom absolute installation prefix outside
|
||||
of the ProgramFiles folders.
|
||||
|
||||
* The :cpack_gen:`CPack WiX Generator` now supports
|
||||
* The :cpack_gen:`CPack WIX Generator` now supports
|
||||
:variable:`CPACK_COMPONENT_<compName>_DISABLED`.
|
||||
This can be used to deselect a component from being installed by default.
|
||||
|
||||
* The :cpack_gen:`CPack WiX Generator` now supports
|
||||
* The :cpack_gen:`CPack WIX Generator` now supports
|
||||
:variable:`CPACK_WIX_PATCH_FILE` fragments for Feature elements.
|
||||
|
||||
* The :cpack_gen:`CPack WiX Generator` now supports
|
||||
* The :cpack_gen:`CPack WIX Generator` now supports
|
||||
:variable:`CPACK_WIX_ROOT_FEATURE_TITLE` and
|
||||
:variable:`CPACK_WIX_ROOT_FEATURE_DESCRIPTION` to allow the specification
|
||||
of a custom title and description for the root feature element.
|
||||
|
@ -232,12 +232,12 @@ CPack
|
||||
* The :cpack_gen:`CPack RPM Generator` learned to modify the ``debuginfo``
|
||||
package name. See the :variable:`CPACK_RPM_DEBUGINFO_FILE_NAME` variable.
|
||||
|
||||
* The :cpack_gen:`CPack WiX Generator` patching system now has the
|
||||
* The :cpack_gen:`CPack WIX Generator` patching system now has the
|
||||
ability to set additional attributes. This can be done by specifying
|
||||
attributes with the ``CPackWiXFragment`` XML tag after the ``Id`` attribute.
|
||||
See the :variable:`CPACK_WIX_PATCH_FILE` variable.
|
||||
|
||||
* The :cpack_gen:`CPack WiX Generator` implemented a new
|
||||
* The :cpack_gen:`CPack WIX Generator` implemented a new
|
||||
:variable:`CPACK_WIX_ROOT_FOLDER_ID` variable which allows
|
||||
using a custom root folder ID instead of the default
|
||||
``ProgramFilesFolder`` / ``ProgramFiles64Folder``.
|
||||
|
@ -17,7 +17,7 @@ For example, for ``Clang`` we have:
|
||||
|
||||
set (CMAKE_C_LINKER_WRAPPER_FLAG "-Xlinker" " ")
|
||||
|
||||
Specifying ``"LINKER:-z defs"`` will be transformed in
|
||||
Specifying ``"LINKER:-z,defs"`` will be transformed in
|
||||
``-Xlinker -z -Xlinker defs``.
|
||||
|
||||
For ``GNU GCC``:
|
||||
@ -27,7 +27,7 @@ For ``GNU GCC``:
|
||||
set (CMAKE_C_LINKER_WRAPPER_FLAG "-Wl,")
|
||||
set (CMAKE_C_LINKER_WRAPPER_FLAG_SEP ",")
|
||||
|
||||
Specifying ``"LINKER:-z defs"`` will be transformed in ``-Wl,-z,defs``.
|
||||
Specifying ``"LINKER:-z,defs"`` will be transformed in ``-Wl,-z,defs``.
|
||||
|
||||
And for ``SunPro``:
|
||||
|
||||
@ -36,4 +36,4 @@ And for ``SunPro``:
|
||||
set (CMAKE_C_LINKER_WRAPPER_FLAG "-Qoption" "ld" " ")
|
||||
set (CMAKE_C_LINKER_WRAPPER_FLAG_SEP ",")
|
||||
|
||||
Specifying ``"LINKER:-z defs"`` will be transformed in ``-Qoption ld -z,defs``.
|
||||
Specifying ``"LINKER:-z,defs"`` will be transformed in ``-Qoption ld -z,defs``.
|
||||
|
@ -58,6 +58,14 @@ if(NOT CMAKE_ASM${ASM_DIALECT}_COMPILER_ID)
|
||||
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_FLAGS_GNU "--version")
|
||||
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_REGEX_GNU "(GNU assembler)|(GCC)|(Free Software Foundation)")
|
||||
|
||||
list(APPEND CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDORS Clang )
|
||||
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_FLAGS_Clang "--version")
|
||||
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_REGEX_Clang "(clang version)")
|
||||
|
||||
list(APPEND CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDORS AppleClang )
|
||||
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_FLAGS_AppleClang "--version")
|
||||
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_REGEX_AppleClang "(Apple LLVM version)")
|
||||
|
||||
list(APPEND CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDORS HP )
|
||||
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_FLAGS_HP "-V")
|
||||
set(CMAKE_ASM${ASM_DIALECT}_COMPILER_ID_VENDOR_REGEX_HP "HP C")
|
||||
|
@ -2,7 +2,7 @@ include(Compiler/Clang)
|
||||
__compiler_clang(Fortran)
|
||||
|
||||
set(CMAKE_Fortran_PREPROCESS_SOURCE
|
||||
"<CMAKE_Fortran_COMPILER> -cpp <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> -o <PREPROCESSED_SOURCE>")
|
||||
"<CMAKE_Fortran_COMPILER> -cpp <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>")
|
||||
|
||||
set(CMAKE_Fortran_FORMAT_FIXED_FLAG "-ffixed-form")
|
||||
set(CMAKE_Fortran_FORMAT_FREE_FLAG "-ffree-form")
|
||||
|
@ -11,7 +11,7 @@ macro(__compiler_qcc lang)
|
||||
set(CMAKE_${lang}_COMPILE_OPTIONS_TARGET "-V")
|
||||
|
||||
set(CMAKE_INCLUDE_SYSTEM_FLAG_${lang} "-Wp,-isystem,")
|
||||
set(CMAKE_DEPFILE_FLAGS_${lang} "-Wc,-MD,<DEPFILE>,-MT,<OBJECT>,-MF,<DEPFILE>")
|
||||
set(CMAKE_DEPFILE_FLAGS_${lang} "-Wp,-MD,<DEPFILE> -Wp,-MT,<OBJECT> -Wp,-MF,<DEPFILE>")
|
||||
|
||||
set(CMAKE_${lang}_LINKER_WRAPPER_FLAG "-Wl,")
|
||||
set(CMAKE_${lang}_LINKER_WRAPPER_FLAG_SEP ",")
|
||||
|
@ -93,6 +93,7 @@ if(BLA_PREFER_PKGCONFIG)
|
||||
find_package(PkgConfig)
|
||||
pkg_check_modules(PKGC_BLAS blas)
|
||||
if(PKGC_BLAS_FOUND)
|
||||
set(BLAS_FOUND ${PKGC_BLAS_FOUND})
|
||||
set(BLAS_LIBRARIES "${PKGC_BLAS_LINK_LIBRARIES}")
|
||||
return()
|
||||
endif()
|
||||
@ -222,7 +223,7 @@ if (BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All")
|
||||
set(BLAS_SEARCH_LIBS "")
|
||||
|
||||
if(BLA_F95)
|
||||
set(BLAS_mkl_SEARCH_SYMBOL SGEMM)
|
||||
set(BLAS_mkl_SEARCH_SYMBOL sgemm_f95)
|
||||
set(_LIBRARIES BLAS95_LIBRARIES)
|
||||
if (WIN32)
|
||||
if (BLA_STATIC)
|
||||
|
@ -147,6 +147,9 @@
|
||||
# used if multiple compatible suffixes should
|
||||
# be tested for, in decreasing order of
|
||||
# preference.
|
||||
# Boost_ARCHITECTURE - Set to the architecture-specific library suffix
|
||||
# (e.g. "-x64"). Default is auto-computed for the
|
||||
# C++ compiler in use.
|
||||
# Boost_THREADAPI - Suffix for "thread" component library name,
|
||||
# such as "pthread" or "win32". Names with
|
||||
# and without this suffix will both be tried.
|
||||
@ -406,15 +409,18 @@ endmacro()
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
|
||||
#
|
||||
# Runs compiler with "-dumpversion" and parses major/minor
|
||||
# version with a regex.
|
||||
#
|
||||
function(_Boost_COMPILER_DUMPVERSION _OUTPUT_VERSION)
|
||||
string(REGEX REPLACE "([0-9]+)\\.([0-9]+)(\\.[0-9]+)?" "\\1\\2"
|
||||
_boost_COMPILER_VERSION ${CMAKE_CXX_COMPILER_VERSION})
|
||||
# Convert CMAKE_CXX_COMPILER_VERSION to boost compiler suffix version.
|
||||
function(_Boost_COMPILER_DUMPVERSION _OUTPUT_VERSION _OUTPUT_VERSION_MAJOR _OUTPUT_VERSION_MINOR)
|
||||
string(REGEX REPLACE "([0-9]+)\\.([0-9]+)(\\.[0-9]+)?" "\\1"
|
||||
_boost_COMPILER_VERSION_MAJOR "${CMAKE_CXX_COMPILER_VERSION}")
|
||||
string(REGEX REPLACE "([0-9]+)\\.([0-9]+)(\\.[0-9]+)?" "\\2"
|
||||
_boost_COMPILER_VERSION_MINOR "${CMAKE_CXX_COMPILER_VERSION}")
|
||||
|
||||
set(_boost_COMPILER_VERSION "${_boost_COMPILER_VERSION_MAJOR}${_boost_COMPILER_VERSION_MINOR}")
|
||||
|
||||
set(${_OUTPUT_VERSION} ${_boost_COMPILER_VERSION} PARENT_SCOPE)
|
||||
set(${_OUTPUT_VERSION_MAJOR} ${_boost_COMPILER_VERSION_MAJOR} PARENT_SCOPE)
|
||||
set(${_OUTPUT_VERSION_MINOR} ${_boost_COMPILER_VERSION_MINOR} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
#
|
||||
@ -479,15 +485,25 @@ function(_Boost_GUESS_COMPILER_PREFIX _ret)
|
||||
if(${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION} VERSION_LESS 1.34)
|
||||
set(_boost_COMPILER "-mgw") # no GCC version encoding prior to 1.34
|
||||
else()
|
||||
_Boost_COMPILER_DUMPVERSION(_boost_COMPILER_VERSION)
|
||||
_Boost_COMPILER_DUMPVERSION(_boost_COMPILER_VERSION _boost_COMPILER_VERSION_MAJOR _boost_COMPILER_VERSION_MINOR)
|
||||
set(_boost_COMPILER "-mgw${_boost_COMPILER_VERSION}")
|
||||
endif()
|
||||
elseif (UNIX)
|
||||
if (CMAKE_COMPILER_IS_GNUCXX)
|
||||
_Boost_COMPILER_DUMPVERSION(_boost_COMPILER_VERSION _boost_COMPILER_VERSION_MAJOR _boost_COMPILER_VERSION_MINOR)
|
||||
if(NOT Boost_VERSION VERSION_LESS 106900)
|
||||
# From GCC 5 and clang 4, versioning changes and minor becomes patch.
|
||||
# For those compilers, patch is exclude from compiler tag in Boost 1.69+ library naming.
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND _boost_COMPILER_VERSION_MAJOR VERSION_GREATER 4)
|
||||
set(_boost_COMPILER_VERSION "${_boost_COMPILER_VERSION_MAJOR}")
|
||||
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND _boost_COMPILER_VERSION_MAJOR VERSION_GREATER 3)
|
||||
set(_boost_COMPILER_VERSION "${_boost_COMPILER_VERSION_MAJOR}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
||||
if(${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION} VERSION_LESS 1.34)
|
||||
set(_boost_COMPILER "-gcc") # no GCC version encoding prior to 1.34
|
||||
else()
|
||||
_Boost_COMPILER_DUMPVERSION(_boost_COMPILER_VERSION)
|
||||
# Determine which version of GCC we have.
|
||||
if(APPLE)
|
||||
if(Boost_MINOR_VERSION)
|
||||
@ -509,7 +525,10 @@ function(_Boost_GUESS_COMPILER_PREFIX _ret)
|
||||
set(_boost_COMPILER "-gcc${_boost_COMPILER_VERSION}")
|
||||
endif()
|
||||
endif()
|
||||
endif ()
|
||||
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
||||
# TODO: Find out any Boost version constraints vs clang support.
|
||||
set(_boost_COMPILER "-clang${_boost_COMPILER_VERSION}")
|
||||
endif()
|
||||
else()
|
||||
# TODO at least Boost_DEBUG here?
|
||||
set(_boost_COMPILER "")
|
||||
@ -850,9 +869,8 @@ function(_Boost_COMPONENT_DEPENDENCIES component _ret)
|
||||
set(_Boost_LOG_DEPENDENCIES date_time log_setup filesystem thread regex chrono atomic)
|
||||
set(_Boost_MATH_DEPENDENCIES math_c99 math_c99f math_c99l math_tr1 math_tr1f math_tr1l atomic)
|
||||
set(_Boost_MPI_DEPENDENCIES serialization)
|
||||
set(_Boost_MPI_PYTHON_DEPENDENCIES python mpi serialization)
|
||||
set(_Boost_NUMPY_DEPENDENCIES python)
|
||||
set(_Boost_SYNC_DEPENDENCIES chrono atomic)
|
||||
set(_Boost_MPI_PYTHON_DEPENDENCIES python${component_python_version} mpi serialization)
|
||||
set(_Boost_NUMPY_DEPENDENCIES python${component_python_version})
|
||||
set(_Boost_THREAD_DEPENDENCIES chrono date_time atomic)
|
||||
set(_Boost_TIMER_DEPENDENCIES chrono system)
|
||||
set(_Boost_WAVE_DEPENDENCIES filesystem serialization thread chrono date_time atomic)
|
||||
@ -929,6 +947,12 @@ function(_Boost_COMPONENT_HEADERS component _hdrs)
|
||||
set(_Boost_REGEX_HEADERS "boost/regex.hpp")
|
||||
set(_Boost_SERIALIZATION_HEADERS "boost/serialization/serialization.hpp")
|
||||
set(_Boost_SIGNALS_HEADERS "boost/signals.hpp")
|
||||
set(_Boost_STACKTRACE_ADDR2LINE_HEADERS "boost/stacktrace.hpp")
|
||||
set(_Boost_STACKTRACE_BACKTRACE_HEADERS "boost/stacktrace.hpp")
|
||||
set(_Boost_STACKTRACE_BASIC_HEADERS "boost/stacktrace.hpp")
|
||||
set(_Boost_STACKTRACE_NOOP_HEADERS "boost/stacktrace.hpp")
|
||||
set(_Boost_STACKTRACE_WINDBG_CACHED_HEADERS "boost/stacktrace.hpp")
|
||||
set(_Boost_STACKTRACE_WINDBG_HEADERS "boost/stacktrace.hpp")
|
||||
set(_Boost_SYSTEM_HEADERS "boost/system/config.hpp")
|
||||
set(_Boost_TEST_EXEC_MONITOR_HEADERS "boost/test/test_exec_monitor.hpp")
|
||||
set(_Boost_THREAD_HEADERS "boost/thread.hpp")
|
||||
@ -1100,6 +1124,7 @@ else()
|
||||
# _Boost_COMPONENT_HEADERS. See the instructions at the top of
|
||||
# _Boost_COMPONENT_DEPENDENCIES.
|
||||
set(_Boost_KNOWN_VERSIONS ${Boost_ADDITIONAL_VERSIONS}
|
||||
"1.69.0" "1.69"
|
||||
"1.68.0" "1.68" "1.67.0" "1.67" "1.66.0" "1.66" "1.65.1" "1.65.0" "1.65"
|
||||
"1.64.0" "1.64" "1.63.0" "1.63" "1.62.0" "1.62" "1.61.0" "1.61" "1.60.0" "1.60"
|
||||
"1.59.0" "1.59" "1.58.0" "1.58" "1.57.0" "1.57" "1.56.0" "1.56" "1.55.0" "1.55"
|
||||
@ -1493,27 +1518,35 @@ endif()
|
||||
# -x86 Architecture and address model tag
|
||||
# First character is the architecture, then word-size, either 32 or 64
|
||||
# Only used in 'versioned' layout, added in Boost 1.66.0
|
||||
set(_boost_ARCHITECTURE_TAG "")
|
||||
# {CMAKE_CXX_COMPILER_ARCHITECTURE_ID} is not currently set for all compilers
|
||||
if(NOT "x${CMAKE_CXX_COMPILER_ARCHITECTURE_ID}" STREQUAL "x" AND NOT Boost_VERSION VERSION_LESS 106600)
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "-")
|
||||
# This needs to be kept in-sync with the section of CMakePlatformId.h.in
|
||||
# inside 'defined(_WIN32) && defined(_MSC_VER)'
|
||||
if(CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "IA64")
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "i")
|
||||
elseif(CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "X86"
|
||||
OR CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "x64")
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "x")
|
||||
elseif(CMAKE_CXX_COMPILER_ARCHITECTURE_ID MATCHES "^ARM")
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "a")
|
||||
elseif(CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "MIPS")
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "m")
|
||||
if(DEFINED Boost_ARCHITECTURE)
|
||||
set(_boost_ARCHITECTURE_TAG "${Boost_ARCHITECTURE}")
|
||||
if(Boost_DEBUG)
|
||||
message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
|
||||
"using user-specified Boost_ARCHITECTURE = ${_boost_ARCHITECTURE_TAG}")
|
||||
endif()
|
||||
else()
|
||||
set(_boost_ARCHITECTURE_TAG "")
|
||||
# {CMAKE_CXX_COMPILER_ARCHITECTURE_ID} is not currently set for all compilers
|
||||
if(NOT "x${CMAKE_CXX_COMPILER_ARCHITECTURE_ID}" STREQUAL "x" AND NOT Boost_VERSION VERSION_LESS 106600)
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "-")
|
||||
# This needs to be kept in-sync with the section of CMakePlatformId.h.in
|
||||
# inside 'defined(_WIN32) && defined(_MSC_VER)'
|
||||
if(CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "IA64")
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "i")
|
||||
elseif(CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "X86"
|
||||
OR CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "x64")
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "x")
|
||||
elseif(CMAKE_CXX_COMPILER_ARCHITECTURE_ID MATCHES "^ARM")
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "a")
|
||||
elseif(CMAKE_CXX_COMPILER_ARCHITECTURE_ID STREQUAL "MIPS")
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "m")
|
||||
endif()
|
||||
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "64")
|
||||
else()
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "32")
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "64")
|
||||
else()
|
||||
string(APPEND _boost_ARCHITECTURE_TAG "32")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -2057,6 +2090,9 @@ if(Boost_FOUND)
|
||||
message (STATUS " ${COMPONENT}")
|
||||
endif()
|
||||
list(APPEND Boost_LIBRARIES ${Boost_${UPPERCOMPONENT}_LIBRARY})
|
||||
if(COMPONENT STREQUAL "thread")
|
||||
list(APPEND Boost_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
else()
|
||||
|
@ -287,7 +287,7 @@ if (BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All")
|
||||
set(LAPACK_SEARCH_LIBS "")
|
||||
|
||||
if (BLA_F95)
|
||||
set(LAPACK_mkl_SEARCH_SYMBOL "CHEEV")
|
||||
set(LAPACK_mkl_SEARCH_SYMBOL "cheev_f95")
|
||||
set(_LIBRARIES LAPACK95_LIBRARIES)
|
||||
set(_BLAS_LIBRARIES ${BLAS95_LIBRARIES})
|
||||
|
||||
@ -298,7 +298,7 @@ if (BLA_VENDOR MATCHES "Intel" OR BLA_VENDOR STREQUAL "All")
|
||||
list(APPEND LAPACK_SEARCH_LIBS
|
||||
"mkl_intel_c")
|
||||
list(APPEND LAPACK_SEARCH_LIBS
|
||||
"mkl_intel_${BLAS_mkl_ILP_MODE}")
|
||||
"mkl_lapack95_${BLAS_mkl_ILP_MODE}")
|
||||
else()
|
||||
set(LAPACK_mkl_SEARCH_SYMBOL "cheev")
|
||||
set(_LIBRARIES LAPACK_LIBRARIES)
|
||||
|
@ -1131,7 +1131,12 @@ macro(_MPI_create_imported_target LANG)
|
||||
add_library(MPI::MPI_${LANG} INTERFACE IMPORTED)
|
||||
endif()
|
||||
|
||||
set_property(TARGET MPI::MPI_${LANG} PROPERTY INTERFACE_COMPILE_OPTIONS "${MPI_${LANG}_COMPILE_OPTIONS}")
|
||||
# When this is consumed for compiling CUDA, use '-Xcompiler' to wrap '-pthread'.
|
||||
string(REPLACE "-pthread" "$<$<COMPILE_LANGUAGE:CUDA>:SHELL:-Xcompiler >-pthread"
|
||||
_MPI_${LANG}_COMPILE_OPTIONS "${MPI_${LANG}_COMPILE_OPTIONS}")
|
||||
set_property(TARGET MPI::MPI_${LANG} PROPERTY INTERFACE_COMPILE_OPTIONS "${_MPI_${LANG}_COMPILE_OPTIONS}")
|
||||
unset(_MPI_${LANG}_COMPILE_OPTIONS)
|
||||
|
||||
set_property(TARGET MPI::MPI_${LANG} PROPERTY INTERFACE_COMPILE_DEFINITIONS "${MPI_${LANG}_COMPILE_DEFINITIONS}")
|
||||
|
||||
set_property(TARGET MPI::MPI_${LANG} PROPERTY INTERFACE_LINK_LIBRARIES "")
|
||||
|
@ -124,7 +124,7 @@ endfunction()
|
||||
set(OpenMP_C_CXX_TEST_SOURCE
|
||||
"
|
||||
#include <omp.h>
|
||||
int main() {
|
||||
int main(void) {
|
||||
#ifdef _OPENMP
|
||||
omp_get_max_threads();
|
||||
return 0;
|
||||
@ -270,6 +270,9 @@ function(_OPENMP_GET_FLAGS LANG FLAG_MODE OPENMP_FLAG_VAR OPENMP_LIB_NAMES_VAR)
|
||||
break()
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
|
||||
"Detecting ${LANG} OpenMP failed with the following output:\n${OpenMP_TRY_COMPILE_OUTPUT}\n\n")
|
||||
endif()
|
||||
set("${OPENMP_LIB_NAMES_VAR}" "NOTFOUND" PARENT_SCOPE)
|
||||
set("${OPENMP_FLAG_VAR}" "NOTFOUND" PARENT_SCOPE)
|
||||
@ -291,7 +294,7 @@ const char ompver_str[] = { 'I', 'N', 'F', 'O', ':', 'O', 'p', 'e', 'n', 'M',
|
||||
('0' + ((_OPENMP/10)%10)),
|
||||
('0' + ((_OPENMP/1)%10)),
|
||||
']', '\\0' };
|
||||
int main()
|
||||
int main(void)
|
||||
{
|
||||
puts(ompver_str);
|
||||
return 0;
|
||||
@ -324,7 +327,8 @@ function(_OPENMP_GET_SPEC_DATE LANG SPEC_DATE)
|
||||
string(REGEX REPLACE "[-/=+]" "" OPENMP_PLAIN_FLAG "${OPENMP_FLAG}")
|
||||
try_compile(OpenMP_SPECTEST_${LANG}_${OPENMP_PLAIN_FLAG} "${CMAKE_BINARY_DIR}" "${_OPENMP_TEST_SRC}"
|
||||
CMAKE_FLAGS "-DCOMPILE_DEFINITIONS:STRING=${OpenMP_${LANG}_FLAGS}"
|
||||
COPY_FILE ${BIN_FILE})
|
||||
COPY_FILE ${BIN_FILE}
|
||||
OUTPUT_VARIABLE OpenMP_TRY_COMPILE_OUTPUT)
|
||||
|
||||
if(${OpenMP_SPECTEST_${LANG}_${OPENMP_PLAIN_FLAG}})
|
||||
file(STRINGS ${BIN_FILE} specstr LIMIT_COUNT 1 REGEX "INFO:OpenMP-date")
|
||||
@ -332,6 +336,9 @@ function(_OPENMP_GET_SPEC_DATE LANG SPEC_DATE)
|
||||
if("${specstr}" MATCHES "${regex_spec_date}")
|
||||
set(${SPEC_DATE} "${CMAKE_MATCH_1}" PARENT_SCOPE)
|
||||
endif()
|
||||
else()
|
||||
file(APPEND ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log
|
||||
"Detecting ${LANG} OpenMP version failed with the following output:\n${OpenMP_TRY_COMPILE_OUTPUT}\n\n")
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
|
@ -27,7 +27,7 @@
|
||||
# In Windows the default installation of PostgreSQL uses that as part of the path.
|
||||
# E.g C:\Program Files\PostgreSQL\8.4.
|
||||
# Currently, the following version numbers are known to this module:
|
||||
# "10" "9.6" "9.5" "9.4" "9.3" "9.2" "9.1" "9.0" "8.4" "8.3" "8.2" "8.1" "8.0"
|
||||
# "11" "10" "9.6" "9.5" "9.4" "9.3" "9.2" "9.1" "9.0" "8.4" "8.3" "8.2" "8.1" "8.0"
|
||||
#
|
||||
# To use this variable just do something like this:
|
||||
# set(PostgreSQL_ADDITIONAL_VERSIONS "9.2" "8.4.4")
|
||||
@ -71,7 +71,7 @@ set(PostgreSQL_ROOT_DIR_MESSAGE "Set the PostgreSQL_ROOT system variable to wher
|
||||
|
||||
|
||||
set(PostgreSQL_KNOWN_VERSIONS ${PostgreSQL_ADDITIONAL_VERSIONS}
|
||||
"10" "9.6" "9.5" "9.4" "9.3" "9.2" "9.1" "9.0" "8.4" "8.3" "8.2" "8.1" "8.0")
|
||||
"11" "10" "9.6" "9.5" "9.4" "9.3" "9.2" "9.1" "9.0" "8.4" "8.3" "8.2" "8.1" "8.0")
|
||||
|
||||
# Define additional search paths for root directories.
|
||||
set( PostgreSQL_ROOT_DIRECTORIES
|
||||
|
@ -381,21 +381,16 @@ function(_protobuf_find_libraries name filename)
|
||||
mark_as_advanced(${name}_LIBRARY_DEBUG)
|
||||
|
||||
select_library_configurations(${name})
|
||||
|
||||
if(UNIX AND Threads_FOUND)
|
||||
list(APPEND ${name}_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
|
||||
endif()
|
||||
|
||||
set(${name}_LIBRARY "${${name}_LIBRARY}" PARENT_SCOPE)
|
||||
set(${name}_LIBRARIES "${${name}_LIBRARIES}" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
# Internal function: find threads library
|
||||
function(_protobuf_find_threads)
|
||||
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
|
||||
find_package(Threads)
|
||||
if(Threads_FOUND)
|
||||
list(APPEND Protobuf_LIBRARIES ${CMAKE_THREAD_LIBS_INIT})
|
||||
set(Protobuf_LIBRARIES "${Protobuf_LIBRARIES}" PARENT_SCOPE)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
#
|
||||
# Main.
|
||||
#
|
||||
@ -416,6 +411,11 @@ if(MSVC)
|
||||
find_path(Protobuf_SRC_ROOT_FOLDER protobuf.pc.in)
|
||||
endif()
|
||||
|
||||
if(UNIX)
|
||||
# Protobuf headers may depend on threading.
|
||||
find_package(Threads QUIET)
|
||||
endif()
|
||||
|
||||
# The Protobuf library
|
||||
_protobuf_find_libraries(Protobuf protobuf)
|
||||
#DOC "The Google Protocol Buffers RELEASE Library"
|
||||
@ -430,10 +430,6 @@ if(MSVC)
|
||||
set(CMAKE_FIND_LIBRARY_PREFIXES "${Protobuf_ORIG_FIND_LIBRARY_PREFIXES}")
|
||||
endif()
|
||||
|
||||
if(UNIX)
|
||||
_protobuf_find_threads()
|
||||
endif()
|
||||
|
||||
# Find the include directory
|
||||
find_path(Protobuf_INCLUDE_DIR
|
||||
google/protobuf/service.h
|
||||
@ -521,6 +517,10 @@ if(Protobuf_INCLUDE_DIR)
|
||||
set_target_properties(protobuf::libprotobuf PROPERTIES
|
||||
IMPORTED_LOCATION_DEBUG "${Protobuf_LIBRARY_DEBUG}")
|
||||
endif()
|
||||
if(UNIX AND TARGET Threads::Threads)
|
||||
set_property(TARGET protobuf::libprotobuf APPEND PROPERTY
|
||||
INTERFACE_LINK_LIBRARIES Threads::Threads)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -545,6 +545,10 @@ if(Protobuf_INCLUDE_DIR)
|
||||
set_target_properties(protobuf::libprotobuf-lite PROPERTIES
|
||||
IMPORTED_LOCATION_DEBUG "${Protobuf_LITE_LIBRARY_DEBUG}")
|
||||
endif()
|
||||
if(UNIX AND TARGET Threads::Threads)
|
||||
set_property(TARGET protobuf::libprotobuf-lite APPEND PROPERTY
|
||||
INTERFACE_LINK_LIBRARIES Threads::Threads)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@ -569,6 +573,10 @@ if(Protobuf_INCLUDE_DIR)
|
||||
set_target_properties(protobuf::libprotoc PROPERTIES
|
||||
IMPORTED_LOCATION_DEBUG "${Protobuf_PROTOC_LIBRARY_DEBUG}")
|
||||
endif()
|
||||
if(UNIX AND TARGET Threads::Threads)
|
||||
set_property(TARGET protobuf::libprotoc APPEND PROPERTY
|
||||
INTERFACE_LINK_LIBRARIES Threads::Threads)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
@ -711,6 +711,23 @@ if ("Development" IN_LIST ${_PYTHON_PREFIX}_FIND_COMPONENTS
|
||||
if (NOT _${_PYTHON_PREFIX}_CONFIG)
|
||||
continue()
|
||||
endif()
|
||||
if (DEFINED CMAKE_LIBRARY_ARCHITECTURE)
|
||||
# check that config tool match library architecture
|
||||
execute_process (COMMAND "${_${_PYTHON_PREFIX}_CONFIG}" --configdir
|
||||
RESULT_VARIABLE _${_PYTHON_PREFIX}_RESULT
|
||||
OUTPUT_VARIABLE _${_PYTHON_PREFIX}_CONFIGDIR
|
||||
ERROR_QUIET
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
if (_${_PYTHON_PREFIX}_RESULT)
|
||||
unset (_${_PYTHON_PREFIX}_CONFIG CACHE)
|
||||
continue()
|
||||
endif()
|
||||
string(FIND "${_${_PYTHON_PREFIX}_CONFIGDIR}" "${CMAKE_LIBRARY_ARCHITECTURE}" _${_PYTHON_PREFIX}_RESULT)
|
||||
if (_${_PYTHON_PREFIX}_RESULT EQUAL -1)
|
||||
unset (_${_PYTHON_PREFIX}_CONFIG CACHE)
|
||||
continue()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# retrieve root install directory
|
||||
execute_process (COMMAND "${_${_PYTHON_PREFIX}_CONFIG}" --prefix
|
||||
|
@ -302,7 +302,15 @@ if(MSVC)
|
||||
get_filename_component(windows_kits_dir
|
||||
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows Kits\\Installed Roots;KitsRoot10]" ABSOLUTE)
|
||||
set(programfilesx86 "ProgramFiles(x86)")
|
||||
find_path(WINDOWS_KITS_DIR NAMES Redist/ucrt/DLLs/${CMAKE_MSVC_ARCH}/ucrtbase.dll
|
||||
if(";${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION};$ENV{UCRTVersion};$ENV{WindowsSDKVersion};" MATCHES [=[;(10\.[0-9.]+)[;\]]=])
|
||||
set(__ucrt_version "${CMAKE_MATCH_1}/")
|
||||
else()
|
||||
set(__ucrt_version "")
|
||||
endif()
|
||||
find_path(WINDOWS_KITS_DIR
|
||||
NAMES
|
||||
Redist/${__ucrt_version}ucrt/DLLs/${CMAKE_MSVC_ARCH}/ucrtbase.dll
|
||||
Redist/ucrt/DLLs/${CMAKE_MSVC_ARCH}/ucrtbase.dll
|
||||
PATHS
|
||||
$ENV{CMAKE_WINDOWS_KITS_10_DIR}
|
||||
"${windows_kits_dir}"
|
||||
@ -313,11 +321,19 @@ if(MSVC)
|
||||
|
||||
# Glob the list of UCRT DLLs.
|
||||
if(NOT CMAKE_INSTALL_DEBUG_LIBRARIES_ONLY)
|
||||
file(GLOB __ucrt_dlls "${WINDOWS_KITS_DIR}/Redist/ucrt/DLLs/${CMAKE_MSVC_ARCH}/*.dll")
|
||||
if(EXISTS "${WINDOWS_KITS_DIR}/Redist/${__ucrt_version}ucrt/DLLs/${CMAKE_MSVC_ARCH}/ucrtbase.dll")
|
||||
file(GLOB __ucrt_dlls "${WINDOWS_KITS_DIR}/Redist/${__ucrt_version}ucrt/DLLs/${CMAKE_MSVC_ARCH}/*.dll")
|
||||
else()
|
||||
file(GLOB __ucrt_dlls "${WINDOWS_KITS_DIR}/Redist/ucrt/DLLs/${CMAKE_MSVC_ARCH}/*.dll")
|
||||
endif()
|
||||
list(APPEND __install__libs ${__ucrt_dlls})
|
||||
endif()
|
||||
if(CMAKE_INSTALL_DEBUG_LIBRARIES)
|
||||
file(GLOB __ucrt_dlls "${WINDOWS_KITS_DIR}/bin/${CMAKE_MSVC_ARCH}/ucrt/*.dll")
|
||||
if(EXISTS "${WINDOWS_KITS_DIR}/bin/${__ucrt_version}${CMAKE_MSVC_ARCH}/ucrt/ucrtbased.dll")
|
||||
file(GLOB __ucrt_dlls "${WINDOWS_KITS_DIR}/bin/${__ucrt_version}${CMAKE_MSVC_ARCH}/ucrt/*.dll")
|
||||
else()
|
||||
file(GLOB __ucrt_dlls "${WINDOWS_KITS_DIR}/bin/${CMAKE_MSVC_ARCH}/ucrt/*.dll")
|
||||
endif()
|
||||
list(APPEND __install__libs ${__ucrt_dlls})
|
||||
endif()
|
||||
endif()
|
||||
|
@ -1,15 +1,15 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
if(NOT "${CPACK_EXT_REQUESTED_VERSIONS}" STREQUAL "")
|
||||
if(NOT "${CPACK_EXTERNAL_REQUESTED_VERSIONS}" STREQUAL "")
|
||||
unset(_found_major)
|
||||
|
||||
foreach(_req_version IN LISTS CPACK_EXT_REQUESTED_VERSIONS)
|
||||
foreach(_req_version IN LISTS CPACK_EXTERNAL_REQUESTED_VERSIONS)
|
||||
if(_req_version MATCHES "^([0-9]+)\\.([0-9]+)$")
|
||||
set(_req_major "${CMAKE_MATCH_1}")
|
||||
set(_req_minor "${CMAKE_MATCH_2}")
|
||||
|
||||
foreach(_known_version IN LISTS CPACK_EXT_KNOWN_VERSIONS)
|
||||
foreach(_known_version IN LISTS CPACK_EXTERNAL_KNOWN_VERSIONS)
|
||||
string(REGEX MATCH
|
||||
"^([0-9]+)\\.([0-9]+)$"
|
||||
_known_version_dummy
|
||||
@ -33,21 +33,21 @@ if(NOT "${CPACK_EXT_REQUESTED_VERSIONS}" STREQUAL "")
|
||||
endforeach()
|
||||
|
||||
if(DEFINED _found_major)
|
||||
set(CPACK_EXT_SELECTED_MAJOR "${_found_major}")
|
||||
set(CPACK_EXT_SELECTED_MINOR "${_found_minor}")
|
||||
set(CPACK_EXT_SELECTED_VERSION "${_found_major}.${_found_minor}")
|
||||
set(CPACK_EXTERNAL_SELECTED_MAJOR "${_found_major}")
|
||||
set(CPACK_EXTERNAL_SELECTED_MINOR "${_found_minor}")
|
||||
set(CPACK_EXTERNAL_SELECTED_VERSION "${_found_major}.${_found_minor}")
|
||||
else()
|
||||
message(FATAL_ERROR
|
||||
"Could not find a suitable version in CPACK_EXT_REQUESTED_VERSIONS"
|
||||
"Could not find a suitable version in CPACK_EXTERNAL_REQUESTED_VERSIONS"
|
||||
)
|
||||
endif()
|
||||
else()
|
||||
list(GET CPACK_EXT_KNOWN_VERSIONS 0 CPACK_EXT_SELECTED_VERSION)
|
||||
list(GET CPACK_EXTERNAL_KNOWN_VERSIONS 0 CPACK_EXTERNAL_SELECTED_VERSION)
|
||||
string(REGEX MATCH
|
||||
"^([0-9]+)\\.([0-9]+)$"
|
||||
_dummy
|
||||
"${CPACK_EXT_SELECTED_VERSION}"
|
||||
"${CPACK_EXTERNAL_SELECTED_VERSION}"
|
||||
)
|
||||
set(CPACK_EXT_SELECTED_MAJOR "${CMAKE_MATCH_1}")
|
||||
set(CPACK_EXT_SELECTED_MINOR "${CMAKE_MATCH_2}")
|
||||
set(CPACK_EXTERNAL_SELECTED_MAJOR "${CMAKE_MATCH_1}")
|
||||
set(CPACK_EXTERNAL_SELECTED_MINOR "${CMAKE_MATCH_2}")
|
||||
endif()
|
@ -122,7 +122,7 @@ ensure generated files will receive the required settings.
|
||||
If set to ``TRUE``, contents of target property
|
||||
:prop_tgt:`INCLUDE_DIRECTORIES` will be forwarded to ``SWIG`` compiler.
|
||||
If set to ``FALSE`` target property :prop_tgt:`INCLUDE_DIRECTORIES` will be
|
||||
ignored. If not set, target property ``SWIG_USE_TARGT_INCLUDE_DIRECTORIES``
|
||||
ignored. If not set, target property ``SWIG_USE_TARGET_INCLUDE_DIRECTORIES``
|
||||
will be considered.
|
||||
|
||||
``GENERATED_INCLUDE_DIRECTORIES``, ``GENERATED_COMPILE_DEFINITIONS`` and ``GENERATED_COMPILE_OPTIONS``
|
||||
@ -234,6 +234,8 @@ set(SWIG_PYTHON_EXTRA_FILE_EXTENSIONS ".py")
|
||||
set(SWIG_JAVA_EXTRA_FILE_EXTENSIONS ".java" "JNI.java")
|
||||
set(SWIG_CSHARP_EXTRA_FILE_EXTENSIONS ".cs" "PINVOKE.cs")
|
||||
|
||||
set(SWIG_MANAGE_SUPPORT_FILES_SCRIPT "${CMAKE_CURRENT_LIST_DIR}/UseSWIG/ManageSupportFiles.cmake")
|
||||
|
||||
##
|
||||
## PRIVATE functions
|
||||
##
|
||||
@ -444,9 +446,13 @@ function(SWIG_ADD_SOURCE_TO_MODULE name outfiles infile)
|
||||
if (UseSWIG_MODULE_VERSION VERSION_GREATER 1)
|
||||
# as part of custom command, start by removing old generated files
|
||||
# to ensure obsolete files do not stay
|
||||
set (swig_cleanup_command COMMAND "${CMAKE_COMMAND}" -E remove_directory "${outdir}")
|
||||
set (swig_file_outdir "${workingdir}/${swig_source_file_name_we}.files")
|
||||
set (swig_cleanup_command COMMAND "${CMAKE_COMMAND}" "-DSUPPORT_FILES_WORKING_DIRECTORY=${swig_file_outdir}" "-DSUPPORT_FILES_OUTPUT_DIRECTORY=${outdir}" -DACTION=CLEAN -P "${SWIG_MANAGE_SUPPORT_FILES_SCRIPT}")
|
||||
set (swig_copy_command COMMAND "${CMAKE_COMMAND}" "-DSUPPORT_FILES_WORKING_DIRECTORY=${swig_file_outdir}" "-DSUPPORT_FILES_OUTPUT_DIRECTORY=${outdir}" -DACTION=COPY -P "${SWIG_MANAGE_SUPPORT_FILES_SCRIPT}")
|
||||
else()
|
||||
set (swig_file_outdir "${outdir}")
|
||||
unset (swig_cleanup_command)
|
||||
unset (swig_copy_command)
|
||||
endif()
|
||||
|
||||
# IMPLICIT_DEPENDS below can not handle situations where a dependent file is
|
||||
@ -476,16 +482,17 @@ function(SWIG_ADD_SOURCE_TO_MODULE name outfiles infile)
|
||||
COMMAND "${CMAKE_COMMAND}" -E env "SWIG_LIB=${SWIG_DIR}" "${SWIG_EXECUTABLE}"
|
||||
"-${SWIG_MODULE_${name}_SWIG_LANGUAGE_FLAG}"
|
||||
"${swig_source_file_flags}"
|
||||
-outdir "${outdir}"
|
||||
-outdir "${swig_file_outdir}"
|
||||
${swig_special_flags}
|
||||
${swig_extra_flags}
|
||||
"${swig_include_dirs}"
|
||||
-o "${swig_generated_file_fullname}"
|
||||
"${swig_source_file_fullname}"
|
||||
${swig_copy_command}
|
||||
MAIN_DEPENDENCY "${swig_source_file_fullname}"
|
||||
DEPENDS ${swig_dependencies}
|
||||
IMPLICIT_DEPENDS CXX "${swig_source_file_fullname}"
|
||||
COMMENT "Swig source"
|
||||
COMMENT "Swig compile ${infile} for ${SWIG_MODULE_${name}_SWIG_LANGUAGE_FLAG}"
|
||||
COMMAND_EXPAND_LISTS)
|
||||
set_source_files_properties("${swig_generated_file_fullname}" ${swig_extra_generated_files}
|
||||
PROPERTIES GENERATED 1)
|
||||
|
31
Modules/UseSWIG/ManageSupportFiles.cmake
Normal file
31
Modules/UseSWIG/ManageSupportFiles.cmake
Normal file
@ -0,0 +1,31 @@
|
||||
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
# file Copyright.txt or https://cmake.org/licensing for details.
|
||||
|
||||
|
||||
if (ACTION STREQUAL "CLEAN")
|
||||
# Collect current list of generated files
|
||||
file (GLOB files LIST_DIRECTORIES FALSE RELATIVE "${SUPPORT_FILES_WORKING_DIRECTORY}" "${SUPPORT_FILES_WORKING_DIRECTORY}/*")
|
||||
|
||||
if (files)
|
||||
# clean-up the output directory
|
||||
## compute full paths
|
||||
list (TRANSFORM files PREPEND "${SUPPORT_FILES_OUTPUT_DIRECTORY}/")
|
||||
## remove generated files from the output directory
|
||||
file (REMOVE ${files})
|
||||
|
||||
# clean-up working directory
|
||||
file (REMOVE_RECURSE "${SUPPORT_FILES_WORKING_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
file (MAKE_DIRECTORY "${SUPPORT_FILES_WORKING_DIRECTORY}")
|
||||
endif()
|
||||
|
||||
if (ACTION STREQUAL "COPY")
|
||||
# Collect current list of generated files
|
||||
file (GLOB files LIST_DIRECTORIES FALSE "${SUPPORT_FILES_WORKING_DIRECTORY}/*")
|
||||
|
||||
if (files)
|
||||
# copy files to the output directory
|
||||
file (COPY ${files} DESTINATION "${SUPPORT_FILES_OUTPUT_DIRECTORY}")
|
||||
endif()
|
||||
endif()
|
@ -890,7 +890,7 @@ set(CPACK_SRCS
|
||||
CPack/cmCPackArchiveGenerator.cxx
|
||||
CPack/cmCPackComponentGroup.cxx
|
||||
CPack/cmCPackDebGenerator.cxx
|
||||
CPack/cmCPackExtGenerator.cxx
|
||||
CPack/cmCPackExternalGenerator.cxx
|
||||
CPack/cmCPackGeneratorFactory.cxx
|
||||
CPack/cmCPackGenerator.cxx
|
||||
CPack/cmCPackLog.cxx
|
||||
|
@ -1,5 +1,5 @@
|
||||
# CMake version number components.
|
||||
set(CMake_VERSION_MAJOR 3)
|
||||
set(CMake_VERSION_MINOR 13)
|
||||
set(CMake_VERSION_PATCH 0)
|
||||
set(CMake_VERSION_RC 2)
|
||||
set(CMake_VERSION_PATCH 1)
|
||||
#set(CMake_VERSION_RC 0)
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
file Copyright.txt or https://cmake.org/licensing for details. */
|
||||
#include "cmCPackExtGenerator.h"
|
||||
#include "cmCPackExternalGenerator.h"
|
||||
|
||||
#include "cmAlgorithms.h"
|
||||
#include "cmCPackComponentGroup.h"
|
||||
@ -16,25 +16,25 @@
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
int cmCPackExtGenerator::InitializeInternal()
|
||||
int cmCPackExternalGenerator::InitializeInternal()
|
||||
{
|
||||
this->SetOption("CPACK_EXT_KNOWN_VERSIONS", "1.0");
|
||||
this->SetOption("CPACK_EXTERNAL_KNOWN_VERSIONS", "1.0");
|
||||
|
||||
if (!this->ReadListFile("Internal/CPack/CPackExt.cmake")) {
|
||||
if (!this->ReadListFile("Internal/CPack/CPackExternal.cmake")) {
|
||||
cmCPackLogger(cmCPackLog::LOG_ERROR,
|
||||
"Error while executing CPackExt.cmake" << std::endl);
|
||||
"Error while executing CPackExternal.cmake" << std::endl);
|
||||
return 0;
|
||||
}
|
||||
|
||||
std::string major = this->GetOption("CPACK_EXT_SELECTED_MAJOR");
|
||||
std::string major = this->GetOption("CPACK_EXTERNAL_SELECTED_MAJOR");
|
||||
if (major == "1") {
|
||||
this->Generator = cm::make_unique<cmCPackExtVersion1Generator>(this);
|
||||
this->Generator = cm::make_unique<cmCPackExternalVersion1Generator>(this);
|
||||
}
|
||||
|
||||
return this->Superclass::InitializeInternal();
|
||||
}
|
||||
|
||||
int cmCPackExtGenerator::PackageFiles()
|
||||
int cmCPackExternalGenerator::PackageFiles()
|
||||
{
|
||||
Json::StreamWriterBuilder builder;
|
||||
builder["indentation"] = " ";
|
||||
@ -57,12 +57,12 @@ int cmCPackExtGenerator::PackageFiles()
|
||||
return 0;
|
||||
}
|
||||
|
||||
const char* packageScript = this->GetOption("CPACK_EXT_PACKAGE_SCRIPT");
|
||||
const char* packageScript = this->GetOption("CPACK_EXTERNAL_PACKAGE_SCRIPT");
|
||||
if (packageScript && *packageScript) {
|
||||
if (!cmSystemTools::FileIsFullPath(packageScript)) {
|
||||
cmCPackLogger(
|
||||
cmCPackLog::LOG_ERROR,
|
||||
"CPACK_EXT_PACKAGE_SCRIPT does not contain a full file path"
|
||||
"CPACK_EXTERNAL_PACKAGE_SCRIPT does not contain a full file path"
|
||||
<< std::endl);
|
||||
return 0;
|
||||
}
|
||||
@ -77,12 +77,12 @@ int cmCPackExtGenerator::PackageFiles()
|
||||
return 1;
|
||||
}
|
||||
|
||||
bool cmCPackExtGenerator::SupportsComponentInstallation() const
|
||||
bool cmCPackExternalGenerator::SupportsComponentInstallation() const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
int cmCPackExtGenerator::InstallProjectViaInstallCommands(
|
||||
int cmCPackExternalGenerator::InstallProjectViaInstallCommands(
|
||||
bool setDestDir, const std::string& tempInstallDirectory)
|
||||
{
|
||||
if (this->StagingEnabled()) {
|
||||
@ -93,7 +93,7 @@ int cmCPackExtGenerator::InstallProjectViaInstallCommands(
|
||||
return 1;
|
||||
}
|
||||
|
||||
int cmCPackExtGenerator::InstallProjectViaInstallScript(
|
||||
int cmCPackExternalGenerator::InstallProjectViaInstallScript(
|
||||
bool setDestDir, const std::string& tempInstallDirectory)
|
||||
{
|
||||
if (this->StagingEnabled()) {
|
||||
@ -104,7 +104,7 @@ int cmCPackExtGenerator::InstallProjectViaInstallScript(
|
||||
return 1;
|
||||
}
|
||||
|
||||
int cmCPackExtGenerator::InstallProjectViaInstalledDirectories(
|
||||
int cmCPackExternalGenerator::InstallProjectViaInstalledDirectories(
|
||||
bool setDestDir, const std::string& tempInstallDirectory,
|
||||
const mode_t* default_dir_mode)
|
||||
{
|
||||
@ -116,7 +116,7 @@ int cmCPackExtGenerator::InstallProjectViaInstalledDirectories(
|
||||
return 1;
|
||||
}
|
||||
|
||||
int cmCPackExtGenerator::RunPreinstallTarget(
|
||||
int cmCPackExternalGenerator::RunPreinstallTarget(
|
||||
const std::string& installProjectName, const std::string& installDirectory,
|
||||
cmGlobalGenerator* globalGenerator, const std::string& buildConfig)
|
||||
{
|
||||
@ -128,7 +128,7 @@ int cmCPackExtGenerator::RunPreinstallTarget(
|
||||
return 1;
|
||||
}
|
||||
|
||||
int cmCPackExtGenerator::InstallCMakeProject(
|
||||
int cmCPackExternalGenerator::InstallCMakeProject(
|
||||
bool setDestDir, const std::string& installDirectory,
|
||||
const std::string& baseTempInstallDirectory, const mode_t* default_dir_mode,
|
||||
const std::string& component, bool componentInstall,
|
||||
@ -145,18 +145,19 @@ int cmCPackExtGenerator::InstallCMakeProject(
|
||||
return 1;
|
||||
}
|
||||
|
||||
bool cmCPackExtGenerator::StagingEnabled() const
|
||||
bool cmCPackExternalGenerator::StagingEnabled() const
|
||||
{
|
||||
return !cmSystemTools::IsOff(this->GetOption("CPACK_EXT_ENABLE_STAGING"));
|
||||
return !cmSystemTools::IsOff(
|
||||
this->GetOption("CPACK_EXTERNAL_ENABLE_STAGING"));
|
||||
}
|
||||
|
||||
cmCPackExtGenerator::cmCPackExtVersionGenerator::cmCPackExtVersionGenerator(
|
||||
cmCPackExtGenerator* parent)
|
||||
cmCPackExternalGenerator::cmCPackExternalVersionGenerator::
|
||||
cmCPackExternalVersionGenerator(cmCPackExternalGenerator* parent)
|
||||
: Parent(parent)
|
||||
{
|
||||
}
|
||||
|
||||
int cmCPackExtGenerator::cmCPackExtVersionGenerator::WriteVersion(
|
||||
int cmCPackExternalGenerator::cmCPackExternalVersionGenerator::WriteVersion(
|
||||
Json::Value& root)
|
||||
{
|
||||
root["formatVersionMajor"] = this->GetVersionMajor();
|
||||
@ -165,7 +166,7 @@ int cmCPackExtGenerator::cmCPackExtVersionGenerator::WriteVersion(
|
||||
return 1;
|
||||
}
|
||||
|
||||
int cmCPackExtGenerator::cmCPackExtVersionGenerator::WriteToJSON(
|
||||
int cmCPackExternalGenerator::cmCPackExternalVersionGenerator::WriteToJSON(
|
||||
Json::Value& root)
|
||||
{
|
||||
if (!this->WriteVersion(root)) {
|
@ -1,7 +1,7 @@
|
||||
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
||||
file Copyright.txt or https://cmake.org/licensing for details. */
|
||||
#ifndef cmCPackExtGenerator_h
|
||||
#define cmCPackExtGenerator_h
|
||||
#ifndef cmCPackExternalGenerator_h
|
||||
#define cmCPackExternalGenerator_h
|
||||
|
||||
#include "cmCPackGenerator.h"
|
||||
#include "cm_sys_stat.h"
|
||||
@ -14,13 +14,13 @@ namespace Json {
|
||||
class Value;
|
||||
}
|
||||
|
||||
/** \class cmCPackExtGenerator
|
||||
/** \class cmCPackExternalGenerator
|
||||
* \brief A generator for CPack External packaging tools
|
||||
*/
|
||||
class cmCPackExtGenerator : public cmCPackGenerator
|
||||
class cmCPackExternalGenerator : public cmCPackGenerator
|
||||
{
|
||||
public:
|
||||
cmCPackTypeMacro(cmCPackExtGenerator, cmCPackGenerator);
|
||||
cmCPackTypeMacro(cmCPackExternalGenerator, cmCPackGenerator);
|
||||
|
||||
const char* GetOutputExtension() override { return ".json"; }
|
||||
|
||||
@ -54,12 +54,12 @@ protected:
|
||||
private:
|
||||
bool StagingEnabled() const;
|
||||
|
||||
class cmCPackExtVersionGenerator
|
||||
class cmCPackExternalVersionGenerator
|
||||
{
|
||||
public:
|
||||
cmCPackExtVersionGenerator(cmCPackExtGenerator* parent);
|
||||
cmCPackExternalVersionGenerator(cmCPackExternalGenerator* parent);
|
||||
|
||||
virtual ~cmCPackExtVersionGenerator() = default;
|
||||
virtual ~cmCPackExternalVersionGenerator() = default;
|
||||
|
||||
virtual int WriteToJSON(Json::Value& root);
|
||||
|
||||
@ -69,20 +69,21 @@ private:
|
||||
|
||||
int WriteVersion(Json::Value& root);
|
||||
|
||||
cmCPackExtGenerator* Parent;
|
||||
cmCPackExternalGenerator* Parent;
|
||||
};
|
||||
|
||||
class cmCPackExtVersion1Generator : public cmCPackExtVersionGenerator
|
||||
class cmCPackExternalVersion1Generator
|
||||
: public cmCPackExternalVersionGenerator
|
||||
{
|
||||
public:
|
||||
using cmCPackExtVersionGenerator::cmCPackExtVersionGenerator;
|
||||
using cmCPackExternalVersionGenerator::cmCPackExternalVersionGenerator;
|
||||
|
||||
protected:
|
||||
int GetVersionMajor() override { return 1; }
|
||||
int GetVersionMinor() override { return 0; }
|
||||
};
|
||||
|
||||
std::unique_ptr<cmCPackExtVersionGenerator> Generator;
|
||||
std::unique_ptr<cmCPackExternalVersionGenerator> Generator;
|
||||
};
|
||||
|
||||
#endif
|
@ -12,7 +12,7 @@
|
||||
# include "cmCPackFreeBSDGenerator.h"
|
||||
#endif
|
||||
#include "cmCPackDebGenerator.h"
|
||||
#include "cmCPackExtGenerator.h"
|
||||
#include "cmCPackExternalGenerator.h"
|
||||
#include "cmCPackGenerator.h"
|
||||
#include "cmCPackLog.h"
|
||||
#include "cmCPackNSISGenerator.h"
|
||||
@ -111,9 +111,9 @@ cmCPackGeneratorFactory::cmCPackGeneratorFactory()
|
||||
this->RegisterGenerator("NuGet", "NuGet packages",
|
||||
cmCPackNuGetGenerator::CreateGenerator);
|
||||
}
|
||||
if (cmCPackExtGenerator::CanGenerate()) {
|
||||
this->RegisterGenerator("Ext", "CPack External packages",
|
||||
cmCPackExtGenerator::CreateGenerator);
|
||||
if (cmCPackExternalGenerator::CanGenerate()) {
|
||||
this->RegisterGenerator("External", "CPack External packages",
|
||||
cmCPackExternalGenerator::CreateGenerator);
|
||||
}
|
||||
#ifdef __APPLE__
|
||||
if (cmCPackDragNDropGenerator::CanGenerate()) {
|
||||
|
@ -1686,6 +1686,7 @@ void cmCTestTestHandler::GetListOfTests()
|
||||
cm.GetState()->AddBuiltinCommand("set_tests_properties", newCom4);
|
||||
|
||||
// Add handler for SET_DIRECTORY_PROPERTIES
|
||||
cm.GetState()->RemoveBuiltinCommand("set_directory_properties");
|
||||
cmCTestSetDirectoryPropertiesCommand* newCom5 =
|
||||
new cmCTestSetDirectoryPropertiesCommand;
|
||||
newCom5->TestHandler = this;
|
||||
|
@ -127,7 +127,8 @@ bool cmProcess::StartProcess(uv_loop_t& loop, std::vector<size_t>* affinity)
|
||||
uv_pipe_open(pipe_writer, fds[1]);
|
||||
|
||||
uv_stdio_container_t stdio[3];
|
||||
stdio[0].flags = UV_IGNORE;
|
||||
stdio[0].flags = UV_INHERIT_FD;
|
||||
stdio[0].data.fd = 0;
|
||||
stdio[1].flags = UV_INHERIT_STREAM;
|
||||
stdio[1].data.stream = pipe_writer;
|
||||
stdio[2] = stdio[1];
|
||||
|
@ -593,13 +593,13 @@ static const YY_CHAR yy_ec[256] =
|
||||
13, 14, 1, 15, 1, 1, 1, 16, 16, 16,
|
||||
16, 16, 16, 16, 16, 16, 16, 17, 18, 19,
|
||||
20, 21, 22, 1, 23, 24, 25, 26, 27, 28,
|
||||
24, 24, 29, 24, 24, 30, 31, 32, 33, 24,
|
||||
24, 34, 35, 36, 37, 24, 24, 24, 24, 24,
|
||||
1, 38, 1, 1, 39, 1, 23, 40, 41, 42,
|
||||
29, 29, 30, 29, 29, 31, 32, 33, 34, 29,
|
||||
29, 35, 36, 37, 38, 29, 29, 29, 29, 29,
|
||||
1, 39, 1, 1, 40, 1, 23, 24, 41, 42,
|
||||
|
||||
43, 44, 24, 24, 45, 24, 24, 46, 31, 47,
|
||||
33, 24, 24, 34, 48, 36, 49, 24, 24, 24,
|
||||
24, 24, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
43, 44, 29, 29, 45, 29, 29, 46, 32, 47,
|
||||
34, 29, 29, 35, 48, 37, 49, 29, 29, 29,
|
||||
29, 29, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
@ -621,7 +621,7 @@ static const YY_CHAR yy_meta[50] =
|
||||
1, 2, 2, 3, 4, 3, 3, 1, 1, 3,
|
||||
3, 3, 3, 1, 3, 5, 3, 3, 1, 3,
|
||||
6, 1, 7, 7, 7, 7, 7, 7, 7, 7,
|
||||
7, 7, 7, 7, 7, 7, 7, 1, 5, 7,
|
||||
7, 7, 7, 7, 7, 7, 7, 7, 1, 5,
|
||||
7, 7, 7, 7, 7, 7, 7, 7, 7
|
||||
} ;
|
||||
|
||||
@ -629,28 +629,28 @@ static const flex_int16_t yy_base[219] =
|
||||
{ 0,
|
||||
0, 48, 0, 49, 464, 56, 52, 57, 62, 68,
|
||||
466, 0, 468, 468, 462, 468, 74, 81, 468, 468,
|
||||
468, 468, 447, 468, 442, 440, 0, 41, 42, 428,
|
||||
43, 42, 91, 119, 97, 157, 455, 206, 245, 468,
|
||||
454, 101, 468, 468, 0, 455, 468, 105, 430, 424,
|
||||
62, 68, 119, 141, 468, 468, 468, 111, 0, 59,
|
||||
98, 88, 415, 109, 158, 468, 0, 162, 293, 0,
|
||||
163, 411, 107, 122, 408, 405, 446, 342, 447, 468,
|
||||
0, 444, 169, 173, 420, 421, 132, 404, 90, 404,
|
||||
179, 185, 191, 227, 295, 397, 0, 146, 178, 149,
|
||||
468, 468, 447, 468, 442, 440, 0, 19, 41, 427,
|
||||
47, 41, 90, 119, 97, 158, 455, 207, 247, 468,
|
||||
454, 101, 468, 468, 0, 455, 468, 105, 430, 423,
|
||||
62, 67, 119, 151, 468, 468, 468, 121, 0, 90,
|
||||
93, 110, 431, 112, 142, 468, 0, 160, 295, 0,
|
||||
162, 411, 123, 102, 408, 405, 446, 344, 447, 468,
|
||||
0, 444, 170, 174, 420, 421, 132, 404, 95, 404,
|
||||
180, 186, 192, 228, 297, 397, 0, 168, 144, 52,
|
||||
|
||||
412, 0, 208, 206, 398, 171, 399, 170, 399, 391,
|
||||
387, 422, 417, 221, 468, 374, 365, 347, 347, 334,
|
||||
335, 335, 330, 334, 259, 340, 188, 340, 327, 327,
|
||||
327, 324, 325, 325, 320, 322, 319, 355, 354, 325,
|
||||
327, 468, 468, 310, 309, 309, 300, 301, 273, 273,
|
||||
275, 277, 297, 468, 468, 293, 289, 283, 275, 305,
|
||||
261, 238, 237, 214, 468, 468, 468, 196, 197, 189,
|
||||
277, 181, 0, 274, 112, 468, 468, 105, 103, 311,
|
||||
468, 233, 0, 468, 468, 83, 76, 0, 281, 282,
|
||||
468, 468, 52, 468, 468, 468, 468, 23, 287, 298,
|
||||
411, 0, 204, 217, 397, 179, 390, 170, 389, 378,
|
||||
364, 390, 389, 230, 468, 363, 355, 337, 337, 334,
|
||||
335, 335, 330, 334, 187, 339, 267, 339, 327, 327,
|
||||
327, 324, 325, 325, 318, 319, 318, 354, 352, 323,
|
||||
327, 468, 468, 310, 307, 305, 297, 297, 275, 275,
|
||||
277, 279, 287, 468, 468, 286, 283, 273, 196, 307,
|
||||
200, 238, 234, 210, 468, 468, 468, 174, 171, 162,
|
||||
279, 182, 0, 269, 150, 468, 468, 137, 109, 323,
|
||||
468, 239, 0, 468, 468, 72, 71, 0, 283, 283,
|
||||
468, 468, 51, 468, 468, 468, 468, 37, 283, 288,
|
||||
|
||||
327, 468, 0, 0, 329, 0, 31, 468, 468, 381,
|
||||
388, 394, 397, 404, 411, 418, 425, 432
|
||||
330, 468, 0, 0, 331, 0, 52, 468, 468, 384,
|
||||
391, 397, 400, 407, 414, 421, 428, 435
|
||||
} ;
|
||||
|
||||
static const flex_int16_t yy_def[219] =
|
||||
@ -685,53 +685,53 @@ static const flex_int16_t yy_nxt[518] =
|
||||
{ 0,
|
||||
12, 13, 14, 13, 13, 15, 16, 12, 17, 18,
|
||||
19, 20, 21, 12, 22, 12, 23, 24, 12, 25,
|
||||
12, 26, 27, 27, 27, 27, 28, 27, 29, 27,
|
||||
30, 27, 27, 27, 31, 27, 32, 33, 34, 27,
|
||||
12, 26, 27, 27, 27, 27, 28, 27, 27, 29,
|
||||
27, 30, 27, 27, 27, 31, 27, 32, 33, 34,
|
||||
27, 27, 28, 27, 29, 27, 27, 31, 32, 35,
|
||||
35, 208, 35, 35, 41, 36, 36, 35, 37, 41,
|
||||
35, 42, 43, 36, 41, 202, 42, 43, 44, 38,
|
||||
41, 42, 60, 61, 44, 48, 64, 42, 48, 63,
|
||||
39, 39, 53, 53, 97, 53, 54, 60, 61, 64,
|
||||
55, 63, 65, 66, 201, 65, 39, 39, 68, 49,
|
||||
35, 60, 35, 35, 41, 36, 36, 35, 37, 41,
|
||||
35, 42, 43, 36, 41, 60, 42, 43, 44, 38,
|
||||
41, 42, 208, 61, 44, 48, 64, 42, 48, 202,
|
||||
39, 39, 53, 53, 63, 53, 54, 61, 64, 127,
|
||||
55, 65, 66, 201, 65, 63, 39, 39, 68, 49,
|
||||
|
||||
97, 68, 83, 84, 69, 83, 48, 87, 88, 48,
|
||||
50, 89, 95, 100, 90, 95, 51, 198, 52, 45,
|
||||
53, 53, 98, 53, 54, 197, 45, 45, 55, 100,
|
||||
49, 121, 45, 99, 67, 102, 122, 45, 98, 45,
|
||||
45, 50, 92, 53, 193, 92, 93, 51, 192, 52,
|
||||
94, 102, 106, 107, 191, 96, 45, 67, 70, 65,
|
||||
66, 70, 65, 68, 104, 108, 68, 104, 109, 69,
|
||||
83, 84, 71, 83, 114, 125, 118, 114, 71, 119,
|
||||
92, 53, 115, 92, 93, 127, 92, 53, 94, 92,
|
||||
93, 125, 92, 53, 94, 92, 93, 127, 72, 73,
|
||||
127, 68, 83, 84, 69, 83, 48, 87, 88, 48,
|
||||
89, 50, 198, 90, 197, 97, 51, 98, 52, 45,
|
||||
53, 53, 95, 53, 54, 95, 45, 45, 55, 99,
|
||||
49, 97, 45, 98, 67, 100, 121, 45, 102, 45,
|
||||
45, 122, 50, 65, 66, 108, 65, 51, 109, 52,
|
||||
193, 100, 92, 53, 102, 92, 93, 45, 67, 70,
|
||||
94, 68, 70, 104, 68, 96, 104, 69, 106, 107,
|
||||
126, 83, 84, 71, 83, 114, 118, 71, 114, 119,
|
||||
192, 92, 53, 115, 92, 93, 126, 92, 53, 94,
|
||||
92, 93, 191, 92, 53, 94, 92, 93, 125, 72,
|
||||
|
||||
94, 74, 75, 189, 126, 76, 78, 104, 80, 104,
|
||||
104, 133, 104, 78, 78, 130, 134, 151, 131, 78,
|
||||
126, 78, 114, 103, 78, 114, 78, 78, 92, 53,
|
||||
115, 92, 93, 151, 195, 195, 94, 187, 186, 185,
|
||||
184, 183, 182, 78, 78, 79, 79, 80, 79, 79,
|
||||
73, 94, 74, 75, 189, 104, 76, 78, 104, 80,
|
||||
187, 133, 186, 125, 78, 78, 134, 185, 104, 103,
|
||||
78, 104, 78, 130, 149, 78, 131, 78, 78, 92,
|
||||
53, 114, 92, 93, 114, 149, 184, 94, 183, 115,
|
||||
195, 195, 182, 181, 179, 78, 78, 79, 79, 80,
|
||||
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
|
||||
81, 79, 79, 79, 79, 79, 79, 81, 81, 81,
|
||||
79, 79, 81, 79, 79, 79, 79, 79, 79, 81,
|
||||
81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
|
||||
81, 81, 79, 81, 81, 81, 81, 81, 81, 81,
|
||||
81, 81, 81, 81, 70, 149, 95, 70, 171, 95,
|
||||
81, 81, 81, 81, 81, 79, 81, 81, 81, 81,
|
||||
81, 81, 81, 81, 81, 81, 70, 151, 95, 70,
|
||||
|
||||
172, 173, 174, 188, 181, 199, 180, 149, 103, 180,
|
||||
190, 200, 180, 203, 171, 180, 172, 173, 174, 188,
|
||||
103, 199, 190, 179, 204, 178, 103, 200, 205, 203,
|
||||
205, 205, 177, 205, 72, 73, 176, 74, 75, 96,
|
||||
204, 76, 78, 175, 80, 206, 170, 206, 169, 78,
|
||||
78, 168, 167, 166, 165, 78, 164, 78, 163, 162,
|
||||
78, 161, 78, 78, 160, 159, 158, 157, 156, 155,
|
||||
154, 153, 152, 150, 148, 147, 146, 145, 144, 78,
|
||||
78, 40, 40, 40, 40, 40, 40, 40, 45, 143,
|
||||
142, 141, 45, 45, 46, 46, 46, 46, 46, 46,
|
||||
171, 95, 172, 173, 174, 188, 190, 199, 180, 203,
|
||||
103, 180, 151, 200, 204, 178, 171, 190, 172, 173,
|
||||
174, 188, 103, 199, 180, 203, 177, 180, 200, 176,
|
||||
204, 205, 205, 175, 205, 205, 72, 73, 103, 74,
|
||||
75, 96, 170, 76, 78, 169, 80, 168, 206, 206,
|
||||
167, 78, 78, 166, 165, 164, 163, 78, 162, 78,
|
||||
161, 160, 78, 159, 78, 78, 158, 157, 156, 155,
|
||||
154, 153, 152, 150, 148, 147, 146, 145, 144, 143,
|
||||
142, 141, 78, 78, 40, 40, 40, 40, 40, 40,
|
||||
40, 45, 140, 139, 138, 45, 45, 46, 46, 46,
|
||||
|
||||
46, 59, 140, 59, 79, 79, 79, 79, 79, 79,
|
||||
79, 91, 91, 91, 91, 91, 91, 91, 194, 194,
|
||||
194, 139, 194, 194, 194, 196, 138, 196, 137, 196,
|
||||
196, 196, 207, 207, 207, 207, 207, 136, 207, 135,
|
||||
132, 129, 128, 124, 123, 120, 117, 116, 113, 80,
|
||||
46, 46, 46, 46, 59, 137, 59, 79, 79, 79,
|
||||
79, 79, 79, 79, 91, 91, 91, 91, 91, 91,
|
||||
91, 194, 194, 194, 136, 194, 194, 194, 196, 135,
|
||||
196, 132, 196, 196, 196, 207, 207, 207, 207, 207,
|
||||
129, 207, 128, 124, 123, 120, 117, 116, 113, 80,
|
||||
112, 111, 110, 105, 101, 86, 85, 47, 82, 77,
|
||||
62, 58, 57, 56, 47, 209, 37, 11, 209, 209,
|
||||
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||
@ -749,50 +749,50 @@ static const flex_int16_t yy_chk[518] =
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
|
||||
4, 207, 2, 4, 7, 2, 4, 6, 6, 8,
|
||||
6, 7, 7, 6, 9, 198, 8, 8, 9, 6,
|
||||
10, 9, 28, 29, 10, 17, 32, 10, 17, 31,
|
||||
6, 6, 18, 18, 60, 18, 18, 28, 29, 32,
|
||||
18, 31, 33, 33, 193, 33, 6, 6, 35, 17,
|
||||
4, 28, 2, 4, 7, 2, 4, 6, 6, 8,
|
||||
6, 7, 7, 6, 9, 28, 8, 8, 9, 6,
|
||||
10, 9, 207, 29, 10, 17, 32, 10, 17, 198,
|
||||
6, 6, 18, 18, 31, 18, 18, 29, 32, 100,
|
||||
18, 33, 33, 193, 33, 31, 6, 6, 35, 17,
|
||||
|
||||
60, 35, 42, 42, 35, 42, 48, 51, 51, 48,
|
||||
17, 52, 58, 62, 52, 58, 17, 187, 17, 34,
|
||||
53, 53, 61, 53, 53, 186, 34, 34, 53, 62,
|
||||
48, 89, 34, 61, 34, 64, 89, 34, 61, 34,
|
||||
34, 48, 54, 54, 179, 54, 54, 48, 178, 48,
|
||||
54, 64, 73, 73, 175, 58, 34, 34, 36, 65,
|
||||
65, 36, 65, 68, 71, 74, 68, 71, 74, 68,
|
||||
83, 83, 36, 83, 84, 98, 87, 84, 71, 87,
|
||||
91, 91, 84, 91, 91, 100, 92, 92, 91, 92,
|
||||
92, 98, 93, 93, 92, 93, 93, 100, 36, 36,
|
||||
100, 35, 42, 42, 35, 42, 48, 51, 51, 48,
|
||||
52, 17, 187, 52, 186, 60, 17, 61, 17, 34,
|
||||
53, 53, 58, 53, 53, 58, 34, 34, 53, 61,
|
||||
48, 60, 34, 61, 34, 62, 89, 34, 64, 34,
|
||||
34, 89, 48, 65, 65, 74, 65, 48, 74, 48,
|
||||
179, 62, 54, 54, 64, 54, 54, 34, 34, 36,
|
||||
54, 68, 36, 71, 68, 58, 71, 68, 73, 73,
|
||||
99, 83, 83, 36, 83, 84, 87, 71, 84, 87,
|
||||
178, 91, 91, 84, 91, 91, 99, 92, 92, 91,
|
||||
92, 92, 175, 93, 93, 92, 93, 93, 98, 36,
|
||||
|
||||
93, 36, 36, 172, 99, 36, 38, 104, 38, 103,
|
||||
104, 108, 103, 38, 38, 106, 108, 127, 106, 38,
|
||||
99, 38, 114, 103, 38, 114, 38, 38, 94, 94,
|
||||
114, 94, 94, 127, 182, 182, 94, 170, 169, 168,
|
||||
164, 163, 162, 38, 38, 39, 39, 39, 39, 39,
|
||||
36, 93, 36, 36, 172, 103, 36, 38, 103, 38,
|
||||
170, 108, 169, 98, 38, 38, 108, 168, 104, 103,
|
||||
38, 104, 38, 106, 125, 38, 106, 38, 38, 94,
|
||||
94, 114, 94, 94, 114, 125, 164, 94, 163, 114,
|
||||
182, 182, 162, 161, 159, 38, 38, 39, 39, 39,
|
||||
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||
39, 39, 39, 39, 69, 125, 95, 69, 149, 95,
|
||||
39, 39, 39, 39, 39, 39, 69, 127, 95, 69,
|
||||
|
||||
150, 151, 152, 171, 161, 189, 160, 125, 69, 160,
|
||||
174, 190, 180, 199, 149, 180, 150, 151, 152, 171,
|
||||
160, 189, 174, 159, 200, 158, 180, 190, 201, 199,
|
||||
205, 201, 157, 205, 69, 69, 156, 69, 69, 95,
|
||||
200, 69, 78, 153, 78, 201, 148, 205, 147, 78,
|
||||
78, 146, 145, 144, 141, 78, 140, 78, 139, 138,
|
||||
78, 137, 78, 78, 136, 135, 134, 133, 132, 131,
|
||||
130, 129, 128, 126, 124, 123, 122, 121, 120, 78,
|
||||
78, 210, 210, 210, 210, 210, 210, 210, 211, 119,
|
||||
118, 117, 211, 211, 212, 212, 212, 212, 212, 212,
|
||||
149, 95, 150, 151, 152, 171, 174, 189, 160, 199,
|
||||
69, 160, 127, 190, 200, 158, 149, 174, 150, 151,
|
||||
152, 171, 160, 189, 180, 199, 157, 180, 190, 156,
|
||||
200, 201, 205, 153, 201, 205, 69, 69, 180, 69,
|
||||
69, 95, 148, 69, 78, 147, 78, 146, 201, 205,
|
||||
145, 78, 78, 144, 141, 140, 139, 78, 138, 78,
|
||||
137, 136, 78, 135, 78, 78, 134, 133, 132, 131,
|
||||
130, 129, 128, 126, 124, 123, 122, 121, 120, 119,
|
||||
118, 117, 78, 78, 210, 210, 210, 210, 210, 210,
|
||||
210, 211, 116, 113, 112, 211, 211, 212, 212, 212,
|
||||
|
||||
212, 213, 116, 213, 214, 214, 214, 214, 214, 214,
|
||||
214, 215, 215, 215, 215, 215, 215, 215, 216, 216,
|
||||
216, 113, 216, 216, 216, 217, 112, 217, 111, 217,
|
||||
217, 217, 218, 218, 218, 218, 218, 110, 218, 109,
|
||||
107, 105, 101, 96, 90, 88, 86, 85, 82, 79,
|
||||
212, 212, 212, 212, 213, 111, 213, 214, 214, 214,
|
||||
214, 214, 214, 214, 215, 215, 215, 215, 215, 215,
|
||||
215, 216, 216, 216, 110, 216, 216, 216, 217, 109,
|
||||
217, 107, 217, 217, 217, 218, 218, 218, 218, 218,
|
||||
105, 218, 101, 96, 90, 88, 86, 85, 82, 79,
|
||||
77, 76, 75, 72, 63, 50, 49, 46, 41, 37,
|
||||
30, 26, 25, 23, 15, 11, 5, 209, 209, 209,
|
||||
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||
|
@ -146,7 +146,7 @@ $[ \t]*endif { return F90PPR_ENDIF; }
|
||||
[Ii][Nn][Cc][Ll][Uu][Dd][Ee] { return INCLUDE; }
|
||||
[Ii][Nn][Tt][Ee][Rr][Ff][Aa][Cc][Ee] { return INTERFACE; }
|
||||
[Mm][Oo][Dd][Uu][Ll][Ee] { return MODULE; }
|
||||
[Ss][Uu][bb][Mm][Oo][Dd][Uu][Ll][Ee] { return SUBMODULE; }
|
||||
[Ss][Uu][Bb][Mm][Oo][Dd][Uu][Ll][Ee] { return SUBMODULE; }
|
||||
[Uu][Ss][Ee] { return USE; }
|
||||
|
||||
[a-zA-Z_][a-zA-Z_0-9]* {
|
||||
|
@ -318,12 +318,6 @@ bool cmAddCustomCommandCommand::InitialPass(
|
||||
return false;
|
||||
}
|
||||
|
||||
// Convert working directory to a full path.
|
||||
if (!working.empty()) {
|
||||
const std::string& build_dir = this->Makefile->GetCurrentBinaryDirectory();
|
||||
working = cmSystemTools::CollapseFullPath(working, build_dir);
|
||||
}
|
||||
|
||||
// Choose which mode of the command to use.
|
||||
bool escapeOldStyle = !verbatim;
|
||||
if (source.empty() && output.empty()) {
|
||||
|
@ -181,13 +181,6 @@ bool cmAddCustomTargetCommand::InitialPass(
|
||||
}
|
||||
}
|
||||
|
||||
// Convert working directory to a full path.
|
||||
if (!working_directory.empty()) {
|
||||
const std::string& build_dir = this->Makefile->GetCurrentBinaryDirectory();
|
||||
working_directory =
|
||||
cmSystemTools::CollapseFullPath(working_directory, build_dir);
|
||||
}
|
||||
|
||||
if (commandLines.empty() && !byproducts.empty()) {
|
||||
this->Makefile->IssueMessage(
|
||||
cmake::FATAL_ERROR,
|
||||
|
@ -151,6 +151,8 @@ void GetScriptingCommands(cmState* state)
|
||||
state->AddBuiltinCommand("separate_arguments",
|
||||
new cmSeparateArgumentsCommand);
|
||||
state->AddBuiltinCommand("set", new cmSetCommand);
|
||||
state->AddBuiltinCommand("set_directory_properties",
|
||||
new cmSetDirectoryPropertiesCommand);
|
||||
state->AddBuiltinCommand("set_property", new cmSetPropertyCommand);
|
||||
state->AddBuiltinCommand("site_name", new cmSiteNameCommand);
|
||||
state->AddBuiltinCommand("string", new cmStringCommand);
|
||||
@ -240,8 +242,6 @@ void GetProjectCommands(cmState* state)
|
||||
state->AddBuiltinCommand("install_targets", new cmInstallTargetsCommand);
|
||||
state->AddBuiltinCommand("link_directories", new cmLinkDirectoriesCommand);
|
||||
state->AddBuiltinCommand("project", new cmProjectCommand);
|
||||
state->AddBuiltinCommand("set_directory_properties",
|
||||
new cmSetDirectoryPropertiesCommand);
|
||||
state->AddBuiltinCommand("set_source_files_properties",
|
||||
new cmSetSourceFilesPropertiesCommand);
|
||||
state->AddBuiltinCommand("set_target_properties",
|
||||
|
@ -20,11 +20,8 @@ bool cmConfigureFileCommand::InitialPass(std::vector<std::string> const& args,
|
||||
}
|
||||
|
||||
std::string const& inFile = args[0];
|
||||
if (!cmSystemTools::FileIsFullPath(inFile)) {
|
||||
this->InputFile = this->Makefile->GetCurrentSourceDirectory();
|
||||
this->InputFile += "/";
|
||||
}
|
||||
this->InputFile += inFile;
|
||||
this->InputFile = cmSystemTools::CollapseFullPath(
|
||||
inFile, this->Makefile->GetCurrentSourceDirectory());
|
||||
|
||||
// If the input location is a directory, error out.
|
||||
if (cmSystemTools::FileIsDirectory(this->InputFile)) {
|
||||
@ -39,11 +36,8 @@ bool cmConfigureFileCommand::InitialPass(std::vector<std::string> const& args,
|
||||
}
|
||||
|
||||
std::string const& outFile = args[1];
|
||||
if (!cmSystemTools::FileIsFullPath(outFile)) {
|
||||
this->OutputFile = this->Makefile->GetCurrentBinaryDirectory();
|
||||
this->OutputFile += "/";
|
||||
}
|
||||
this->OutputFile += outFile;
|
||||
this->OutputFile = cmSystemTools::CollapseFullPath(
|
||||
outFile, this->Makefile->GetCurrentBinaryDirectory());
|
||||
|
||||
// If the output location is already a directory put the file in it.
|
||||
if (cmSystemTools::FileIsDirectory(this->OutputFile)) {
|
||||
|
@ -70,6 +70,12 @@ cmCustomCommandGenerator::cmCustomCommandGenerator(cmCustomCommand const& cc,
|
||||
std::unique_ptr<cmCompiledGeneratorExpression> cge =
|
||||
this->GE->Parse(workingdirectory);
|
||||
this->WorkingDirectory = cge->Evaluate(this->LG, this->Config);
|
||||
// Convert working directory to a full path.
|
||||
if (!this->WorkingDirectory.empty()) {
|
||||
std::string const& build_dir = this->LG->GetCurrentBinaryDirectory();
|
||||
this->WorkingDirectory =
|
||||
cmSystemTools::CollapseFullPath(this->WorkingDirectory, build_dir);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -855,7 +855,7 @@ void cmExportFileGenerator::SetImportDetailProperties(
|
||||
std::string propval;
|
||||
if (auto* p = target->GetProperty("COMMON_LANGUAGE_RUNTIME")) {
|
||||
propval = p;
|
||||
} else if (target->HasLanguage("CSharp", config)) {
|
||||
} else if (target->IsCSharpOnly()) {
|
||||
// C# projects do not have the /clr flag, so we set the property
|
||||
// here to mark the target as (only) managed (i.e. no .lib file
|
||||
// to link to). Otherwise the COMMON_LANGUAGE_RUNTIME target
|
||||
|
@ -315,6 +315,7 @@ void cmFileMonitor::MonitorPaths(const std::vector<std::string>& paths,
|
||||
for (std::string const& p : paths) {
|
||||
std::vector<std::string> pathSegments;
|
||||
cmsys::SystemTools::SplitPath(p, pathSegments, true);
|
||||
const bool pathIsFile = !cmsys::SystemTools::FileIsDirectory(p);
|
||||
|
||||
const size_t segmentCount = pathSegments.size();
|
||||
if (segmentCount < 2) { // Expect at least rootdir and filename
|
||||
@ -324,7 +325,7 @@ void cmFileMonitor::MonitorPaths(const std::vector<std::string>& paths,
|
||||
for (size_t i = 0; i < segmentCount; ++i) {
|
||||
assert(currentWatcher);
|
||||
|
||||
const bool fileSegment = (i == segmentCount - 1);
|
||||
const bool fileSegment = (i == segmentCount - 1 && pathIsFile);
|
||||
const bool rootSegment = (i == 0);
|
||||
assert(
|
||||
!(fileSegment &&
|
||||
|
@ -5594,20 +5594,23 @@ void cmGeneratorTarget::GetLanguages(std::set<std::string>& languages,
|
||||
}
|
||||
}
|
||||
|
||||
bool cmGeneratorTarget::HasLanguage(std::string const& language,
|
||||
std::string const& config,
|
||||
bool exclusive) const
|
||||
bool cmGeneratorTarget::IsCSharpOnly() const
|
||||
{
|
||||
std::set<std::string> languages;
|
||||
this->GetLanguages(languages, config);
|
||||
// The "exclusive" check applies only to source files and not
|
||||
// the linker language which may be affected by dependencies.
|
||||
if (exclusive && languages.size() > 1) {
|
||||
// Only certain target types may compile CSharp.
|
||||
if (this->GetType() != cmStateEnums::SHARED_LIBRARY &&
|
||||
this->GetType() != cmStateEnums::STATIC_LIBRARY &&
|
||||
this->GetType() != cmStateEnums::EXECUTABLE) {
|
||||
return false;
|
||||
}
|
||||
// add linker language (if it is different from compiler languages)
|
||||
languages.insert(this->GetLinkerLanguage(config));
|
||||
return languages.count(language) > 0;
|
||||
std::set<std::string> languages;
|
||||
this->GetLanguages(languages, "");
|
||||
// Consider an explicit linker language property, but *not* the
|
||||
// computed linker language that may depend on linked targets.
|
||||
const char* linkLang = this->GetProperty("LINKER_LANGUAGE");
|
||||
if (linkLang && *linkLang) {
|
||||
languages.insert(linkLang);
|
||||
}
|
||||
return languages.size() == 1 && languages.count("CSharp") > 0;
|
||||
}
|
||||
|
||||
void cmGeneratorTarget::ComputeLinkImplementationLanguages(
|
||||
@ -5971,6 +5974,5 @@ cmGeneratorTarget::ManagedType cmGeneratorTarget::GetManagedType(
|
||||
// C# targets are always managed. This language specific check
|
||||
// is added to avoid that the COMMON_LANGUAGE_RUNTIME target property
|
||||
// has to be set manually for C# targets.
|
||||
return this->HasLanguage("CSharp", config) ? ManagedType::Managed
|
||||
: ManagedType::Native;
|
||||
return this->IsCSharpOnly() ? ManagedType::Managed : ManagedType::Native;
|
||||
}
|
||||
|
@ -372,11 +372,7 @@ public:
|
||||
void GetLanguages(std::set<std::string>& languages,
|
||||
std::string const& config) const;
|
||||
|
||||
// Evaluate if the target uses the given language for compilation
|
||||
// and/or linking. If 'exclusive' is true, 'language' is expected
|
||||
// to be the only language used in source files for the target.
|
||||
bool HasLanguage(std::string const& language, std::string const& config,
|
||||
bool exclusive = true) const;
|
||||
bool IsCSharpOnly() const;
|
||||
|
||||
void GetObjectLibrariesCMP0026(
|
||||
std::vector<cmGeneratorTarget*>& objlibs) const;
|
||||
|
@ -215,6 +215,10 @@ bool cmGlobalVisualStudio14Generator::IsWindowsStoreToolsetInstalled() const
|
||||
std::string cmGlobalVisualStudio14Generator::GetWindows10SDKMaxVersion() const
|
||||
{
|
||||
// The last Windows 10 SDK version that VS 2015 can target is 10.0.14393.0.
|
||||
//
|
||||
// "VS 2015 Users: The Windows 10 SDK (15063, 16299, 17134, 17763) is
|
||||
// officially only supported for VS 2017." From:
|
||||
// https://blogs.msdn.microsoft.com/chuckw/2018/10/02/windows-10-october-2018-update/
|
||||
return "10.0.14393.0";
|
||||
}
|
||||
|
||||
@ -287,28 +291,28 @@ std::string cmGlobalVisualStudio14Generator::GetWindows10SDKVersion()
|
||||
// only the UCRT MSIs were installed for them.
|
||||
cmEraseIf(sdks, NoWindowsH());
|
||||
|
||||
// Only use the filename, which will be the SDK version.
|
||||
for (std::string& i : sdks) {
|
||||
i = cmSystemTools::GetFilenameName(i);
|
||||
}
|
||||
|
||||
// Skip SDKs that cannot be used with our toolset.
|
||||
std::string maxVersion = this->GetWindows10SDKMaxVersion();
|
||||
if (!maxVersion.empty()) {
|
||||
cmEraseIf(sdks, WindowsSDKTooRecent(maxVersion));
|
||||
}
|
||||
|
||||
// Sort the results to make sure we select the most recent one.
|
||||
std::sort(sdks.begin(), sdks.end(), cmSystemTools::VersionCompareGreater);
|
||||
|
||||
// Look for a SDK exactly matching the requested target version.
|
||||
for (std::string const& i : sdks) {
|
||||
if (cmSystemTools::VersionCompareEqual(i, this->SystemVersion)) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
if (!sdks.empty()) {
|
||||
// Only use the filename, which will be the SDK version.
|
||||
for (std::string& i : sdks) {
|
||||
i = cmSystemTools::GetFilenameName(i);
|
||||
}
|
||||
|
||||
// Sort the results to make sure we select the most recent one.
|
||||
std::sort(sdks.begin(), sdks.end(), cmSystemTools::VersionCompareGreater);
|
||||
|
||||
// Skip SDKs that cannot be used with our toolset.
|
||||
std::string maxVersion = this->GetWindows10SDKMaxVersion();
|
||||
if (!maxVersion.empty()) {
|
||||
cmEraseIf(sdks, WindowsSDKTooRecent(maxVersion));
|
||||
}
|
||||
|
||||
// Look for a SDK exactly matching the requested target version.
|
||||
for (std::string const& i : sdks) {
|
||||
if (cmSystemTools::VersionCompareEqual(i, this->SystemVersion)) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
// Use the latest Windows 10 SDK since the exact version is not available.
|
||||
return sdks.at(0);
|
||||
}
|
||||
|
@ -98,7 +98,7 @@ void cmGlobalVisualStudio71Generator::WriteProject(std::ostream& fout,
|
||||
ext = ".vfproj";
|
||||
project = "Project(\"{6989167D-11E4-40FE-8C1A-2192A86A7E90}\") = \"";
|
||||
}
|
||||
if (t->HasLanguage("CSharp", "")) {
|
||||
if (t->IsCSharpOnly()) {
|
||||
ext = ".csproj";
|
||||
project = "Project(\"{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}\") = \"";
|
||||
}
|
||||
|
@ -77,15 +77,15 @@ std::string cmLinkLineDeviceComputer::ComputeLinkLibraries(
|
||||
|
||||
std::string out;
|
||||
if (item.IsPath) {
|
||||
// nvcc understands absolute paths to libraries ending in '.a' should
|
||||
// be passed to nvlink. Other extensions like '.so' or '.dylib' are
|
||||
// rejected by the nvcc front-end even though nvlink knows to ignore
|
||||
// them. Bypass the front-end via '-Xnvlink'.
|
||||
if (!cmHasLiteralSuffix(item.Value, ".a")) {
|
||||
out += "-Xnvlink ";
|
||||
// nvcc understands absolute paths to libraries ending in '.a' or '.lib'.
|
||||
// These should be passed to nvlink. Other extensions need to be left
|
||||
// out because nvlink may not understand or need them. Even though it
|
||||
// can tolerate '.so' or '.dylib' it cannot tolerate '.so.1'.
|
||||
if (cmHasLiteralSuffix(item.Value, ".a") ||
|
||||
cmHasLiteralSuffix(item.Value, ".lib")) {
|
||||
out += this->ConvertToOutputFormat(
|
||||
this->ConvertToLinkReference(item.Value));
|
||||
}
|
||||
out +=
|
||||
this->ConvertToOutputFormat(this->ConvertToLinkReference(item.Value));
|
||||
} else if (cmLinkItemValidForDevice(item.Value)) {
|
||||
out += item.Value;
|
||||
}
|
||||
|
@ -1409,7 +1409,7 @@ bool cmQtAutoGenInitializer::GetUicExecutable()
|
||||
}
|
||||
|
||||
// Test uic command
|
||||
if (err.empty()) {
|
||||
if (err.empty() && !this->Uic.Executable.empty()) {
|
||||
if (cmSystemTools::FileExists(this->Uic.Executable, true)) {
|
||||
std::vector<std::string> command;
|
||||
command.push_back(this->Uic.Executable);
|
||||
|
@ -502,6 +502,16 @@ std::vector<std::string> cmState::GetCommandNames() const
|
||||
return commandNames;
|
||||
}
|
||||
|
||||
void cmState::RemoveBuiltinCommand(std::string const& name)
|
||||
{
|
||||
assert(name == cmSystemTools::LowerCase(name));
|
||||
std::map<std::string, cmCommand*>::iterator i =
|
||||
this->BuiltinCommands.find(name);
|
||||
assert(i != this->BuiltinCommands.end());
|
||||
delete i->second;
|
||||
this->BuiltinCommands.erase(i);
|
||||
}
|
||||
|
||||
void cmState::RemoveUserDefinedCommands()
|
||||
{
|
||||
cmDeleteAll(this->ScriptedCommands);
|
||||
|
@ -135,6 +135,7 @@ public:
|
||||
cmPolicies::PolicyID policy, const char* message);
|
||||
void AddUnexpectedCommand(std::string const& name, const char* error);
|
||||
void AddScriptedCommand(std::string const& name, cmCommand* command);
|
||||
void RemoveBuiltinCommand(std::string const& name);
|
||||
void RemoveUserDefinedCommands();
|
||||
std::vector<std::string> GetCommandNames() const;
|
||||
|
||||
|
@ -215,12 +215,11 @@ static bool cmVS10IsTargetsFile(std::string const& path)
|
||||
return cmSystemTools::Strucmp(ext.c_str(), ".targets") == 0;
|
||||
}
|
||||
|
||||
static std::string computeProjectFileExtension(cmGeneratorTarget const* t,
|
||||
const std::string& config)
|
||||
static std::string computeProjectFileExtension(cmGeneratorTarget const* t)
|
||||
{
|
||||
std::string res;
|
||||
res = ".vcxproj";
|
||||
if (t->HasLanguage("CSharp", config)) {
|
||||
if (t->IsCSharpOnly()) {
|
||||
res = ".csproj";
|
||||
}
|
||||
return res;
|
||||
@ -315,8 +314,8 @@ void cmVisualStudio10TargetGenerator::Generate()
|
||||
this->GeneratorTarget->GetProperty("EXTERNAL_MSPROJECT")) {
|
||||
return;
|
||||
}
|
||||
const std::string ProjectFileExtension = computeProjectFileExtension(
|
||||
this->GeneratorTarget, *this->Configurations.begin());
|
||||
const std::string ProjectFileExtension =
|
||||
computeProjectFileExtension(this->GeneratorTarget);
|
||||
if (ProjectFileExtension == ".vcxproj") {
|
||||
this->ProjectType = vcxproj;
|
||||
this->Managed = false;
|
||||
@ -1409,8 +1408,7 @@ void cmVisualStudio10TargetGenerator::WriteGroups()
|
||||
std::string path = this->LocalGenerator->GetCurrentBinaryDirectory();
|
||||
path += "/";
|
||||
path += this->Name;
|
||||
path += computeProjectFileExtension(this->GeneratorTarget,
|
||||
*this->Configurations.begin());
|
||||
path += computeProjectFileExtension(this->GeneratorTarget);
|
||||
path += ".filters";
|
||||
cmGeneratedFileStream fout(path);
|
||||
fout.SetCopyIfDifferent(true);
|
||||
@ -3812,7 +3810,7 @@ void cmVisualStudio10TargetGenerator::WriteProjectReferences(Elem& e0)
|
||||
path = lg->GetCurrentBinaryDirectory();
|
||||
path += "/";
|
||||
path += dt->GetName();
|
||||
path += computeProjectFileExtension(dt, *this->Configurations.begin());
|
||||
path += computeProjectFileExtension(dt);
|
||||
}
|
||||
ConvertToWindowsSlash(path);
|
||||
Elem e2(e1, "ProjectReference");
|
||||
@ -3838,7 +3836,7 @@ void cmVisualStudio10TargetGenerator::WriteProjectReferences(Elem& e0)
|
||||
}
|
||||
// Workaround for static library C# targets
|
||||
if (referenceNotManaged && dt->GetType() == cmStateEnums::STATIC_LIBRARY) {
|
||||
referenceNotManaged = !dt->HasLanguage("CSharp", "");
|
||||
referenceNotManaged = !dt->IsCSharpOnly();
|
||||
}
|
||||
if (referenceNotManaged) {
|
||||
e2.Element("ReferenceOutputAssembly", "false");
|
||||
|
@ -9,5 +9,5 @@ add_executable(CSharpOnly csharponly.cs)
|
||||
|
||||
target_link_libraries(CSharpOnly lib1 lib2)
|
||||
|
||||
add_custom_target(CSharpCustom SOURCES empty.cs)
|
||||
add_custom_target(custom.cs DEPENDS empty.txt)
|
||||
add_custom_target(CSharpCustom ALL SOURCES empty.cs)
|
||||
add_custom_target(custom.cs ALL DEPENDS empty.txt)
|
||||
|
@ -47,7 +47,7 @@ file(MAKE_DIRECTORY ${TestWorkingDir_BINARY_DIR}/genex)
|
||||
add_custom_command(
|
||||
OUTPUT "${TestWorkingDir_BINARY_DIR}/genex/working.c"
|
||||
COMMAND "${CMAKE_COMMAND}" -E copy "${TestWorkingDir_SOURCE_DIR}/working.c.in" "${TestWorkingDir_BINARY_DIR}/genex/working.c"
|
||||
WORKING_DIRECTORY "${TestWorkingDir_BINARY_DIR}/$<1:genex>/"
|
||||
WORKING_DIRECTORY "$<0:not_used/>${TestWorkingDir_BINARY_DIR}/$<1:genex>/"
|
||||
COMMENT "custom command"
|
||||
)
|
||||
|
||||
@ -58,7 +58,7 @@ add_custom_target(
|
||||
CustomGenex ALL
|
||||
COMMAND "${CMAKE_COMMAND}" -E copy_if_different "${TestWorkingDir_SOURCE_DIR}/customTarget.c" "${TestWorkingDir_BINARY_DIR}/genex/customTarget.c"
|
||||
BYPRODUCTS "${TestWorkingDir_BINARY_DIR}/genex/customTarget.c"
|
||||
WORKING_DIRECTORY "${TestWorkingDir_BINARY_DIR}/$<1:genex>/"
|
||||
WORKING_DIRECTORY "$<0:not_used/>${TestWorkingDir_BINARY_DIR}/$<1:genex>/"
|
||||
)
|
||||
|
||||
add_dependencies(workinggenex CustomGenex)
|
||||
|
@ -1,10 +1,10 @@
|
||||
! Test the notation for a 1st-generation direct
|
||||
! descendant of a parent module
|
||||
submodule ( parent ) child
|
||||
SUBMODULE ( parent ) child
|
||||
implicit none
|
||||
contains
|
||||
CONTAINS
|
||||
module function child_function() result(child_stuff)
|
||||
logical :: child_stuff
|
||||
child_stuff=.true.
|
||||
end function
|
||||
end submodule child
|
||||
END SUBMODULE child
|
||||
|
@ -178,6 +178,7 @@ add_RunCMake_test(ObjectLibrary)
|
||||
if(UNIX AND CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG AND CMAKE_EXECUTABLE_FORMAT STREQUAL "ELF")
|
||||
add_RunCMake_test(RuntimePath)
|
||||
endif()
|
||||
add_RunCMake_test(ScriptMode)
|
||||
add_RunCMake_test(Swift)
|
||||
add_RunCMake_test(TargetObjects)
|
||||
add_RunCMake_test(TargetSources)
|
||||
@ -367,7 +368,8 @@ add_RunCMake_test(FetchContent)
|
||||
if(NOT CMake_TEST_EXTERNAL_CMAKE)
|
||||
set(CTestCommandLine_ARGS -DTEST_AFFINITY=$<TARGET_FILE:testAffinity>)
|
||||
endif()
|
||||
add_RunCMake_test(CTestCommandLine)
|
||||
add_executable(print_stdin print_stdin.c)
|
||||
add_RunCMake_test(CTestCommandLine -DTEST_PRINT_STDIN=$<TARGET_FILE:print_stdin>)
|
||||
add_RunCMake_test(CacheNewline)
|
||||
# Only run this test on unix platforms that support
|
||||
# symbolic links
|
||||
@ -433,7 +435,7 @@ if("${CMAKE_GENERATOR}" MATCHES "Make|Ninja")
|
||||
add_RunCMake_test(ctest_labels_for_subprojects)
|
||||
endif()
|
||||
|
||||
add_RunCMake_test_group(CPack "DEB;RPM;7Z;TBZ2;TGZ;TXZ;TZ;ZIP;STGZ;Ext")
|
||||
add_RunCMake_test_group(CPack "DEB;RPM;7Z;TBZ2;TGZ;TXZ;TZ;ZIP;STGZ;External")
|
||||
# add a test to make sure symbols are exported from a shared library
|
||||
# for MSVC compilers CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS property is used
|
||||
add_RunCMake_test(AutoExportDll)
|
||||
|
@ -18,8 +18,8 @@ run_cpack_test(GENERATE_SHLIBS_LDCONFIG "DEB" true "COMPONENT")
|
||||
run_cpack_test(INSTALL_SCRIPTS "RPM" false "COMPONENT")
|
||||
run_cpack_test(LONG_FILENAMES "DEB" false "MONOLITHIC")
|
||||
run_cpack_test_subtests(MAIN_COMPONENT "invalid;found" "RPM" false "COMPONENT")
|
||||
run_cpack_test(MINIMAL "RPM;DEB;7Z;TBZ2;TGZ;TXZ;TZ;ZIP;STGZ;Ext" false "MONOLITHIC;COMPONENT")
|
||||
run_cpack_test_package_target(MINIMAL "RPM;DEB;7Z;TBZ2;TGZ;TXZ;TZ;ZIP;STGZ;Ext" false "MONOLITHIC;COMPONENT")
|
||||
run_cpack_test(MINIMAL "RPM;DEB;7Z;TBZ2;TGZ;TXZ;TZ;ZIP;STGZ;External" false "MONOLITHIC;COMPONENT")
|
||||
run_cpack_test_package_target(MINIMAL "RPM;DEB;7Z;TBZ2;TGZ;TXZ;TZ;ZIP;STGZ;External" false "MONOLITHIC;COMPONENT")
|
||||
run_cpack_test_subtests(PACKAGE_CHECKSUM "invalid;MD5;SHA1;SHA224;SHA256;SHA384;SHA512" "TGZ" false "MONOLITHIC")
|
||||
run_cpack_test(PARTIALLY_RELOCATABLE_WARNING "RPM" false "COMPONENT")
|
||||
run_cpack_test(PER_COMPONENT_FIELDS "RPM;DEB" false "COMPONENT")
|
||||
@ -35,4 +35,4 @@ run_cpack_test(USER_FILELIST "RPM" false "MONOLITHIC")
|
||||
run_cpack_test(MD5SUMS "DEB" false "MONOLITHIC;COMPONENT")
|
||||
run_cpack_test(CPACK_INSTALL_SCRIPT "ZIP" false "MONOLITHIC")
|
||||
run_cpack_test(DEB_PACKAGE_VERSION_BACK_COMPATIBILITY "DEB" false "MONOLITHIC;COMPONENT")
|
||||
run_cpack_test_subtests(EXT "none;good;good_multi;bad_major;bad_minor;invalid_good;invalid_bad;stage_and_package" "Ext" false "MONOLITHIC;COMPONENT")
|
||||
run_cpack_test_subtests(EXTERNAL "none;good;good_multi;bad_major;bad_minor;invalid_good;invalid_bad;stage_and_package" "External" false "MONOLITHIC;COMPONENT")
|
||||
|
@ -1,3 +0,0 @@
|
||||
if(RunCMake_SUBTEST_SUFFIX MATCHES "^(none|good(_multi)?|invalid_good)")
|
||||
check_ext_json("${src_dir}/tests/EXT/expected-json-1.0.txt" "${FOUND_FILE_1}")
|
||||
endif()
|
@ -1,6 +0,0 @@
|
||||
CMake Error at .*/Modules/Internal/CPack/CPackExt\.cmake:[0-9]+ \(message\):
|
||||
Could not find a suitable version in CPACK_EXT_REQUESTED_VERSIONS
|
||||
|
||||
|
||||
CPack Error: Error while executing CPackExt\.cmake
|
||||
CPack Error: Cannot initialize the generator Ext
|
@ -1,6 +0,0 @@
|
||||
CMake Error at .*/Modules/Internal/CPack/CPackExt\.cmake:[0-9]+ \(message\):
|
||||
Could not find a suitable version in CPACK_EXT_REQUESTED_VERSIONS
|
||||
|
||||
|
||||
CPack Error: Error while executing CPackExt\.cmake
|
||||
CPack Error: Cannot initialize the generator Ext
|
@ -1,6 +0,0 @@
|
||||
CMake Error at .*/Modules/Internal/CPack/CPackExt\.cmake:[0-9]+ \(message\):
|
||||
Could not find a suitable version in CPACK_EXT_REQUESTED_VERSIONS
|
||||
|
||||
|
||||
CPack Error: Error while executing CPackExt\.cmake
|
||||
CPack Error: Cannot initialize the generator Ext
|
3
Tests/RunCMake/CPack/tests/EXTERNAL/VerifyResult.cmake
Normal file
3
Tests/RunCMake/CPack/tests/EXTERNAL/VerifyResult.cmake
Normal file
@ -0,0 +1,3 @@
|
||||
if(RunCMake_SUBTEST_SUFFIX MATCHES "^(none|good(_multi)?|invalid_good)")
|
||||
check_ext_json("${src_dir}/tests/EXTERNAL/expected-json-1.0.txt" "${FOUND_FILE_1}")
|
||||
endif()
|
6
Tests/RunCMake/CPack/tests/EXTERNAL/bad_major-stderr.txt
Normal file
6
Tests/RunCMake/CPack/tests/EXTERNAL/bad_major-stderr.txt
Normal file
@ -0,0 +1,6 @@
|
||||
CMake Error at .*/Modules/Internal/CPack/CPackExternal\.cmake:[0-9]+ \(message\):
|
||||
Could not find a suitable version in CPACK_EXTERNAL_REQUESTED_VERSIONS
|
||||
|
||||
|
||||
CPack Error: Error while executing CPackExternal\.cmake
|
||||
CPack Error: Cannot initialize the generator External
|
6
Tests/RunCMake/CPack/tests/EXTERNAL/bad_minor-stderr.txt
Normal file
6
Tests/RunCMake/CPack/tests/EXTERNAL/bad_minor-stderr.txt
Normal file
@ -0,0 +1,6 @@
|
||||
CMake Error at .*/Modules/Internal/CPack/CPackExternal\.cmake:[0-9]+ \(message\):
|
||||
Could not find a suitable version in CPACK_EXTERNAL_REQUESTED_VERSIONS
|
||||
|
||||
|
||||
CPack Error: Error while executing CPackExternal\.cmake
|
||||
CPack Error: Cannot initialize the generator External
|
@ -150,8 +150,8 @@
|
||||
\}
|
||||
\},
|
||||
"packageDescriptionFile" : ".*/Templates/CPack\.GenericDescription\.txt",
|
||||
"packageDescriptionSummary" : "EXT-(none|good(_multi)?|invalid_good)-subtest-(MONOLITHIC|COMPONENT)-type built using CMake",
|
||||
"packageName" : "ext",
|
||||
"packageDescriptionSummary" : "EXTERNAL-(none|good(_multi)?|invalid_good)-subtest-(MONOLITHIC|COMPONENT)-type built using CMake",
|
||||
"packageName" : "external",
|
||||
"packageVersion" : "0\.1\.1",
|
||||
"projects" :[ ]
|
||||
\[
|
||||
@ -164,9 +164,9 @@
|
||||
"f3",
|
||||
"f4"
|
||||
\],
|
||||
"directory" : ".*/Tests/RunCMake/Ext/CPack/EXT-build-(none|good(_multi)?|invalid_good)-subtest",
|
||||
"directory" : ".*/Tests/RunCMake/External/CPack/EXTERNAL-build-(none|good(_multi)?|invalid_good)-subtest",
|
||||
"installationTypes" : \[\],
|
||||
"projectName" : "EXT-(none|good(_multi)?|invalid_good)-subtest-(MONOLITHIC|COMPONENT)-type",
|
||||
"projectName" : "EXTERNAL-(none|good(_multi)?|invalid_good)-subtest-(MONOLITHIC|COMPONENT)-type",
|
||||
"subDirectory" : "/"
|
||||
\}
|
||||
\],
|
@ -0,0 +1,6 @@
|
||||
CMake Error at .*/Modules/Internal/CPack/CPackExternal\.cmake:[0-9]+ \(message\):
|
||||
Could not find a suitable version in CPACK_EXTERNAL_REQUESTED_VERSIONS
|
||||
|
||||
|
||||
CPack Error: Error while executing CPackExternal\.cmake
|
||||
CPack Error: Cannot initialize the generator External
|
@ -1,22 +1,22 @@
|
||||
include(CPackComponent)
|
||||
|
||||
if(RunCMake_SUBTEST_SUFFIX STREQUAL "none")
|
||||
unset(CPACK_EXT_REQUESTED_VERSIONS)
|
||||
unset(CPACK_EXTERNAL_REQUESTED_VERSIONS)
|
||||
elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "good")
|
||||
set(CPACK_EXT_REQUESTED_VERSIONS "1.0")
|
||||
set(CPACK_EXTERNAL_REQUESTED_VERSIONS "1.0")
|
||||
elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "good_multi")
|
||||
set(CPACK_EXT_REQUESTED_VERSIONS "1.0;2.0")
|
||||
set(CPACK_EXTERNAL_REQUESTED_VERSIONS "1.0;2.0")
|
||||
elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "bad_major")
|
||||
set(CPACK_EXT_REQUESTED_VERSIONS "2.0")
|
||||
set(CPACK_EXTERNAL_REQUESTED_VERSIONS "2.0")
|
||||
elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "bad_minor")
|
||||
set(CPACK_EXT_REQUESTED_VERSIONS "1.1")
|
||||
set(CPACK_EXTERNAL_REQUESTED_VERSIONS "1.1")
|
||||
elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "invalid_good")
|
||||
set(CPACK_EXT_REQUESTED_VERSIONS "1;1.0")
|
||||
set(CPACK_EXTERNAL_REQUESTED_VERSIONS "1;1.0")
|
||||
elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "invalid_bad")
|
||||
set(CPACK_EXT_REQUESTED_VERSIONS "1")
|
||||
set(CPACK_EXTERNAL_REQUESTED_VERSIONS "1")
|
||||
elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "stage_and_package")
|
||||
set(CPACK_EXT_ENABLE_STAGING 1)
|
||||
set(CPACK_EXT_PACKAGE_SCRIPT "${CMAKE_CURRENT_LIST_DIR}/create_package.cmake")
|
||||
set(CPACK_EXTERNAL_ENABLE_STAGING 1)
|
||||
set(CPACK_EXTERNAL_PACKAGE_SCRIPT "${CMAKE_CURRENT_LIST_DIR}/create_package.cmake")
|
||||
endif()
|
||||
|
||||
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/f1.txt" test1)
|
@ -1,5 +1,13 @@
|
||||
include(RunCMake)
|
||||
|
||||
function(run_TargetWithCommand)
|
||||
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/TargetWithCommand-build)
|
||||
run_cmake(TargetWithCommand)
|
||||
set(RunCMake_TEST_NO_CLEAN 1)
|
||||
run_cmake_command(TargetWithCommand-build ${CMAKE_COMMAND} --build . --config Debug)
|
||||
endfunction()
|
||||
run_TargetWithCommand()
|
||||
|
||||
# Use a single build tree for a few tests without cleaning.
|
||||
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/CommandWithOutput-build)
|
||||
set(RunCMake_TEST_NO_CLEAN 1)
|
||||
|
@ -0,0 +1 @@
|
||||
Custom target with CSharp source
|
@ -0,0 +1,4 @@
|
||||
enable_language(CSharp)
|
||||
|
||||
add_custom_target(drive ALL SOURCES dummy.cs
|
||||
COMMAND ${CMAKE_COMMAND} -E echo "Custom target with CSharp source")
|
@ -161,3 +161,15 @@ endfunction()
|
||||
if(TEST_AFFINITY)
|
||||
run_TestAffinity()
|
||||
endif()
|
||||
|
||||
function(run_TestStdin)
|
||||
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/TestStdin)
|
||||
set(RunCMake_TEST_NO_CLEAN 1)
|
||||
file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
|
||||
file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
|
||||
file(WRITE "${RunCMake_TEST_BINARY_DIR}/CTestTestfile.cmake" "
|
||||
add_test(TestStdin \"${TEST_PRINT_STDIN}\")
|
||||
")
|
||||
run_cmake_command(TestStdin ${CMAKE_CTEST_COMMAND} -V)
|
||||
endfunction()
|
||||
run_TestStdin()
|
||||
|
1
Tests/RunCMake/CTestCommandLine/TestStdin-stdin.txt
Normal file
1
Tests/RunCMake/CTestCommandLine/TestStdin-stdin.txt
Normal file
@ -0,0 +1 @@
|
||||
Content for TestStdin
|
1
Tests/RunCMake/CTestCommandLine/TestStdin-stdout.txt
Normal file
1
Tests/RunCMake/CTestCommandLine/TestStdin-stdout.txt
Normal file
@ -0,0 +1 @@
|
||||
Content for TestStdin
|
1
Tests/RunCMake/FindBoost/NoCXX-stderr.txt
Normal file
1
Tests/RunCMake/FindBoost/NoCXX-stderr.txt
Normal file
@ -0,0 +1 @@
|
||||
.*
|
1
Tests/RunCMake/FindBoost/NoCXX.cmake
Normal file
1
Tests/RunCMake/FindBoost/NoCXX.cmake
Normal file
@ -0,0 +1 @@
|
||||
find_package(Boost)
|
@ -1,3 +1,4 @@
|
||||
include(RunCMake)
|
||||
|
||||
run_cmake(CMakePackage)
|
||||
run_cmake(NoCXX)
|
||||
|
@ -0,0 +1,5 @@
|
||||
cmake_minimum_required(VERSION 3.12)
|
||||
project(Test LANGUAGES C)
|
||||
|
||||
configure_file(PreventConfigureFileDupBuildRule.cmake PreventTargetAliasesDupBuildRule.cmake @ONLY)
|
||||
add_subdirectory(SubDirConfigureFileDup)
|
@ -286,3 +286,10 @@ function (run_PreventTargetAliasesDupBuildRule)
|
||||
run_ninja("${RunCMake_TEST_BINARY_DIR}" -w dupbuild=err)
|
||||
endfunction ()
|
||||
run_PreventTargetAliasesDupBuildRule()
|
||||
|
||||
function (run_PreventConfigureFileDupBuildRule)
|
||||
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/PreventConfigureFileDupBuildRule-build)
|
||||
run_cmake(PreventConfigureFileDupBuildRule)
|
||||
run_ninja("${RunCMake_TEST_BINARY_DIR}" -w dupbuild=err)
|
||||
endfunction()
|
||||
run_PreventConfigureFileDupBuildRule()
|
||||
|
@ -0,0 +1 @@
|
||||
configure_file(../PreventConfigureFileDupBuildRule.cmake PreventTargetAliasesDupBuildRule.cmake @ONLY)
|
@ -65,6 +65,13 @@ function(run_cmake test)
|
||||
else()
|
||||
set(maybe_timeout "")
|
||||
endif()
|
||||
if(RunCMake-stdin-file AND EXISTS ${top_src}/${RunCMake-stdin-file})
|
||||
set(maybe_input_file INPUT_FILE ${top_src}/${RunCMake-stdin-file})
|
||||
elseif(EXISTS ${top_src}/${test}-stdin.txt)
|
||||
set(maybe_input_file INPUT_FILE ${top_src}/${test}-stdin.txt)
|
||||
else()
|
||||
set(maybe_input_file "")
|
||||
endif()
|
||||
if(RunCMake_TEST_COMMAND)
|
||||
execute_process(
|
||||
COMMAND ${RunCMake_TEST_COMMAND}
|
||||
@ -74,6 +81,7 @@ function(run_cmake test)
|
||||
RESULT_VARIABLE actual_result
|
||||
ENCODING UTF8
|
||||
${maybe_timeout}
|
||||
${maybe_input_file}
|
||||
)
|
||||
else()
|
||||
if(RunCMake_GENERATOR_INSTANCE)
|
||||
@ -96,6 +104,7 @@ function(run_cmake test)
|
||||
RESULT_VARIABLE actual_result
|
||||
ENCODING UTF8
|
||||
${maybe_timeout}
|
||||
${maybe_input_file}
|
||||
)
|
||||
endif()
|
||||
set(msg "")
|
||||
|
3
Tests/RunCMake/ScriptMode/RunCMakeTest.cmake
Normal file
3
Tests/RunCMake/ScriptMode/RunCMakeTest.cmake
Normal file
@ -0,0 +1,3 @@
|
||||
include(RunCMake)
|
||||
|
||||
run_cmake_command(set_directory_properties ${CMAKE_COMMAND} -P ${RunCMake_SOURCE_DIR}/set_directory_properties.cmake)
|
1
Tests/RunCMake/ScriptMode/set_directory_properties.cmake
Normal file
1
Tests/RunCMake/ScriptMode/set_directory_properties.cmake
Normal file
@ -0,0 +1 @@
|
||||
set_directory_properties(PROPERTIES SOME_PROPERTY FALSE)
|
@ -1,7 +1,7 @@
|
||||
CMake Error at DirInput.cmake:[0-9]+ \(configure_file\):
|
||||
configure_file input location
|
||||
|
||||
.*/Tests/RunCMake/configure_file/.
|
||||
.*/Tests/RunCMake/configure_file
|
||||
|
||||
is a directory but a file was expected.
|
||||
Call Stack \(most recent call first\):
|
||||
|
18
Tests/RunCMake/print_stdin.c
Normal file
18
Tests/RunCMake/print_stdin.c
Normal file
@ -0,0 +1,18 @@
|
||||
#include <stdio.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
char buf[1024];
|
||||
size_t nIn = sizeof(buf);
|
||||
while (nIn == sizeof(buf)) {
|
||||
nIn = fread(buf, 1, sizeof(buf), stdin);
|
||||
if (nIn > 0) {
|
||||
size_t nOut;
|
||||
nOut = fwrite(buf, 1, nIn, stdout);
|
||||
if (nOut != nIn) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
@ -51,12 +51,12 @@ function(_Boost_FIND_COMPONENT_DEPENDENCIES component includedir _ret_libs)
|
||||
|
||||
# Special-case since it is part of mpi; look only in boost/mpi/python*
|
||||
if(component STREQUAL "mpi_python")
|
||||
set(_boost_DEPS "python")
|
||||
set(_boost_DEPS "python\${component_python_version}")
|
||||
set(library_component TRUE)
|
||||
set(_boost_unprocessed_headers ${_boost_mpi_python_headers})
|
||||
# Special-case since it is part of python; look only in boost/python/numpy*
|
||||
elseif(component STREQUAL "numpy")
|
||||
set(_boost_DEPS "python")
|
||||
set(_boost_DEPS "python\${component_python_version}")
|
||||
set(library_component TRUE)
|
||||
set(_boost_unprocessed_headers ${_boost_python_numpy_headers})
|
||||
# Special-case since it is a serialization variant; look in boost/serialization
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user