An opensource OpenWrt variant for mainland China users.
Go to file
Ilya Lipnitskiy 3c9e4357c7 fakeroot: fix to work with glibc 2.33
The following commit removed _STAT_VER definitions from glibc:
https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=8ed005daf0ab03e142500324a34087ce179ae78e

That subsequently broke fakeroot:
https://bugs.archlinux.org/task/69572
https://bugzilla.redhat.com/show_bug.cgi?id=1889862#c13
https://forum.openwrt.org/t/unable-to-build-toolchain-fakeroot-fails-perhaps-others-after-it/87966

Make the patch based on Jan Pazdziora's suggestion from here:
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/message/SMQ3RYXEYTVZH6PLQMKNB3NM4XLPMNZO/

Add wrappers for newly exported symbols in glibc.

Apply patch from Debian to fix warnings in fts_read and fts_children:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=676428
https://sources.debian.org/patches/fakeroot/1.25.3-1.1/eglibc-fts-without-LFS/

Fix __xmknod{,at} dev pointer argument. Switch default to assume * and
not the absence of *. On glibc 2.33+, there is no definition for these
functions in header files, so the compile test doesn't work. But, we
can default to using the pointer (as is the case with newer glibc), and
use the header file on older platforms to fail the test and use no pointer.

Tested on my x86_64 Arch Linux machine, fakeroot unit tests pass.
Also tested by building various .ipks and examining the tar contents, to
ensure that the owner uid/gid was 0/0.

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-02-16 12:08:46 +08:00
config build: use SPDX license tags 2021-02-06 12:07:10 +08:00
include build: drop ABI version from metadata 2021-02-15 12:17:04 +08:00
package libnftnl: update to 1.1.8 2021-02-15 12:14:56 +08:00
scripts build: drop ABI version from metadata 2021-02-15 12:17:04 +08:00
target kernel: bump to 4.9.257, 4.14.221, 4.19.175 2021-02-10 19:37:50 +08:00
toolchain glibc: update to latest 2.33 commit 2021-02-14 12:05:38 +08:00
tools fakeroot: fix to work with glibc 2.33 2021-02-16 12:08:46 +08:00
.gitattributes fix permisson 2019-08-16 15:09:42 +08:00
.gitignore build: improve ccache support 2021-01-02 12:08:17 +08:00
BSDmakefile build: use SPDX license tags 2021-02-06 12:07:10 +08:00
Config.in build: use SPDX license tags 2021-02-06 12:07:10 +08:00
CONTRIBUTED.md luci-proto-minieap: add package 2020-12-25 19:02:31 +08:00
feeds.conf.default Project ImmortalWrt: update feed urls 2021-02-06 16:53:05 +08:00
LICENSE packages: apply usign padding workarounds to package indexes if needed 2019-08-16 14:48:02 +08:00
Makefile build: use SPDX license tags 2021-02-06 12:07:10 +08:00
README.md README: fix typo err 2021-02-06 16:56:20 +08:00
rules.mk build: add support for fixing up library soname 2021-02-15 12:16:15 +08:00

PROJECT IMMORTALWRT

The Core Source Code of ImmortalWrt

Welcome to our Telegram Group: @ctcgfw_openwrt_discuss.


How to make it

Minimum requirements

Linux with case sensitive
2G DDR2 RAM
2 CPU Cores (AMD64, 1.4Ghz)
25G disk space left
Has access to both ChinaNet & Internet

Install the necessary packages (for Ubuntu user)

sudo apt-get update -y
sudo apt-get full-upgrade -y
sudo apt-get install -y build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib g++-multilib p7zip p7zip-full msmtp libssl-dev texinfo libreadline-dev libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint ccache curl wget vim nano python python3 python-pip python3-pip python-ply python3-ply haveged lrzsz device-tree-compiler scons antlr3 gperf intltool rsync

For mainland China & Ubuntu(16.04+) user, you may run the following command to setup quickly:

sudo bash -c "bash <(curl -s https://build-scripts.project-openwrt.eu.org/init_build_environment.sh)"

Clone the source

git clone -b openwrt-18.06 --single-branch https://github.com/immortalwrt/immortalwrt && cd immortalwrt
./scripts/feeds update -a && ./scripts/feeds install -a

For developer, you may use openwrt-18.06-dev branch instead of openwrt-18.06.

Configure your firmware

make menuconfig

Make it

make -j$(nproc) V=s

Tips

You'd better not use root to make it, or you may be not able to use.
Default login address: 192.168.1.1, username is root and password is password.

Contributed

See CONTRIBUTED.md.

License

GNU General Public License v3.0.