diff --git a/archive-configs/ct-ng-armbox-hd51.config b/archive-configs/ct-ng-armbox-hd51.config index d423768d..2cdb0f8f 100644 --- a/archive-configs/ct-ng-armbox-hd51.config +++ b/archive-configs/ct-ng-armbox-hd51.config @@ -37,7 +37,7 @@ CT_LOCAL_TARBALLS_DIR="${NI_BASE_DIR}/download" CT_SAVE_TARBALLS=y CT_WORK_DIR="${CT_TOP_DIR}/targets" CT_BUILD_TOP_DIR="${CT_WORK_DIR}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_PREFIX_DIR="${NI_BASE_DIR}/cross/arm/hd51" +CT_PREFIX_DIR="${NI_CROSS_DIR}" CT_RM_RF_PREFIX_DIR=y # CT_REMOVE_DOCS is not set # CT_BUILD_MANUALS is not set diff --git a/archive-configs/ct-ng-coolstream-hd1.config b/archive-configs/ct-ng-coolstream-hd1.config index 53875f34..06d00b7b 100644 --- a/archive-configs/ct-ng-coolstream-hd1.config +++ b/archive-configs/ct-ng-coolstream-hd1.config @@ -41,7 +41,7 @@ CT_LOCAL_TARBALLS_DIR="${NI_BASE_DIR}/download" CT_SAVE_TARBALLS=y CT_WORK_DIR="${CT_TOP_DIR}/targets" CT_BUILD_TOP_DIR="${CT_WORK_DIR}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_PREFIX_DIR="${NI_BASE_DIR}/cross/arm/hd1" +CT_PREFIX_DIR="${NI_CROSS_DIR}" CT_RM_RF_PREFIX_DIR=y # CT_REMOVE_DOCS is not set # CT_BUILD_MANUALS is not set diff --git a/archive-configs/ct-ng-coolstream-hd2.config b/archive-configs/ct-ng-coolstream-hd2.config index 1d495e96..ea099291 100644 --- a/archive-configs/ct-ng-coolstream-hd2.config +++ b/archive-configs/ct-ng-coolstream-hd2.config @@ -37,7 +37,7 @@ CT_LOCAL_TARBALLS_DIR="${NI_BASE_DIR}/download" CT_SAVE_TARBALLS=y CT_WORK_DIR="${CT_TOP_DIR}/targets" CT_BUILD_TOP_DIR="${CT_WORK_DIR}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" -CT_PREFIX_DIR="${NI_BASE_DIR}/cross/arm/hd2" +CT_PREFIX_DIR="${NI_CROSS_DIR}" CT_RM_RF_PREFIX_DIR=y CT_REMOVE_DOCS=y CT_PREFIX_DIR_RO=y diff --git a/config.example b/config.example index d38f022f..aae442ee 100644 --- a/config.example +++ b/config.example @@ -16,6 +16,7 @@ # AX/Mutant #BOXMODEL = hd51 +#BOXMODEL = bre2ze4k # Neutrino API keys #N_OMDB_API_KEY = diff --git a/make/bootstrap.mk b/make/bootstrap.mk index 0654d095..2c89a255 100644 --- a/make/bootstrap.mk +++ b/make/bootstrap.mk @@ -37,7 +37,7 @@ skeleton: | $(TARGET_DIR) target-dir: mkdir -p $(TARGET_DIR) -ifeq ($(BOXSERIES), hd51) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) mkdir -p $(TARGET_DIR)/boot endif mkdir -p $(TARGET_DIR)/dev @@ -144,7 +144,7 @@ ifeq ($(BOXSERIES), hd2) ln -sf libuClibc-$(UCLIBC_VER).so libpthread.so.0; \ ln -sf libuClibc-$(UCLIBC_VER).so librt.so.0 endif -ifeq ($(BOXSERIES), hd51) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) $(CD) $(TARGET_LIB_DIR); \ ln -sf ld-2.23.so ld-linux.so.3 endif diff --git a/make/crosstool.mk b/make/crosstool.mk index f160bee9..7cb3bfdc 100644 --- a/make/crosstool.mk +++ b/make/crosstool.mk @@ -6,7 +6,7 @@ crosstool: crosstool-$(BOXARCH)-$(BOXSERIES) crosstools: - for boxseries in hd1 hd2 hd51; do \ + for boxseries in hd1 hd2 hd51 bre2ze4k; do \ make BOXSERIES=$${boxseries} crosstool-$(BOXARCH)-$${boxseries} || exit; \ done; @@ -32,7 +32,7 @@ crosstool-restore: $(CROSSTOOL_BACKUP) # ----------------------------------------------------------------------------- crosstools-renew: - for boxseries in hd1 hd2 hd51; do \ + for boxseries in hd1 hd2 hd51 bre2ze4k; do \ make BOXSERIES=$${boxseries} ccache-clean static-clean cross-clean || exit; \ done; make host-clean @@ -58,6 +58,7 @@ crosstool-arm-hd1: CROSS_DIR-check $(SOURCE_DIR)/$(NI_LINUX-KERNEL) cp -a $(CONFIGS)/ct-ng-$(BOXTYPE)-$(BOXSERIES).config .config && \ sed -i "s@^CT_PARALLEL_JOBS=.*@CT_PARALLEL_JOBS=$(PARALLEL_JOBS)@" .config && \ export NI_BASE_DIR=$(BASE_DIR) && \ + export NI_CROSS_DIR=$(CROSS_DIR) && \ export NI_CUSTOM_KERNEL=$(BUILD_TMP)/crosstool-ng/targets/src/linux-$(KERNEL_VERSION).tar && \ export NI_CUSTOM_KERNEL_VERSION=$(KERNEL_VERSION) && \ export LD_LIBRARY_PATH= && \ @@ -96,6 +97,7 @@ crosstool-arm-hd2: CROSS_DIR-check $(ARCHIVE)/gcc-linaro-$(GCC_VER).tar.xz $(SOU cp -a $(CONFIGS)/ct-ng-$(BOXTYPE)-$(BOXSERIES).config .config && \ sed -i "s@^CT_PARALLEL_JOBS=.*@CT_PARALLEL_JOBS=$(PARALLEL_JOBS)@" .config && \ export NI_BASE_DIR=$(BASE_DIR) && \ + export NI_CROSS_DIR=$(CROSS_DIR) && \ export NI_CUSTOM_KERNEL=$(BUILD_TMP)/crosstool-ng/targets/src/linux-$(KERNEL_VERSION).tar && \ export NI_CUSTOM_KERNEL_VERSION=$(KERNEL_VERSION) && \ export NI_UCLIBC_CONFIG=$(CONFIGS)/ct-ng-uClibc-$(UCLIBC_VER).config && \ @@ -128,6 +130,7 @@ crosstool-arm-hd51: CROSS_DIR-check $(SOURCE_DIR)/$(NI_LINUX-KERNEL) cp -a $(CONFIGS)/ct-ng-$(BOXTYPE)-$(BOXSERIES).config .config && \ sed -i "s@^CT_PARALLEL_JOBS=.*@CT_PARALLEL_JOBS=$(PARALLEL_JOBS)@" .config && \ export NI_BASE_DIR=$(BASE_DIR) && \ + export NI_CROSS_DIR=$(CROSS_DIR) && \ export NI_CUSTOM_KERNEL=$(BUILD_TMP)/crosstool-ng/targets/src/linux-$(KERNEL_VERSION).tar && \ export NI_CUSTOM_KERNEL_VERSION=$(KERNEL_VERSION) && \ export LD_LIBRARY_PATH= && \ @@ -140,6 +143,12 @@ crosstool-arm-hd51: CROSS_DIR-check $(SOURCE_DIR)/$(NI_LINUX-KERNEL) rm -f $(CROSS_DIR)/$(TARGET)/sys-root/lib/libstdc++.so.6.0.20-gdb.py $(REMOVE)/crosstool-ng.git +crosstool-arm-bre2ze4k: CROSS_DIR-check +ifeq ($(wildcard $(CROSS_BASE)/$(BOXARCH)/hd51),) + make crosstool-arm-hd51 +endif + ln -sf hd51 $(CROSS_DIR) + # ----------------------------------------------------------------------------- CROSS_DIR-check: diff --git a/make/development-tools.mk b/make/development-tools.mk index b033a886..265bf28c 100644 --- a/make/development-tools.mk +++ b/make/development-tools.mk @@ -14,6 +14,7 @@ $(ARCHIVE)/valgrind-$(VALGRIND_VER).tar.bz2: VALGRIND_PATCH = valgrind-fix-$(BOXSERIES)-build.patch +$(D)/valgrind-bre2ze4k \ $(D)/valgrind-hd51 \ $(D)/valgrind-hd2: $(ARCHIVE)/valgrind-$(VALGRIND_VER).tar.bz2 | $(TARGET_DIR) $(REMOVE)/valgrind-$(VALGRIND_VER) diff --git a/make/environment-build.mk b/make/environment-build.mk index fa25b013..f87a1b3a 100644 --- a/make/environment-build.mk +++ b/make/environment-build.mk @@ -28,12 +28,12 @@ SHELL := /bin/bash # - AX Technologies / Mutant -------------------------------------------------- # BOXTYPE armbox -# | -# BOXSERIES hd51 -# | +# / \ +# BOXSERIES hd51 bre2ze4k +# | | # BOXFAMILY bcm7251s -# | -# BOXMODEL hd51 +# | | +# BOXMODEL hd51 bre2ze4k # ----------------------------------------------------------------------------- @@ -51,30 +51,12 @@ ifneq ($(BOXSERIES),) BOXTYPE = armbox BOXFAMILY = bcm7251s BOXMODEL = hd51 - else - $(error $(BOXTYPE) BOXSERIES $(BOXSERIES) not supported) - endif - -# assign by given BOXFAMILY -else ifneq ($(BOXFAMILY),) - ifeq ($(BOXFAMILY), nevis) - BOXTYPE = coolstream - BOXSERIES = hd1 - BOXMODEL = nevis - else ifeq ($(BOXFAMILY), apollo) - BOXTYPE = coolstream - BOXSERIES = hd2 - BOXMODEL = apollo - else ifeq ($(BOXFAMILY), kronos) - BOXTYPE = coolstream - BOXSERIES = hd2 - BOXMODEL = kronos - else ifeq ($(BOXFAMILY), bcm7251s) + else ifeq ($(BOXSERIES), bre2ze4k) BOXTYPE = armbox - BOXSERIES = hd51 - BOXMODEL = hd51 + BOXFAMILY = bcm7251s + BOXMODEL = bre2ze4k else - $(error $(BOXTYPE) BOXFAMILY $(BOXFAMILY) not supported) + $(error $(BOXTYPE) BOXSERIES $(BOXSERIES) not supported) endif # assign by given BOXMODEL @@ -95,6 +77,10 @@ else ifneq ($(BOXMODEL),) BOXTYPE = armbox BOXSERIES = hd51 BOXFAMILY = bcm7251s + else ifeq ($(BOXMODEL), bre2ze4k) + BOXTYPE = armbox + BOXSERIES = bre2ze4k + BOXFAMILY = bcm7251s else $(error $(BOXTYPE) BOXMODEL $(BOXMODEL) not supported) endif @@ -216,11 +202,11 @@ else ifeq ($(BOXSERIES), hd2) endif CXX11_ABI = -D_GLIBCXX_USE_CXX11_ABI=0 -else ifeq ($(BOXSERIES), hd51) +else ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) KERNEL_VERSION_MAJOR = 4.10 KERNEL_VERSION = 4.10.12 - DRIVERS_DIR = hd51 + DRIVERS_DIR = $(BOXSERIES) CORTEX-STRINGS = -lcortex-strings TARGET = arm-cortex-linux-gnueabihf TARGET_O_CFLAGS = -O2 diff --git a/make/image-updates.mk b/make/image-updates.mk index ccd6691a..3de2abcb 100644 --- a/make/image-updates.mk +++ b/make/image-updates.mk @@ -3,7 +3,7 @@ # # ----------------------------------------------------------------------------- -BOXSERIES_UPDATE = hd2 hd51 +BOXSERIES_UPDATE = hd2 hd51 bre2ze4k ifneq ($(DEBUG), yes) BOXSERIES_UPDATE += hd1 endif diff --git a/make/images.mk b/make/images.mk index 8f634f73..ecd5e62c 100644 --- a/make/images.mk +++ b/make/images.mk @@ -67,6 +67,10 @@ ifeq ($(BOXMODEL), hd51) make flash-image-armbox BOXNAME="AX/Mut@nt HD51" make flash-image-armbox-multi endif +ifeq ($(BOXMODEL), bre2ze4k) + make flash-image-armbox BOXNAME="WWIO BRE2ZE4K" + make flash-image-armbox-multi +endif # ----------------------------------------------------------------------------- @@ -129,7 +133,7 @@ flash-image-armbox: # ----------------------------------------------------------------------------- -# general +# hd51 / bre2ze4k HD51_IMAGE_NAME = disk HD51_BOOT_IMAGE = boot.img HD51_IMAGE_LINK = $(HD51_IMAGE_NAME).ext4 diff --git a/make/linux-kernel.mk b/make/linux-kernel.mk index 2e288cd9..4234fce2 100644 --- a/make/linux-kernel.mk +++ b/make/linux-kernel.mk @@ -24,7 +24,7 @@ ifeq ($(BOXSERIES)-$(BOXFAMILY), hd2-apollo) KERNEL_DTB = $(SOURCE_DIR)/$(NI_DRIVERS-BIN)/$(BOXTYPE)/$(DRIVERS_DIR)/kernel-dtb/hd849x.dtb else ifeq ($(BOXSERIES)-$(BOXFAMILY), hd2-kronos) KERNEL_DTB = $(SOURCE_DIR)/$(NI_DRIVERS-BIN)/$(BOXTYPE)/$(DRIVERS_DIR)/kernel-dtb/en75x1.dtb -else ifeq ($(BOXSERIES), hd51) +else ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) KERNEL_DTB = $(BUILD_TMP)/$(KERNEL_OBJ)/arch/$(BOXARCH)/boot/dts/bcm7445-bcm97445svmb.dtb endif @@ -45,7 +45,7 @@ KERNEL_MAKEVARS += \ KERNEL_MAKEOPTS = $(EMPTY) ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd1 hd2)) KERNEL_MAKEOPTS = zImage modules -else ifeq ($(BOXSERIES), hd51) +else ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) KERNEL_MAKEOPTS = zImage modules $(notdir $(KERNEL_DTB)) endif diff --git a/make/neutrino-plugins.mk b/make/neutrino-plugins.mk index ddbc1c7e..44eabb77 100644 --- a/make/neutrino-plugins.mk +++ b/make/neutrino-plugins.mk @@ -14,6 +14,7 @@ plugins-hd1: # nothing to do plugins-hd2 \ +plugins-bre2ze4k \ plugins-hd51: \ $(D)/channellogos ifneq ($(BOXMODEL), kronos_v2) @@ -37,7 +38,7 @@ NP_CONFIGURE_ADDITIONS = \ --disable-mountpointmanagement \ --disable-stbup -ifneq ($(BOXMODEL), hd51) +ifneq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) NP_CONFIGURE_ADDITIONS += \ --disable-showiframe \ --disable-stb_startup \ @@ -188,6 +189,7 @@ PHONY += plugins PHONY += plugins-hd1 PHONY += plugins-hd2 PHONY += plugins-hd51 +PHONY += plugins-bre2ze4k PHONY += neutrino-plugins-uninstall neutrino-plugins-distclean PHONY += neutrino-plugins-clean neutrino-plugins-clean-all diff --git a/make/neutrino.mk b/make/neutrino.mk index 893228ec..0c8225a2 100644 --- a/make/neutrino.mk +++ b/make/neutrino.mk @@ -48,7 +48,7 @@ ifeq ($(BOXSERIES), hd2) N_CFLAGS += -DFB_HW_ACCELERATION endif -ifeq ($(BOXSERIES), hd51) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) ifeq ($(USE_GSTREAMER), yes) N_CFLAGS += $(shell $(PKG_CONFIG) --cflags --libs gstreamer-1.0) N_CFLAGS += $(shell $(PKG_CONFIG) --cflags --libs gstreamer-audio-1.0) @@ -189,7 +189,7 @@ LH_DEPS += ffmpeg LH_DEPS += openthreads USE_GSTREAMER = no -ifeq ($(BOXSERIES), hd51) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) ifeq ($(USE_GSTREAMER), yes) LH_DEPS += gstreamer-all endif @@ -198,7 +198,7 @@ endif # ----------------------------------------------------------------------------- LH_CONFIGURE_GSTREAMER = -ifeq ($(BOXSERIES), hd51) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) ifeq ($(USE_GSTREAMER), yes) LH_CONFIGURE_GSTREAMER += \ --enable-gstreamer_10 diff --git a/make/ni.mk b/make/ni.mk index c198c870..e021e0e9 100644 --- a/make/ni.mk +++ b/make/ni.mk @@ -3,7 +3,7 @@ # # ----------------------------------------------------------------------------- -BOXMODEL_IMAGE = apollo kronos kronos_v2 hd51 +BOXMODEL_IMAGE = apollo kronos kronos_v2 hd51 bre2ze4k ifneq ($(DEBUG), yes) BOXMODEL_IMAGE += nevis endif @@ -53,7 +53,7 @@ ni-image: $(MAKE) wget $(MAKE) iconv $(MAKE) streamripper -ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51)) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 bre2ze4k)) $(MAKE) less $(MAKE) parted $(MAKE) openvpn @@ -65,7 +65,7 @@ ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51)) $(MAKE) minicom $(MAKE) mc endif - ifeq ($(BOXSERIES), hd51) + ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) $(MAKE) ofgwrite $(MAKE) aio-grab $(MAKE) dvbsnoop diff --git a/make/rootfs.mk b/make/rootfs.mk index a8fb4f54..fbaee0d7 100644 --- a/make/rootfs.mk +++ b/make/rootfs.mk @@ -119,7 +119,7 @@ endif rootfs-softlinks: $(ROOTFS) $(CD) $(ROOTFS); \ ln -sf /var/root root -ifeq ($(BOXSERIES), hd51) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) $(CD) $(ROOTFS); \ ln -sf /var/root home endif diff --git a/make/static-libs.mk b/make/static-libs.mk index 0019c918..d056c362 100644 --- a/make/static-libs.mk +++ b/make/static-libs.mk @@ -4,7 +4,7 @@ # ----------------------------------------------------------------------------- STATIC_LIBS = -ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51)) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 bre2ze4k)) STATIC_LIBS += cortex-strings endif @@ -18,7 +18,7 @@ $(ARCHIVE)/cortex-strings-$(CORTEX-STRINGS_VER).tar.bz2: get-git-archive.sh http://git.linaro.org/git-ro/toolchain/cortex-strings.git $(CORTEX-STRINGS_VER) $(notdir $@) $(ARCHIVE) CORTEX-STRINGS_CONF = -ifneq ($(BOXSERIES), hd51) +ifneq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) CORTEX-STRINGS_CONF = --without-neon endif diff --git a/make/system-libs.mk b/make/system-libs.mk index 3d7a3d82..379c6b68 100644 --- a/make/system-libs.mk +++ b/make/system-libs.mk @@ -200,7 +200,7 @@ $(ARCHIVE)/libpng-$(LIBPNG_VER).tar.xz: LIBPNG_PATCH = libpng-Disable-pngfix-and-png-fix-itxt.patch LIBPNG_CONF = -ifneq ($(BOXSERIES), hd51) +ifneq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) LIBPNG_CONF = --disable-arm-neon endif @@ -380,7 +380,7 @@ $(D)/openssl: $(ARCHIVE)/openssl-$(OPENSSL_VER).tar.gz | $(TARGET_DIR) $(REWRITE_PKGCONF)/libcrypto.pc $(REWRITE_PKGCONF)/libssl.pc rm -rf $(TARGET_DIR)/bin/c_rehash $(TARGET_LIB_DIR)/engines -ifneq ($(BOXSERIES), hd51) +ifneq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) rm -rf $(TARGET_DIR)/bin/openssl endif $(REMOVE)/openssl-$(OPENSSL_VER) diff --git a/make/system-scripts.mk b/make/system-scripts.mk index 21f9b5a6..2bdfc38f 100644 --- a/make/system-scripts.mk +++ b/make/system-scripts.mk @@ -30,7 +30,7 @@ $(TARGET_DIR)/etc/init.d/camd_datefix: install -D -m 0755 $(IMAGEFILES)/scripts/camd_datefix.init $@ $(TARGET_DIR)/etc/init.d/coredump: -ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51)) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd2 hd51 bre2ze4k)) install -D -m 0755 $(IMAGEFILES)/scripts/coredump.init $@ endif @@ -48,7 +48,7 @@ $(TARGET_DIR)/etc/init.d/inetd: ln -sf inetd $(TARGET_DIR)/etc/init.d/K80inetd $(TARGET_DIR)/etc/init.d/swap: -ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51)) +ifeq ($(BOXSERIES), $(filter $(BOXSERIES), hd51 bre2ze4k)) install -D -m 0755 $(IMAGEFILES)/scripts/swap.init $@ ln -sf swap $(TARGET_DIR)/etc/init.d/K99swap endif diff --git a/make/system-tools.mk b/make/system-tools.mk index a938121a..ff6e4fa0 100644 --- a/make/system-tools.mk +++ b/make/system-tools.mk @@ -852,6 +852,7 @@ SAMBA36_PATCH0 = samba36-CVE-2016-2112-v3-6.patch SAMBA36_PATCH0 += samba36-CVE-2016-2115-v3-6.patch SAMBA36_PATCH0 += samba36-CVE-2017-7494-v3-6.patch +$(D)/samba-bre2ze4k \ $(D)/samba-hd51 \ $(D)/samba-hd2: $(D)/zlib $(ARCHIVE)/samba-$(SAMBA36_VER).tar.gz | $(TARGET_DIR) $(REMOVE)/samba-$(SAMBA36_VER)