<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/pepe2k/include/cmake.mk, branch v21.02.1</title>
<subtitle>Staging tree of Piotr Dymacz</subtitle>
<id>https://git.openwrt.org/openwrt/staging/pepe2k/atom?h=v21.02.1</id>
<link rel='self' href='https://git.openwrt.org/openwrt/staging/pepe2k/atom?h=v21.02.1'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/'/>
<updated>2021-03-03T22:02:30Z</updated>
<entry>
<title>Revert "build: replace which with Bash command built-in"</title>
<updated>2021-03-03T22:02:30Z</updated>
<author>
<name>Clemens Fruhwirth</name>
</author>
<published>2021-01-29T18:57:37Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=27c5db998cba4bc76b5c9dcf71120181cb813886'/>
<id>urn:sha1:27c5db998cba4bc76b5c9dcf71120181cb813886</id>
<content type='text'>
This reverts commit c7aec47e5e3a3ff7b5fdaa11cd1e62cae6746acb.

The original commit replaces 'which' with 'command'. Sadly most of
them are not equivalent and for 'which -a', there is no easy
replacements that would not reimplement PATH parsing logic. Hence
revert. Keeping a dependency on which is absolutely fine.

Signed-off-by: Clemens Fruhwirth &lt;clemens@endorphin.org&gt;
(cherry picked from commit 1f5e7224868109a170a9248d18f8d2b6124e9c5a)
</content>
</entry>
<entry>
<title>build: replace which with Bash command built-in</title>
<updated>2021-01-04T18:32:25Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2020-12-22T09:33:02Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=c7aec47e5e3a3ff7b5fdaa11cd1e62cae6746acb'/>
<id>urn:sha1:c7aec47e5e3a3ff7b5fdaa11cd1e62cae6746acb</id>
<content type='text'>
`which` utility is not shipped by default for example on recent Arch
Linux and then any steps relying on its presence fails, like for example
following Python3 prereq build check:

 $ python3 --version
 Python 3.9.1

 $ make
 /bin/sh: line 1: which: command not found
 /bin/sh: line 1: which: command not found
 /bin/sh: line 1: which: command not found
 ...
 Checking 'python3'... failed.
 ...

Fix this by switching to Bash builtin `command` which should provide
same functionality.

Fixes: FS#3525
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>include/cmake.mk: Fix the bug in ccache support</title>
<updated>2020-12-21T18:53:10Z</updated>
<author>
<name>Hirokazu MORIKAWA</name>
</author>
<published>2020-12-21T04:49:40Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=d6cb50c7ba8447f018139401d0d3821069e5f389'/>
<id>urn:sha1:d6cb50c7ba8447f018139401d0d3821069e5f389</id>
<content type='text'>
Fix the bug in ccache support due to this change.
https://github.com/openwrt/openwrt/commit/bfc433efd4a0c6875a92981d1bd2a5e3e60c61c6

The new cmake uses this for the wrapper.
https://cmake.org/cmake/help/v3.19/prop_tgt/LANG_COMPILER_LAUNCHER.html

