Commit Graph

21 Commits (fe2b64f1f22c6433af51300b08b348d0f4d97891)

Author SHA1 Message Date
Felix Fietkau 7184eecb5f cmake.mk: enable -Bsymbolic-functions by default for linking shared libs, slightly improves performance and compression
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45508 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-04-19 18:33:07 +00:00
Felix Fietkau a8aab06962 cmake.mk: add host build support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45282 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-04-06 19:37:42 +00:00
Felix Fietkau c0bb79555c build: fix CMake assembly builds with ccache
CMAKE_ASM_COMPILER is automatically set to CMAKE_C_COMPILER by CMake, but
CMAKE_C_COMPILER_ARG1 is lost. This causes assembly builds to fail when ccache
is enabled (for example the package fastd on x86).

Fix this by explicitly defining CMAKE_ASM_COMPILER and CMAKE_ASM_COMPILER_ARG1.

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45119 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-29 05:12:58 +00:00
Felix Fietkau 4ca62eb7a5 cmake: include external toolchain directory in CMAKE_FIND_ROOT_PATH (fixes #19074)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44825 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-03-16 07:51:45 +00:00
Jo-Philipp Wich 9e9fee4f2a include: cmake: prevent inclusion of rpath in binaries
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@44328 3c298f89-4303-0410-b956-a3cf2f4a3e73
2015-02-08 22:54:15 +00:00
Felix Fietkau 6c2782f025 build: use gcc-provided ar, nm and ranlib where appropriate
Since GCC 4.7, GCC provides its own wrappers around ar, nm and ranlib, which
should be used for builds with link-time optimization. Since GCC 4.9, using them
actually necessary for LTO builds using convenience libraries to succeed.

There are some packages which try to automatically detect if gcc-{ar,nm,ranlib}
exist (one example is my package "fastd" in the package repository, which tries
to use LTO). This breaks because the OpenWrt build system explicitly sets the
binutils versions of these tools.

As it doesn't cause any issues to use gcc-{ar,nm,ranlib} instead of
{ar,nm,ranlib} even without LTO, this patch just makes OpenWrt use the
GCC-provided versions by default, which fixes the build of such packages with
GCC 4.9.

(I know that builds fail though when clang is used with -flto and
gcc-{ar,nm,ranlib}, but as all OpenWrt toolchains are based on GCC, this isn't
a real issue.)

Completely cleaning the tree (or at least `make clean toolchain/clean`) is
necessary to get a consistent state after the binutils plugins support patch and
this one (as trying to use gcc-{ar,nm,ranlib} with a binutils built without
plugin support will definitely lead to a build failure).

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43784 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-12-27 12:59:59 +00:00
Felix Fietkau 8e7484411f include/cmake.mk: fix indentation
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@41144 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-06-11 17:01:15 +00:00
Felix Fietkau ad7cb5fd62 include/cmake.mk: define CMAKE_AR and CMAKE_RANLIB to fix build errors
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40885 3c298f89-4303-0410-b956-a3cf2f4a3e73
2014-05-30 11:58:54 +00:00
Felix Fietkau 2a60be271a cmake.mk: fix support for ccache
Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38853 3c298f89-4303-0410-b956-a3cf2f4a3e73
2013-11-18 14:10:12 +00:00
Jo-Philipp Wich 7a471ec854 include: cmake: pass toolchain directory to default root find path as well
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37737 3c298f89-4303-0410-b956-a3cf2f4a3e73
2013-08-07 13:54:51 +00:00
Felix Fietkau 5a81cbc7e3 cmake.mk: add support for overriding the source dir, and define the cmake prefix path to avoid picking up host libraries for target builds (patch by Henning Rogge)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34914 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-12-29 11:12:31 +00:00
Felix Fietkau d98a55dea2 cmake: add support for V=cs
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31485 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-04-26 17:54:03 +00:00
Jo-Philipp Wich 5910803e53 [include] cmake.mk: fix passing of LDFLAGS
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29701 3c298f89-4303-0410-b956-a3cf2f4a3e73
2012-01-09 05:42:04 +00:00
Felix Fietkau 6d14097297 cmake: fix ccache command when using host ccache (patch from #9611)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27742 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-07-24 08:34:08 +00:00
Jo-Philipp Wich 2bc81b5e4a [include] cmake.mk: fix bogus values for FIND_ROOT_PATH_MODE_*; kept plplot from compiling (#9573)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27256 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-06-22 11:02:00 +00:00
Felix Fietkau 13597f0024 add LD_LIBRARY to cmake.mk
Otherwise cmake programs try to link with host ld.so

Signed-off-by: Jan Willies <jan@willies.info>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26963 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-05-20 16:21:30 +00:00
Jo-Philipp Wich 418fe28859 [include] cmake.mk: don't assume toolchain binaries in .../bin/ if an external toolchain is used, rely on `which` instead
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26584 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-04-11 02:11:11 +00:00
Michael Büsch 96eaaee4ec cmake: Fix ccache
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25878 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-03-05 10:36:52 +00:00
Michael Büsch de51e40c7e cmake: Pass VERBOSE=1 to the generated makefile to reveal flags and commands in a verbose openwrt build.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25376 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-02-05 19:50:54 +00:00
Michael Büsch 22fdb17e84 cmake: Remove -O3 from release CFLAGS. Honor the OpenWRT -Os flag instead.
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25372 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-02-05 19:39:48 +00:00
Felix Fietkau 5119fdd829 add a template for cmake packages
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@25265 3c298f89-4303-0410-b956-a3cf2f4a3e73
2011-01-31 20:16:01 +00:00