# where is document for Rule Placeholder variables like \<SOURCE\>

**URL:** <https://discourse.cmake.org/t/where-is-document-for-rule-placeholder-variables-like-source/7059>\
**Category:** Code\
**Created:** [December 13, 2022, 2:15am UTC](https://discourse.cmake.org/t/where-is-document-for-rule-placeholder-variables-like-source/7059 "2022-12-13T02:15:13Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![FishAndBird](https://discourse.cmake.org/user_avatar/discourse.cmake.org/fishandbird/32/2996_2.png) [@FishAndBird](https://discourse.cmake.org/u/FishAndBird)\
**Post date:** [December 13, 2022, 2:15am UTC](https://discourse.cmake.org/t/where-is-document-for-rule-placeholder-variables-like-source/7059/1 "2022-12-13T02:15:13Z")

</div>

I see there are rules with placeholder variables likes

```auto
set(CMAKE_C_COMPILE_OBJECT "<CMAKE_C_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT> -c <SOURCE>")

```

Though i can find it in source `Source/cmRulePlaceholderExpander.cxx`,  
I can not find out any manual about `<DEFINES>`, `<SOURCE>`, and etc on [https://cmake.org/cmake/help](https://cmake.org/cmake/help) where I hoped it be.

Any help will be appreciated !

---

<div class="post-metadata">

**Author:** ![ben.boeckel](https://discourse.cmake.org/letter_avatar_proxy/v4/letter/b/ea5d25/32.png) [@ben.boeckel](https://discourse.cmake.org/u/ben.boeckel)\
**Post date:** [December 13, 2022, 12:29pm UTC](https://discourse.cmake.org/t/where-is-document-for-rule-placeholder-variables-like-source/7059/2 "2022-12-13T12:29:08Z")

</div>

AFAIK, these tend to be treated as internal implementation details and aren’t really documented. If anything, they’re actually useful to toolchain file maintainers, but even there, they’re usually “figure it out once and then leave it alone”.

Cc: @brad.king

---

<div class="post-metadata">

**Author:** ![FishAndBird](https://discourse.cmake.org/user_avatar/discourse.cmake.org/fishandbird/32/2996_2.png) [@FishAndBird](https://discourse.cmake.org/u/FishAndBird)\
**Post date:** [December 14, 2022, 3:53am UTC](https://discourse.cmake.org/t/where-is-document-for-rule-placeholder-variables-like-source/7059/3 "2022-12-14T03:53:25Z")

</div>

> [@ben.boeckel](#):
>
> toolchain

In my team, they just copy from each other, and make some mistakes here and there.  
Maybe somebody figure it out once and then left for new job, so sad!
