Commit Graph

31656 Commits

Author SHA1 Message Date
Brad King
faaf82175c Merge topic 'deps-quiet-rc'
1336a76380 cmcldeps: Suppress rc dummy output

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6771
2021-12-01 09:41:13 -05:00
Brad King
9c3b97eb32 Merge topic 'mingw-strftime-crash'
992e6d7c5d mingw: fix calling convention for strftime()

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6762
2021-12-01 09:33:23 -05:00
Kitware Robot
2097f9a3a4 CMake Nightly Date Stamp 2021-12-01 00:02:16 -05:00
Christoph Reiter
992e6d7c5d mingw: fix calling convention for strftime()
`strftime` uses `__cdecl` and not `__stdcall`.  This was exposed by
refactoring in commit 26c9fbab46 (MINGW-w64: Fix string(TIMESTAMP) build
on 32bits, 2021-11-16, v3.22.0~1^2).

This fixes a crash creating a timestamp with clang+mingw-w64 targeting x86.

Fixes: #22939
2021-11-30 11:03:33 -05:00
Kitware Robot
8af730d87d CMake Nightly Date Stamp 2021-11-30 00:01:09 -05:00
Orgad Shaneh
1336a76380 cmcldeps: Suppress rc dummy output
Microsoft (R) Windows (R) Resource Compiler Version 10.0.10011.16384
Copyright (C) Microsoft Corporation.  All rights reserved.
2021-11-29 09:46:36 +02:00
Kitware Robot
f9a657ee5d CMake Nightly Date Stamp 2021-11-29 00:01:25 -05:00
Kitware Robot
dea324f804 CMake Nightly Date Stamp 2021-11-28 00:02:26 -05:00
Kitware Robot
56e6f68d5a CMake Nightly Date Stamp 2021-11-27 00:02:10 -05:00
Kitware Robot
9b6ad5d528 CMake Nightly Date Stamp 2021-11-26 00:01:07 -05:00
Kitware Robot
12d4372b58 CMake Nightly Date Stamp 2021-11-25 00:02:07 -05:00
Kitware Robot
dfc8eb90eb CMake Nightly Date Stamp 2021-11-24 00:01:45 -05:00
Brad King
501766ff4e Merge topic 'iwyu-windows'
0e58a5ea07 Source: Fix possible IWYU warnings in Windows generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6749
2021-11-23 10:00:22 -05:00
Brad King
4133c426c2 Merge topic 'env-init-configs'
5b1ed2a646 try_compile: Do not use CMAKE_BUILD_TYPE or CMAKE_CONFIGURATION_TYPES env vars

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6755
2021-11-23 09:55:17 -05:00
Kitware Robot
7fb6a778ce CMake Nightly Date Stamp 2021-11-23 00:01:07 -05:00
Brad King
5b1ed2a646 try_compile: Do not use CMAKE_BUILD_TYPE or CMAKE_CONFIGURATION_TYPES env vars
Since:

* commit e216b9bbd3 (cmake: Allow CMAKE_BUILD_TYPE to be set by
                     environment variable, 2021-06-29, v3.22.0-rc1~503^2~1)
* commit ef56eefc9b (cmake: Allow CMAKE_CONFIGURATION_TYPES to be set by
                     environment variable, 2021-06-29, v3.22.0-rc1~503^2)

the environment variables are supposed to provide defaults for settings
the user otherwise can control via cache entries.  However, they
accidentally affect `try_compile` projects too, which are supposed to be
programmatically controlled.

Fixes: #22935
2021-11-22 12:50:42 -05:00
Brad King
86047f75fc Merge topic 'cpack-productbuild-identifier'
7213ceb869 CPack/productbuild: Add option to customize product identifier

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6738
2021-11-22 11:26:43 -05:00
Brad King
30d1850d7a Merge topic 'automoc-cross-windows'
1e550ad02d AutoMoc: Only add the WIN32 define if the target system is Windows

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6751
2021-11-22 11:16:44 -05:00
Kitware Robot
75f36fe30d CMake Nightly Date Stamp 2021-11-22 00:01:11 -05:00
Kitware Robot
55d0c88309 CMake Nightly Date Stamp 2021-11-21 00:02:09 -05:00
Kitware Robot
c5806da192 CMake Nightly Date Stamp 2021-11-20 00:02:10 -05:00
Joerg Bornemann
1e550ad02d AutoMoc: Only add the WIN32 define if the target system is Windows
When there's no moc_predefs.h generated, we add the WIN32 define as
fallback.

