aboutsummaryrefslogtreecommitdiffstats
path: root/rules.mk
Commit message (Collapse)AuthorAgeFilesLines
* build: do not assume that gcc-{ar,ranlib,nm} is usable with an external ↵Felix Fietkau2015-01-101-1/+1
| | | | | | | | toolchain Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43911 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43784 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43018 3c298f89-4303-0410-b956-a3cf2f4a3e73
* build: clean up and optimize ipkg control generator codeFelix Fietkau2014-10-221-0/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@43017 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@42987 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@42300 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@40006 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39982 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39980 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39979 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@39857 3c298f89-4303-0410-b956-a3cf2f4a3e73
* FPU type should not interfere with the ABI selection.Imre Kaloz2013-11-291-1/+8
| | | | | | | | | | Also make sure we either do real soft-float or hard-float on ARM, with the right options. Signed-off-by: Imre Kaloz <kaloz@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38943 3c298f89-4303-0410-b956-a3cf2f4a3e73
* allow configuration of the target directory for binariesImre Kaloz2013-11-221-1/+1
| | | | | | | | Signed-off-by: Imre Kaloz <kaloz@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38890 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38214 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37770 3c298f89-4303-0410-b956-a3cf2f4a3e73
* build: unify target independent optimization optionsFelix Fietkau2013-07-291-1/+2
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37600 3c298f89-4303-0410-b956-a3cf2f4a3e73
* build: add required exports for dependency trackingFelix Fietkau2013-07-181-1/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37387 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37228 3c298f89-4303-0410-b956-a3cf2f4a3e73
* rules.mk: use qstrip to reduce syntax highlighting issuesFelix Fietkau2013-07-101-1/+1
| | | | | | Signed-off-by: Felix Fietkau <nbd@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37225 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36594 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36566 3c298f89-4303-0410-b956-a3cf2f4a3e73
* toolchain: allow choosing the MIPS64 user-land ABIFlorian Fainelli2013-04-051-0/+5
| | | | | | Signed-off-by: Florian Fainelli <florian@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36205 3c298f89-4303-0410-b956-a3cf2f4a3e73
* buildroot: factor knowledge of a 64bits architectureFlorian Fainelli2013-04-051-1/+1
| | | | | | Signed-off-by: Florian Fainelli <florian@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36204 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36202 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36198 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36197 3c298f89-4303-0410-b956-a3cf2f4a3e73
* build: add a HOSTCXX variable pointing at the c++ compilerFelix Fietkau2013-03-221-0/+3
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36109 3c298f89-4303-0410-b956-a3cf2f4a3e73
* fix ARCH_SUFFIX for mips64{,el}r2Gabor Juhos2013-02-201-1/+1
| | | | | | Signed-off-by: Gabor Juhos <juhosg@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35688 3c298f89-4303-0410-b956-a3cf2f4a3e73
* rules.mk: only select latest libgcc.a with wildcard match (#12798)Jo-Philipp Wich2013-01-131-2/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35144 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34447 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34437 3c298f89-4303-0410-b956-a3cf2f4a3e73
* rules.mk: fix misspelled config symbol introduced by r34300Jo-Philipp Wich2012-11-231-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34304 3c298f89-4303-0410-b956-a3cf2f4a3e73
* rules.mk: append libc implementation to bin directory name if not using uClibcJo-Philipp Wich2012-11-221-0/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34300 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33631 3c298f89-4303-0410-b956-a3cf2f4a3e73
* rules.mk: add TARGET_AR and TARGET_RANLIBFelix Fietkau2012-09-221-0/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33508 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [buildroot] do not pass optimization flags in HOST_CPPFLAGS (#12153)Jo-Philipp Wich2012-09-091-1/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33351 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [rules.mk] remove duplicate HOSTCC_NOCACHEJohn Crispin2012-08-101-1/+0
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33088 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [buildroot] 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33080 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [include] fix up scons vs ccacheJohn Crispin2012-07-281-6/+7
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32902 3c298f89-4303-0410-b956-a3cf2f4a3e73
* add and export HOSTCC_NOCACHEJohn Crispin2012-06-201-0/+2
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32466 3c298f89-4303-0410-b956-a3cf2f4a3e73
* make librpc compatible with eglibc, unconditionally enable it for packages ↵Felix Fietkau2012-06-081-3/+1
| | | | | | that need rpc support git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32129 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [tools] add ccache wrapperJohn Crispin2012-06-061-2/+6
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32075 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [include] 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> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31233 3c298f89-4303-0410-b956-a3cf2f4a3e73
* kernel: keep more symbols in the kernel modules when doing profilingFelix Fietkau2012-03-011-1/+3
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30762 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30760 3c298f89-4303-0410-b956-a3cf2f4a3e73
* kernel: do not rename module symbols with kallsyms enabledFelix Fietkau2012-03-011-1/+1
| | | | git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30759 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30662 3c298f89-4303-0410-b956-a3cf2f4a3e73
* 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 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@30556 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [buildroot] rules.mk: filter "." and "./" entries from $PATH, prevents ↵Jo-Philipp Wich2012-01-291-1/+1
| | | | | | toolchain build issues and likely other problems git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29951 3c298f89-4303-0410-b956-a3cf2f4a3e73
* [buildroot] use ext-toolchain.sh to integrate external toolchainsJo-Philipp Wich2012-01-181-1/+1
| | | | | | | | | Use ext-toolchain.sh 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. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29766 3c298f89-4303-0410-b956-a3cf2f4a3e73