summaryrefslogtreecommitdiff
path: root/include/cmake.mk
Commit message (Collapse)AuthorAgeFilesLines
* cmake: skip build system check on compileFelix Fietkau2017-02-211-0/+4
| | | | | | | | | | | | | 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 <nbd@nbd.name>
* build: move STAGING_DIR_HOSTPKG and BUILD_DIR_HOST back to a common ↵Matthias Schiffer2017-01-181-1/+1
| | | | | | | | | | | | | directory for all targets Using a single host package staging dir (and build dir) significantly speeds up builds when multiple targets are built in succession, especially for large host packages like NodeJS. $(STAGING_DIR)/host is kept in addition to $(STAGING_DIR_HOSTPKG) in most places; it is still used as destination for host files in Build/InstallDev. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
* build: use CXXFLAGS if definedHauke Mehrtens2016-10-131-1/+1
| | | | | | | | | | | Instead of using TARGET_CFLAGS and EXTRA_CFLAGS in cmake and scons build use the TARGET_CXXFLAGS and EXTRA_CXXFLAGS like it is done for normal make and configure. configure used TARGET_CXXFLAGS and EXTRA_CFLAGS for the CXXFLAGS. The package-default.mk sets "EXTRA_CXXFLAGS = $(EXTRA_CFLAGS)" so using EXTRA_CXXFLAGS flags should be save. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* include/cmake.mk: fix host buildsFelix Fietkau2016-07-291-1/+2
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* cmake: include/cmake.mk add CMAKE_BINARY_SUBDIR to allow out of source tree ↵Luke McKee2016-07-291-2/+5
| | | | | | | | | | | | builds Some packages need out of source tree building with cmake, for example when building kernel modules. See an example here: https://sourceforge.net/p/accel-ppp/code/ci/master/tree/README Signed-off-by: Luke McKee <hojuruku@gmail.com> Signed-off-by: Felix Fietkau <nbd@nbd.name> [cleanup, rework]
* include/cmake.mk: Add helper macro to handle conditionals for CMake boolean ↵Vasilis Tsiligiannis2016-04-131-0/+2
| | | | | | | | type variables Signed-off-by: Vasilis Tsiligiannis <acinonyx@openwrt.gr> SVN-Revision: 49164
* include/cmake.mk: search in $(STAGING_DIR)/usr instead of plain ↵Felix Fietkau2016-01-251-1/+1
| | | | | | | | $(STAGING_DIR) to avoid picking up stuff from host/ Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48492
* include/cmake.mk: adjust for STAGING_DIR_HOST splitFelix Fietkau2016-01-251-3/+3
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48491
* build: for cmake, always use ccache from staging dir instead of relying on ↵Felix Fietkau2016-01-031-4/+1
| | | | | | | | the host Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48079
* cmake.mk: enable -Bsymbolic-functions by default for linking shared libs, ↵Felix Fietkau2015-04-191-2/+3
| | | | | | | | slightly improves performance and compression Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 45508
* cmake.mk: add host build supportFelix Fietkau2015-04-061-0/+26
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 45282
* build: fix CMake assembly builds with ccacheFelix Fietkau2015-03-291-0/+2
| | | | | | | | | | | | 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> SVN-Revision: 45119
* cmake: include external toolchain directory in CMAKE_FIND_ROOT_PATH (fixes ↵Felix Fietkau2015-03-161-1/+3
| | | | | | | | #19074) Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 44825
* include: cmake: prevent inclusion of rpath in binariesJo-Philipp Wich2015-02-081-0/+1
| | | | | | Signed-off-by: Jo-Philipp Wich <jow@openwrt.org> SVN-Revision: 44328
* build: use gcc-provided ar, nm and ranlib where appropriateFelix Fietkau2014-12-271-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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> SVN-Revision: 43784
* include/cmake.mk: fix indentationFelix Fietkau2014-06-111-1/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 41144
* include/cmake.mk: define CMAKE_AR and CMAKE_RANLIB to fix build errorsFelix Fietkau2014-05-301-11/+14
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 40885
* cmake.mk: fix support for ccacheFelix Fietkau2013-11-181-2/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 38853
* include: cmake: pass toolchain directory to default root find path as wellJo-Philipp Wich2013-08-071-1/+1
| | | | SVN-Revision: 37737
* cmake.mk: add support for overriding the source dir, and define the cmake ↵Felix Fietkau2012-12-291-1/+4
| | | | | | prefix path to avoid picking up host libraries for target builds (patch by Henning Rogge) SVN-Revision: 34914
* cmake: add support for V=csFelix Fietkau2012-04-261-1/+3
| | | | SVN-Revision: 31485
* cmake.mk: fix passing of LDFLAGSJo-Philipp Wich2012-01-091-3/+4
| | | | SVN-Revision: 29701
* cmake: fix ccache command when using host ccache (patch from #9611)Felix Fietkau2011-07-241-2/+6
| | | | SVN-Revision: 27742
* cmake.mk: fix bogus values for FIND_ROOT_PATH_MODE_*; kept plplot from ↵Jo-Philipp Wich2011-06-221-3/+3
| | | | | | compiling (#9573) SVN-Revision: 27256
* add LD_LIBRARY to cmake.mkFelix Fietkau2011-05-201-0/+1
| | | | | | | | Otherwise cmake programs try to link with host ld.so Signed-off-by: Jan Willies <jan@willies.info> SVN-Revision: 26963
* cmake.mk: don't assume toolchain binaries in .../bin/ if an external ↵Jo-Philipp Wich2011-04-111-0/+7
| | | | | | toolchain is used, rely on `which` instead SVN-Revision: 26584
* cmake: Fix ccacheMichael Büsch2011-03-051-2/+16
| | | | SVN-Revision: 25878
* cmake: Pass VERBOSE=1 to the generated makefile to reveal flags and commands ↵Michael Büsch2011-02-051-0/+2
| | | | | | in a verbose openwrt build. SVN-Revision: 25376
* cmake: Remove -O3 from release CFLAGS. Honor the OpenWRT -Os flag instead.Michael Büsch2011-02-051-0/+2
| | | | SVN-Revision: 25372
* add a template for cmake packagesFelix Fietkau2011-01-311-0/+33
SVN-Revision: 25265