Signed-off-by: Hirokazu MORIKAWA &lt;morikw2@gmail.com&gt;
</content>
</entry>
<entry>
<title>cmake.mk,rules.mk: fix host builds using CMake and ccache</title>
<updated>2020-11-28T15:17:58Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2020-11-27T21:50:32Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=524fb5646eec6147aadfdd508219f39bcf8ba8fc'/>
<id>urn:sha1:524fb5646eec6147aadfdd508219f39bcf8ba8fc</id>
<content type='text'>
Commit f98878e4c17d ("cmake.mk: set C/CXX compiler for host builds as
well") has introduced regression as it didn't taken usage of ccache into
the account so fix it by handling ccache use cases as well.

In order to get this working we need to export HOSTCXX_NOCACHE in
rules.mk as well.

Fixes: f98878e4c17d ("cmake.mk: set C/CXX compiler for host builds as well")
Reported-by: Ansuel Smith &lt;ansuelsmth@gmail.com&gt;
Tested-by: Ansuel Smith &lt;ansuelsmth@gmail.com&gt;
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>cmake.mk: set C/CXX compiler for host builds as well</title>
<updated>2020-11-27T13:46:13Z</updated>
<author>
<name>Rosen Penev</name>
</author>
<published>2020-11-26T00:08:57Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=f98878e4c17d5f11e78994b4fc456e6b60b2660f'/>
<id>urn:sha1:f98878e4c17d5f11e78994b4fc456e6b60b2660f</id>
<content type='text'>
Without this, cmake will use whatever CC/CXX is set to, which could be
clang. In that case, at least libjson-c/host will fail to compile.

Signed-off-by: Rosen Penev &lt;rosenp@gmail.com&gt;
</content>
</entry>
<entry>
<title>build: support cmake verbose for host builds</title>
<updated>2020-11-14T13:48:30Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2020-11-14T13:34:30Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=d31da371ac2ac2162c41fb6071ddbebccb44f6b0'/>
<id>urn:sha1:d31da371ac2ac2162c41fb6071ddbebccb44f6b0</id>
<content type='text'>
Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
<entry>
<title>cmake: Disable use of package registries</title>
<updated>2020-08-24T16:53:59Z</updated>
<author>
<name>Jeffery To</name>
</author>
<published>2020-08-17T18:10:25Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=f8b775e28767e88840b61614822d4d4278c05f74'/>
<id>urn:sha1:f8b775e28767e88840b61614822d4d4278c05f74</id>
<content type='text'>
CMake provides a user package registry (stored in ~/.cmake/packages) and
a system package registry (not available on non-Windows platforms).

The "export(PACKAGE)" command may store information in the user package
registry, and the "find_package()" command may search both user and
system package registries for information.

This sets various variables to disable the use of these package
registries (both saving and retrieval of package information).

This also sets deprecated variables that perform similar functions, in
case external toolchains include older versions of CMake.

Signed-off-by: Jeffery To &lt;jeffery.to@gmail.com&gt;
</content>
</entry>
<entry>
<title>cmake: Install host packages to lib instead of lib64</title>
<updated>2019-12-22T23:22:07Z</updated>
<author>
<name>Rosen Penev</name>
</author>
<published>2019-11-17T21:42:04Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=383abffb1179a142b4c8f86559baad5b24d391c3'/>
<id>urn:sha1:383abffb1179a142b4c8f86559baad5b24d391c3</id>
<content type='text'>
Several CMake packages such as log4cplus and protobuf(-c) install to
lib64 instead of lib on some hosts. This completely breaks rpath linking.
Override it globally to avoid fixing each package individually.

Signed-off-by: Rosen Penev &lt;rosenp@gmail.com&gt;
Tested-by: Sebastian Kemper &lt;sebastian_ml@gmx.net&gt;
</content>
</entry>
<entry>
<title>build: use CMAKE_SOURCE_SUBDIR variable to cmake.mk</title>
<updated>2018-09-29T15:23:11Z</updated>
<author>
<name>Amol Bhave</name>
</author>
<published>2018-09-24T17:39:19Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=366e6ef5c342f5926d9ab07166b8a40734393dc2'/>
<id>urn:sha1:366e6ef5c342f5926d9ab07166b8a40734393dc2</id>
<content type='text'>
Sometimes, the CMakeLists.txt file is not in the root directory of a
repo. In those cases, the CMAKE_SOURCE_SUBDIR variable can be specified
to use CMakeLists.txt from a subdirectory instead.

Signed-off-by: Amol Bhave &lt;ambhave@fb.com&gt;
</content>
</entry>
<entry>
<title>cmake: skip build system check on compile</title>
<updated>2017-02-21T12:03:20Z</updated>
<author>
<name>Felix Fietkau</name>
</author>
<published>2017-02-20T11:13:51Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/openwrt/staging/pepe2k/commit/?id=294e908a2cb53ab4ea34e202a31fc941a4825e16'/>
<id>urn:sha1:294e908a2cb53ab4ea34e202a31fc941a4825e16</id>
<content type='text'>
cmake checks the build system and its variables on its own to detect if
the makefiles need to be regenerated.
Unfortunately this can invalidate overrides passed in the
Build/Configure step. On non-Linux systems this breaks the build when
switching between targets of the same package architecture.

Fix this by forcibly disabling the build system check and relying on the
LEDE build system to take care of these things

Signed-off-by: Felix Fietkau &lt;nbd@nbd.name&gt;
</content>
</entry>
</feed>