Before this change, we added the WIN32 define if the host system was
Windows.  That's wrong when cross-compiling.  Now we're checking whether
the target system is Windows.

Fixes: #22933
2021-11-19 17:56:19 +01:00
NAKAMURA Takumi
0e58a5ea07 Source: Fix possible IWYU warnings in Windows generators 2021-11-20 00:50:33 +09:00
Brad King
4a3480a786 Merge topic 'custom-command-unique_ptr'
3bb2542535 cmMakefile: Simplify Add*Command and adopt to cmAddCustom*Command
c46b041a3b cmLocalGenerator: Simplify Add{Custom,Utility}Command
68b4e3b255 cmGlobalVisualStudio8Generator: Fix the misaligned argument, stdPipesUTF8
e37511ae7e cmMakefile: Simplify detail:::Add{Custom,Utility}Command
90e1206f25 cmMakefile: Introduce GeneratorAction as the class.
9b31a97748 cmCustomCommand: Move constructor arguments to individual setters
d0158b765b cmMakefile: Move CMP0116 lookup into Add{Custom,Utility}Command

Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6708
2021-11-19 09:06:54 -05:00
Brad King
3519c19091 Merge topic 'ghs_initial_setup'
aa59eaac4f GHS: Allow setting GHS variables from toolchain file
ab6f0b51b1 GHS: Add note about -T and path style
a55b5c4e18 GHS: Update BSP selection logic
0427f22539 GHS: Update RTOS selection logic
e006b87cc6 GHS: GHSMULTI - Update documentation to match implementation
83eb5695e9 GHS: Update toolset selection logic
8114ddcad1 GHS: Continue splitting variables used by generator
831607889f GHS: Update selection of primaryTarget in MULTI project file
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6715
2021-11-19 09:05:35 -05:00
Kitware Robot
7d1cb6496e CMake Nightly Date Stamp 2021-11-19 00:02:14 -05:00
Greg Fiumara
7213ceb869 CPack/productbuild: Add option to customize product identifier
This adds a new option, CPACK_PRODUCTBUILD_IDENTIFIER, which allows
for customization of the productbuild product identifier within the
CPack productbuild generator.

Fixes: #20830
2021-11-18 13:01:35 -05:00
NAKAMURA Takumi
3bb2542535 cmMakefile: Simplify Add*Command and adopt to cmAddCustom*Command 2021-11-18 12:02:38 -05:00
NAKAMURA Takumi
c46b041a3b cmLocalGenerator: Simplify Add{Custom,Utility}Command 2021-11-18 12:02:38 -05:00
NAKAMURA Takumi
68b4e3b255 cmGlobalVisualStudio8Generator: Fix the misaligned argument, stdPipesUTF8
The call to AddCustomCommandToTarget for "Checking File Globs" had misaligned
arguments and previously passed `stdPipesUTF8` as `escapeOldStyle`.

For now, set `escapeOldStyle` as `true`. Also `stdPipesUTF8` is `true` here.
2021-11-18 12:02:37 -05:00
NAKAMURA Takumi
e37511ae7e cmMakefile: Simplify detail:::Add{Custom,Utility}Command
Note 1: `detail::AddCustomCommandToTarget()` resets cc,
since cc is not moved away.

Note 2: In `detail::AddUtilityCommand()`, a few vars are preserved
before using. Their refs will be alive in most cases, but cc might
be destroyed in the future.
2021-11-18 12:02:37 -05:00
NAKAMURA Takumi
90e1206f25 cmMakefile: Introduce GeneratorAction as the class. 2021-11-18 12:02:37 -05:00
NAKAMURA Takumi
9b31a97748 cmCustomCommand: Move constructor arguments to individual setters
Make `cmCustomCommand` have just only default constructor.
Use each setter instead.  This follows the builder pattern.

Introduce `cc::SetOutputs(std::string output)`.
This will be used later, as substitution for `cc::SetOutputs({output})`.
2021-11-18 12:02:37 -05:00
NAKAMURA Takumi
d0158b765b cmMakefile: Move CMP0116 lookup into Add{Custom,Utility}Command
Avoid repeating it at every call site.
2021-11-18 12:02:37 -05:00
Brad King
ff8c3acc0f CMake 3.22.0 2021-11-18 10:51:22 -05:00
Brad King
6f613502f8 Merge topic 'fix-mingw32-gcc11-ice'
26c9fbab46 MINGW-w64: Fix string(TIMESTAMP) build on 32bits.
f0eae9292b cmTimestamp: Declare component buffer before MinGW-specific code

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6737
2021-11-18 10:38:23 -05:00
Antons Jeļkins
26c9fbab46 MINGW-w64: Fix string(TIMESTAMP) build on 32bits.
Rephrase the string(TIMESTAMP) implementation not to
cause gcc-11 ICE on MSYS2/mingw32.

