OpenWrt Source Repository
Go to file
Michal Sojka e3021e0308 scripts/feeds: Reuse TOPDIR if defined in environment
The feeds script sets value of TOPDIR in a way that is inconsistent
with how toplevel Makefile sets it. The inconsistency manifests when I
use a "build directory" with symlinks to LEDE source (see below).

When make is invoked in such a directory, make's TOPDIR variable is
set to that directory, whereas scripts/feeds sets TOPDIR to the top of
LEDE source, which results in creating feeds directory inside the LEDE
source instead of in the build directory.

This patch changes the script so that it reuses the TOPDIR value form
the environment if it exists. The result is that 'make
package/symlinks' correctly fetches feeds to the build directory
instead in the source.

I use the following commands to create the build directory:

    ln -s $SRC/config config
    ln -s $SRC/Config.in Config.in
    ln -s $SRC/feeds.conf.default feeds.conf.default
    ln -s $SRC/include include
    ln -s $SRC/Makefile Makefile
    mkdir package
    ln -s $SRC/package/base-files package/base-files
    ln -s $SRC/package/boot package/boot
    ln -s $SRC/package/devel package/devel
    ln -s $SRC/package/firmware package/firmware
    ln -s $SRC/package/kernel package/kernel
    ln -s $SRC/package/libs package/libs
    ln -s $SRC/package/Makefile package/Makefile
    ln -s $SRC/package/network package/network
    ln -s $SRC/package/system package/system
    ln -s $SRC/package/utils package/utils
    ln -s $SRC/rules.mk rules.mk
    ln -s $SRC/scripts scripts
    ln -s $SRC/target target
    ln -s $SRC/toolchain toolchain
    ln -s $SRC/tools tools

This allows me to easily test changes in LEDE on multiple targets.

Signed-off-by: Michal Sojka <sojkam1@fel.cvut.cz>
2017-03-01 20:37:37 +01:00
.github Add Issue submission template (redirect to bugs.lede-project.org) 2016-09-01 09:01:04 -04:00
config x86: Set default baud rate on Geode images to 115200 2017-02-17 10:30:30 +01:00
include cmake: skip build system check on compile 2017-02-21 16:16:25 +01:00
package kernel: add Chinese codepages 2017-03-01 20:37:36 +01:00
scripts scripts/feeds: Reuse TOPDIR if defined in environment 2017-03-01 20:37:37 +01:00
target ar71xx: fix platform_find_rootfspart() 2017-03-01 20:37:36 +01:00
toolchain musl: update musl to 1.1.16+ and switch to download from git 2017-02-01 18:39:16 +01:00
tools tools: patch-image: fix file descriptor leak. 2017-02-15 09:37:15 +01:00
.gitattributes
.gitignore gitignore: add /overlay 2017-01-15 18:16:29 +01:00
BSDmakefile
Config.in branding: add LEDE branding 2016-03-24 22:40:13 +01:00
feeds.conf.default LEDE v17.01: set branch defaults 2017-01-16 18:56:07 +01:00
LICENSE
Makefile Makefile: ensure that BIN_DIR exists for diffconfig 2017-01-08 18:50:00 +01:00
README README: Update project README 2016-05-12 03:29:36 +02:00
rules.mk build: use mkhash to replace various quirky md5sum/openssl calls 2017-01-05 11:09:12 +01:00

This is the buildsystem for the LEDE Linux distribution.

Please use "make menuconfig" to choose your preferred
configuration for the toolchain and firmware.

You need to have installed gcc, binutils, bzip2, flex, python, perl, make,
find, grep, diff, unzip, gawk, getopt, subversion, libz-dev and libc headers.

Run "./scripts/feeds update -a" to get all the latest package definitions
defined in feeds.conf / feeds.conf.default respectively
and "./scripts/feeds install -a" to install symlinks of all of them into
package/feeds/.

Use "make menuconfig" to configure your image.

Simply running "make" will build your firmware.
It will download all sources, build the cross-compile toolchain, 
the kernel and all choosen applications.

To build your own firmware you need to have access to a Linux, BSD or MacOSX system
(case-sensitive filesystem required). Cygwin will not be supported because of
the lack of case sensitiveness in the file system.


Sunshine!
	Your LEDE Community
	http://www.lede-project.org