Commit Graph

235 Commits (1634461bd208f4bd108ea5c3d3f1cf9eb56d4a7e)

Author SHA1 Message Date
John Crispin cc5b3e683e Use build suffix on build_dir paths
Adds BUILD_SUFFIX to STAGING_DIR

Signed-off-by: Tathagata Das <tathagata@alumnux.com>

SVN-Revision: 31233
12 years ago
Felix Fietkau 236dd9d9a2 kernel: keep more symbols in the kernel modules when doing profiling
SVN-Revision: 30762
12 years ago
Felix Fietkau edc3ad9100 build: add TARGET_CXXFLAGS and EXTRA_CXXFLAGS, defaulting to *_CFLAGS via lazy evaluation. this allows adding c++ specific cflags
SVN-Revision: 30760
12 years ago
Felix Fietkau a8ec8ce1ac kernel: do not rename module symbols with kallsyms enabled
SVN-Revision: 30759
12 years ago
Felix Fietkau c2590fe930 strip kernel modules more aggressively: make all global symbols local, rename all symbols in the symbol table to make them compress better
SVN-Revision: 30662
12 years ago
Felix Fietkau 27bb12af0f build: add -Wno-error=unused-but-set-variable to cflags for gcc 4.6 and newer to avoid stupid -Werror related package breakage
SVN-Revision: 30556
12 years ago
Jo-Philipp Wich 1504738c02 rules.mk: filter "." and "./" entries from $PATH, prevents toolchain build issues and likely other problems
SVN-Revision: 29951
12 years ago
Jo-Philipp Wich 5b7668ca44 use ext-toolchain.sh to integrate external toolchains 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.
SVN-Revision: 29766
12 years ago
John Crispin ccb6b0a063 tools: clean up Makefiles / make ccache work
SVN-Revision: 29754
12 years ago
Jo-Philipp Wich cbe164a295 rules.mk: provide a LIBGCC_A variable
SVN-Revision: 28175
13 years ago
Felix Fietkau 5820306407 only export GCC_HONOUR_COPTS for the built-in toolchain, fixes missing-fhonour-copts warnings with external toolchains
SVN-Revision: 27771
13 years ago
John Crispin 4551f2bfcc add menuconfig option to enable log files during build process
SVN-Revision: 27403
13 years ago
Jo-Philipp Wich a66b496001 rules.mk: properly populate $(LIBGCC_S) for external toolchains
SVN-Revision: 26593
13 years ago
Felix Fietkau 21ff098352 set TOOLCHAIN_DIR var when using external toolchain
This patch allows to use the openwrt toolchain as external toolchain for the
same project. See bug #9131 for details.

Signed-off-by: Sven Bachmann <dev@mcbachmann.de>

SVN-Revision: 26405
13 years ago
Felix Fietkau 6c7170b923 Revert "kernel: remove all local symbols from kernel modules at link time to reduce their size" Use -x when stripping kernel modules instead
SVN-Revision: 26305
13 years ago
Felix Fietkau 596d89b331 strip .gnu.attributes and .reginfo from kernel modules
SVN-Revision: 26304
13 years ago
Felix Fietkau 791641db07 strip .note.gnu.build-id from kernel modules
SVN-Revision: 26217
13 years ago
Felix Fietkau 73c1dd9473 build: move the CCACHE_DIR to the build targets so that it doesn't interfere with a host ccache setup
SVN-Revision: 26181
13 years ago
Imre Kaloz b74308c433 only support EABI on ARM targets
SVN-Revision: 25928
13 years ago
Jo-Philipp Wich 260652bf8f add an abstract $(LIBRPC_DEPENDS) variable for feed packages to rely on
SVN-Revision: 25841
13 years ago
Imre Kaloz a3989e3dbd We use different toolchain directories for different ARM archs, so we should set the default arch of gcc to reflect this.
This enables EABI support for armv4 CPUs.

