<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cmake-common, branch v6.0.1</title>
<subtitle>Utilities to help develop C++/CMake projects</subtitle>
<id>http://git.tensin.name/cmake-common/atom?h=v6.0.1</id>
<link rel='self' href='http://git.tensin.name/cmake-common/atom?h=v6.0.1'/>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/'/>
<updated>2026-05-17T15:32:41Z</updated>
<entry>
<title>project.build: fix for CMP0144</title>
<updated>2026-05-17T15:32:41Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-05-17T15:32:36Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=899a49f46c62aaebdc2f0988496c493f0963248b'/>
<id>urn:sha1:899a49f46c62aaebdc2f0988496c493f0963248b</id>
<content type='text'>
At least I hope that it is.
</content>
</entry>
<entry>
<title>update my email</title>
<updated>2026-05-17T11:15:21Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-05-17T11:15:21Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=cc035d026cd223cc611305334e28428d2b9369cd'/>
<id>urn:sha1:cc035d026cd223cc611305334e28428d2b9369cd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add .git-blame-ignore-revs</title>
<updated>2026-05-17T11:05:26Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-05-17T11:05:26Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=4067173a10ff2e56225e27e0c35404a9a2f2b984'/>
<id>urn:sha1:4067173a10ff2e56225e27e0c35404a9a2f2b984</id>
<content type='text'>
</content>
</entry>
<entry>
<title>reformat everything for fun</title>
<updated>2026-05-17T11:02:51Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-05-17T11:02:51Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=64899879b001d08efd5b62b97daa85d5c825c1ee'/>
<id>urn:sha1:64899879b001d08efd5b62b97daa85d5c825c1ee</id>
<content type='text'>
</content>
</entry>
<entry>
<title>workflows: add Python black run</title>
<updated>2026-05-17T10:55:19Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-05-17T10:55:19Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=3b630af52350a74fec71fc019631f82a077700b4'/>
<id>urn:sha1:3b630af52350a74fec71fc019631f82a077700b4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>workflows: reschedule for my convenience</title>
<updated>2026-04-12T16:38:08Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-04-12T16:38:08Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=d894add8caa5a8f0e71cfd97b73c2718c39f2644'/>
<id>urn:sha1:d894add8caa5a8f0e71cfd97b73c2718c39f2644</id>
<content type='text'>
</content>
</entry>
<entry>
<title>test: remove unused script</title>
<updated>2026-03-31T05:06:00Z</updated>
<author>
<name>Egor Tensin</name>
<email>egor@tensin.name</email>
</author>
<published>2026-03-31T05:06:00Z</published>
<link rel='alternate' type='text/html' href='http://git.tensin.name/cmake-common/commit/?id=278546f299817c54fbe1d4791f58825991dd9c4b'/>
<id>urn:sha1:278546f299817c54fbe1d4791f58825991dd9c4b</id>
<content type='text'>
</content>
</entry>
<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>
</feed>
