<feed xmlns='http://www.w3.org/2005/Atom'>
<title>uci/CMakeLists.txt, branch master</title>
<subtitle>OpenWrt Unified Configuration Interface</subtitle>
<id>https://git-03.infra.openwrt.org/project/uci/atom?h=master</id>
<link rel='self' href='https://git-03.infra.openwrt.org/project/uci/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/'/>
<updated>2025-10-05T12:33:55Z</updated>
<entry>
<title>CMakeLists: fix CMake warning for INCLUDE macro</title>
<updated>2025-10-05T12:33:55Z</updated>
<author>
<name>David Härdeman</name>
</author>
<published>2025-10-05T12:29:05Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=5e69edac2ec4d23a443de11d6f3f11912d8b2d89'/>
<id>urn:sha1:5e69edac2ec4d23a443de11d6f3f11912d8b2d89</id>
<content type='text'>
Fix CMake warning for INCLUDE macro by moving the INCLUDE after the
PROJECT declaration.

CMake Warning (dev) at /usr/share/cmake-3.31/Modules/GNUInstallDirs.cmake:253 (message):
  Unable to determine default CMAKE_INSTALL_LIBDIR directory because no
  target architecture is known.  Please enable at least one language before
  including GNUInstallDirs.

Signed-off-by: David Härdeman &lt;david@hardeman.nu&gt;
[ improve commit description ]
Link: https://github.com/openwrt/uci/pull/7
Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
</content>
</entry>
<entry>
<title>CMakeLists: add support for including ABIVERSION in the library version number</title>
<updated>2025-01-20T21:05:19Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2025-01-20T21:05:19Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=16ff0badbde7e17ec3bd1f827ffe45922956cf86'/>
<id>urn:sha1:16ff0badbde7e17ec3bd1f827ffe45922956cf86</id>
<content type='text'>
Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>CMakeLists.txt: bump minimum cmake version</title>
<updated>2025-01-17T12:09:50Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2025-01-17T12:09:50Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=047b2efc1348f489d1cf4526f5c5f3e070cb2411'/>
<id>urn:sha1:047b2efc1348f489d1cf4526f5c5f3e070cb2411</id>
<content type='text'>
Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>cmake: Allow override of install directories</title>
<updated>2021-10-22T20:58:18Z</updated>
<author>
<name>Hauke Mehrtens</name>
</author>
<published>2021-10-05T16:54:39Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=f84f49f00fb70364f58b4cce72f1796a7190d370'/>
<id>urn:sha1:f84f49f00fb70364f58b4cce72f1796a7190d370</id>
<content type='text'>
Use the GNUInstallDirs include to allow callers to override the install
directories. This is helpful when building uci in build systems like
Yocto which prefer to use /usr/lib64 for the 64 bit libraries.

Signed-off-by: Hauke Mehrtens &lt;hmehrtens@maxlinear.com&gt;
</content>
</entry>
<entry>
<title>cmake: add uci-san cli built with clang sanitizers</title>
<updated>2020-10-03T07:20:48Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2020-10-02T22:15:21Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=31f78bfbf75f6b039fd71ddb0988637348f276a6'/>
<id>urn:sha1:31f78bfbf75f6b039fd71ddb0988637348f276a6</id>
<content type='text'>
Will be used for testing.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>cmake: add more hardening compiler flags</title>
<updated>2019-12-07T22:40:02Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-12-07T21:45:59Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=66264ed9ec9e13321798061782b255ecb4dd64c2'/>
<id>urn:sha1:66264ed9ec9e13321798061782b255ecb4dd64c2</id>
<content type='text'>
In order to spot possible issues with direct impact on security during
QA on CI (GCC version 6 and higher).

Ref: https://developers.redhat.com/blog/2018/03/21/compiler-and-linker-flags-gcc/
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>cmake: enable extra compiler checks</title>
<updated>2019-11-14T16:11:34Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-11-04T17:02:35Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=c1af73bfb0231f2ae3ed4bc376f4a347902fa607'/>
<id>urn:sha1:c1af73bfb0231f2ae3ed4bc376f4a347902fa607</id>
<content type='text'>
Let's enforce additional automatic checks enforced by the compiler in
order to catch possible errors during compilation.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>cmake: build Lua module only if enabled</title>
<updated>2019-11-14T16:11:08Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-11-04T15:18:37Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=be69504e3666fdde725ac67f1174736b7a328304'/>
<id>urn:sha1:be69504e3666fdde725ac67f1174736b7a328304</id>
<content type='text'>
Makes the resulting lua/CMakeLists.txt file simpler.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>cmake: add unit testing option and shunit2 tests</title>
<updated>2019-11-14T16:11:08Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-11-01T08:13:42Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=a6e8bbefd8609a51d3e6e1e7ddd8902c14b940ab'/>
<id>urn:sha1:a6e8bbefd8609a51d3e6e1e7ddd8902c14b940ab</id>
<content type='text'>
For convenient tests invocation.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>build: Add -Wclobbered to detect problems with longjmp</title>
<updated>2019-11-08T22:51:41Z</updated>
<author>
<name>Hauke Mehrtens</name>
</author>
<published>2019-11-01T14:06:01Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/project/uci/commit/?id=fc417e808087f96466d9ce18819e16476af9527b'/>
<id>urn:sha1:fc417e808087f96466d9ce18819e16476af9527b</id>
<content type='text'>
When we jump back to a save point in UCI_THROW() with longjmp all the
registers will be reset to the old values when we called UCI_TRAP_SAVE()
last time, but the memory is not restored. This will revert all the
variables which are stored in registers, but not the variables stored on
the stack.

Mark all the variables which the compiler could put into a register as
volatile to store them safely on the stack and make sure they have the
defined current values also after longjmp was called.

The setjmp() manage says the following:
----------------------------------------------------------------------
The  compiler  may  optimize  variables into registers, and longjmp()
may restore the values of other registers in addition to the stack
pointer and program counter.  Consequently, the values of automatic
variables are unspecified after a call to longjmp() if they meet all the
following criteria:
* they are local to the function that made the corresponding setjmp()
  call;
* their values are changed between the calls to setjmp() and longjmp();
  and
* they are not declared as volatile.
---------------------------------------------------------------------

The -Wclobbered compiler option warns about all variables which are
written after setjmp() was called, not all of them could cause problems,
but to make sure to catch all real problems add this warning and fix all
occurrences of this warning.

This also activates a compiler warning which should warn us in such
cases.
This could fix some potential problems in error paths like the one
reported in CVE-2019-15513.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
</content>
</entry>
</feed>
