aboutsummaryrefslogtreecommitdiffstats
path: root/rules.mk
Commit message (Collapse)AuthorAgeFilesLines
* build: use gcc-provided ar, nm and ranlib where appropriateFelix Fietkau2014-12-271-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* rules.mk: reduce shexport to one line to allow it to be put in a target contextFelix Fietkau2014-10-221-2/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 43018
* build: clean up and optimize ipkg control generator codeFelix Fietkau2014-10-221-0/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 43017
* build: add $(STAGING_DIR_HOST)/usr/{include, lib} to build search path.John Crispin2014-10-201-2/+2
| | | | | | Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com> SVN-Revision: 42987
* build: override hardcoded paths to bison and m4 to make the SDK more relocatableFelix Fietkau2014-08-261-0/+3
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 42300
* partially revert "build: remove check for nonexistant CONFIG_TAR_VERBOSITY ↵Felix Fietkau2014-03-221-0/+2
| | | | | | | | variable and move TAR_OPTIONS to unpack.mk" This complicates the evaluation order for some packages SVN-Revision: 40006
* build: remove GREP_OPTIONS export from rules.mk, defining it in the ↵Felix Fietkau2014-03-211-3/+0
| | | | | | | | top-level Makefile is enough Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 39982
* build: remove check to nonexistant CONFIG_ENABLE_LOCALE variable and move ↵Felix Fietkau2014-03-211-6/+0
| | | | | | | | DISABLE_NLS to package-defaults.mk Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 39980
* build: remove check for nonexistant CONFIG_TAR_VERBOSITY variable and move ↵Felix Fietkau2014-03-211-6/+0
| | | | | | | | TAR_OPTIONS to unpack.mk Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 39979
* build: add a variable for the name of the ↵Felix Fietkau2014-03-101-10/+10
| | | | | | | | {build,staging}_dir/{target,toolchain}-* directories Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 39857
* FPU type should not interfere with the ABI selection. Also make sure we ↵Imre Kaloz2013-11-291-1/+8
| | | | | | | | either do real soft-float or hard-float on ARM, with the right options. Signed-off-by: Imre Kaloz <kaloz@openwrt.org> SVN-Revision: 38943
* allow configuration of the target directory for binariesImre Kaloz2013-11-221-1/+1
| | | | | | Signed-off-by: Imre Kaloz <kaloz@openwrt.org> SVN-Revision: 38890
* build: include the cpu type as part of the toolchain/target directory nameFelix Fietkau2013-09-261-11/+4
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 38214
* build: decouple the mips16 support flag from the toolchainFelix Fietkau2013-08-141-8/+2
| | | | | | | | | Add the flags from package.mk instead, and leave libc and gcc unaffected. Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 37770
* build: unify target independent optimization optionsFelix Fietkau2013-07-291-1/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 37600
* build: add required exports for dependency trackingFelix Fietkau2013-07-181-1/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 37387
* build: move the XARGS variable out of the host checks, since a working xargs ↵Felix Fietkau2013-07-101-0/+1
| | | | | | | | is built in tools/ Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 37228
* rules.mk: use qstrip to reduce syntax highlighting issuesFelix Fietkau2013-07-101-1/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 37225
* toolchain: eliminate the INSTALL_LIBSTDCPP config symbol and make c++ ↵Felix Fietkau2013-05-091-1/+1
| | | | | | | | support mandatory - fixes recursive config symbol dependency issues Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 36594
* rules.mk: add _dsp to ARCH_SUFFIX if the dsp ase is usedJohn Crispin2013-05-061-0/+6
| | | | | | Signed-off-by: John Crispin <blogic@openwrt.org> SVN-Revision: 36566
* toolchain: allow choosing the MIPS64 user-land ABIFlorian Fainelli2013-04-051-0/+5
| | | | | | Signed-off-by: Florian Fainelli <florian@openwrt.org> SVN-Revision: 36205
* buildroot: factor knowledge of a 64bits architectureFlorian Fainelli2013-04-051-1/+1
| | | | | | Signed-off-by: Florian Fainelli <florian@openwrt.org> SVN-Revision: 36204
* buildroot: allow enabling MIPS16 user-space buildFlorian Fainelli2013-04-051-0/+3
| | | | | | | | | | | Enabling MIPS16 is made conditional on advertising the "mips16" feature for a specific target since it requires support from the CPU (HAS_MIPS16) and the actual use of MIPS16 for building packages (USE_MIPS16). Signed-off-by: Florian Fainelli <florian@openwrt.org> SVN-Revision: 36202
* rules.mk: MIPS16 builds get a different toolchainFlorian Fainelli2013-04-051-0/+1
| | | | | | | | | | | | | To be safe, build "m16" into the toolchain and target architecture the same way mips32r2 does: target-mips_r2_m16_uClibc-0.9.33.2 toolchain-mips_r2_m16_gcc-4.6-linaro_uClibc-0.9.33.2 Signed-off-by: Jay Carlson <nop@nop.com> Signed-off-by: Florian Fainelli <florian@openwrt.org> SVN-Revision: 36198
* rules.mk: Create TARGET_ASFLAGS; force -mno-mips16Florian Fainelli2013-04-051-1/+5
| | | | | | | | | | | | | Create and use a TARGET_ASFLAGS, defaulting to TARGET_CFLAGS. MIPS .S files reasonably assume they are not in mips16 mode. Because "-mips16 -mno-mips16" results in -mno-mips16, I can append that to the TARGET_ASFLAGS. This should be done with $(filter-out)? Signed-off-by: Jay Carlson <nop@nop.com> Signed-off-by: Florian Fainelli <florian@openwrt.org> SVN-Revision: 36197
* build: add a HOSTCXX variable pointing at the c++ compilerFelix Fietkau2013-03-221-0/+3
| | | | SVN-Revision: 36109
* fix ARCH_SUFFIX for mips64{,el}r2Gabor Juhos2013-02-201-1/+1
| | | | | | Signed-off-by: Gabor Juhos <juhosg@openwrt.org> SVN-Revision: 35688
* rules.mk: only select latest libgcc.a with wildcard match (#12798)Jo-Philipp Wich2013-01-131-2/+2
| | | | SVN-Revision: 35144
* rules.mk: don't use $(realpath) in file_copy, the destination directory ↵Jo-Philipp Wich2012-12-021-1/+1
| | | | | | might not exist yet - spotted while doing a fresh build SVN-Revision: 34447
* rules.mk: provide a macro "file_copy" which removes any symlink in the ↵Jo-Philipp Wich2012-12-021-0/+18
| | | | | | destination dir that would be overwritten SVN-Revision: 34437
* rules.mk: fix misspelled config symbol introduced by r34300Jo-Philipp Wich2012-11-231-1/+1
| | | | SVN-Revision: 34304
* rules.mk: append libc implementation to bin directory name if not using uClibcJo-Philipp Wich2012-11-221-0/+1
| | | | SVN-Revision: 34300
* build: rework the package/install step - collect package install lists ↵Felix Fietkau2012-10-061-0/+1
| | | | | | during package/compile, then install all packages at once SVN-Revision: 33631
* rules.mk: add TARGET_AR and TARGET_RANLIBFelix Fietkau2012-09-221-0/+2
| | | | SVN-Revision: 33508
* do not pass optimization flags in HOST_CPPFLAGS (#12153)Jo-Philipp Wich2012-09-091-1/+2
| | | | SVN-Revision: 33351
* remove duplicate HOSTCC_NOCACHEJohn Crispin2012-08-101-1/+0
| | | | SVN-Revision: 33088
* move LIB_SUFFIX from base-files to rules.mkFlorian Fainelli2012-08-101-0/+4
| | | | | | Some packages are going to need fixups based on LIB_SUFFIX SVN-Revision: 33080
* fix up scons vs ccacheJohn Crispin2012-07-281-6/+7
| | | | SVN-Revision: 32902
* add and export HOSTCC_NOCACHEJohn Crispin2012-06-201-0/+2
| | | | SVN-Revision: 32466
* make librpc compatible with eglibc, unconditionally enable it for packages ↵Felix Fietkau2012-06-081-3/+1
| | | | | | that need rpc support SVN-Revision: 32129
* add ccache wrapperJohn Crispin2012-06-061-2/+6
| | | | SVN-Revision: 32075
* Use build suffix on build_dir pathsJohn Crispin2012-04-101-2/+2
| | | | | | | | Adds BUILD_SUFFIX to STAGING_DIR Signed-off-by: Tathagata Das <tathagata@alumnux.com> SVN-Revision: 31233
* kernel: keep more symbols in the kernel modules when doing profilingFelix Fietkau2012-03-011-1/+3
| | | | SVN-Revision: 30762
* build: add TARGET_CXXFLAGS and EXTRA_CXXFLAGS, defaulting to *_CFLAGS via ↵Felix Fietkau2012-03-011-0/+1
| | | | | | lazy evaluation. this allows adding c++ specific cflags SVN-Revision: 30760
* kernel: do not rename module symbols with kallsyms enabledFelix Fietkau2012-03-011-1/+1
| | | | SVN-Revision: 30759
* strip kernel modules more aggressively: make all global symbols local, ↵Felix Fietkau2012-02-201-1/+2
| | | | | | rename all symbols in the symbol table to make them compress better SVN-Revision: 30662
* build: add -Wno-error=unused-but-set-variable to cflags for gcc 4.6 and ↵Felix Fietkau2012-02-151-1/+1
| | | | | | newer to avoid stupid -Werror related package breakage SVN-Revision: 30556
* rules.mk: filter "." and "./" entries from $PATH, prevents toolchain build ↵Jo-Philipp Wich2012-01-291-1/+1
| | | | | | issues and likely other problems SVN-Revision: 29951
* use ext-toolchain.sh to integrate external toolchains Use ext-toolchain.sh ↵Jo-Philipp Wich2012-01-181-1/+1
| | | | | | to wrap external toolchain commands, abort build if certain features such as CONFIG_SOFT_FLOAT or CONFIG_IPV6 are enabled but not supported by the toolchain. SVN-Revision: 29766
* tools: clean up Makefiles / make ccache workJohn Crispin2012-01-151-0/+2
| | | | SVN-Revision: 29754