# Development

**URL:** https://discourse.cmake.org/c/development/9.md?page=15

[Latest](https://discourse.cmake.org/latest.md) · [Categories](https://discourse.cmake.org/categories.md) · [Tags](https://discourse.cmake.org/tags.md)

**Page:** 16

---

## [Is the Borland Makefiles generator still relevant?](https://discourse.cmake.org/t/is-the-borland-makefiles-generator-still-relevant/5723)

<div class="topic-metadata">

**Author:** [@craig.scott](https://discourse.cmake.org/u/craig.scott)\
**Replies:** 5\
**Last updated:** [May 28, 2022, 3:28pm UTC](https://discourse.cmake.org/t/is-the-borland-makefiles-generator-still-relevant/5723 "2022-05-28T15:28:52Z")

</div>

I’m wondering how much effort it’s worth spending on continuing to support the Borland Makefiles generator. Does anyone know whether it is still actively supported? The history of Borland as a company is complex, eventua…

---

## [Package-config generated by \`install(EXPORT)\` is inconsistent with enforcing dependency checking](https://discourse.cmake.org/t/package-config-generated-by-install-export-is-inconsistent-with-enforcing-dependency-checking/5661)

<div class="topic-metadata">

**Author:** [@dbahadir](https://discourse.cmake.org/u/dbahadir)\
**Replies:** 2\
**Last updated:** [May 12, 2022, 2:59pm UTC](https://discourse.cmake.org/t/package-config-generated-by-install-export-is-inconsistent-with-enforcing-dependency-checking/5661 "2022-05-12T14:59:51Z")

</div>

Introduction: When installing an export-set using install(EXPORT) a package-config script is generated which, when loaded via a find\_package call, creates imported targets and also sets their INTERFACE\_LINK\_LIBRARIES pro…

---

## [Every time when project is compiled , .elf(executable) is changing.](https://discourse.cmake.org/t/every-time-when-project-is-compiled-elf-executable-is-changing/5633)

<div class="topic-metadata">

**Author:** [@Bhavika](https://discourse.cmake.org/u/Bhavika)\
**Replies:** 4\
**Last updated:** [May 12, 2022, 2:06pm UTC](https://discourse.cmake.org/t/every-time-when-project-is-compiled-elf-executable-is-changing/5633 "2022-05-12T14:06:42Z")

</div>

Hello, Every time when project is compiled there should be a change only in time stamp in executable file . But there are few addresses which are updating regularly when project is compiled. Is this a normal behavior of…

---

## [Add target\_link\_features for upcoming \<LANG\>\_LINK\_LIBRARY\_USING\_FEATURE?](https://discourse.cmake.org/t/add-target-link-features-for-upcoming-lang-link-library-using-feature/5611)

<div class="topic-metadata">

**Author:** [@leha-bot](https://discourse.cmake.org/u/leha-bot)\
**Replies:** 2\
**Last updated:** [May 5, 2022, 7:59am UTC](https://discourse.cmake.org/t/add-target-link-features-for-upcoming-lang-link-library-using-feature/5611 "2022-05-05T07:59:21Z")

</div>

I think that it would be great to add the target\_link\_features() for upcoming \<LANG\>\_LINK\_LIBRARY\_USING\_FEATURE and corresponding \[INTERFACE\_\]\_LINK\_FEATURES for propagating features between targets. The possible caveats…

---

## [How to write a new generator?](https://discourse.cmake.org/t/how-to-write-a-new-generator/5584)

<div class="topic-metadata">

**Author:** [@PeterBocan](https://discourse.cmake.org/u/PeterBocan)\
**Replies:** 5\
**Last updated:** [May 2, 2022, 3:03pm UTC](https://discourse.cmake.org/t/how-to-write-a-new-generator/5584 "2022-05-02T15:03:54Z")

</div>

Hello, I am looking into contributing and extending CMake with a new kind of generator for a Please build system (https://please.build). I have been looking into the codebase but I am lost a bit. Namely, can you describ…

---

## [\[API Design\]\[C++ Modules\]: Source listings and interface properties](https://discourse.cmake.org/t/api-design-c-modules-source-listings-and-interface-properties/5389)

<div class="topic-metadata">

**Author:** [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)\
**Replies:** 15\
**Last updated:** [April 19, 2022, 10:08pm UTC](https://discourse.cmake.org/t/api-design-c-modules-source-listings-and-interface-properties/5389 "2022-04-19T22:08:04Z")

</div>

This issue is to track the proposed way to specify sources for C++ modules. Header units will be mentioned, but probably have some other corner cases to work out that will need better implementations to see where any dif…

---

## [Visual Studio 2022 Preview's MSVC fails to compile the latest CMake sources](https://discourse.cmake.org/t/visual-studio-2022-previews-msvc-fails-to-compile-the-latest-cmake-sources/5445)

<div class="topic-metadata">

**Author:** [@objectx](https://discourse.cmake.org/u/objectx)\
**Replies:** 1\
**Last updated:** [April 12, 2022, 11:57am UTC](https://discourse.cmake.org/t/visual-studio-2022-previews-msvc-fails-to-compile-the-latest-cmake-sources/5445 "2022-04-12T11:57:00Z")

</div>

Missing some #include? C:\\buildkite-agent\\builds\\windows-3\\objectx\\cmake\\Utilities\\cmcurl\\lib\\curl\_sspi.c(155,29): error C2065: 'strdup': undeclared identifier \[C:\\buildkite-agent\\builds\\windows-3\\objectx\\cmake\\00.BUILD…

---

## [Duplicate base directories with file sets](https://discourse.cmake.org/t/duplicate-base-directories-with-file-sets/5426)

<div class="topic-metadata">

**Author:** [@craig.scott](https://discourse.cmake.org/u/craig.scott)\
**Replies:** 1\
**Last updated:** [April 12, 2022, 11:44am UTC](https://discourse.cmake.org/t/duplicate-base-directories-with-file-sets/5426 "2022-04-12T11:44:12Z")

</div>

I just discovered by accident that target\_sources() does not complain if you add the same BASE\_DIR to a file set more than once. It appears this works fine with no side effects, as far as I could tell. It turns out this …

---

## [CMake 3.23.0 build with MinGW-w64 fails with GetAppExecLink() issue](https://discourse.cmake.org/t/cmake-3-23-0-build-with-mingw-w64-fails-with-getappexeclink-issue/5330)

<div class="topic-metadata">

**Author:** [@brechtsanders](https://discourse.cmake.org/u/brechtsanders)\
**Replies:** 5\
**Last updated:** [March 30, 2022, 7:29pm UTC](https://discourse.cmake.org/t/cmake-3-23-0-build-with-mingw-w64-fails-with-getappexeclink-issue/5330 "2022-03-30T19:29:43Z")

</div>

Building CMake 3.23.0 with MinGW-w64 (in my case native on Windows using the standalone build from https://winlibs.com/) fails because GetAppExecLink() is not defined. I was able to build after applying the path below. …

---

## [CPack.Info.plist.in seems to be unused](https://discourse.cmake.org/t/cpack-info-plist-in-seems-to-be-unused/5256)

<div class="topic-metadata">

**Author:** [@craig.scott](https://discourse.cmake.org/u/craig.scott)\
**Replies:** 4\
**Last updated:** [March 21, 2022, 8:09pm UTC](https://discourse.cmake.org/t/cpack-info-plist-in-seems-to-be-unused/5256 "2022-03-21T20:09:47Z")

</div>

Does anyone know the purpose of the file at Modules/Internal/CPack/CPack.Info.plist.in in CMake’s repository? I can’t find anything that seems to reference it. I’m not even sure if it was ever actually used, even though …

---

## [Idea for CMake-based package manager](https://discourse.cmake.org/t/idea-for-cmake-based-package-manager/5197)

<div class="topic-metadata">

**Author:** [@benthevining](https://discourse.cmake.org/u/benthevining)\
**Replies:** 9\
**Last updated:** [March 17, 2022, 8:28am UTC](https://discourse.cmake.org/t/idea-for-cmake-based-package-manager/5197 "2022-03-17T08:28:39Z")

</div>

I’ve been looking into Conan, but what bothers me about it is the fact that from within the project, you have to change the CMake code, to link against a CONAN\_PKG::Target target. I think the best solution is for the pr…

---

## [CMake version 3.23 and 3.22 issue with IAR](https://discourse.cmake.org/t/cmake-version-3-23-and-3-22-issue-with-iar/5228)

<div class="topic-metadata">

**Author:** [@Martial](https://discourse.cmake.org/u/Martial)\
**Replies:** 2\
**Last updated:** [March 17, 2022, 7:43am UTC](https://discourse.cmake.org/t/cmake-version-3-23-and-3-22-issue-with-iar/5228 "2022-03-17T07:43:29Z")

</div>

Hello, From the last version of CMake (3.22 and 3.23), the build with the IAR compiler failed. A strange argument in a new version of CMake which causes the failure of the build is: “–eec++”. I have the following logs…

---

## [Automatic fallback to pkgconfig if \`find\_package\` fails?](https://discourse.cmake.org/t/automatic-fallback-to-pkgconfig-if-find-package-fails/5217)

<div class="topic-metadata">

**Author:** [@SamuelMarks](https://discourse.cmake.org/u/SamuelMarks)\
**Replies:** 3\
**Last updated:** [March 16, 2022, 6:15am UTC](https://discourse.cmake.org/t/automatic-fallback-to-pkgconfig-if-find-package-fails/5217 "2022-03-16T06:15:55Z")

</div>

Wherever dependencies are installed, CMake should be able to find them. OS package-manager, vcpkg | conan (and friends), explicit submodule, explicit FetchContent | file(DOWNLOAD. Use-cases: much faster build times in C…

---

## [is there a way to collect packages list?](https://discourse.cmake.org/t/is-there-a-way-to-collect-packages-list/5053)

<div class="topic-metadata">

**Author:** [@shouhuanxiaoji](https://discourse.cmake.org/u/shouhuanxiaoji)\
**Replies:** 3\
**Last updated:** [February 21, 2022, 3:38am UTC](https://discourse.cmake.org/t/is-there-a-way-to-collect-packages-list/5053 "2022-02-21T03:38:36Z")

</div>

HI, everyone I am writing a tool related to cmake, it will collect all of packages declared in cmakelists.txt by every command find\_package. so given a cmake-related project, this tool will output a json object, then t…

---

## [cmake\_language(DEFER) not evaluating variable references is inconsistent](https://discourse.cmake.org/t/cmake-language-defer-not-evaluating-variable-references-is-inconsistent/2061)

<div class="topic-metadata">

**Author:** [@craig.scott](https://discourse.cmake.org/u/craig.scott)\
**Replies:** 7\
**Last updated:** [February 20, 2022, 9:07pm UTC](https://discourse.cmake.org/t/cmake-language-defer-not-evaluating-variable-references-is-inconsistent/2061 "2022-02-20T21:07:01Z")

</div>

The docs for the new cmake\_language(DEFER) subcommand added for CMake 3.19 say the following: Variable references in arguments are evaluated at the time the deferred call is executed. This makes this command behave d…

---

## [CMake 3.23.0-rc1 | Exposes illegal generator expression](https://discourse.cmake.org/t/cmake-3-23-0-rc1-exposes-illegal-generator-expression/4984)

<div class="topic-metadata">

**Author:** [@buildSystemPerson](https://discourse.cmake.org/u/buildSystemPerson)\
**Replies:** 9\
**Last updated:** [February 15, 2022, 10:47pm UTC](https://discourse.cmake.org/t/cmake-3-23-0-rc1-exposes-illegal-generator-expression/4984 "2022-02-15T22:47:51Z")

</div>

The following generator expression is causing issues in cmake 3.23.0-rc1 set(foobar TRUE) target\_link\_libraries(my\_library PRIVATE $\<$\<OR:$\<CONFIG:Debug\>,$\<BOOL:${foobar}\>\>: advapi32.lib …

---

## [What's the history behind choosing -D to pass cache variables on the command line](https://discourse.cmake.org/t/whats-the-history-behind-choosing-d-to-pass-cache-variables-on-the-command-line/5014)

<div class="topic-metadata">

**Author:** [@alcroito](https://discourse.cmake.org/u/alcroito)\
**Replies:** 2\
**Last updated:** [February 15, 2022, 5:25pm UTC](https://discourse.cmake.org/t/whats-the-history-behind-choosing-d-to-pass-cache-variables-on-the-command-line/5014 "2022-02-15T17:25:21Z")

</div>

I was wondering if anyone knew why was -D chosen as the option used to pass cache variable on the command line. Was it simply because -D is used by compiler frontends to pass preprocessor definitions, and that sort of m…

---

## [Atomic.a not present on single threaded architecture but CMake assumes it is.](https://discourse.cmake.org/t/atomic-a-not-present-on-single-threaded-architecture-but-cmake-assumes-it-is/4951)

<div class="topic-metadata">

**Author:** [@SamuraiCrow](https://discourse.cmake.org/u/SamuraiCrow)\
**Replies:** 3\
**Last updated:** [February 7, 2022, 3:01pm UTC](https://discourse.cmake.org/t/atomic-a-not-present-on-single-threaded-architecture-but-cmake-assumes-it-is/4951 "2022-02-07T15:01:34Z")

</div>

/opt/wasi-sdk/bin/clang --target=wasm32-wasi --sysroot=/opt/wasi-sdk/share/wasi-sysroot -mno-atomics -DCHECK\_FUNCTION\_EXISTS=\_\_atomic\_fetch\_add\_4 -Werror=unguarded-availability-new CMakeFiles/cmTC\_44e46.dir/CheckFunction…

---

## [compiling CMake 3.16 in ubuntu on arm](https://discourse.cmake.org/t/compiling-cmake-3-16-in-ubuntu-on-arm/4962)

<div class="topic-metadata">

**Author:** [@Michael\_Knight](https://discourse.cmake.org/u/Michael_Knight)\
**Replies:** 4\
**Last updated:** [February 4, 2022, 2:15pm UTC](https://discourse.cmake.org/t/compiling-cmake-3-16-in-ubuntu-on-arm/4962 "2022-02-04T14:15:09Z")

</div>

I am running Ubuntu trusty 14.04 and need cmake 3.16 to build musescore. I went ahead and just got newest source v. 3.2.2. Bootstrap runs but make fails with: \[ 97%\] Built target cpack Linking CXX executable ../bin/ctes…

---

## [Support custom Object file name in Visual Studio generator](https://discourse.cmake.org/t/support-custom-object-file-name-in-visual-studio-generator/4945)

<div class="topic-metadata">

**Author:** [@kdonev](https://discourse.cmake.org/u/kdonev)\
**Replies:** 3\
**Last updated:** [February 3, 2022, 1:32pm UTC](https://discourse.cmake.org/t/support-custom-object-file-name-in-visual-studio-generator/4945 "2022-02-03T13:32:28Z")

</div>

I generate Visual Studio projects from cmake and use them for development in the Studio. Now I want to run build cache tool (GitHub - mbitsnbites/buildcache: A build cache) to speed my build times. The tool requires to …

---

## [remove unnecessary target dependencies in Fortran](https://discourse.cmake.org/t/remove-unnecessary-target-dependencies-in-fortran/4929)

<div class="topic-metadata">

**Author:** [@cferenba](https://discourse.cmake.org/u/cferenba)\
**Replies:** 4\
**Last updated:** [February 1, 2022, 8:42pm UTC](https://discourse.cmake.org/t/remove-unnecessary-target-dependencies-in-fortran/4929 "2022-02-01T20:42:40Z")

</div>

We’re deploying a CMake build system with the Ninja generator for a large, mostly Fortran code base, and trying to understand why we don’t seem to get the build parallelism we are expecting. We suspect that, when librar…

---

## [Easily incorporate 3rd party CMake modules](https://discourse.cmake.org/t/easily-incorporate-3rd-party-cmake-modules/4875)

<div class="topic-metadata">

**Author:** [@buildSystemPerson](https://discourse.cmake.org/u/buildSystemPerson)\
**Replies:** 6\
**Last updated:** [January 26, 2022, 1:14pm UTC](https://discourse.cmake.org/t/easily-incorporate-3rd-party-cmake-modules/4875 "2022-01-26T13:14:13Z")

</div>

Incorporating 3rd party cmake modules is a bit of a pain. I have experimented with multiple approaches (FetchContent, git-submodules, etc.). But ultimately I’d like a very simple solution that doesn’t require too much C…

---

## [How to Solve this Parse error ??](https://discourse.cmake.org/t/how-to-solve-this-parse-error/4890)

<div class="topic-metadata">

**Author:** [@vasantharaj](https://discourse.cmake.org/u/vasantharaj)\
**Replies:** 1\
**Last updated:** [January 24, 2022, 12:31pm UTC](https://discourse.cmake.org/t/how-to-solve-this-parse-error/4890 "2022-01-24T12:31:18Z")

</div>

CMake Error at CMakeLists.txt:19: Parse error. Expected a command name, got unquoted argument with text “$”. – Configuring incomplete, errors occurred! Code Here:: set(all ${MAKE\_TARGETS}) $(foreach BG, $(BGROUPS),…

---

## [I think CMake SWIG module lacks a PACKAGE option](https://discourse.cmake.org/t/i-think-cmake-swig-module-lacks-a-package-option/4888)

<div class="topic-metadata">

**Author:** [@lechos22](https://discourse.cmake.org/u/lechos22)\
**Replies:** 2\
**Last updated:** [January 23, 2022, 5:43pm UTC](https://discourse.cmake.org/t/i-think-cmake-swig-module-lacks-a-package-option/4888 "2022-01-23T17:43:47Z")

</div>

SWIG and Java SWIG has an option -package for specifying java package path, but I cannot find an easy way for doing it with CMake. How about adding it?

---

## [Feature request: Universal enforcement of CMake script formatting](https://discourse.cmake.org/t/feature-request-universal-enforcement-of-cmake-script-formatting/4852)

<div class="topic-metadata">

**Author:** [@tom](https://discourse.cmake.org/u/tom)\
**Replies:** 3\
**Last updated:** [January 18, 2022, 12:24pm UTC](https://discourse.cmake.org/t/feature-request-universal-enforcement-of-cmake-script-formatting/4852 "2022-01-18T12:24:09Z")

</div>

Hi, I think official enforcement of “correct” CMake code formatting would make reading and writing CMake code significantly faster and easier. I’d like to see a tool from Kitware that ships with CMake and can be run on…

---

## [How to Defining the ASM assembler in the CMake script??](https://discourse.cmake.org/t/how-to-defining-the-asm-assembler-in-the-cmake-script/4859)

<div class="topic-metadata">

**Author:** [@vasantharaj](https://discourse.cmake.org/u/vasantharaj)\
**Replies:** 1\
**Last updated:** [January 16, 2022, 6:14pm UTC](https://discourse.cmake.org/t/how-to-defining-the-asm-assembler-in-the-cmake-script/4859 "2022-01-16T18:14:23Z")

</div>

enable\_language(C ASM) include(“path/toolchain.cmake”)

---

## [Add WindowsKernel platform support](https://discourse.cmake.org/t/add-windowskernel-platform-support/2833)

<div class="topic-metadata">

**Author:** [@sean](https://discourse.cmake.org/u/sean)\
**Replies:** 7\
**Last updated:** [January 16, 2022, 3:02pm UTC](https://discourse.cmake.org/t/add-windowskernel-platform-support/2833 "2022-01-16T15:02:25Z")

</div>

I’m utilizing CMake to build Windows kernel drivers, but currently I have to drop a WindowsKernel.cmake into the Modules/Platforms dir to make it work. Could the following be added to CMake to support his natively? Modu…

---

## [Clarifications needed for CMAKE\_\<LANG\>\_LINKER\_PREFERENCE\* variables](https://discourse.cmake.org/t/clarifications-needed-for-cmake-lang-linker-preference-variables/4466)

<div class="topic-metadata">

**Author:** [@craig.scott](https://discourse.cmake.org/u/craig.scott)\
**Replies:** 2\
**Last updated:** [January 15, 2022, 12:07am UTC](https://discourse.cmake.org/t/clarifications-needed-for-cmake-lang-linker-preference-variables/4466 "2022-01-15T00:07:13Z")

</div>

The docs for CMAKE\_\<LANG\>\_LINKER\_PREFERENCE\_PROPAGATES don’t state whether CMake sets this variable and expects it to be read-only, or whether it is intended to be set by the project to indicate it’s preference. Another …

---

## [Generator for eclipse plugin for stm32 microcontrollers](https://discourse.cmake.org/t/generator-for-eclipse-plugin-for-stm32-microcontrollers/1667)

<div class="topic-metadata">

**Author:** [@dudmuck](https://discourse.cmake.org/u/dudmuck)\
**Replies:** 13\
**Last updated:** [January 7, 2022, 2:24am UTC](https://discourse.cmake.org/t/generator-for-eclipse-plugin-for-stm32-microcontrollers/1667 "2022-01-07T02:24:50Z")

</div>

I’m looking into creating a new generator. I’m able too see the Name given to add\_custom\_target from target-\>GetName(), and the target type is cmStateEnums::UTILITY. I am able to see the full path of generated file by…

---

## [Feature Request: list() commands should write to CACHE variables](https://discourse.cmake.org/t/feature-request-list-commands-should-write-to-cache-variables/4685)

<div class="topic-metadata">

**Author:** [@KUGA2](https://discourse.cmake.org/u/KUGA2)\
**Replies:** 3\
**Last updated:** [January 3, 2022, 4:09pm UTC](https://discourse.cmake.org/t/feature-request-list-commands-should-write-to-cache-variables/4685 "2022-01-03T16:09:35Z")

</div>

Today we stumbled upon an error in our CMake codebase that comes from CMP0126 = NEW. It was very hard to find, we were sure that there is no normal variable. We located the culprit in list() on CACHE variables. This li…

[Previous page](https://discourse.cmake.org/c/development/9.md?page=14)

[Next page](https://discourse.cmake.org/c/development/9.md?page=16)