Signed-off-by: Jochen Friedrich <jochen@scram.de>

SVN-Revision: 25705
13 years ago
Felix Fietkau 85c44cafab add a variable LIBRPC to refer to the external librpc if used
SVN-Revision: 25497
13 years ago
Jo-Philipp Wich 3052dfbb85 remove support for disabling large file support, it is broken, breaks compatibility to anything and has no effect on most packages
SVN-Revision: 25208
13 years ago
Felix Fietkau 8740549c57 mpc85xx: add a new 'spe_fpu' feature flag for the FPU used on freescale powerpc cpus The SPE FPU is ABI-incompatible with the regular powerpc FPU, this needs to be reflected in the toolchain target name. Fixes floating point crashes in user space
SVN-Revision: 25018
13 years ago
Jo-Philipp Wich dbf8d9c516 - implement hooks for hostbuilds - use host build hooks to implement fixups for host build - move separator declaration to rules.mk
SVN-Revision: 24551
14 years ago
Felix Fietkau 97b3d9688c remove an obsolete comment for the flock template
SVN-Revision: 23744
14 years ago
Felix Fietkau b34a0b3282 fix usage of flock - use the command mode instead of locking a file descriptor to fix build issues on mac os x
SVN-Revision: 23743
14 years ago
Michael Büsch e396e33ad2 Add macro for locking of recipe commands.
SVN-Revision: 23708
14 years ago
Michael Büsch a46c332411 Add HOST_FPIC. It currently always is -fPIC, because that should work on all platforms, even if it may generate slightly inefficient code on some arches.
SVN-Revision: 23598
14 years ago
Jo-Philipp Wich 10f5101af3 Add two debug rules the examine the values of runtime make variables. Based on patch by Philip Prindeville <philipp@redfish-solutions.com>
SVN-Revision: 23389
14 years ago
Jo-Philipp Wich d3f412f4ec rename PATCH to KPATCH
SVN-Revision: 23286
14 years ago
Jo-Philipp Wich 19421b6732 drop the usr/ prefix when scanning for libgcc.a
SVN-Revision: 23042
14 years ago
Jo-Philipp Wich 064e7c8f00 Implement an ARCH_PACKAGES variable which defaults to BOARD but can be overridden on a per-subtarget basis. This is intended for targets such as adm5120 and malta which support both big and little endianess and will replace the target specific exceptions in package-defaults and Image Builder.
SVN-Revision: 23029
14 years ago
Florian Fainelli 3992d44428 ccache TARGET_CXX
Signed-off-by: Alam Arias <Alam.GBC@gmail.com>

SVN-Revision: 23008
14 years ago
Felix Fietkau b3c871375b fix compile errors by forcing bash to be used as a shell in all submake processes
SVN-Revision: 22726
14 years ago
Felix Fietkau 62c1740676 toolchain: fix the sysroot mess by getting rid of $(TOOLCHAIN_DIR)/usr and moving it back to $(TOOLCHAIN_DIR), this change makes the toolchain relocatable again, which should fix the SDK
SVN-Revision: 22723
14 years ago
Felix Fietkau a9136c0892 speed up the build system by including include/shell.sh on shell commands only where necessary
SVN-Revision: 22720
14 years ago
Florian Fainelli 7fc192e9a5 fix for GREP_OPTIONS
When using GREP_OPTIONS to supply default options to grep, the buildsystem might get broken (For example adding --color=always breaks it)
This patch will empty the GREP_OPTIONS to prevent the described (and any other) problems related to GREP_OPTIONS

Signed-off-by: Maarten Bezemer <m.m.bezemer@utwente.nl>

