<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cmake-common, branch v6.0</title>
<subtitle>Utilities to help develop C++/CMake projects</subtitle>
<id>http://git.tensin.name/cmake-common/atom?h=v6.0</id>
<link rel='self' href='http://git.tensin.name/cmake-common/atom?h=v6.0'/>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/'/>
<updated>2026-03-30T14:29:36Z</updated>
<entry>
<title>REMOVE common.cmake</title>
<updated>2026-03-30T14:29:36Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-30T14:29:33Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=d5d02452c39d5ecaafa0e64e69b953fc6b7f617c'/>
<id>urn:sha1:d5d02452c39d5ecaafa0e64e69b953fc6b7f617c</id>
<content type='text'>
This repo literally started with common.cmake. However, I think that in
this day and age, it is, to put it mildly, outdated. Feature by feature:

* The C++ standard is better defined on a per-project basis, and it's
  very easy. Frankly, I'm surprised GCC still (as of March '26) defaults
  to something pre-11 (or at least I think it does).
* The warning options are, again, very easy to do on a per-project
  basis, and perhaps they should be defined there.
* The Windows-only defines (NOMINMAX, etc.) are, again, very easy to
  define on the project level, and don't warrant a separate file.
* The static runtime thing is more tricky. I use static runtime linking
  on Windows only, basically. And since about 3.15, it supports
  CMAKE_MSVC_RUNTIME_LIBRARY, which can set up the linking without my
  help. I don't care about the older versions enough to keep maintenance.
* Symbol stripping is better done when calling `cmake --install --strip`
  in modern CMake version. Otherwise, it's a simple compilation flag for
  Release builds.
* Installing PDBs does require some trickery though. It's simple enough:
  you just call install() with $&lt;TARGET_PDB_FILE&gt; or whatever it's
  called.
</content>
</entry>
<entry>
<title>workflows: clean up path ignore patterns</title>
<updated>2026-03-30T10:20:13Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-30T10:20:13Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=71ca79a6e8293254bb626a29a353b4c09f763b26'/>
<id>urn:sha1:71ca79a6e8293254bb626a29a353b4c09f763b26</id>
<content type='text'>
</content>
</entry>
<entry>
<title>move testing-only things into test/</title>
<updated>2026-03-30T09:54:40Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-30T09:49:10Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=4cd3a9cdf65a8f0b96de21420b98b8e02181e4f4'/>
<id>urn:sha1:4cd3a9cdf65a8f0b96de21420b98b8e02181e4f4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>remove examples "dynamic" &amp; "static"</title>
<updated>2026-03-30T09:34:43Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-30T09:32:26Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=00333c785ab02c7010c2e07981d5d792c218c9ee'/>
<id>urn:sha1:00333c785ab02c7010c2e07981d5d792c218c9ee</id>
<content type='text'>
To be specific the "dynamic" example is the new "simple". I don't need 3
basic example projects, one is enough.
</content>
</entry>
<entry>
<title>remove some dead code</title>
<updated>2026-03-30T09:07:53Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-30T09:07:53Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=723acde3927ac872720e672f797417a93da8a05f'/>
<id>urn:sha1:723acde3927ac872720e672f797417a93da8a05f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>project.os: refactoring</title>
<updated>2026-03-30T09:00:09Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-30T09:00:09Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=4401ef912c9e22404f7e8fd1b6e01d1d89d9c25a'/>
<id>urn:sha1:4401ef912c9e22404f7e8fd1b6e01d1d89d9c25a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>project.configuration: refactoring</title>
<updated>2026-03-30T09:00:00Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-30T09:00:00Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=1d2aa7c59ec3e7532064fa6ee41e94b526a7277a'/>
<id>urn:sha1:1d2aa7c59ec3e7532064fa6ee41e94b526a7277a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix PyLint warnings</title>
<updated>2026-03-30T08:18:37Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-30T08:18:37Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=d4ea34cc8191f7e669ff4f4166dc57723c4d7b90'/>
<id>urn:sha1:d4ea34cc8191f7e669ff4f4166dc57723c4d7b90</id>
<content type='text'>
</content>
</entry>
<entry>
<title>examples: finalize the removal of common.cmake</title>
<updated>2026-03-30T08:10:47Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-29T15:58:26Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=cbf3d06d35bc3ca194a331fd68281834f6f149a5'/>
<id>urn:sha1:cbf3d06d35bc3ca194a331fd68281834f6f149a5</id>
<content type='text'>
In addition, command line arguments have been overhauled for sanity and
consistency.
</content>
</entry>
<entry>
<title>project.boost.build: saner command line options</title>
<updated>2026-03-29T15:30:38Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-29T15:30:38Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=bf9fbee16ba02db86604965297a409294e48c341'/>
<id>urn:sha1:bf9fbee16ba02db86604965297a409294e48c341</id>
<content type='text'>
</content>
</entry>
</feed>