Fixes: #22916
2021-11-18 09:17:38 -05:00
Antons Jeļkins
f0eae9292b cmTimestamp: Declare component buffer before MinGW-specific code 2021-11-18 09:17:38 -05:00
Brad King
e585dcedea Merge topic 'IntelLLVM-Fortran-copy-mod'
209b896f2c IntelLLVM: Enable Fortran module rebuild avoidance in Makefile generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6740
2021-11-18 08:59:18 -05:00
Brad King
cb39d50e21 Merge topic 'IntelLLVM-Fortran-copy-mod' into release-3.22
209b896f2c IntelLLVM: Enable Fortran module rebuild avoidance in Makefile generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6740
2021-11-18 08:59:17 -05:00
Kitware Robot
5e269798cc CMake Nightly Date Stamp 2021-11-18 00:02:14 -05:00
Brad King
209b896f2c IntelLLVM: Enable Fortran module rebuild avoidance in Makefile generators
The Makefile generators use an internal `cmake -E cmake_copy_f90_mod`
tool to avoid rebuilding module consumers when the `.mod` content
changes only in a trivial way (e.g. the time it was built).  This is
done with logic specific to each vendor's module file format.  Enable
the "Intel" format support when using the IntelLLVM compiler (ifx) too.

Issue: #22922
2021-11-17 10:41:30 -05:00
Brad King
b4bdedaf4e Merge topic 'iwyu-xcode'
67c75064d1 Source: Fix IWYU warnings in Xcode generators

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6729
2021-11-17 08:46:45 -05:00
Kitware Robot
d2e10c4d8d CMake Nightly Date Stamp 2021-11-17 00:01:10 -05:00
NAKAMURA Takumi
67c75064d1 Source: Fix IWYU warnings in Xcode generators 2021-11-16 21:06:13 +09:00
Kitware Robot
49c870b38f CMake Nightly Date Stamp 2021-11-16 00:01:53 -05:00
Fred Baksik
aa59eaac4f GHS: Allow setting GHS variables from toolchain file
* Update generator to use the current variable definition,
  not the CACHE definition.
* Avoid overwriting toolchain variables and avoid developer warnings
  when setting up the GHS variables.
  -- A cache entry is only required when:
     a) The toolchain uses set( CACHE ) to set the variable
     b) A -D or preset value was used to set the variable

     The cache entry is required so that the TYPE gets set properly.

  -- Avoid the Policy CMP0126 warnings:
     setting cache variable when normal variable exists
* Move GHS_PRIMARY_TARGET back into area so non-GHS generator
  toolchain file can trigger the OS search.
2021-11-15 13:15:12 -05:00
Fred Baksik
a55b5c4e18 GHS: Update BSP selection logic
Selection of a BSP only needs to be performed if not set by user.

Remove all the logic for printing error and status messages about BSP
selection. These messages also breaks CMake tests.

NOTE: If BSP selection fails then the compiler checks will result in
a build error.  The build error will report that the BSP does not exist.
2021-11-15 13:15:11 -05:00
Fred Baksik
0427f22539 GHS: Update RTOS selection logic
Selection of an RTOS only needs to be performed if not set by user.

Avoid CMake developer warnings for setting GHS_OS_DIR multiple times.
Instead only set it once after searching has been performed.

Remove all the logic for printing error and status messages about RTOS
selection.  This was broken and reporting incorrect messages.  These
messages also breaks CMake tests.

NOTE: If RTOS selection fails then the compiler checks will result in
a build error.  The build error will report that the RTOS
"GHS_OS_DIR-NOT-SPECIFIED" does not exist.
2021-11-15 13:15:11 -05:00
Fred Baksik
83eb5695e9 GHS: Update toolset selection logic
-- Ensure that GHS_TOOLSET_ROOT is used as a path
   * Converts directory path slashes to CMake style
-- Use ComparePath() to properly check for path changes of build tool
   * Accounts for Windows file-system case insensitivity.
-- Don't print message "defaulting" messages (this causes CMake test failures)
-- Don't force update CMAKE_GENERATOR_TOOLSET back into cache when `-T`
   is not used on initial configure. This change avoids an unnessary
   error message when accidentally using `-T` in subsequent runs but the same
   tools are always used.
-- Use IssueMessage() for error messages.
2021-11-15 13:15:10 -05:00