SVN-Revision: 22443
14 years ago
Nicolas Thill 18035964c7 fix path to libgcc.a in LIBGCC_S
SVN-Revision: 20593
14 years ago
Felix Fietkau dd046f4759 use lazy evaluation for TARGET_CONFIGURE_OPTS to make it possible to override TARGET_CC and TARGET_CXX
SVN-Revision: 20566
14 years ago
Felix Fietkau 80d6e3b245 add an arch suffix for handling different variants of arm/mips for the toolchain/target directories
SVN-Revision: 20215
14 years ago
Travis Kemen 137c26b7cb there are quite a lot of package using ln -sf in their Makefile, so this patch adds
LN:=ln -sf

to rules.mk

-Raphael

SVN-Revision: 19998
14 years ago
Nicolas Thill 9899fbb148 use distinct build/staging dirs for EABI/OABI builds
SVN-Revision: 19885
14 years ago
Nicolas Thill c0f8b43b17 use a DIR_SUFFIX variable to hold libc/version and use it in build/staging dir names
SVN-Revision: 19884
14 years ago
Felix Fietkau 15fecc9e6c remove support for DEBUG_DIR, it has lost its purpose since STAGING_DIR_ROOT was added
SVN-Revision: 19849
14 years ago
Lars-Peter Clausen 001736d848 Add include_mk template which makes it a bit more convienient to include package installed mk files.
SVN-Revision: 19847
14 years ago
Nicolas Thill 0f3c406bdb add a config item to specify arguments to strip
SVN-Revision: 19270
14 years ago
Felix Fietkau 6c57203836 oops, forgot one small change in the last commit
SVN-Revision: 18640
15 years ago
Felix Fietkau b647c168de remove the redundant subdirectory from the packages directory variable
SVN-Revision: 18639
15 years ago
Florian Fainelli ee8018ef11 output firmware files in bin/$(BOARD) instead of bin/
SVN-Revision: 18624
15 years ago
Felix Fietkau d648a0827b fix a typo
SVN-Revision: 18122
15 years ago
Felix Fietkau 9bd710e050 add some extra stripping options for kernel modules to reduce size even more (thx, matteo)
SVN-Revision: 18121
15 years ago
Nicolas Thill c9bc7c504c add external toolchain support, enhance native toolchain support (special thanks to Luigi Mantellini for his help... and patience ;)
SVN-Revision: 17682
15 years ago
Felix Fietkau 2982f7ef79 move the package dir to bin/packages/$(BOARD)_$(LIBC)-$(LIBCV) to prevent multiple configs with the same arch from deleting each others' packages
SVN-Revision: 17329
15 years ago
Felix Fietkau 4169a2e834 add a staging directory for unstripped package files, useful for debugging, will be used for mklibs integration later
SVN-Revision: 17167
15 years ago
Felix Fietkau f8097687d1 add -L$(TOOLCHAIN_DIR)/lib to the LIBGCC_S variable, if necessary
SVN-Revision: 17082
15 years ago
Florian Fainelli 28efbbc87f do not set anything in DISABLE_IPV6 when set, let the package pick up the defaults
SVN-Revision: 17077
15 years ago
Florian Fainelli 11e1304ca0 globally define IPv6 support or not in OpenWrt, just like for largefiles, ipv6 disabled by default (#4857)
SVN-Revision: 16983
15 years ago
Nicolas Thill 4702698c68 add a config option to select the binary stripping method to use (between none, strip & sstrip)
SVN-Revision: 16728
15 years ago
Lars-Peter Clausen ebeb3829e1 Set TARGET_CXX to 'no' if c++ is not enabled in the toolchain.
SVN-Revision: 16213
15 years ago
Ralph Hempel c4d7af7094 added BUILD_LOG_DIR variable, make clean will delete the ./logs dir
SVN-Revision: 16148
15 years ago
Felix Fietkau 34939cad39 get rid of $Id$ - it has never helped us and it has broken too many patches ;)
SVN-Revision: 15242
15 years ago
Felix Fietkau 72faa09dff move cflags default setting to target makefiles
SVN-Revision: 14866
15 years ago
Felix Fietkau b6f0cb5366 prepend $(STAGING_DIR)/host to the PATH only in target-package stampfile targets, should fix usage of cross tools with host builds
SVN-Revision: 14800
15 years ago
Felix Fietkau 431c9267b4 replace a few unnecessary $(shell) calls
SVN-Revision: 14739
15 years ago
Felix Fietkau 127296bc45 speed up metadata scanning a lot by avoiding unnecessary shell commands and make recursions
SVN-Revision: 14734
15 years ago
Ralph Hempel 70633d5f2f second part of target rootfs relocation
SVN-Revision: 14578
15 years ago
Nicolas Thill db059cc0ff remove LINUX_HEADERS_DIR, not used anymore
SVN-Revision: 14271
15 years ago
Nicolas Thill 343c412a22 indent soft-float options
SVN-Revision: 14270
15 years ago
Nicolas Thill 1be5092692 move IPKG_STATE_DIR from ./rules.mk to ./include/package-ipkg.mk and change its value to suit opkg
SVN-Revision: 14269
15 years ago
Lars-Peter Clausen 28abf79c44 Use multi libc naming scheme for PACKAGE_DIR
SVN-Revision: 14168
15 years ago
Felix Fietkau ab0c71fe99 Revert r14071
SVN-Revision: 14077
16 years ago
Felix Fietkau 55a7b0a6e1 add eabi suffix to the target name
SVN-Revision: 14071
16 years ago
Felix Fietkau eb1c4db039 add support for an optional staging directory for debug binaries
SVN-Revision: 14018
16 years ago
Nicolas Thill a3edea1b91 add support for alternative C libraries (currently only glibc/eglibc) other (related) changes: - kernel headers are now installed using "make headers_install" on 2.6 - target names now contain an openwrt "vendor" tag (e.g. mips-openwrt-linux-gnu) - build directory names now contain gcc/libc name/version - default cpu for x86 is now i486 (required to build glibc/eglibc)
SVN-Revision: 13931
16 years ago
Felix Fietkau 0434df7fee add the make variable LIBGCC_S, which points to the correct libgcc ldflag (avr32 only has a static library, most targets use the dynamic one)
SVN-Revision: 13892
16 years ago
Felix Fietkau 87f9c56103 fix whitespace order in cflags without CONFIG_DEBUG to prevent breakage in some packages' configure step
SVN-Revision: 12601
16 years ago
Lars-Peter Clausen b7b1b8dc73 Revert r12510. Remove -rpath-link form TARGET_LDFLAGS as it breaks some packages.
SVN-Revision: 12597
16 years ago
Felix Fietkau 373e5f5e8d add new option for enabling debugging symbols
SVN-Revision: 12591
16 years ago
Felix Fietkau 6acecfb3cd add -rpath-link to TARGET_LDFLAGS by default
SVN-Revision: 12510
16 years ago
Felix Fietkau eef95be7a2 add TARGET_CXX variable which points to the c++ cross compiler
SVN-Revision: 12466
16 years ago
Felix Fietkau a3a37d0bb1 rework parallel building to get rid of some warnings and add back support for parallelizing the kernel build fixes #3882
SVN-Revision: 12322
16 years ago
Felix Fietkau 14ac8769b2 add a variable that contains the proper architecture-dependent -fPIC/-fpic cflag for building shared libraries
SVN-Revision: 12224
16 years ago
Felix Fietkau 214cac6482 add helper macro for stripping the last part of a version number
SVN-Revision: 12054
16 years ago
Florian Fainelli 958c4eac47 Native toolchain does not support -fhonour-copts, do not add it to the TARGET_CFLAGS
SVN-Revision: 11874
16 years ago
John Crispin c9d9f8045c adds missing patch for native toolchain
SVN-Revision: 11425
16 years ago
Felix Fietkau 4c665e6ca4 large improvement for parallel builds. works without V=99 now and without warnings. tested with -j on an 2x dual core opteron machine
SVN-Revision: 11414
16 years ago
Nicolas Thill 7a0b9f1d28 $(TARGET) is not anymore, replace it with $(ARCH) in ./bin/packages subdirectories until we find something better
SVN-Revision: 10840
16 years ago
Felix Fietkau 82572cf767 revert ARM to oabi by default, add some eabi patches for fixing up the toolchain, which unfortunately break eabi userland, but are IMHO a necessary basis for further eabi fixes
SVN-Revision: 10458
16 years ago
Felix Fietkau 903af2c13e add $(TOOLCHAIN_DIR)/lib to $(TARGET_LDFLAGS) to ensure that all packages process this correctly - fixes build errors with openldap/php5
SVN-Revision: 10190
17 years ago
Imre Kaloz 915e6b89b5 fixup softfloat handling
SVN-Revision: 10003
17 years ago
Felix Fietkau 28922775b6 add $(STAGING_DIR)/host, which contains target specific, but host executable files
SVN-Revision: 9939
17 years ago
Felix Fietkau abf6bfff51 remove $(STAGING_DIR)/usr/bin from $(TARGET_PATH)
SVN-Revision: 9851
17 years ago
Felix Fietkau d48912ffe9 hopefully fix occasional uClibc/gcc build failures
SVN-Revision: 9717
17 years ago
Felix Fietkau 4235aee8c2 fix hostapd rebuild check, isolate the common src/ directory for hostapd variants as well to fix compile errors when both variants are selected (#2722)
SVN-Revision: 9575
17 years ago
Felix Fietkau a8c17898cc fix config change detect for hostapd
SVN-Revision: 9565
17 years ago
Felix Fietkau 6e03b9ce43 add config symbols for the kernel version
SVN-Revision: 9520
17 years ago
Felix Fietkau 42f055bfda fix empty download dir error
SVN-Revision: 9462
17 years ago
Florian Fainelli d22f50a252 Treat i686 as an i386 if present, fixes build errors with wireless-tools on i686 (x86 mediacenter)
SVN-Revision: 9439
17 years ago
John Crispin 9f73ab51f3 refreshed madwifi patches
SVN-Revision: 9380
17 years ago
John Crispin 1a3c4d1090 add possibility to set default .config values
SVN-Revision: 9300
17 years ago
John Crispin cfd0fecd47 changed the -fhonours-copts gcc patch, such that the function needs to be turned on explicitly
SVN-Revision: 9167
17 years ago
Felix Fietkau 446881738f export STAGING_DIR
SVN-Revision: 9160
17 years ago
Felix Fietkau dbeb0fad24 Refactor downloading code into download.mk Support multiple file downloads Support svn downloads
SVN-Revision: 9057
17 years ago
Felix Fietkau a9d683ca91 major target cleanup. it is now possible to have subtargets that can override many target settings, including arch - merge adm5120, adm5120eb. target profiles still need to be adapted for subtargets
SVN-Revision: 8694
17 years ago
Nicolas Thill 5b4bfbd6d4 move TARGET_* flags from ./include/package-default.mk to ./rules.mk, remove EXTRA_* flags but still use them in configure and make
SVN-Revision: 8592
17 years ago
Nicolas Thill 3f80599cda move ipkg related vars from ./rules.mk to ./include/package-ipkg.mk
SVN-Revision: 8581
17 years ago
Nicolas Thill 9400ad240f remove uneeded PATH setting in ipkg invocation
SVN-Revision: 8580
17 years ago
Felix Fietkau 5f748a6c24 clean up recursive dependency handling, use timestamp.pl again, because it saves memory and execution time
SVN-Revision: 8558
17 years ago
Nicolas Thill de265bba1c add back STAGING_DIR/usr/bin to TARGET_PATH until all library packages that install *-config scripts there are fixed
SVN-Revision: 8429
17 years ago
Felix Fietkau c6bc77ea36 build system cleanup/restructuring as described in http://lists.openwrt.org/pipermail/openwrt-devel/2007-August/001159.html
SVN-Revision: 8362
17 years ago
Felix Fietkau 99368862e4 Port the mbsd_multi patch from freewrt, which adds -fhonour-copts. This will emit warnings in packages that don't use our target cflags properly
SVN-Revision: 8256
17 years ago
Felix Fietkau 9c88ba80b9 more build system cleanup
SVN-Revision: 8206
17 years ago
Florian Fainelli 38c3a1299e Add optionnal support for a BUILD_DIR suffix (#2057)
SVN-Revision: 8050
17 years ago
Felix Fietkau 4b0c035a93 don't include .config if DUMP is set
SVN-Revision: 7738
17 years ago
Hamish Guthrie e970f61273 Remove a debug statement from trx.c, add config changes for at91
SVN-Revision: 7491
17 years ago
Felix Fietkau 1099e2d679 the default_subtargets template was a bad idea, since different makefiles require different types of dependencies for subtargets. nuke it...
SVN-Revision: 7003
17 years ago
Felix Fietkau 4c6c987f09 Improved autorebuild for kernel related stuff. - make modules_install in the kernel tree is no longer called - make modules is called on every target/compile run - kmod packages pull the kernel modules directly out of the kernel tree and have proper file depends on them
SVN-Revision: 6998
17 years ago
Mike Baker 9f142dcc0d revert [6857] for rules.mk; make cannot parse dependancies properly
SVN-Revision: 6860
17 years ago
Mike Baker 23efe5fc83 Tidy up Makefiles
SVN-Revision: 6857
17 years ago
Hamish Guthrie d9b2f5c07b Added rule for objdump Added support for AT91 SD-Card in primary bootloader (romboot)
SVN-Revision: 6638
17 years ago
Felix Fietkau ced1277147 clean up stampfile mess for tools/ and toolchain/
SVN-Revision: 6357
17 years ago
Felix Fietkau d0e1033a26 more fixes for rstrip.sh and kernel modules - fixes #1301
SVN-Revision: 6280
17 years ago
Felix Fietkau 0637295704 fix overzealous kmod stripping - it killed kernel module parameters (#1301)
SVN-Revision: 6271
17 years ago
Felix Fietkau 583ce4598b another compile fix
SVN-Revision: 6155
18 years ago
Felix Fietkau 3133fefe06 pass the CFLAGS through the environment on compile and fix a few packages
SVN-Revision: 6154
18 years ago
Rod Whitby 6d90528963 Added OBJCOPY variable for calling the cross-objcopy command (required for Apex booloader)
SVN-Revision: 5949
18 years ago
Florian Fainelli 9f048d5ac7 Add an install rule for configuration files
SVN-Revision: 5946
18 years ago
Felix Fietkau 6f6d4cf717 add staging_dir_*/usr/sbin to the TARGET_PATH (for grub)
SVN-Revision: 5904
18 years ago
Felix Fietkau 392966798b add INSTALL_BIN, INSTALL_DIR, INSTALL_DATA variables
SVN-Revision: 5619
18 years ago
Felix Fietkau 8838ffd68d speed up the build system a little bit
SVN-Revision: 5506
18 years ago
Felix Fietkau cf4e7af392 make target/linux/* directories self-contained, use the selected kernel version for the toolchain, autogenerate menuconfig and makefile code for target selection
SVN-Revision: 5498
18 years ago
Felix Fietkau 7bdf50688f use := for TAR_OPTIONS
SVN-Revision: 5084
18 years ago
Felix Fietkau 06a46fb09d move '-' parameter to TAR_OPTIONS, so that packages can append commands
SVN-Revision: 5083
18 years ago
Felix Fietkau 60c1f0f64d finally move buildroot-ng to trunk 8 years ago