endef
define gettext_version_target
- cd $(PKG_BUILD_DIR) && \
- GETTEXT_VERSION=$(shell $(STAGING_DIR_HOST)/bin/gettext -V | $(STAGING_DIR_HOST)/bin/sed -ne '1s/.* //p') && \
- $(STAGING_DIR_HOST)/bin/sed \
- -i $(PKG_BUILD_DIR)/configure.ac \
- -e "s/AM_GNU_GETTEXT_VERSION(\[.*\])/AM_GNU_GETTEXT_VERSION(\[$$$$GETTEXT_VERSION\])/g" && \
- $(STAGING_DIR_HOST)/bin/autopoint --force
+ (cd $(PKG_BUILD_DIR) && \
+ GETTEXT_VERSION=$(shell $(STAGING_DIR_HOST)/bin/gettext -V | $(STAGING_DIR_HOST)/bin/sed -ne '1s/.* //p') && \
+ $(STAGING_DIR_HOST)/bin/sed \
+ -i $(PKG_BUILD_DIR)/configure.ac \
+ -e "s/AM_GNU_GETTEXT_VERSION(.*)/AM_GNU_GETTEXT_VERSION(\[$$$$GETTEXT_VERSION\])/g" && \
+ $(STAGING_DIR_HOST)/bin/autopoint --force \
+ );
endef
+ifneq ($(filter gettext-version,$(PKG_FIXUP)),)
+ Hooks/Configure/Pre += gettext_version_target
+ ifeq ($(filter no-autoreconf,$(PKG_FIXUP)),)
+ Hooks/Configure/Pre += autoreconf_target
+ endif
+endif
+
ifneq ($(filter patch-libtool,$(PKG_FIXUP)),)
Hooks/Configure/Pre += patch_libtool_target
endif
endif
endif
-ifneq ($(filter gettext-version,$(PKG_FIXUP)),)
- Hooks/Configure/Pre += gettext_version_target
-endif
-
HOST_FIXUP?=$(PKG_FIXUP)
HOST_LIBTOOL_PATHS?=$(if $(PKG_LIBTOOL_PATHS),$(PKG_LIBTOOL_PATHS),.)
CMAKE_CXX_COMPILER:=$(CCACHE)
CMAKE_CXX_COMPILER_ARG1:=$(TARGET_CXX_NOCACHE)
endif
-CMAKE_AR:=$(call cmake_tool,$(TARGET_CROSS)ar)
-CMAKE_RANLIB:=$(call cmake_tool,$(TARGET_CROSS)ranlib)
+CMAKE_AR:=$(call cmake_tool,$(TARGET_AR))
+CMAKE_NM:=$(call cmake_tool,$(TARGET_NM))
+CMAKE_RANLIB:=$(call cmake_tool,$(TARGET_RANLIB))
+
+CMAKE_FIND_ROOT_PATH:=$(STAGING_DIR);$(TOOLCHAIN_DIR)$(if $(CONFIG_EXTERNAL_TOOLCHAIN),;$(CONFIG_TOOLCHAIN_ROOT))
+CMAKE_HOST_FIND_ROOT_PATH:=$(STAGING_DIR_HOST)
+CMAKE_SHARED_LDFLAGS:=-Wl,-Bsymbolic-functions
define Build/Configure/Default
(cd $(PKG_BUILD_DIR); \
-DCMAKE_C_COMPILER_ARG1="$(CMAKE_C_COMPILER_ARG1)" \
-DCMAKE_CXX_COMPILER="$(CMAKE_CXX_COMPILER)" \
-DCMAKE_CXX_COMPILER_ARG1="$(CMAKE_CXX_COMPILER_ARG1)" \
+ -DCMAKE_ASM_COMPILER="$(CMAKE_C_COMPILER)" \
+ -DCMAKE_ASM_COMPILER_ARG1="$(CMAKE_C_COMPILER_ARG1)" \
-DCMAKE_EXE_LINKER_FLAGS:STRING="$(TARGET_LDFLAGS)" \
- -DCMAKE_MODULE_LINKER_FLAGS:STRING="$(TARGET_LDFLAGS)" \
- -DCMAKE_SHARED_LINKER_FLAGS:STRING="$(TARGET_LDFLAGS)" \
+ -DCMAKE_MODULE_LINKER_FLAGS:STRING="$(TARGET_LDFLAGS) $(CMAKE_SHARED_LDFLAGS)" \
+ -DCMAKE_SHARED_LINKER_FLAGS:STRING="$(TARGET_LDFLAGS) $(CMAKE_SHARED_LDFLAGS)" \
-DCMAKE_AR="$(CMAKE_AR)" \
+ -DCMAKE_NM="$(CMAKE_NM)" \
-DCMAKE_RANLIB="$(CMAKE_RANLIB)" \
- -DCMAKE_FIND_ROOT_PATH="$(STAGING_DIR);$(TOOLCHAIN_DIR)" \
+ -DCMAKE_FIND_ROOT_PATH="$(CMAKE_FIND_ROOT_PATH)" \
-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=BOTH \
-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \
-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY \
-DCMAKE_INSTALL_PREFIX=/usr \
-DDL_LIBRARY=$(STAGING_DIR) \
-DCMAKE_PREFIX_PATH=$(STAGING_DIR) \
+ -DCMAKE_SKIP_RPATH=TRUE \
$(CMAKE_OPTIONS) \
$(CMAKE_SOURCE_DIR) \
)
endef
Build/InstallDev = $(if $(CMAKE_INSTALL),$(Build/InstallDev/cmake))
+
+define Host/Configure/Default
+ (cd $(HOST_BUILD_DIR); \
+ CFLAGS="$(HOST_CFLAGS)" \
+ CXXFLAGS="$(HOST_CFLAGS)" \
+ LDFLAGS="$(HOST_LDFLAGS)" \
+ cmake \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_C_FLAGS_RELEASE="-DNDEBUG" \
+ -DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" \
+ -DCMAKE_EXE_LINKER_FLAGS:STRING="$(HOST_LDFLAGS)" \
+ -DCMAKE_MODULE_LINKER_FLAGS:STRING="$(HOST_LDFLAGS)" \
+ -DCMAKE_SHARED_LINKER_FLAGS:STRING="$(HOST_LDFLAGS)" \
+ -DCMAKE_FIND_ROOT_PATH="$(CMAKE_HOST_FIND_ROOT_PATH)" \
+ -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=BOTH \
+ -DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY \
+ -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY \
+ -DCMAKE_STRIP=: \
+ -DCMAKE_INSTALL_PREFIX=$(STAGING_DIR_HOST) \
+ -DCMAKE_PREFIX_PATH=$(STAGING_DIR_HOST) \
+ -DCMAKE_SKIP_RPATH=TRUE \
+ $(CMAKE_HOST_OPTIONS) \
+ $(CMAKE_SOURCE_DIR) \
+ )
+endef
-#
+#
# Copyright (C) 2007 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
-#
+#
# Copyright (C) 2007 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
$(abspath $(PACKAGE_DIR)/$(if $(Package/$(1)/feed),$(Package/$(1)/feed),base)), \
$(PACKAGE_DIR)))
endef
+
+# 1: destination file
+define FeedSourcesAppend
+( \
+ $(strip $(if $(CONFIG_PER_FEED_REPO), \
+ $(foreach feed,base $(FEEDS_ENABLED),echo "src/gz %n_$(feed) %U/$(feed)";) \
+ $(if $(CONFIG_PER_FEED_REPO_ADD_DISABLED), \
+ $(foreach feed,$(FEEDS_DISABLED),echo "$(if $(CONFIG_PER_FEED_REPO_ADD_COMMENTED),# )src/gz %n_$(feed) %U/$(feed)";)) \
+ , \
+ echo "src/gz %n %U"; \
+ )) \
+) >> $(1)
+endef
CFLAGS="$(HOST_CFLAGS)" \
CPPFLAGS="$(HOST_CPPFLAGS)" \
LDFLAGS="$(HOST_LDFLAGS)" \
- SHELL="$(BASH)"
+ SHELL="$(SHELL)"
HOST_CONFIGURE_ARGS = \
--target=$(GNU_HOST_NAME) \
HOST_CONFIGURE_CMD = $(BASH) ./configure
-ifneq ($(HOST_OS),Darwin)
- ifeq ($(CONFIG_BUILD_STATIC_TOOLS),y)
- HOST_STATIC_LINKING = -static
- endif
-endif
-
define Host/Configure/Default
$(if $(HOST_CONFIGURE_PARALLEL),+)(cd $(HOST_BUILD_DIR)/$(3); \
if [ -x configure ]; then \
$(1) : export STAGING_PREFIX=$$(STAGING_DIR_HOST)
$(1) : export PKG_CONFIG_PATH=$$(STAGING_DIR_HOST)/lib/pkgconfig
$(1) : export PKG_CONFIG_LIBDIR=$$(STAGING_DIR_HOST)/lib/pkgconfig
+ $(1) : export CCACHE_DIR:=$(STAGING_DIR_HOST)/ccache
endef
Host/Exports=$(Host/Exports/Default)
$(call Host/Install)
$(foreach hook,$(Hooks/HostInstall/Post),$(call $(hook))$(sep))
mkdir -p $$(shell dirname $$@)
+ touch $(HOST_STAMP_BUILT)
touch $$@
ifndef STAMP_BUILT
-#
-# Copyright (C) 2007-2010 OpenWrt.org
+#
+# Copyright (C) 2007-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
-include $(TMP_DIR)/.host.mk
endif
-export TAR FIND
-
ifneq ($(__host_inc),1)
__host_inc:=1
+export PATH:=$(TOPDIR)/staging_dir/host/bin:$(PATH)
+
try-run = $(shell set -e; \
TMP_F="$(TMP_DIR)/try-run.$$$$.tmp"; \
if ($(1)) >/dev/null 2>&1; then echo "$(2)"; else echo "$(3)"; fi; \
echo "HOST_OS:=$$HOST_OS" > $@; \
echo "HOST_ARCH:=$$HOST_ARCH" >> $@; \
echo "GNU_HOST_NAME:=$$GNU_HOST_NAME" >> $@; \
- TAR=`which gtar 2>/dev/null`; \
- [ -n "$$TAR" -a -x "$$TAR" ] || TAR=`which gnutar 2>/dev/null`; \
- [ -n "$$TAR" -a -x "$$TAR" ] || TAR=`which tar 2>/dev/null`; \
- echo "TAR:=$$TAR" >> $@; \
- FIND=`which gfind 2>/dev/null`; \
- [ -n "$$FIND" -a -x "$$FIND" ] || FIND=`which find 2>/dev/null`; \
- echo "FIND:=$$FIND" >> $@; \
- echo "BASH:=$(shell which bash)" >> $@; \
- if $$FIND -L /tmp -maxdepth 0 >/dev/null 2>/dev/null; then \
- echo "FIND_L=$$FIND -L \$$(1)" >>$@; \
+ if gfind -L /dev/null || find -L /dev/null; then \
+ echo "FIND_L=find -L \$$(1)" >> $@; \
else \
- echo "FIND_L=$$FIND \$$(1) -follow" >> $@; \
- fi; \
- PATCH=`which gpatch 2>/dev/null`; \
- [ -n "$$PATCH" -a -x "$$PATCH" ] || PATCH=`which patch 2>/dev/null`; \
- echo "PATCH:=$$PATCH" >> $@; \
- PYTHON=`which python2.7 2>/dev/null`; \
- [ -n "$$PYTHON" -a -x "$$PYTHON" ] || PYTHON=`which python 2>/dev/null`; \
- echo "PYTHON:=$$PYTHON" >> $@; \
- )
+ echo "FIND_L=find \$$(1) -follow" >> $@; \
+ fi \
+ ) >/dev/null 2>/dev/null
endif
include $(INCLUDE_DIR)/prereq.mk
include $(INCLUDE_DIR)/kernel.mk
include $(INCLUDE_DIR)/host.mk
+include $(INCLUDE_DIR)/version.mk
override MAKE:=$(_SINGLE)$(SUBMAKE)
override NO_TRACE_MAKE:=$(_SINGLE)$(NO_TRACE_MAKE)
KDIR=$(KERNEL_BUILD_DIR)
DTS_DIR:=$(LINUX_DIR)/arch/$(ARCH)/boot/dts/
-IMG_PREFIX:=librecmc-$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET))
+IMG_PREFIX:=librecmc-$(if $(CONFIG_VERSION_FILENAMES),$(VERSION_NUMBER)-)$(BOARD)$(if $(SUBTARGET),-$(SUBTARGET))
MKFS_DEVTABLE_OPT := -D $(INCLUDE_DIR)/device_table.txt
TARGET_FILESYSTEMS := $(fs-types-y)
+FS_64K := $(filter-out jffs2-%,$(TARGET_FILESYSTEMS)) jffs2-64k
+FS_128K := $(filter-out jffs2-%,$(TARGET_FILESYSTEMS)) jffs2-128k
+FS_256K := $(filter-out jffs2-%,$(TARGET_FILESYSTEMS)) jffs2-256k
+
define add_jffs2_mark
echo -ne '\xde\xad\xc0\xde' >> $(1)
endef
$(shell echo $(1) | tr '[:lower:]' '[:upper:]')
endef
+define split_args
+$(foreach data, \
+ $(subst |,$(space),\
+ $(subst $(space),^,$(1))), \
+ $(call $(2),$(strip $(subst ^,$(space),$(data)))))
+endef
+
+define build_cmd
+$(if $(Build/$(word 1,$(1))),,$(error Missing Build/$(word 1,$(1))))
+$(call Build/$(word 1,$(1)),$(wordlist 2,$(words $(1)),$(1)))
+
+endef
+
+define concat_cmd
+$(call split_args,$(1),build_cmd)
+endef
+
# pad to 4k, 8k, 16k, 64k, 128k, 256k and add jffs2 end-of-filesystem mark
define prepare_generic_squashfs
$(STAGING_DIR_HOST)/bin/padjffs2 $(1) 4 8 16 64 128 256
endef
define Image/BuildKernel/Initramfs
- cp $(KDIR)/vmlinux-initramfs.elf $(BIN_DIR)/$(IMG_PREFIX)-vmlinux-initramfs.elf
$(call Image/Build/Initramfs)
endef
define Image/BuildKernel/MkFIT
$(TOPDIR)/scripts/mkits.sh \
- -D $(1) -o $(KDIR)/fit-$(1).its -k $(2) -d $(3) -C $(4) -a $(5) -e $(6) \
+ -D $(1) -o $(KDIR)/fit-$(1).its -k $(2) $(if $(3),-d $(3)) -C $(4) -a $(5) -e $(6) \
-A $(ARCH) -v $(LINUX_VERSION)
PATH=$(LINUX_DIR)/scripts/dtc:$(PATH) mkimage -f $(KDIR)/fit-$(1).its $(KDIR)/fit-$(1)$(7).itb
endef
+# $(1) source dts file
+# $(2) target dtb file
+# $(3) extra CPP flags
+# $(4) extra DTC flags
+define Image/BuildDTB
+ $(CPP) -nostdinc -x assembler-with-cpp \
+ -I$(LINUX_DIR)/arch/$(ARCH)/boot/dts \
+ -I$(LINUX_DIR)/arch/$(ARCH)/boot/dts/include \
+ -undef -D__DTS__ $(3) \
+ -o $(2).tmp $(1)
+ $(LINUX_DIR)/scripts/dtc/dtc -O dtb \
+ -i$(dir $(1)) $(4) \
+ -o $(2) $(2).tmp
+ $(RM) $(2).tmp
+endef
+
define Image/mkfs/jffs2/sub
$(STAGING_DIR_HOST)/bin/mkfs.jffs2 $(3) --pad -e $(patsubst %k,%KiB,$(1)) -o $(KDIR)/root.jffs2-$(2) -d $(TARGET_DIR) -v 2>&1 1>/dev/null | awk '/^.+$$$$/'
$(call add_jffs2_mark,$(KDIR)/root.jffs2-$(2))
(cd "$(KDIR_TMP)"; $(TAR) cvf \
"$(BIN_DIR)/$(IMG_PREFIX)-$(1)-$(2)-sysupgrade.tar" sysupgrade-$(1))
endef
+
# $(1) board name
# $(2) ubinize-image options (e.g. --uboot-env and/or --kernel kernelimage)
# $(3) rootfstype (e.g. squashfs or ubifs)
define Image/Build/UbinizeImage
sh $(TOPDIR)/scripts/ubinize-image.sh $(2) \
"$(KDIR)/root.$(3)" \
- "$(BIN_DIR)/$(IMG_PREFIX)-$(1)-$(3)-ubinized.bin" \
+ "$(KDIR)/$(IMG_PREFIX)-$(1)-$(3)-ubinized.bin" \
$(4)
endef
$(call Image/Build,ubifs)
ifneq ($($(PROFILE)_UBI_OPTS)$(UBI_OPTS),)
- $(call Image/mkfs/ubifs/generate,)
+ $(if $(wildcard ./ubinize.cfg),$(call Image/mkfs/ubifs/generate,))
$(if $(wildcard ./ubinize-overlay.cfg),$(call Image/mkfs/ubifs/generate,-overlay))
endif
- $(call Image/Build,ubi)
+ $(if $(wildcard ./ubinize.cfg),$(call Image/Build,ubi))
endef
endif
define Image/mkfs/cpiogz
- ( cd $(TARGET_DIR); find . | cpio -o -H newc | gzip -9 >$(BIN_DIR)/$(IMG_PREFIX)-rootfs.cpio.gz )
+ ( cd $(TARGET_DIR); find . | cpio -o -H newc | gzip -9n >$(BIN_DIR)/$(IMG_PREFIX)-rootfs.cpio.gz )
endef
define Image/mkfs/targz
$(TAR) -czpf $(BIN_DIR)/$(IMG_PREFIX)$(if $(PROFILE),-$(PROFILE))-rootfs.tar.gz --numeric-owner --owner=0 --group=0 -C $(TARGET_DIR)/ .
endef
-E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_PARTSIZE)*1024*1024/$(CONFIG_TARGET_EXT4_BLOCKSIZE))))
+E2SIZE=$(shell echo $$(($(CONFIG_TARGET_ROOTFS_PARTSIZE)*1024*1024)))
define Image/mkfs/ext4
-# generate an ext2 fs
- $(STAGING_DIR_HOST)/bin/genext2fs -U -B $(CONFIG_TARGET_EXT4_BLOCKSIZE) -b $(E2SIZE) -N $(CONFIG_TARGET_EXT4_MAXINODE) -d $(TARGET_DIR)/ $(KDIR)/root.ext4 -m $(CONFIG_TARGET_EXT4_RESERVED_PCT) $(MKFS_DEVTABLE_OPT)
-# convert it to ext4
- $(STAGING_DIR_HOST)/bin/tune2fs $(if $(CONFIG_TARGET_EXT4_JOURNAL),-j) -O extents,uninit_bg,dir_index $(KDIR)/root.ext4
-# fix it up
- $(STAGING_DIR_HOST)/bin/e2fsck -fy $(KDIR)/root.ext4
+ $(STAGING_DIR_HOST)/bin/make_ext4fs \
+ -l $(E2SIZE) -b $(CONFIG_TARGET_EXT4_BLOCKSIZE) \
+ -i $(CONFIG_TARGET_EXT4_MAXINODE) \
+ -m $(CONFIG_TARGET_EXT4_RESERVED_PCT) \
+ $(if $(CONFIG_TARGET_EXT4_JOURNAL),,-J) \
+ $(KDIR)/root.ext4 $(TARGET_DIR)/
endef
define Image/mkfs/prepare/default
# Use symbolic permissions to avoid clobbering SUID/SGID/sticky bits
- - $(FIND) $(TARGET_DIR) -type f -not -perm +0100 -not -name 'ssh_host*' -not -name 'shadow' -print0 | $(XARGS) -0 chmod u+rw,g+r,o+r
- - $(FIND) $(TARGET_DIR) -type f -perm +0100 -print0 | $(XARGS) -0 chmod u+rwx,g+rx,o+rx
+ - $(FIND) $(TARGET_DIR) -type f -not -perm /0100 -not -name 'ssh_host*' -not -name 'shadow' -print0 | $(XARGS) -0 chmod u+rw,g+r,o+r
+ - $(FIND) $(TARGET_DIR) -type f -perm /0100 -print0 | $(XARGS) -0 chmod u+rwx,g+rx,o+rx
- $(FIND) $(TARGET_DIR) -type d -print0 | $(XARGS) -0 chmod u+rwx,g+rx,o+rx
$(INSTALL_DIR) $(TARGET_DIR)/tmp $(TARGET_DIR)/overlay
chmod 1777 $(TARGET_DIR)/tmp
define Image/Checksum
( cd ${BIN_DIR} ; \
- $(FIND) -maxdepth 1 -type f \! -name 'md5sums' -printf "%P\n" | sort | xargs \
- md5sum --binary > md5sums \
+ $(FIND) -maxdepth 1 -type f \! -name 'md5sums' -printf "%P\n" | sort | xargs $1 > $2 \
)
endef
.PHONY: mkfs-$(1)
mkfs-$(1): mkfs_prepare
$(Image/mkfs/$(1))
+ $(call Build/mkfs/default,$(1))
+ $(call Build/mkfs/$(1),$(1))
+ $(KDIR)/root.$(1): mkfs-$(1)
+
+endef
+
+# Build commands that can be called from Device/* templates
+define Build/uImage
+ mkimage -A $(LINUX_KARCH) \
+ -O linux -T kernel \
+ -C $(1) -a $(KERNEL_LOADADDR) -e $(if $(KERNEL_ENTRY),$(KERNEL_ENTRY),$(KERNEL_LOADADDR)) \
+ -n '$(call toupper,$(LINUX_KARCH)) libreCMC Linux-$(LINUX_VERSION)' -d $@ $@.new
+ @mv $@.new $@
+endef
+
+define Build/lzma
+ $(STAGING_DIR_HOST)/bin/lzma e $@ -lc1 -lp2 -pb2 $(1) $@.new
+ @mv $@.new $@
+endef
+
+define Build/kernel-bin
+ rm -f $@
+ cp $^ $@
+endef
+
+define Build/patch-cmdline
+ $(STAGING_DIR_HOST)/bin/patch-cmdline $@ '$(CMDLINE)'
+endef
+
+define Build/append-kernel
+ dd if=$(word 1,$^) $(if $(1),bs=$(1) conv=sync) >> $@
+endef
+
+define Build/append-rootfs
+ dd if=$(word 2,$^) $(if $(1),bs=$(1) conv=sync) >> $@
+endef
+
+define Build/pad-to
+ dd if=$@ of=$@.new bs=$(1) conv=sync
+ mv $@.new $@
+endef
+
+define Build/pad-rootfs
+ $(call prepare_generic_squashfs,$@ $(1))
+endef
+
+define Build/pad-offset
+ let \
+ size="$$(stat -c%s $@)" \
+ pad="$(word 1, $(1))" \
+ offset="$(word 2, $(1))" \
+ pad="(pad - ((size + offset) % pad)) % pad" \
+ newsize='size + pad'; \
+ dd if=$@ of=$@.new bs=$$newsize count=1 conv=sync
+ mv $@.new $@
+endef
+
+define Build/check-size
+ @[ $$(($(subst k,* 1024,$(subst m, * 1024k,$(1))))) -gt "$$(stat -c%s $@)" ] || { \
+ echo "WARNING: Image file $@ is too big" >&2; \
+ rm -f $@; \
+ }
+endef
+
+define Build/combined-image
+ -sh $(TOPDIR)/scripts/combined-image.sh \
+ "$(word 1,$^)" \
+ "$@" \
+ "$@.new"
+ @mv $@.new $@
+endef
+
+define Device/Init
+ PROFILES := $(PROFILE)
+ KERNEL:=
+ KERNEL_INITRAMFS = $$(KERNEL)
+ KERNEL_SIZE:=
+ CMDLINE:=
+
+ IMAGE_PREFIX := $(IMG_PREFIX)-$(1)
+ IMAGE_NAME = $$(IMAGE_PREFIX)-$$(1)-$$(2)
+ KERNEL_PREFIX = $(1)
+ KERNEL_SUFFIX := -kernel.bin
+ KERNEL_IMAGE = $$(KERNEL_PREFIX)$$(KERNEL_SUFFIX)
+ KERNEL_INITRAMFS_PREFIX = $$(IMAGE_PREFIX)-initramfs
+ KERNEL_INITRAMFS_IMAGE = $$(KERNEL_INITRAMFS_PREFIX)$$(KERNEL_SUFFIX)
+ KERNEL_INSTALL :=
+ KERNEL_NAME := vmlinux
+ KERNEL_SIZE :=
+
+ FILESYSTEMS := $(TARGET_FILESYSTEMS)
+endef
+
+define Device/ExportVar
+ $(1) : $(2):=$$($(2))
+
+endef
+define Device/Export
+ $(foreach var,$(DEVICE_VARS) KERNEL KERNEL_INITRAMFS,$(call Device/ExportVar,$(1),$(var)))
+ $(1) : FILESYSTEM:=$(2)
+endef
+
+define Device/Check
+ _TARGET = $$(if $$(filter $(PROFILE),$$(PROFILES)),install,install-disabled)
+ _COMPILE_TARGET = $$(if $(if $(IB),,$(CONFIG_IB)$$(filter $(PROFILE),$$(PROFILES))),compile,compile-disabled)
+endef
+
+ifndef IB
+define Device/Build/initramfs
+ $(call Device/Export,$(KDIR)/tmp/$$(KERNEL_INITRAMFS_IMAGE),$(1))
+ $$(_TARGET): $(BIN_DIR)/$$(KERNEL_INITRAMFS_IMAGE)
+
+ $(KDIR)/$$(KERNEL_NAME)-initramfs: image_prepare
+ $(BIN_DIR)/$$(KERNEL_INITRAMFS_IMAGE): $(KDIR)/tmp/$$(KERNEL_INITRAMFS_IMAGE)
+ cp $$^ $$@
+
+ $(KDIR)/tmp/$$(KERNEL_INITRAMFS_IMAGE): $(KDIR)/$$(KERNEL_NAME)-initramfs
+ @rm -f $$@
+ $$(call concat_cmd,$$(KERNEL_INITRAMFS))
+endef
+endif
+
+define Device/Build/check_size
+ @[ $$(($(subst k,* 1024,$(subst m, * 1024k,$(1))))) -gt "$$(stat -c%s $@)" ] || { \
+ echo "WARNING: Image file $@ is too big" >&2; \
+ rm -f $@; \
+ }
+endef
+
+define Device/Build/compile
+ $$(_COMPILE_TARGET): $(KDIR)/$(1)
+ $(eval $(call Device/Export,$(KDIR)/$(1)))
+ $(KDIR)/$(1):
+ $$(call concat_cmd,$(COMPILE/$(1)))
+
+endef
+
+define Device/Build/kernel
+ _KERNEL_IMAGES += $(KDIR)/$$(KERNEL_NAME)
+ $(KDIR)/$$(KERNEL_NAME): image_prepare
+ $$(_TARGET): $$(if $$(KERNEL_INSTALL),$(BIN_DIR)/$$(KERNEL_IMAGE))
+ $(BIN_DIR)/$$(KERNEL_IMAGE): $(KDIR)/$$(KERNEL_IMAGE)
+ cp $$^ $$@
+ ifndef IB
+ ifdef CONFIG_IB
+ install: $(KDIR)/$$(KERNEL_IMAGE)
+ endif
+ $(KDIR)/$$(KERNEL_IMAGE): $(KDIR)/$$(KERNEL_NAME)
+ @rm -f $$@
+ $$(call concat_cmd,$$(KERNEL))
+ $$(if $$(KERNEL_SIZE),$$(call Device/Build/check_size,$$(KERNEL_SIZE)))
+ endif
+endef
+
+define Device/Build/image
+ $$(_TARGET): $(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2))
+ $(eval $(call Device/Export,$(KDIR)/$(KERNEL_IMAGE),$(1)))
+ $(eval $(call Device/Export,$(KDIR)/tmp/$(call IMAGE_NAME,$(1),$(2)),$(1)))
+ $(KDIR)/tmp/$(call IMAGE_NAME,$(1),$(2)): $(KDIR)/$$(KERNEL_IMAGE) $(KDIR)/root.$(1)
+ @rm -f $$@
+ [ -f $$(word 1,$$^) -a -f $$(word 2,$$^) ]
+ $$(call concat_cmd,$(if $(IMAGE/$(2)/$(1)),$(IMAGE/$(2)/$(1)),$(IMAGE/$(2))))
+
+ .IGNORE: $(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2))
+ $(BIN_DIR)/$(call IMAGE_NAME,$(1),$(2)): $(KDIR)/tmp/$(call IMAGE_NAME,$(1),$(2))
+ cp $$^ $$@
+
+endef
+
+define Device/Build
+ $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),$(call Device/Build/initramfs,$(1)))
+ $(call Device/Build/kernel,$(1))
+
+ $$(eval $$(foreach compile,$$(COMPILE), \
+ $$(call Device/Build/compile,$$(compile),$(1))))
+
+ $$(eval $$(foreach image,$$(IMAGES), \
+ $$(foreach fs,$$(filter $(TARGET_FILESYSTEMS),$$(FILESYSTEMS)), \
+ $$(call Device/Build/image,$$(fs),$$(image),$(1)))))
+endef
+
+define Device
+ $(call Device/Init,$(1))
+ $(call Device/Default,$(1))
+ $(call Device/Check,$(1))
+ $(call Device/$(1),$(1))
+ $(call Device/Build,$(1))
endef
$(call Build/Clean)
image_prepare: compile
+ mkdir -p $(KDIR)/tmp
$(call Image/Prepare)
+ else
+ image_prepare:
+ mkdir -p $(KDIR)/tmp
endif
mkfs_prepare: image_prepare
kernel_prepare: mkfs_prepare
$(call Image/BuildKernel)
- $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),$(call Image/BuildKernel/Initramfs))
+ $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),$(if $(IB),,$(call Image/BuildKernel/Initramfs)))
$(call Image/InstallKernel)
+ $(foreach device,$(TARGET_DEVICES),$(call Device,$(device)))
$(foreach fs,$(TARGET_FILESYSTEMS) $(fs-subtypes-y),$(call BuildImage/mkfs,$(fs)))
+ $$(sort $$(_KERNEL_IMAGES)):
+ @touch $$@
+
install: kernel_prepare
$(foreach fs,$(TARGET_FILESYSTEMS),
$(call Image/Build,$(fs))
)
$(call Image/mkfs/ubifs)
- $(call Image/Checksum)
+ $(call Image/Checksum,md5sum --binary,md5sums)
+ $(call Image/Checksum,openssl dgst -sha256,sha256sums)
endef
mkdir -p $(KERNEL_BUILD_DIR)/debug/modules
$(CP) $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/debug/
-$(CP) \
- $(STAGING_DIR_ROOT)/lib/modules/$(LINUX_VERSION)-gnu/* \
+ $(STAGING_DIR_ROOT)/lib/modules/$(LINUX_VERSION)/* \
$(KERNEL_BUILD_DIR)/debug/modules/
$(FIND) $(KERNEL_BUILD_DIR)/debug -type f | $(XARGS) $(KERNEL_CROSS)strip --only-keep-debug
$(TAR) c -C $(KERNEL_BUILD_DIR) debug | bzip2 -c -9 > $(BIN_DIR)/kernel-debug.tar.bz2
#
-# Copyright (C) 2006-2011 OpenWrt.org
+# Copyright (C) 2006-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
echo "# CONFIG_KALLSYMS_EXTRA_PASS is not set" >> $(LINUX_DIR)/.config.target
echo "# CONFIG_KALLSYMS_ALL is not set" >> $(LINUX_DIR)/.config.target
echo "# CONFIG_KALLSYMS_UNCOMPRESSED is not set" >> $(LINUX_DIR)/.config.target
- echo "# CONFIG_KPROBES is not set" >> $(LINUX_DIR)/.config.target
- $(SCRIPT_DIR)/metadata.pl kconfig $(TMP_DIR)/.packageinfo $(TOPDIR)/.config > $(LINUX_DIR)/.config.override
+ $(SCRIPT_DIR)/metadata.pl kconfig $(TMP_DIR)/.packageinfo $(TOPDIR)/.config $(KERNEL_PATCHVER) > $(LINUX_DIR)/.config.override
$(SCRIPT_DIR)/kconfig.pl 'm+' '+' $(LINUX_DIR)/.config.target /dev/null $(LINUX_DIR)/.config.override > $(LINUX_DIR)/.config
$(call Kernel/SetNoInitramfs)
rm -rf $(KERNEL_BUILD_DIR)/modules
OBJCOPY_STRIP = -R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id
-# AVR32 uses a non-standard location
-ifeq ($(LINUX_KARCH),avr32)
-IMAGES_DIR:=images
-endif
-
# AMD64 shares the location with x86
ifeq ($(LINUX_KARCH),x86_64)
IMAGES_DIR:=../../x86/boot
$(KERNEL_CROSS)objcopy -O binary $(OBJCOPY_STRIP) -S $(LINUX_DIR)/vmlinux $(LINUX_KERNEL)$(1)
$(KERNEL_CROSS)objcopy $(OBJCOPY_STRIP) -S $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux$(1).elf
$(CP) $(LINUX_DIR)/vmlinux $(KERNEL_BUILD_DIR)/vmlinux.debug
-ifneq ($(KERNELNAME),)
- $(foreach k,$(filter-out dtbs,$(KERNELNAME)),$(CP) $(LINUX_DIR)/arch/$(LINUX_KARCH)/boot/$(IMAGES_DIR)/$(k) $(KERNEL_BUILD_DIR)/$(k)$(1);)
-endif
+ $(foreach k, \
+ $(if $(KERNEL_IMAGES),$(KERNEL_IMAGES),$(filter-out dtbs,$(KERNELNAME))), \
+ $(CP) $(LINUX_DIR)/arch/$(LINUX_KARCH)/boot/$(IMAGES_DIR)/$(k) $(KERNEL_BUILD_DIR)/$(k)$(1); \
+ )
endef
define Kernel/CompileImage/Default
LINUX_RELEASE?=1
-LINUX_VERSION-3.10 = .58
-LINUX_VERSION-3.14 = .26
LINUX_VERSION-3.18 = .19
LINUX_VERSION-4.0 = .9
LINUX_VERSION-4.1 = .3
-LINUX_KERNEL_MD5SUM-3.10.58 = bca8cde0dddf27d980fe1d393ea743f7
-LINUX_KERNEL_MD5SUM-3.14.26 = 69b27733f335c557946edd58554debb7
-
LINUX_KERNEL_MD5SUM-3.18.19 = 63aa76f85dcb7e444044d218dafdaa8f
LINUX_KERNEL_MD5SUM-4.0.9 = 226a4bfb6e5cc3d82208874999f339ca
LINUX_KERNEL_MD5SUM-4.1.3 = 91f5aada91e833497eabc6397f0d9e7c
-
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))
endif
#cluster
$(eval $(call nf_add,IPT_CLUSTER,CONFIG_NETFILTER_XT_MATCH_CLUSTER, $(P_XT)xt_cluster))
-$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_XT)xt_LOG, ge 3.4.0))
-$(eval $(call nf_add,IPT_CORE,CONFIG_IP_NF_TARGET_LOG, $(P_V4)ipt_LOG, lt 3.4.0))
+$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_XT)xt_LOG))
+$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_XT)nf_log_common))
+$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_LOG, $(P_V4)nf_log_ipv4))
$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_TARGET_TCPMSS, $(P_XT)xt_TCPMSS))
$(eval $(call nf_add,IPT_CORE,CONFIG_IP_NF_TARGET_REJECT, $(P_V4)ipt_REJECT))
-$(eval $(call nf_add,IPT_CORE,CONFIG_IP_NF_TARGET_REJECT, $(P_V4)nf_reject_ipv4, ge 3.18.0))
+$(eval $(call nf_add,IPT_CORE,CONFIG_IP_NF_TARGET_REJECT, $(P_V4)nf_reject_ipv4))
$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_MATCH_TIME, $(P_XT)xt_time))
$(eval $(call nf_add,IPT_CORE,CONFIG_NETFILTER_XT_MARK, $(P_XT)xt_mark))
$(eval $(call nf_add,IPT_CONNTRACK,CONFIG_NETFILTER_XT_MATCH_STATE, $(P_XT)xt_state))
$(eval $(call nf_add,IPT_CONNTRACK,CONFIG_IP_NF_RAW, $(P_V4)iptable_raw))
-$(eval $(call nf_add,IPT_CONNTRACK,CONFIG_NETFILTER_XT_TARGET_NOTRACK, $(P_XT)xt_NOTRACK, lt 3.7.0))
$(eval $(call nf_add,IPT_CONNTRACK,CONFIG_NETFILTER_XT_TARGET_CT, $(P_XT)xt_CT))
$(eval $(call nf_add,IPT_CONNTRACK,CONFIG_NETFILTER_XT_MATCH_CONNTRACK, $(P_XT)xt_conntrack))
# filter
-$(eval $(call nf_add,IPT_FILTER,CONFIG_NETFILTER_XT_MATCH_LAYER7, $(P_XT)xt_layer7))
$(eval $(call nf_add,IPT_FILTER,CONFIG_NETFILTER_XT_MATCH_STRING, $(P_XT)xt_string))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_MATCH_DSCP, $(P_XT)xt_dscp))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_TARGET_DSCP, $(P_XT)xt_DSCP))
-$(eval $(call nf_add,IPT_HASHLIMIT,CONFIG_NETFILTER_XT_MATCH_HASHLIMIT, $(P_XT)xt_hashlimit))
+$(eval $(call nf_add,IPT_HASHLIMIT,CONFIG_NETFILTER_XT_MATCH_HASHLIMIT, $(P_XT)xt_hashlimit))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_MATCH_LENGTH, $(P_XT)xt_length))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_MATCH_STATISTIC, $(P_XT)xt_statistic))
$(eval $(call nf_add,IPT_IPOPT,CONFIG_NETFILTER_XT_MATCH_TCPMSS, $(P_XT)xt_tcpmss))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_MANGLE, $(P_V6)ip6table_mangle),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_QUEUE, $(P_V6)ip6_queue),))
$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_RAW, $(P_V6)ip6table_raw),))
+$(eval $(if $(NF_KMOD),$(call nf_add,IPT_IPV6,CONFIG_NF_LOG_IPV6, $(P_V6)nf_log_ipv6),))
$(eval $(if $(NF_KMOD),,$(call nf_add,IPT_IPV6,CONFIG_IP6_NF_IPTABLES, ip6t_icmp6)))
$(eval $(call nf_add,IPT_IPV6,CONFIG_IP6_NF_TARGET_LOG, $(P_V6)ip6t_LOG))
$(eval $(call nf_add,IPT_IPV6,CONFIG_IP6_NF_TARGET_REJECT, $(P_V6)ip6t_REJECT))
-$(eval $(call nf_add,IPT_IPV6,CONFIG_IP6_NF_TARGET_REJECT, $(P_V6)nf_reject_ipv6, ge 3.18.0))
+$(eval $(call nf_add,IPT_IPV6,CONFIG_IP6_NF_TARGET_REJECT, $(P_V6)nf_reject_ipv6))
# ipv6 extra
$(eval $(call nf_add,IPT_IPV6_EXTRA,CONFIG_IP6_NF_MATCH_IPV6HEADER, $(P_V6)ip6t_ipv6header))
# nat
# kernel only
-$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT, $(P_V4)nf_nat, lt 3.7.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT, $(P_XT)nf_nat, ge 3.7.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT_IPV4, $(P_V4)nf_nat_ipv4, ge 3.7.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT6,CONFIG_NF_NAT_IPV6, $(P_V6)nf_nat_ipv6, ge 3.7.0),))
-
-$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_NF_NAT, $(P_XT)xt_nat, ge 3.7.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_NETFILTER_XT_NAT, $(P_XT)xt_nat, ge 3.18.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_NF_NAT, $(P_V4)iptable_nat, lt 3.7.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_NF_NAT_IPV4, $(P_V4)iptable_nat, ge 3.7.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_IP_NF_NAT, $(P_V4)iptable_nat, ge 3.18.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT6,CONFIG_NF_NAT_IPV6, $(P_V6)ip6table_nat, ge 3.7.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT6,CONFIG_IP6_NF_TARGET_MASQUERADE, $(P_V6)ip6t_MASQUERADE, ge 3.7.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT6,CONFIG_IP6_NF_TARGET_NPT, $(P_V6)ip6t_NPT, ge 3.7.0),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT, $(P_XT)nf_nat),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT_REDIRECT, $(P_XT)nf_nat_redirect, ge 3.19.0),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT,CONFIG_NF_NAT_IPV4, $(P_V4)nf_nat_ipv4),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NF_NAT6,CONFIG_NF_NAT_IPV6, $(P_V6)nf_nat_ipv6),))
+
+$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_NETFILTER_XT_NAT, $(P_XT)xt_nat),))
+$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT,CONFIG_IP_NF_NAT, $(P_V4)iptable_nat),))
+$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT6,CONFIG_IP6_NF_NAT, $(P_V6)ip6table_nat),))
+$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT6,CONFIG_IP6_NF_NAT, $(P_V6)nf_nat_masquerade_ipv6),))
+$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT6,CONFIG_IP6_NF_TARGET_MASQUERADE, $(P_V6)ip6t_MASQUERADE),))
+$(eval $(if $(NF_KMOD),$(call nf_add,IPT_NAT6,CONFIG_IP6_NF_TARGET_NPT, $(P_V6)ip6t_NPT),))
# userland only
$(eval $(if $(NF_KMOD),,$(call nf_add,IPT_NAT,CONFIG_NF_NAT, ipt_SNAT ipt_DNAT)))
$(eval $(if $(NF_KMOD),,$(call nf_add,IPT_NAT6,CONFIG_IP6_NF_TARGET_NPT, ip6t_DNPT ip6t_SNPT)))
$(eval $(call nf_add,IPT_NAT,CONFIG_IP_NF_TARGET_MASQUERADE, $(P_V4)ipt_MASQUERADE))
-$(eval $(call nf_add,IPT_NAT,CONFIG_IP_NF_TARGET_MASQUERADE, $(P_V4)nf_nat_masquerade_ipv4, ge 3.18.0))
-$(eval $(call nf_add,IPT_NAT,CONFIG_IP_NF_TARGET_REDIRECT, $(P_XT)xt_REDIRECT, ge 3.7.0))
-$(eval $(call nf_add,IPT_NAT,CONFIG_IP_NF_TARGET_REDIRECT, $(P_V4)ipt_REDIRECT, lt 3.7.0))
+$(eval $(call nf_add,IPT_NAT,CONFIG_IP_NF_TARGET_MASQUERADE, $(P_V4)nf_nat_masquerade_ipv4))
+$(eval $(call nf_add,IPT_NAT,CONFIG_IP_NF_TARGET_REDIRECT, $(P_XT)xt_REDIRECT))
# nat-extra
-$(eval $(call nf_add,IPT_NAT_EXTRA,CONFIG_IP_NF_TARGET_NETMAP, $(P_XT)xt_NETMAP, ge 3.7.0))
-$(eval $(call nf_add,IPT_NAT_EXTRA,CONFIG_IP_NF_TARGET_NETMAP, $(P_V4)ipt_NETMAP, lt 3.7.0))
+$(eval $(call nf_add,IPT_NAT_EXTRA,CONFIG_IP_NF_TARGET_NETMAP, $(P_XT)xt_NETMAP))
# nathelper
-$(eval $(call nf_add,NF_NATHELPER,CONFIG_IP_NF_NAT_FTP, $(P_V4)ip_nat_ftp))
$(eval $(call nf_add,NF_NATHELPER,CONFIG_NF_CONNTRACK_FTP, $(P_XT)nf_conntrack_ftp))
-$(eval $(call nf_add,NF_NATHELPER,CONFIG_NF_CONNTRACK_IRC, $(P_XT)nf_conntrack_irc))
-$(eval $(call nf_add,NF_NATHELPER,CONFIG_NF_NAT_FTP, $(P_XT)nf_nat_ftp, ge 3.7.0))
-$(eval $(call nf_add,NF_NATHELPER,CONFIG_NF_NAT_IRC, $(P_XT)nf_nat_irc, ge 3.7.0))
-$(eval $(call nf_add,NF_NATHELPER,CONFIG_NF_NAT_FTP, $(P_V4)nf_nat_ftp, lt 3.7.0))
-$(eval $(call nf_add,NF_NATHELPER,CONFIG_NF_NAT_IRC, $(P_V4)nf_nat_irc, lt 3.7.0))
+$(eval $(call nf_add,NF_NATHELPER,CONFIG_NF_NAT_FTP, $(P_XT)nf_nat_ftp))
# nathelper-extra
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_BROADCAST, $(P_XT)nf_conntrack_broadcast))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_AMANDA, $(P_XT)nf_conntrack_amanda))
-$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_AMANDA, $(P_XT)nf_nat_amanda, ge 3.7.0))
-$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_AMANDA, $(P_V4)nf_nat_amanda, lt 3.7.0))
+$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_AMANDA, $(P_XT)nf_nat_amanda))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CT_PROTO_GRE, $(P_XT)nf_conntrack_proto_gre))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_PROTO_GRE, $(P_V4)nf_nat_proto_gre))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_H323, $(P_XT)nf_conntrack_h323))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_PPTP, $(P_XT)nf_conntrack_pptp))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_PPTP, $(P_V4)nf_nat_pptp))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_SIP, $(P_XT)nf_conntrack_sip))
-$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_SIP, $(P_XT)nf_nat_sip, ge 3.7.0))
-$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_SIP, $(P_V4)nf_nat_sip, lt 3.7.0))
+$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_SIP, $(P_XT)nf_nat_sip))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_SNMP, $(P_XT)nf_conntrack_snmp))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_SNMP_BASIC, $(P_V4)nf_nat_snmp_basic))
$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_TFTP, $(P_XT)nf_conntrack_tftp))
-$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_TFTP, $(P_XT)nf_nat_tftp, ge 3.7.0))
-$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_TFTP, $(P_V4)nf_nat_tftp, lt 3.7.0))
-
-
-# queue
-
-$(eval $(call nf_add,IPT_QUEUE,CONFIG_IP_NF_QUEUE, $(P_V4)ip_queue, lt 3.5.0))
+$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_TFTP, $(P_XT)nf_nat_tftp))
+$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_CONNTRACK_IRC, $(P_XT)nf_conntrack_irc))
+$(eval $(call nf_add,NF_NATHELPER_EXTRA,CONFIG_NF_NAT_IRC, $(P_XT)nf_nat_irc))
# ulog
$(eval $(call nf_add,IPT_TEE,CONFIG_NETFILTER_XT_TARGET_TEE, $(P_XT)xt_TEE))
-# u32
+# u32
$(eval $(call nf_add,IPT_U32,CONFIG_NETFILTER_XT_MATCH_U32, $(P_XT)xt_u32))
$(eval $(call nf_add,EBTABLES_WATCHERS,CONFIG_BRIDGE_EBT_NFQUEUE, $(P_EBT)ebt_nfqueue))
# nftables
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES, $(P_XT)nf_tables, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_INET, $(P_XT)nf_tables_inet, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_EXTHDR, $(P_XT)nft_exthdr, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_META, $(P_XT)nft_meta, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CT, $(P_XT)nft_ct, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_RBTREE, $(P_XT)nft_rbtree, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_HASH, $(P_XT)nft_hash, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_COUNTER, $(P_XT)nft_counter, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_LOG, $(P_XT)nft_log, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_LIMIT, $(P_XT)nft_limit, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REJECT, $(P_XT)nft_reject $(P_V4)nft_reject_ipv4 $(P_V6)nft_reject_ipv6, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REJECT_INET, $(P_XT)nft_reject_inet, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_IPV4, $(P_V4)nf_tables_ipv4, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CHAIN_ROUTE_IPV4, $(P_V4)nft_chain_route_ipv4, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_IPV6, $(P_V6)nf_tables_ipv6, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CHAIN_ROUTE_IPV6, $(P_V6)nft_chain_route_ipv6, ge 3.14.0),))
-
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_NAT, $(P_XT)nft_nat, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_CHAIN_NAT_IPV4, $(P_V4)nft_chain_nat_ipv4, ge 3.14.0),))
-$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_CHAIN_NAT_IPV6, $(P_V6)nft_chain_nat_ipv6, ge 3.14.0),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES, $(P_XT)nf_tables),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_INET, $(P_XT)nf_tables_inet),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_EXTHDR, $(P_XT)nft_exthdr),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_META, $(P_XT)nft_meta),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CT, $(P_XT)nft_ct),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_RBTREE, $(P_XT)nft_rbtree),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_HASH, $(P_XT)nft_hash),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_COUNTER, $(P_XT)nft_counter),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_LOG, $(P_XT)nft_log),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_LIMIT, $(P_XT)nft_limit),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REJECT, $(P_XT)nft_reject $(P_V4)nft_reject_ipv4 $(P_V6)nft_reject_ipv6),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REJECT_INET, $(P_XT)nft_reject_inet),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_REJECT_IPV4, $(P_V4)nf_reject_ipv4),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_REJECT_IPV6, $(P_V6)nf_reject_ipv6),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_IPV4, $(P_V4)nf_tables_ipv4),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CHAIN_ROUTE_IPV4, $(P_V4)nft_chain_route_ipv4),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NF_TABLES_IPV6, $(P_V6)nf_tables_ipv6),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_CHAIN_ROUTE_IPV6, $(P_V6)nft_chain_route_ipv6),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_CORE,CONFIG_NFT_REDIR, $(P_XT)nft_redir, ge 3.19.0),))
+
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_NAT, $(P_XT)nft_nat),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NF_NAT_MASQUERADE_IPV4, $(P_V4)nf_nat_masquerade_ipv4),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NF_NAT_MASQUERADE_IPV6, $(P_V6)nf_nat_masquerade_ipv6),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_CHAIN_NAT_IPV4, $(P_V4)nft_chain_nat_ipv4),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_REDIR_IPV4, $(P_V4)nft_redir_ipv4, ge 3.19.0),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_REDIR_IPV6, $(P_V6)nft_redir_ipv6, ge 3.19.0),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT6,CONFIG_NFT_CHAIN_NAT_IPV6, $(P_V6)nft_chain_nat_ipv6),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ, $(P_XT)nft_masq),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ_IPV4, $(P_V4)nft_masq_ipv4),))
+$(eval $(if $(NF_KMOD),$(call nf_add,NFT_NAT,CONFIG_NFT_MASQ_IPV6, $(P_V6)nft_masq_ipv6),))
# userland only
IPT_BUILTIN += $(NF_IPT-y) $(NF_IPT-m)
INTL_LDFLAGS:=-L$(INTL_PREFIX)/lib
TARGET_CFLAGS += $(ICONV_CFLAGS) $(INTL_CFLAGS)
-TARGET_CPPFLAGS += $(ICONV_CFLAGS) $(INTL_CPPFLAGS)
+TARGET_CPPFLAGS += $(ICONV_CPPFLAGS) $(INTL_CPPFLAGS)
TARGET_LDFLAGS += $(ICONV_LDFLAGS) $(INTL_LDFLAGS)
-#
+#
# Copyright (C) 2007-2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
-#
+#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
-PKG_DEFAULT_DEPENDS = +libc +USE_EGLIBC:librt +USE_EGLIBC:libpthread
+PKG_DEFAULT_DEPENDS = +libc +SSP_SUPPORT:libssp +USE_GLIBC:librt +USE_GLIBC:libpthread
ifneq ($(PKG_NAME),toolchain)
PKG_FIXUP_DEPENDS = $(if $(filter kmod-%,$(1)),$(2),$(PKG_DEFAULT_DEPENDS) $(filter-out $(PKG_DEFAULT_DEPENDS),$(2)))
endif
EXTRA_CXXFLAGS = $(EXTRA_CFLAGS)
-DISABLE_NLS:=--disable-nls
+ifeq ($(CONFIG_BUILD_NLS),y)
+ DISABLE_NLS:=
+else
+ DISABLE_NLS:=--disable-nls
+endif
CONFIGURE_PREFIX:=/usr
CONFIGURE_ARGS = \
-#
+#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# invoke ipkg-build with some default options
IPKG_BUILD:= \
- $(STAGING_DIR_HOST)/bin/ipkg-build -c -o 0 -g 0
+ $(SCRIPT_DIR)/ipkg-build -c -o 0 -g 0
IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg
# 1: package name
# 2: variable name
# 3: variable suffix
+# 4: file is a script
define BuildIPKGVariable
ifdef Package/$(1)/$(2)
$$(IPKG_$(1)) : VAR_$(2)$(3)=$$(Package/$(1)/$(2))
$(call shexport,Package/$(1)/$(2))
- $(1)_COMMANDS += echo "$$$$$$$$$(call shvar,Package/$(1)/$(2))" > $(2)$(3);
+ $(1)_COMMANDS += echo "$$$$$$$$$(call shvar,Package/$(1)/$(2))" > $(2)$(3); $(if $(4),chmod 0755 $(2)$(3);)
endif
endef
XARGS="$(XARGS)"; \
$(SCRIPT_DIR)/gen-dependencies.sh "$$(IDIR_$(1))"; \
) | while read FILE; do \
- grep -q "$$$$FILE" $(PKG_INFO_DIR)/$(1).provides || \
+ grep -qxF "$$$$FILE" $(PKG_INFO_DIR)/$(1).provides || \
echo "$$$$FILE" >> $(PKG_INFO_DIR)/$(1).missing; \
done; \
if [ -f "$(PKG_INFO_DIR)/$(1).missing" ]; then \
$(FixupReverseDependencies)
$(eval $(call BuildIPKGVariable,$(1),conffiles))
- $(eval $(call BuildIPKGVariable,$(1),preinst))
- $(eval $(call BuildIPKGVariable,$(1),postinst,-pkg))
- $(eval $(call BuildIPKGVariable,$(1),prerm,-pkg))
- $(eval $(call BuildIPKGVariable,$(1),postrm))
+ $(eval $(call BuildIPKGVariable,$(1),preinst,,1))
+ $(eval $(call BuildIPKGVariable,$(1),postinst,-pkg,1))
+ $(eval $(call BuildIPKGVariable,$(1),prerm,-pkg,1))
+ $(eval $(call BuildIPKGVariable,$(1),postrm,,1))
$(STAGING_DIR_ROOT)/stamp/.$(1)_installed: $(STAMP_BUILT)
rm -rf $(STAGING_DIR_ROOT)/tmp-$(1)
echo ". \$$$${IPKG_INSTROOT}/lib/functions.sh"; \
echo "default_prerm \$$$$0 \$$$$@"; \
) > prerm; \
- chmod 0755 prerm; \
+ chmod 0755 postinst prerm; \
$($(1)_COMMANDS) \
)
PKG_MD5SUM ?= unknown
PKG_BUILD_PARALLEL ?=
PKG_USE_MIPS16 ?= 1
-PKG_CHECK_FORMAT_SECURITY ?= 1
ifneq ($(CONFIG_PKG_BUILD_USE_JOBSERVER),)
MAKE_J:=$(if $(MAKE_JOBSERVER),$(MAKE_JOBSERVER) -j)
TARGET_CFLAGS += -mips16 -minterlink-mips16
endif
endif
-ifdef CONFIG_PKG_CHECK_FORMAT_SECURITY
- ifeq ($(strip $(PKG_CHECK_FORMAT_SECURITY)),1)
- TARGET_CFLAGS += -Wformat -Werror=format-security
- endif
-endif
+include $(INCLUDE_DIR)/hardening.mk
include $(INCLUDE_DIR)/prereq.mk
include $(INCLUDE_DIR)/host.mk
include $(INCLUDE_DIR)/unpack.mk
else
STAMP_PREPARED=$(PKG_BUILD_DIR)/.prepared$(if $(QUILT)$(DUMP),,_$(shell $(call find_md5,${CURDIR} $(PKG_FILE_DEPENDS),))$(call confvar,$(PKG_PREPARED_DEPENDS)))
endif
-STAMP_CONFIGURED:=$(PKG_BUILD_DIR)/.configured$(if $(DUMP),,_$(call confvar,$(PKG_CONFIG_DEPENDS)))
+STAMP_CONFIGURED=$(PKG_BUILD_DIR)/.configured$(if $(DUMP),,_$(call confvar,$(PKG_CONFIG_DEPENDS)))
STAMP_CONFIGURED_WILDCARD=$(patsubst %_$(call confvar,$(PKG_CONFIG_DEPENDS)),%_*,$(STAMP_CONFIGURED))
STAMP_BUILT:=$(PKG_BUILD_DIR)/.built
-STAMP_INSTALLED:=$(STAGING_DIR)/stamp/.$(PKG_NAME)_installed
+STAMP_INSTALLED:=$(STAGING_DIR)/stamp/.$(PKG_NAME)$(if $(BUILD_VARIANT),.$(BUILD_VARIANT),)_installed
STAGING_FILES_LIST:=$(PKG_NAME)$(if $(BUILD_VARIANT),.$(BUILD_VARIANT),).list
+
+define CleanStaging
+ rm -f $(STAMP_INSTALLED)
+ @-(\
+ cd "$(STAGING_DIR)"; \
+ if [ -f packages/$(STAGING_FILES_LIST) ]; then \
+ cat packages/$(STAGING_FILES_LIST) | xargs -r rm -f 2>/dev/null; \
+ fi; \
+ )
+endef
+
ifneq ($(if $(CONFIG_SRC_TREE_OVERRIDE),$(wildcard ./git-src)),)
USE_GIT_TREE:=1
QUILT:=1
include $(INCLUDE_DIR)/autotools.mk
override MAKEFLAGS=
-CONFIG_SITE:=$(INCLUDE_DIR)/site/$(REAL_GNU_TARGET_NAME)
+CONFIG_SITE:=$(INCLUDE_DIR)/site/$(ARCH)
CUR_MAKEFILE:=$(filter-out Makefile,$(firstword $(MAKEFILE_LIST)))
SUBMAKE:=$(NO_TRACE_MAKE) $(if $(CUR_MAKEFILE),-f $(CUR_MAKEFILE))
PKG_CONFIG_PATH=$(STAGING_DIR)/usr/lib/pkgconfig:$(STAGING_DIR)/usr/share/pkgconfig
-unexport QUIET
+unexport QUIET CONFIG_SITE
ifeq ($(DUMP)$(filter prereq clean refresh update,$(MAKECMDGOALS)),)
ifneq ($(if $(QUILT),,$(CONFIG_AUTOREBUILD)),)
$(call Build/Exports,$(STAMP_CONFIGURED))
$(STAMP_CONFIGURED): $(STAMP_PREPARED)
+ $(CleanStaging)
$(foreach hook,$(Hooks/Configure/Pre),$(call $(hook))$(sep))
$(Build/Configure)
$(foreach hook,$(Hooks/Configure/Post),$(call $(hook))$(sep))
$(STAMP_INSTALLED) : export PATH=$$(TARGET_PATH_PKG)
$(STAMP_INSTALLED): $(STAMP_BUILT)
- $(SUBMAKE) -j1 clean-staging
rm -rf $(TMP_DIR)/stage-$(PKG_NAME)
mkdir -p $(TMP_DIR)/stage-$(PKG_NAME)/host $(STAGING_DIR)/packages $(STAGING_DIR_HOST)/packages
$(foreach hook,$(Hooks/InstallDev/Pre),\
configure:
compile: prepare-package-install
install: compile
-clean-staging: FORCE
- rm -f $(STAMP_INSTALLED)
- @-(\
- cd "$(STAGING_DIR)"; \
- if [ -f packages/$(STAGING_FILES_LIST) ]; then \
- cat packages/$(STAGING_FILES_LIST) | xargs -r rm -f 2>/dev/null; \
- fi; \
- )
-clean: clean-staging FORCE
+clean: FORCE
+ $(CleanStaging)
$(call Build/UninstallDev,$(STAGING_DIR),$(STAGING_DIR_HOST))
$(Build/Clean)
rm -f $(STAGING_DIR)/packages/$(STAGING_FILES_LIST) $(STAGING_DIR_HOST)/packages/$(STAGING_FILES_LIST)
dist:
$(Build/Dist)
-
+
distcheck:
- $(Build/DistCheck)
+ $(Build/DistCheck)
-#
+#
# Copyright (C) 2006-2012 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
include $(INCLUDE_DIR)/host.mk
include $(INCLUDE_DIR)/host-build.mk
+SHELL:=sh
PKG_NAME:=Build dependency
-define Require/non-root
- [ "$$(shell whoami)" != "root" ]
-endef
-$(eval $(call Require,non-root, \
- Please do not compile as root. \
-))
# Required for the toolchain
-define Require/working-make
- $(MAKE) -v | awk '($$$$1 == "GNU") && ($$$$2 == "Make") && ($$$$3 >= "3.81") { print "ok" }' | grep ok > /dev/null
-endef
-
-$(eval $(call Require,working-make, \
- Please install GNU make v3.81 or later. (This version has bugs) \
-))
-
-define Require/case-sensitive-fs
- rm -f $(TMP_DIR)/test.*
- touch $(TMP_DIR)/test.fs
- [ \! -f $(TMP_DIR)/test.FS ]
-endef
-
-$(eval $(call Require,case-sensitive-fs, \
- libreCMC can only be built on a case-sensitive filesystem \
-))
-
-define Require/getopt
- gnugetopt --help 2>&1 | grep long >/dev/null || \
- /usr/local/bin/getopt --help 2>&1 | grep long >/dev/null || \
- getopt --help 2>&1 | grep long >/dev/null
-endef
-$(eval $(call Require,getopt, \
- Please install GNU getopt \
-))
-
-define Require/fileutils
- gcp --help || cp --help
-endef
-$(eval $(call Require,fileutils, \
- Please install GNU fileutils \
-))
-
-define Require/working-gcc
+$(eval $(call TestHostCommand,working-make, \
+ Please install GNU make v3.81 or later. (This version has bugs), \
+ $(MAKE) -v | grep -E 'Make (3\.8[1-9]|3\.9[0-9]|[4-9]\.)'))
+
+$(eval $(call TestHostCommand,case-sensitive-fs, \
+ libreCMC can only be built on a case-sensitive filesystem, \
+ rm -f $(TMP_DIR)/test.*; touch $(TMP_DIR)/test.fs; \
+ test ! -f $(TMP_DIR)/test.FS))
+
+$(eval $(call SetupHostCommand,gcc, \
+ Please install the GNU C Compiler (gcc), \
+ $(CC) --version | grep gcc, \
+ gcc --version | grep gcc, \
+ gcc49 --version | grep gcc, \
+ gcc48 --version | grep gcc, \
+ gcc47 --version | grep gcc, \
+ gcc46 --version | grep gcc, \
+ gcc --version | grep Apple.LLVM ))
+
+$(eval $(call TestHostCommand,working-gcc, \
+ Please reinstall the GNU C Compiler - it appears to be broken, \
echo 'int main(int argc, char **argv) { return 0; }' | \
- gcc -x c -o $(TMP_DIR)/a.out -
-endef
-
-$(eval $(call Require,working-gcc, \
- Please install the GNU C Compiler (gcc). \
-))
-
-define Require/working-g++
+ gcc -x c -o $(TMP_DIR)/a.out -))
+
+$(eval $(call SetupHostCommand,g++, \
+ Please install the GNU C++ Compiler (g++), \
+ $(CXX) --version | grep g++, \
+ g++ --version | grep g++, \
+ g++49 --version | grep g++, \
+ g++48 --version | grep g++, \
+ g++47 --version | grep g++, \
+ g++46 --version | grep g++, \
+ g++ --version | grep Apple.LLVM ))
+
+$(eval $(call TestHostCommand,working-g++, \
+ Please reinstall the GNU C++ Compiler - it appears to be broken, \
echo 'int main(int argc, char **argv) { return 0; }' | \
g++ -x c++ -o $(TMP_DIR)/a.out - -lstdc++ && \
- $(TMP_DIR)/a.out
-endef
-
-$(eval $(call Require,working-g++, \
- Please install the GNU C++ Compiler (g++). \
-))
-
-ifneq ($(HOST_STATIC_LINKING),)
- define Require/working-gcc-static
- echo 'int main(int argc, char **argv) { return 0; }' | \
- gcc -x c $(HOST_STATIC_LINKING) -o $(TMP_DIR)/a.out -
- endef
-
- $(eval $(call Require,working-gcc-static, \
- Please install the static libc development package (glibc-static on CentOS/Fedora/RHEL). \
- ))
-
- define Require/working-g++-static
- echo 'int main(int argc, char **argv) { return 0; }' | \
- g++ -x c++ $(HOST_STATIC_LINKING) -o $(TMP_DIR)/a.out - -lstdc++ && \
- $(TMP_DIR)/a.out
- endef
-
- $(eval $(call Require,working-g++-static, \
- Please install the static libstdc++ development package (libstdc++-static on CentOS/Fedora/RHEL). \
- ))
-endif
+ $(TMP_DIR)/a.out))
-define Require/ncurses
+$(eval $(call TestHostCommand,ncurses, \
+ Please install ncurses. (Missing libncurses.so or ncurses.h), \
echo 'int main(int argc, char **argv) { initscr(); return 0; }' | \
- gcc -include ncurses.h -x c -o $(TMP_DIR)/a.out - -lncurses
-endef
+ gcc -include ncurses.h -x c -o $(TMP_DIR)/a.out - -lncurses))
+
+$(eval $(call TestHostCommand,zlib, \
+ Please install zlib. (Missing libz.so or zlib.h), \
+ echo 'int main(int argc, char **argv) { gzdopen(0, "rb"); return 0; }' | \
+ gcc -include zlib.h -x c -o $(TMP_DIR)/a.out - -lz))
-$(eval $(call Require,ncurses, \
- Please install ncurses. (Missing libncurses.so or ncurses.h) \
-))
+$(eval $(call TestHostCommand,libssl, \
+ Please install the openssl library (with development headers), \
+ echo 'int main(int argc, char **argv) { SSL_library_init(); return 0; }' | \
+ gcc -include openssl/ssl.h -x c -o $(TMP_DIR)/a.out - -lcrypto -lssl))
-define Require/zlib
- echo 'int main(int argc, char **argv) { gzdopen(0, "rb"); return 0; }' | \
- gcc -include zlib.h -x c -o $(TMP_DIR)/a.out - -lz
-endef
+$(eval $(call SetupHostCommand,tar,Please install GNU 'tar', \
+ gtar --version 2>&1 | grep GNU, \
+ gnutar --version 2>&1 | grep GNU, \
+ tar --version 2>&1 | grep GNU))
-$(eval $(call Require,zlib, \
- Please install zlib. (Missing libz.so or zlib.h) \
-))
+$(eval $(call SetupHostCommand,find,Please install GNU 'find', \
+ gfind --version 2>&1 | grep GNU, \
+ find --version 2>&1 | grep GNU))
-ifneq ($(HOST_STATIC_LINKING),)
- define Require/zlib-static
- echo 'int main(int argc, char **argv) { gzdopen(0, "rb"); return 0; }' | \
- gcc -include zlib.h -x c $(HOST_STATIC_LINKING) -o $(TMP_DIR)/a.out - -lz
- endef
+$(eval $(call SetupHostCommand,bash,Please install GNU 'bash', \
+ bash --version 2>&1 | grep GNU))
- $(eval $(call Require,zlib-static, \
- Please install a static zlib. (zlib-static on CentOS/Fedora/RHEL). \
- ))
-endif
+$(eval $(call SetupHostCommand,patch,Please install GNU 'patch', \
+ gpatch --version 2>&1 | grep 'Free Software Foundation', \
+ patch --version 2>&1 | grep 'Free Software Foundation'))
-$(eval $(call RequireCommand,gawk, \
- Please install GNU awk. \
-))
+$(eval $(call SetupHostCommand,diff,Please install diffutils, \
+ gdiff --version 2>&1 | grep diff, \
+ diff --version 2>&1 | grep diff))
-$(eval $(call RequireCommand,unzip, \
- Please install unzip. \
-))
+$(eval $(call SetupHostCommand,cp,Please install GNU fileutils, \
+ gcp --help, \
+ cp --help))
-$(eval $(call RequireCommand,bzip2, \
- Please install bzip2. \
-))
+$(eval $(call SetupHostCommand,seq,, \
+ gseq --version, \
+ seq --version))
-$(eval $(call RequireCommand,perl, \
- Please install perl. \
-))
+$(eval $(call SetupHostCommand,awk,Please install GNU 'awk', \
+ gawk --version 2>&1 | grep GNU, \
+ awk --version 2>&1 | grep GNU))
-$(eval $(call RequireCommand,$(PYTHON), \
- Please install python. \
-))
+$(eval $(call SetupHostCommand,grep,Please install GNU 'grep', \
+ ggrep --version 2>&1 | grep GNU, \
+ grep --version 2>&1 | grep GNU))
-$(eval $(call RequireCommand,wget, \
- Please install wget. \
-))
+$(eval $(call SetupHostCommand,getopt, \
+ Please install an extended getopt version that supports --long, \
+ gnugetopt -o t --long test -- --test | grep '^ *--test *--', \
+ /usr/local/bin/getopt -o t --long test -- --test | grep '^ *--test *--', \
+ getopt -o t --long test -- --test | grep '^ *--test *--'))
-define Require/git
- git --version | awk '($$$$1 == "git") && ($$$$2 == "version") && ($$$$3 >= "1.6.5") { print "ok" }' | grep ok > /dev/null
-endef
+$(eval $(call SetupHostCommand,stat,Cannot find a file stat utility, \
+ gnustat -c%s $(TMP_DIR)/.host.mk, \
+ gstat -c%s $(TMP_DIR)/.host.mk, \
+ stat -c%s $(TMP_DIR)/.host.mk))
-$(eval $(call Require,git, \
- Please install git (git-core) v1.6.5 or later. \
-))
+$(eval $(call SetupHostCommand,md5sum,, \
+ gmd5sum /dev/null | grep d41d8cd98f00b204e9800998ecf8427e, \
+ md5sum /dev/null | grep d41d8cd98f00b204e9800998ecf8427e, \
+ $(SCRIPT_DIR)/md5sum /dev/null | grep d41d8cd98f00b204e9800998ecf8427e))
-define Require/gnutar
- $(TAR) --version 2>&1 | grep GNU > /dev/null
-endef
+$(eval $(call SetupHostCommand,unzip,Please install 'unzip', \
+ unzip 2>&1 | grep zipfile, \
+ unzip))
-$(eval $(call Require,gnutar, \
- Please install GNU tar. \
-))
+$(eval $(call SetupHostCommand,bzip2,Please install 'bzip2', \
+ bzip2 --version </dev/null))
-$(eval $(call RequireCommand,svn, \
- Please install the subversion client. \
-))
+$(eval $(call SetupHostCommand,wget,Please install GNU 'wget', \
+ wget --version | grep GNU))
-define Require/libssl
- echo 'int main(int argc, char **argv) { SSL_library_init(); return 0; }' | \
- gcc -include openssl/ssl.h -x c -o $(TMP_DIR)/a.out - -lcrypto -lssl
-endef
+$(eval $(call SetupHostCommand,perl,Please install Perl 5.x, \
+ perl --version | grep "perl.*v5"))
-$(eval $(call Require,libssl, \
- Please install the openssl library (with development headers) \
-))
+$(eval $(call SetupHostCommand,python,Please install Python 2.x, \
+ python2.7 -V 2>&1 | grep Python, \
+ python2 -V 2>&1 | grep Python, \
+ python -V 2>&1 | grep Python))
-$(eval $(call RequireCommand,openssl, \
- Please install openssl. \
-))
+$(eval $(call SetupHostCommand,svn,Please install the Subversion client, \
+ svn --version | grep Subversion))
-define Require/gnu-find
- $(FIND) --version 2>/dev/null
-endef
+$(eval $(call SetupHostCommand,git,Please install Git (git-core) >= 1.6.5, \
+ git clone 2>&1 | grep -- --recursive))
-$(eval $(call Require,gnu-find, \
- Please install GNU find \
-))
+$(eval $(call SetupHostCommand,file,Please install the 'file' package, \
+ file --version 2>&1 | grep file))
-define Require/getopt-extended
- getopt --long - - >/dev/null
-endef
+$(eval $(call SetupHostCommand,openssl,Please install the 'openssl' utility, \
+ openssl version | grep OpenSSL))
-$(eval $(call Require,getopt-extended, \
- Please install an extended getopt version that supports --long \
-))
-$(eval $(call RequireCommand,file, \
- Please install the 'file' package. \
-))
+# Install ldconfig stub
+$(eval $(call TestHostCommand,ldconfig-stub,Failed to install stub, \
+ touch $(STAGING_DIR_HOST)/bin/ldconfig && \
+ chmod +x $(STAGING_DIR_HOST)/bin/ldconfig))
-#
-# Copyright (C) 2006-2007 OpenWrt.org
+#
+# Copyright (C) 2006-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
.SILENT: prereq
endif
+PREREQ_PREV=
+
+# 1: display name
+# 2: error message
define Require
export PREREQ_CHECK=1
ifeq ($$(CHECK_$(1)),)
prereq: prereq-$(1)
- prereq-$(1): FORCE
- echo -n "Checking '$(1)'... "
+ prereq-$(1): $(if $(PREREQ_PREV),prereq-$(PREREQ_PREV)) FORCE
+ printf "Checking '$(1)'... "
if $(NO_TRACE_MAKE) -f $(firstword $(MAKEFILE_LIST)) check-$(1) >/dev/null 2>/dev/null; then \
echo 'ok.'; \
else \
echo 'failed.'; \
- echo -e "$(PKG_NAME): $(strip $(2))" | perl -ne 's/\\\s*/\n/g,print' >> $(TMP_DIR)/.prereq-error; \
+ echo "$(PKG_NAME): $(strip $(2))" >> $(TMP_DIR)/.prereq-error; \
fi
check-$(1): FORCE
.SILENT: prereq-$(1) check-$(1)
.NOTPARALLEL:
endif
+
+ PREREQ_PREV=$(1)
endef
define Require/$(1)
[ -e "$(1)" ]
endef
-
+
+ $$(eval $$(call Require,$(1),$(2)))
+endef
+
+define QuoteHostCommand
+'$(subst ','"'"',$(strip $(1)))'
+endef
+
+# 1: display name
+# 2: failure message
+# 3: test
+define TestHostCommand
+ define Require/$(1)
+ ($(3)) >/dev/null 2>/dev/null
+ endef
+
$$(eval $$(call Require,$(1),$(2)))
endef
+# 1: canonical name
+# 2: failure message
+# 3+: candidates
+define SetupHostCommand
+ define Require/$(1)
+ for cmd in $(call QuoteHostCommand,$(3)) $(call QuoteHostCommand,$(4)) \
+ $(call QuoteHostCommand,$(5)) $(call QuoteHostCommand,$(6)) \
+ $(call QuoteHostCommand,$(7)) $(call QuoteHostCommand,$(8)) \
+ $(call QuoteHostCommand,$(9)); do \
+ if [ -n "$$$$$$$$cmd" ]; then \
+ bin="$$$$$$$$(PATH="$(subst $(space),:,$(filter-out $(STAGING_DIR_HOST)/%,$(subst :,$(space),$(PATH))))" \
+ which "$$$$$$$${cmd%% *}")"; \
+ if [ -x "$$$$$$$$bin" ] && eval "$$$$$$$$cmd" >/dev/null 2>/dev/null; then \
+ mkdir -p "$(STAGING_DIR_HOST)/bin"; \
+ ln -sf "$$$$$$$$bin" "$(STAGING_DIR_HOST)/bin/$(strip $(1))"; \
+ exit 0; \
+ fi; \
+ fi; \
+ done; \
+ exit 1
+ endef
+
+ $$(eval $$(call Require,$(1),$(if $(2),$(2),Missing $(1) command)))
+endef
-#
+#
# Copyright (C) 2007-2009 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
--- /dev/null
+BEGIN { FS="/" }
+$1 ~ /^feeds/ { FEEDS[$NF]=$0 }
+$1 !~ /^feeds/ { PKGS[$NF]=$0 }
+END {
+ # Filter-out libreCMC packages which have a feeds equivalent
+ for (pkg in PKGS)
+ if (pkg in FEEDS) {
+ print PKGS[pkg] > of
+ delete PKGS[pkg]
+ }
+ n = asort(PKGS)
+ for (i=1; i <= n; i++) {
+ print PKGS[i]
+ }
+ n = asort(FEEDS)
+ for (i=1; i <= n; i++){
+ print FEEDS[i]
+ }
+}
SCAN_DIR ?= package
TARGET_STAMP:=$(TMP_DIR)/info/.files-$(SCAN_TARGET).stamp
FILELIST:=$(TMP_DIR)/info/.files-$(SCAN_TARGET)-$(SCAN_COOKIE)
+OVERRIDELIST:=$(TMP_DIR)/info/.overrides-$(SCAN_TARGET)-$(SCAN_COOKIE)
ifeq ($(IS_TTY),1)
define progress
{ \
$$(call progress,Collecting $(SCAN_NAME) info: $(SCAN_DIR)/$(2)) \
echo Source-Makefile: $(SCAN_DIR)/$(2)/Makefile; \
+ $(if $(3),echo Override: $(3),true); \
$(NO_TRACE_MAKE) --no-print-dir -r DUMP=1 FEED="$(call feedname,$(2))" -C $(SCAN_DIR)/$(2) $(SCAN_MAKEOPTS) 2>/dev/null || { \
mkdir -p "$(TOPDIR)/logs/$(SCAN_DIR)/$(2)"; \
$(NO_TRACE_MAKE) --no-print-dir -r DUMP=1 FEED="$(call feedname,$(2))" -C $(SCAN_DIR)/$(2) $(SCAN_MAKEOPTS) > $(TOPDIR)/logs/$(SCAN_DIR)/$(2)/dump.txt 2>&1; \
} > $$@ || true
endef
-$(FILELIST):
+$(OVERRIDELIST):
+ rm -f $(TMP_DIR)/info/.overrides-$(SCAN_TARGET)-*
+ touch $@
+
+ifeq ($(SCAN_NAME),target)
+ GREP_STRING=BuildTarget
+else
+ GREP_STRING=(Build/DefaultTargets|BuildPackage|.+Package)
+endif
+
+$(FILELIST): $(OVERRIDELIST)
rm -f $(TMP_DIR)/info/.files-$(SCAN_TARGET)-*
- $(call FIND_L, $(SCAN_DIR)) $(SCAN_EXTRA) -mindepth 1 $(if $(SCAN_DEPTH),-maxdepth $(SCAN_DEPTH)) -name Makefile | xargs grep -HE 'call (Build/DefaultTargets|Build(Package|Target)|.+Package)' | sed -e 's#^$(SCAN_DIR)/##' -e 's#/Makefile:.*##' | uniq > $@
+ $(call FIND_L, $(SCAN_DIR)) $(SCAN_EXTRA) -mindepth 1 $(if $(SCAN_DEPTH),-maxdepth $(SCAN_DEPTH)) -name Makefile | xargs grep -aHE 'call $(GREP_STRING)' | sed -e 's#^$(SCAN_DIR)/##' -e 's#/Makefile:.*##' | uniq | awk -v of=$(OVERRIDELIST) -f include/scan.awk > $@
$(TMP_DIR)/info/.files-$(SCAN_TARGET).mk: $(FILELIST)
( \
cat $< | awk '{print "$(SCAN_DIR)/" $$0 "/Makefile" }' | xargs grep -HE '^ *SCAN_DEPS *= *' | awk -F: '{ gsub(/^.*DEPS *= */, "", $$2); print "DEPS_" $$1 "=" $$2 }'; \
- awk -v deps="$$DEPS" '{ \
+ awk -F/ -v deps="$$DEPS" -v of="$(OVERRIDELIST)" ' \
+ BEGIN { \
+ while (getline < (of)) \
+ override[$$NF]=$$0; \
+ close(of) \
+ } \
+ { \
info=$$0; \
gsub(/\//, "_", info); \
- print "$$(eval $$(call PackageDir," info "," $$0 "))"; \
+ dir=$$0; \
+ pkg=""; \
+ if($$NF in override) \
+ pkg=override[$$NF]; \
+ print "$$(eval $$(call PackageDir," info "," dir "," pkg "))"; \
} ' < $<; \
true; \
) > $@
$(TARGET_STAMP)::
+( \
$(NO_TRACE_MAKE) $(FILELIST); \
- MD5SUM=$$(cat $(FILELIST) | (md5sum || md5) 2>/dev/null | awk '{print $$1}'); \
+ MD5SUM=$$(cat $(FILELIST) $(OVERRIDELIST) | (md5sum || md5) 2>/dev/null | awk '{print $$1}'); \
[ -f "$@.$$MD5SUM" ] || { \
rm -f $@.*; \
touch $@.$$MD5SUM; \
md5s() {
cat "$@" | (
md5sum 2>/dev/null ||
- md5
+ md5
) | awk '{print $1}'
}
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
+
+ac_cv_sizeof___int64=8
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=8
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=8
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=8
+ac_cv_sizeof_ssize_t=8
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=8
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=8
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/aarch64-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
-
-ac_cv_sizeof___int64=8
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=8
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=8
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=8
-ac_cv_sizeof_ssize_t=8
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=8
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=8
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
+
+ac_cv_sizeof___int64=8
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=8
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=8
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=8
+ac_cv_sizeof_ssize_t=8
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=8
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=8
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/aarch64-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
-
-ac_cv_sizeof___int64=8
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=8
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=8
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=8
-ac_cv_sizeof_ssize_t=8
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=8
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=8
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=4
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=4
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=4
+ac_cv_sizeof_ssize_t=4
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=4
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/arm-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/arm-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/arm-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/arm-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/arm-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/arm-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=4
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=4
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=4
+ac_cv_sizeof_ssize_t=4
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=4
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/armeb-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/armeb-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/armeb-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/armeb-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/armeb-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/armeb-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/avr32-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/avr32-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/cris-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/cris-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/i486
+
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=4
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=4
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=4
+ac_cv_sizeof_ssize_t=4
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=4
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/i486-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/i486-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/i486-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/i486
+
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/i686-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/i686-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/i686-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
+++ /dev/null
-. $TOPDIR/include/site/linux
+++ /dev/null
-. $TOPDIR/include/site/linux
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=4
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=4
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=4
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=4
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/m68k-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/m68k-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=4
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=4
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=4
+ac_cv_sizeof_ssize_t=4
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=4
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mips-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mips-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mips-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mips-linux
-. $TOPDIR/include/site/linux-gnu
-
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
+
+ac_cv_sizeof___int64=8
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=8
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=8
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=8
+ac_cv_sizeof_ssize_t=8
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=8
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=8
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mips64-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mips64-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
-
-ac_cv_sizeof___int64=8
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=8
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=8
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=8
-ac_cv_sizeof_ssize_t=8
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=8
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=8
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
+
+ac_cv_sizeof___int64=8
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=8
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=8
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=8
+ac_cv_sizeof_ssize_t=8
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=8
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=8
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mips64-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mips64-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
-
-ac_cv_sizeof___int64=8
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=8
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=8
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=8
-ac_cv_sizeof_ssize_t=8
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=8
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=8
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=4
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=4
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=4
+ac_cv_sizeof_ssize_t=4
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=4
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mipsel-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mipsel-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mipsel-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mipsel-linux
-. $TOPDIR/include/site/linux-uclibc
-ac_cv_header_sys_inotify_h=no
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/mipsel-linux
-. $TOPDIR/include/site/linux-gnu
-
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=4
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=4
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=4
+ac_cv_sizeof_ssize_t=4
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=4
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/powerpc-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/powerpc-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/powerpc-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/powerpc-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/powerpc-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=4
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=4
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=4
+ac_cv_sizeof_ssize_t=4
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=4
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/sparc-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/sparc-linux
-. $TOPDIR/include/site/linux
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=no}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=yes}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=4
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=4
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=4
-ac_cv_sizeof_ssize_t=4
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=4
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=4
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/sparc-linux
-. $TOPDIR/include/site/linux-gnu
-
--- /dev/null
+#!/bin/sh
+. $TOPDIR/include/site/linux
+ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
+ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
+
+ac_cv_sizeof___int64=0
+ac_cv_sizeof_char=1
+ac_cv_sizeof_int=4
+ac_cv_sizeof_int16_t=2
+ac_cv_sizeof_int32_t=4
+ac_cv_sizeof_int64_t=8
+ac_cv_sizeof_long_int=8
+ac_cv_sizeof_long_long=8
+ac_cv_sizeof_long=8
+ac_cv_sizeof_off_t=8
+ac_cv_sizeof_short_int=2
+ac_cv_sizeof_short=2
+ac_cv_sizeof_size_t=8
+ac_cv_sizeof_ssize_t=8
+ac_cv_sizeof_u_int16_t=2
+ac_cv_sizeof_u_int32_t=4
+ac_cv_sizeof_u_int64_t=8
+ac_cv_sizeof_uint16_t=2
+ac_cv_sizeof_uint32_t=4
+ac_cv_sizeof_uint64_t=8
+ac_cv_sizeof_unsigned_int=4
+ac_cv_sizeof_unsigned_long=8
+ac_cv_sizeof_unsigned_long_long=8
+ac_cv_sizeof_unsigned_short=2
+ac_cv_sizeof_void_p=8
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/x86_64-linux
-. $TOPDIR/include/site/linux-gnu
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/x86_64-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-#!/bin/sh
-
-. $TOPDIR/include/site/x86_64-linux
-. $TOPDIR/include/site/linux-uclibc
-
+++ /dev/null
-ac_cv_c_littleendian=${ac_cv_c_littleendian=yes}
-ac_cv_c_bigendian=${ac_cv_c_bigendian=no}
-
-ac_cv_sizeof___int64=0
-ac_cv_sizeof_char=1
-ac_cv_sizeof_int=4
-ac_cv_sizeof_int16_t=2
-ac_cv_sizeof_int32_t=4
-ac_cv_sizeof_int64_t=8
-ac_cv_sizeof_long_int=8
-ac_cv_sizeof_long_long=8
-ac_cv_sizeof_long=8
-ac_cv_sizeof_off_t=8
-ac_cv_sizeof_short_int=2
-ac_cv_sizeof_short=2
-ac_cv_sizeof_size_t=8
-ac_cv_sizeof_ssize_t=8
-ac_cv_sizeof_u_int16_t=2
-ac_cv_sizeof_u_int32_t=4
-ac_cv_sizeof_u_int64_t=8
-ac_cv_sizeof_uint16_t=2
-ac_cv_sizeof_uint32_t=4
-ac_cv_sizeof_uint64_t=8
-ac_cv_sizeof_unsigned_int=4
-ac_cv_sizeof_unsigned_long=8
-ac_cv_sizeof_unsigned_long_long=8
-ac_cv_sizeof_unsigned_short=2
-ac_cv_sizeof_void_p=8
-#
+#
# Copyright (C) 2007 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# Default packages - the really basic set
DEFAULT_PACKAGES:=base-files libc libgcc busybox dropbear mtd uci opkg netifd fstools
# For nas targets
-DEFAULT_PACKAGES.nas:=block-mount fdisk lvm2 lsblk mdadm
+DEFAULT_PACKAGES.nas:=block-mount fdisk lsblk mdadm
# For router targets
DEFAULT_PACKAGES.router:=dnsmasq iptables ip6tables ppp ppp-mod-pppoe kmod-nf-nathelper firewall odhcpd odhcp6c
DEFAULT_PACKAGES.bootloader:=
ifeq ($(ARCH),i386)
CPU_TYPE ?= i486
CPU_CFLAGS_i486 = -march=i486
+ CPU_CFLAGS_pentium4 = -march=pentium4
CPU_CFLAGS_geode = -march=geode -mmmx -m3dnow
endif
ifneq ($(findstring arm,$(ARCH)),)
-#
+#
# Copyright (C) 2009 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
REVISION:=$(shell $(TOPDIR)/scripts/getver.sh)
endif
-HOSTCC ?= gcc
+HOSTCC ?= $(CC)
LIBRECMCVERSION:=$(RELEASE)$(if $(REVISION), ($(REVISION)))
export RELEASE
export REVISION
export LIBRECMCVERSION
-export LD_LIBRARY_PATH:=$(subst ::,:,$(if $(LD_LIBRARY_PATH),$(LD_LIBRARY_PATH):)$(STAGING_DIR_HOST)/lib)
-export DYLD_LIBRARY_PATH:=$(subst ::,:,$(if $(DYLD_LIBRARY_PATH),$(DYLD_LIBRARY_PATH):)$(STAGING_DIR_HOST)/lib)
+export LD_LIBRARY_PATH:=$(subst ::,:,$(if $(LD_LIBRARY_PATH),$(LD_LIBRARY_PATH):)$(TOPDIR)/staging_dir/host/lib)
+export DYLD_LIBRARY_PATH:=$(subst ::,:,$(if $(DYLD_LIBRARY_PATH),$(DYLD_LIBRARY_PATH):)$(TOPDIR)/staging_dir/host/lib)
export GIT_CONFIG_PARAMETERS='core.autocrlf=false'
export MAKE_JOBSERVER=$(filter --jobserver%,$(MAKEFLAGS))
endif
ifeq ($(FORCE),)
- .config scripts/config/conf scripts/config/mconf: tmp/.prereq-build
+ .config scripts/config/conf scripts/config/mconf: staging_dir/host/.prereq-build
endif
SCAN_COOKIE?=$(shell echo $$$$)
prepare-mk: FORCE ;
prepare-tmpinfo: FORCE
+ @+$(MAKE) -r -s staging_dir/host/.prereq-build $(PREP_MK)
mkdir -p tmp/info
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="packageinfo" SCAN_DIR="package" SCAN_NAME="package" SCAN_DEPS="$(TOPDIR)/include/package*.mk $(TOPDIR)/overlay/*/*.mk" SCAN_DEPTH=5 SCAN_EXTRA=""
$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f include/scan.mk SCAN_TARGET="targetinfo" SCAN_DIR="target/linux" SCAN_NAME="target" SCAN_DEPS="profiles/*.mk $(TOPDIR)/include/kernel*.mk $(TOPDIR)/include/target.mk" SCAN_DEPTH=2 SCAN_EXTRA="" SCAN_MAKEOPTS="TARGET_BUILD=1"
kernel_nconfig: prepare_kernel_conf
$(_SINGLE)$(NO_TRACE_MAKE) -C target/linux nconfig
-tmp/.prereq-build: include/prereq-build.mk
+staging_dir/host/.prereq-build: include/prereq-build.mk
mkdir -p tmp
rm -f tmp/.host.mk
@$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f $(TOPDIR)/include/prereq-build.mk prereq 2>/dev/null || { \
echo "Prerequisite check failed. Use FORCE=1 to override."; \
false; \
}
+ ifneq ($(realpath $(TOPDIR)/include/prepare.mk),)
+ @$(_SINGLE)$(NO_TRACE_MAKE) -j1 -r -s -f $(TOPDIR)/include/prepare.mk prepare 2>/dev/null || { \
+ echo "Preparation failed."; \
+ false; \
+ }
+ endif
touch $@
printdb: FORCE
@+$(SUBMAKE) target/download
clean dirclean: .config
- @+$(SUBMAKE) -r $@
+ @+$(SUBMAKE) -r $@
prereq:: prepare-tmpinfo .config
- @+$(MAKE) -r -s tmp/.prereq-build $(PREP_MK)
@+$(NO_TRACE_MAKE) -r -s $@
+WARN_PARALLEL_ERROR = $(if $(BUILD_LOG),,$(and $(filter -j,$(MAKEFLAGS)),$(findstring s,$(LIBRECMC_VERBOSE))))
+
ifeq ($(SDK),1)
%::
printf "$(_R)WARNING: your configuration is out of sync. Please run make menuconfig, oldconfig or defconfig!$(_N)\n" >&2; \
fi \
)
- @+$(ULIMIT_FIX) $(SUBMAKE) -r $@
+ @+$(ULIMIT_FIX) $(SUBMAKE) -r $@ $(if $(WARN_PARALLEL_ERROR), || { \
+ printf "$(_R)Build failed - please re-run with -j1 to see the real error message$(_N)\n" >&2; \
+ false; \
+ } )
endif
+# update all feeds, re-create index files, install symlinks
+package/symlinks:
+ ./scripts/feeds update -a
+ ./scripts/feeds install -a
+
+# re-create index files, install symlinks
+package/symlinks-install:
+ ./scripts/feeds update -i
+ ./scripts/feeds install -a
+
+# remove all symlinks, don't touch ./feeds
+package/symlinks-clean:
+ ./scripts/feeds uninstall -a
+
help:
cat README
@$(_SINGLE)$(SUBMAKE) -C scripts/config clean
ifeq ($(findstring v,$(DEBUG)),)
- .SILENT: symlinkclean clean dirclean distclean config-clean download help tmpinfo-clean .config scripts/config/mconf scripts/config/conf menuconfig tmp/.prereq-build tmp/.prereq-package prepare-tmpinfo
+ .SILENT: symlinkclean clean dirclean distclean config-clean download help tmpinfo-clean .config scripts/config/mconf scripts/config/conf menuconfig staging_dir/host/.prereq-build tmp/.prereq-package prepare-tmpinfo
endif
.PHONY: help FORCE
.NOTPARALLEL:
-#
+#
# Copyright (C) 2006-2007 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
-#
+#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
else
SILENT:=>/dev/null $(if $(findstring w,$(LIBRECMC_VERBOSE)),,2>&1)
export QUIET:=1
- SUBMAKE=cmd() { $(SILENT) $(MAKE) -s $$* < /dev/null || { echo "make $$*: build failed. Please re-run make with V=s to see what's going on"; false; } } 8>&1 9>&2; cmd
+ SUBMAKE=cmd() { $(SILENT) $(MAKE) -s $$* < /dev/null || { echo "make $$*: build failed. Please re-run make with -j1 V=s to see what's going on"; false; } } 8>&1 9>&2; cmd
endif
.SILENT: $(MAKECMDGOALS)
#
-# Copyright (C) 2012 OpenWrt.org
+# Copyright (C) 2012-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
VERSION_NUMBER:=$(if $(VERSION_NUMBER),$(VERSION_NUMBER),$(REVISION))
VERSION_CODE:=$(call qstrip_escape,$(CONFIG_VERSION_NUMBER))
-VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),Bleeding Edge)
+VERSION_CODE:=$(if $(VERSION_CODE),$(VERSION_CODE),Elegant Eleanor)
VERSION_NICK:=$(call qstrip_escape,$(CONFIG_VERSION_NICK))
VERSION_NICK:=$(if $(VERSION_NICK),$(VERSION_NICK),$(RELEASE))
endef
VERSION_TAINT_SPECS := \
- -ALL:no-all \
+ -ALL_KMODS:no-all \
-IPV6:no-ipv6 \
- +USE_EGLIBC:eglibc \
+ +USE_GLIBC:glibc \
+USE_MKLIBS:mklibs \
+BUSYBOX_CUSTOM:busybox \
+ +OVERRIDE_PKGS:override \
VERSION_TAINTS := $(strip $(foreach taint,$(VERSION_TAINT_SPECS), \
$(if $(findstring +,$(taint)), \
define KernelPackage/gpio-button-hotplug
SUBMENU:=Other modules
- DEPENDS:=@!LINUX_3_3
TITLE:=Simple GPIO Button Hotplug driver
FILES:=$(PKG_BUILD_DIR)/gpio-button-hotplug.ko
AUTOLOAD:=$(call AutoLoad,30,gpio-button-hotplug,1)
/* -------------------------------------------------------------------------*/
-static int bh_event_add_var(struct bh_event *event, int argv,
- const char *format, ...)
+static __printf(3, 4)
+int bh_event_add_var(struct bh_event *event, int argv, const char *format, ...)
{
static char buf[128];
char *s;
va_end(args);
if (len >= sizeof(buf)) {
- BH_ERR("buffer size too small\n");
- WARN_ON(1);
+ WARN(1, "buffer size too small");
return -ENOMEM;
}
button = &pdata->buttons[i++];
button->gpio = of_get_gpio_flags(pp, 0, &flags);
- button->active_low = flags & OF_GPIO_ACTIVE_LOW;
+ if (button->gpio < 0) {
+ error = button->gpio;
+ if (error != -ENOENT) {
+ if (error != -EPROBE_DEFER)
+ dev_err(dev,
+ "Failed to get gpio flags, error: %d\n",
+ error);
+ return ERR_PTR(error);
+ }
+ } else {
+ button->active_low = flags & OF_GPIO_ACTIVE_LOW;
+ }
if (of_property_read_u32(pp, "linux,code", &button->code)) {
dev_err(dev, "Button without keycode: 0x%x\n",
# See /LICENSE for more information.
#
-define AddDepends/crc16
- DEPENDS+= +kmod-lib-crc16 $(1)
-endef
-
-define AddDepends/hid
- DEPENDS+= +kmod-hid $(1)
-endef
-
-define AddDepends/input
- DEPENDS+= +kmod-input-core $(1)
-endef
-
-
define AddDepends/nls
DEPENDS+= +kmod-nls-base $(foreach cp,$(1),+kmod-nls-$(cp))
endef
define AddDepends/rfkill
DEPENDS+= +USE_RFKILL:kmod-rfkill $(1)
endef
-
-
-define AddDepends/rtc
- DEPENDS+= @RTC_SUPPORT $(1)
-endef
$(eval $(call KernelPackage,ata-ahci))
+define KernelPackage/ata-ahci-platform
+ TITLE:=AHCI Serial ATA Platform support
+ KCONFIG:=CONFIG_SATA_AHCI_PLATFORM
+ FILES:= \
+ $(LINUX_DIR)/drivers/ata/ahci_platform.ko \
+ $(LINUX_DIR)/drivers/ata/libahci_platform.ko
+ AUTOLOAD:=$(call AutoLoad,40,libahci_platform ahci_platform,1)
+ $(call AddDepends/ata,@TARGET_ipq806x||TARGET_mvebu +kmod-ata-ahci)
+endef
+
+define KernelPackage/ata-ahci-platform/description
+ Platform support for AHCI Serial ATA controllers
+endef
+
+$(eval $(call KernelPackage,ata-ahci-platform))
+
+
define KernelPackage/ata-artop
TITLE:=ARTOP 6210/6260 PATA support
KCONFIG:=CONFIG_PATA_ARTOP
$(eval $(call KernelPackage,ata-marvell-sata))
+define KernelPackage/ata-mvebu-ahci
+ TITLE:=Marvell EBU AHCI support
+ DEPENDS:=@TARGET_mvebu +kmod-ata-ahci-platform
+ KCONFIG:=CONFIG_AHCI_MVEBU
+ FILES:=$(LINUX_DIR)/drivers/ata/ahci_mvebu.ko
+ AUTOLOAD:=$(call AutoLoad,41,ahci_mvebu,1)
+ $(call AddDepends/ata)
+endef
+
+define KernelPackage/ata-mvebu-ahci/description
+ AHCI support for Marvell EBU SoCs
+endef
+
+$(eval $(call KernelPackage,ata-mvebu-ahci))
+
+
define KernelPackage/ata-nvidia-sata
TITLE:=Nvidia Serial ATA support
KCONFIG:=CONFIG_SATA_NV
$(eval $(call KernelPackage,ata-nvidia-sata))
+define KernelPackage/ata-oxnas-sata
+ TITLE:=oxnas Serial ATA support
+ KCONFIG:=CONFIG_SATA_OXNAS
+ DEPENDS:=@TARGET_oxnas
+ FILES:=$(LINUX_DIR)/drivers/ata/sata_oxnas.ko
+ AUTOLOAD:=$(call AutoLoad,41,sata_oxnas,1)
+ $(call AddDepends/ata)
+endef
+
+define KernelPackage/ata-oxnas-sata/description
+ SATA support for OX934 core found in the OX82x/PLX782x SoCs
+endef
+
+$(eval $(call KernelPackage,ata-oxnas-sata))
+
+
define KernelPackage/ata-pdc202xx-old
SUBMENU:=$(BLOCK_MENU)
TITLE:=Older Promise PATA controller support
CONFIG_DM_DEBUG=n \
CONFIG_DM_UEVENT=n \
CONFIG_DM_DELAY=n \
+ CONFIG_DM_LOG_WRITES=n \
+ CONFIG_DM_MQ_DEFAULT=n \
CONFIG_DM_MULTIPATH=n \
CONFIG_DM_ZERO=n \
CONFIG_DM_SNAPSHOT=n \
CONFIG_SCSI \
CONFIG_BLK_DEV_SD
FILES:= \
- $(if $(findstring y,$(CONFIG_SCSI)),,$(LINUX_DIR)/drivers/scsi/scsi_mod.ko) \
+ $(LINUX_DIR)/drivers/scsi/scsi_mod.ko \
$(LINUX_DIR)/drivers/scsi/sd_mod.ko
- AUTOLOAD:=$(call AutoLoad,40,sd_mod,1)
+ AUTOLOAD:=$(call AutoLoad,40,scsi_mod sd_mod,1)
endef
$(eval $(call KernelPackage,scsi-core))
define KernelPackage/can-c-can-platform
TITLE:=Platform Bus based BOSCH C_CAN/D_CAN driver
KCONFIG:=CONFIG_CAN_C_CAN_PLATFORM
- DEPENDS:=kmod-can-c-can
+ DEPENDS:=kmod-can-c-can +LINUX_4_1:kmod-regmap
FILES:=$(LINUX_DIR)/drivers/net/can/c_can/c_can_platform.ko
AUTOLOAD:=$(call AutoProbe,c_can_platform)
$(call AddDepends/can)
ALGAPI2=crypto_algapi \
BLKCIPHER2=crypto_blkcipher
-CRYPTOMGR_MODULES = \
- AEAD2=aead \
- MANAGER2=cryptomgr \
-
crypto_confvar=CONFIG_CRYPTO_$(word 1,$(subst =,$(space),$(1)))
crypto_file=$(LINUX_DIR)/crypto/$(word 2,$(subst =,$(space),$(1))).ko
crypto_name=$(if $(findstring y,$($(call crypto_confvar,$(1)))),,$(word 2,$(subst =,$(space),$(1))))
DEPENDS+=+kmod-crypto-core $(1)
endef
+define KernelPackage/crypto-aead
+ TITLE:=CryptoAPI AEAD support
+ KCONFIG:= \
+ CONFIG_CRYPTO_AEAD \
+ CONFIG_CRYPTO_AEAD2
+ FILES:=$(LINUX_DIR)/crypto/aead.ko
+ AUTOLOAD:=$(call AutoLoad,09,crypto_aead,1)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-aead))
+
+
define KernelPackage/crypto-hash
TITLE:=CryptoAPI hash support
KCONFIG:=CONFIG_CRYPTO_HASH
define KernelPackage/crypto-manager
TITLE:=CryptoAPI algorithm manager
- DEPENDS:=+kmod-crypto-hash +kmod-crypto-pcompress
+ DEPENDS:=+kmod-crypto-aead +kmod-crypto-hash +kmod-crypto-pcompress
KCONFIG:= \
- CONFIG_CRYPTO_AEAD \
CONFIG_CRYPTO_MANAGER \
- $(foreach mod,$(CRYPTOMGR_MODULES),$(call crypto_confvar,$(mod)))
- FILES:=$(foreach mod,$(CRYPTOMGR_MODULES),$(call crypto_file,$(mod)))
+ CONFIG_CRYPTO_MANAGER2
+ FILES:=$(LINUX_DIR)/crypto/cryptomgr.ko
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-iv))
+define KernelPackage/crypto-seqiv
+ TITLE:=CryptoAPI Sequence Number IV Generator
+ DEPENDS:=+kmod-crypto-aead +kmod-crypto-rng
+ KCONFIG:=CONFIG_CRYPTO_SEQIV
+ FILES:=$(LINUX_DIR)/crypto/seqiv.ko
+ AUTOLOAD:=$(call AutoLoad,09,seqiv)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-seqiv))
+
define KernelPackage/crypto-hw-talitos
TITLE:=Freescale integrated security engine (SEC) driver
- DEPENDS:=+kmod-crypto-aes +kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc
+ DEPENDS:=+kmod-crypto-manager +kmod-crypto-hash +kmod-random-core +kmod-crypto-authenc
KCONFIG:= \
CONFIG_CRYPTO_DEV_TALITOS
FILES:= \
define KernelPackage/crypto-hw-padlock
TITLE:=VIA PadLock ACE with AES/SHA hw crypto module
- DEPENDS:=+kmod-crypto-aes +kmod-crypto-manager
+ DEPENDS:=+kmod-crypto-manager
KCONFIG:= \
CONFIG_CRYPTO_DEV_PADLOCK \
CONFIG_CRYPTO_DEV_PADLOCK_AES \
$(eval $(call KernelPackage,crypto-hw-omap))
-define KernelPackage/crypto-aes
- TITLE:=AES cipher CryptoAPI module
- KCONFIG:=CONFIG_CRYPTO_AES CONFIG_CRYPTO_AES_586
- FILES:=$(LINUX_DIR)/crypto/aes_generic.ko
- AUTOLOAD:=$(call AutoLoad,09,aes_generic)
- $(call AddDepends/crypto)
-endef
-
-define KernelPackage/crypto-aes/x86
- FILES+=$(LINUX_DIR)/arch/x86/crypto/aes-i586.ko
- AUTOLOAD:=$(call AutoLoad,09,aes-i586)
-endef
-
-$(eval $(call KernelPackage,crypto-aes))
-
-
define KernelPackage/crypto-arc4
TITLE:=ARC4 (RC4) cipher CryptoAPI module
KCONFIG:=CONFIG_CRYPTO_ARC4
$(eval $(call KernelPackage,crypto-cbc))
+define KernelPackage/crypto-ctr
+ TITLE:=Counter Mode CryptoAPI module
+ DEPENDS:=+kmod-crypto-manager +kmod-crypto-seqiv +kmod-crypto-iv
+ KCONFIG:=CONFIG_CRYPTO_CTR
+ FILES:=$(LINUX_DIR)/crypto/ctr.ko
+ AUTOLOAD:=$(call AutoLoad,09,ctr)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-ctr))
+
+define KernelPackage/crypto-ccm
+ TITLE:=Support for Counter with CBC MAC (CCM)
+ DEPENDS:=+kmod-crypto-ctr +kmod-crypto-aead
+ KCONFIG:=CONFIG_CRYPTO_CCM
+ FILES:=$(LINUX_DIR)/crypto/ccm.ko
+ AUTOLOAD:=$(call AutoLoad,09,ccm)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-ccm))
+
define KernelPackage/crypto-pcbc
TITLE:=Propagating Cipher Block Chaining CryptoAPI module
DEPENDS:=+kmod-crypto-manager
TITLE:=CRC32c CRC module
DEPENDS:=+kmod-crypto-hash
KCONFIG:=CONFIG_CRYPTO_CRC32C
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.15.0)),1)
FILES:=$(LINUX_DIR)/crypto/crc32c_generic.ko
AUTOLOAD:=$(call AutoLoad,04,crc32c_generic,1)
-else
- FILES:=$(LINUX_DIR)/crypto/crc32c.ko
- AUTOLOAD:=$(call AutoLoad,04,crc32c,1)
-endif
$(call AddDepends/crypto)
endef
$(eval $(call KernelPackage,crypto-hmac))
+define KernelPackage/crypto-cmac
+ TITLE:=Support for Cipher-based Message Authentication Code (CMAC)
+ DEPENDS:=+kmod-crypto-hash
+ KCONFIG:=CONFIG_CRYPTO_CMAC
+ FILES:=$(LINUX_DIR)/crypto/cmac.ko
+ AUTOLOAD:=$(call AutoLoad,09,cmac)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-cmac))
+
+
+define KernelPackage/crypto-gcm
+ TITLE:=GCM/GMAC CryptoAPI module
+ DEPENDS:=+kmod-crypto-ctr +kmod-crypto-ghash +kmod-crypto-null
+ KCONFIG:=CONFIG_CRYPTO_GCM
+ FILES:=$(LINUX_DIR)/crypto/gcm.ko
+ AUTOLOAD:=$(call AutoLoad,09,gcm)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-gcm))
+
+
+define KernelPackage/crypto-gf128
+ TITLE:=GF(2^128) multiplication functions CryptoAPI module
+ KCONFIG:=CONFIG_CRYPTO_GF128MUL
+ FILES:=$(LINUX_DIR)/crypto/gf128mul.ko
+ AUTOLOAD:=$(call AutoLoad,09,gf128mul)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-gf128))
+
+
+define KernelPackage/crypto-ghash
+ TITLE:=GHASH digest CryptoAPI module
+ DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-hash
+ KCONFIG:=CONFIG_CRYPTO_GHASH
+ FILES:=$(LINUX_DIR)/crypto/ghash-generic.ko
+ AUTOLOAD:=$(call AutoLoad,09,ghash-generic)
+ $(call AddDepends/crypto)
+endef
+
+$(eval $(call KernelPackage,crypto-ghash))
+
+
define KernelPackage/crypto-md4
TITLE:=MD4 digest CryptoAPI module
DEPENDS:=+kmod-crypto-hash
$(eval $(call KernelPackage,crypto-sha256))
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.6.0)),1)
-camellia_mod_suffix=_generic
-endif
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.7.0)),1)
-cast56_mod_suffix=_generic
-endif
-
define KernelPackage/crypto-misc
TITLE:=Other CryptoAPI modules
DEPENDS:=+kmod-crypto-manager
CONFIG_CRYPTO_WP512
FILES:= \
$(LINUX_DIR)/crypto/anubis.ko \
- $(LINUX_DIR)/crypto/camellia$(camellia_mod_suffix).ko \
- $(if $(call kernel_patchver_ge,3.7),$(LINUX_DIR)/crypto/cast_common.ko) \
- $(LINUX_DIR)/crypto/cast5$(cast56_mod_suffix).ko \
- $(LINUX_DIR)/crypto/cast6$(cast56_mod_suffix).ko \
+ $(LINUX_DIR)/crypto/camellia_generic.ko \
+ $(LINUX_DIR)/crypto/cast_common.ko \
+ $(LINUX_DIR)/crypto/cast5_generic.ko \
+ $(LINUX_DIR)/crypto/cast6_generic.ko \
$(LINUX_DIR)/crypto/khazad.ko \
$(LINUX_DIR)/crypto/sha512_generic.ko \
$(LINUX_DIR)/crypto/tea.ko \
$(call AddDepends/crypto)
endef
-define KernelPackage/crypto-misc/x86
- FILES+=$(LINUX_DIR)/arch/x86/crypto/twofish-i586.ko
-endef
+ifndef CONFIG_TARGET_x86_64
+ define KernelPackage/crypto-misc/x86
+ FILES+=$(LINUX_DIR)/arch/x86/crypto/twofish-i586.ko
+ endef
+endif
$(eval $(call KernelPackage,crypto-misc))
define KernelPackage/crypto-xts
TITLE:=XTS cipher CryptoAPI module
- DEPENDS:=+kmod-crypto-manager
- KCONFIG:= \
- CONFIG_CRYPTO_GF128MUL \
- CONFIG_CRYPTO_XTS
- FILES:= \
- $(LINUX_DIR)/crypto/xts.ko \
- $(LINUX_DIR)/crypto/gf128mul.ko
- AUTOLOAD:=$(call AutoLoad,09, \
- gf128mul \
- xts \
- )
+ DEPENDS:=+kmod-crypto-gf128 +kmod-crypto-manager
+ KCONFIG:=CONFIG_CRYPTO_XTS
+ FILES:=$(LINUX_DIR)/crypto/xts.ko
+ AUTOLOAD:=$(call AutoLoad,09,xts)
$(call AddDepends/crypto)
endef
define KernelPackage/crypto-mv-cesa
TITLE:=Marvell crypto engine
- DEPENDS:=+kmod-crypto-manager +kmod-crypto-aes @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
+ DEPENDS:=+kmod-crypto-manager @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
KCONFIG:=CONFIG_CRYPTO_DEV_MV_CESA
FILES:=$(LINUX_DIR)/drivers/crypto/mv_cesa.ko
AUTOLOAD:=$(call AutoLoad,09,mv_cesa)
define KernelPackage/fs-btrfs
SUBMENU:=$(FS_MENU)
TITLE:=BTRFS filesystem support
- DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib +(!LINUX_3_3&&!LINUX_3_6&&!LINUX_3_8):kmod-lib-raid6 +(!LINUX_3_3&&!LINUX_3_6&&!LINUX_3_8):kmod-lib-xor
+ DEPENDS:=+kmod-lib-crc32c +kmod-lib-lzo +kmod-lib-zlib +kmod-lib-raid6 +kmod-lib-xor
KCONFIG:=\
CONFIG_BTRFS_FS \
CONFIG_BTRFS_FS_POSIX_ACL=n \
+kmod-crypto-md4 \
+kmod-crypto-des \
+kmod-crypto-ecb \
- +!LINUX_3_3&&!LINUX_3_6:kmod-crypto-sha256
+ +kmod-crypto-sha256
endef
define KernelPackage/fs-cifs/description
define KernelPackage/fs-ext4
SUBMENU:=$(FS_MENU)
TITLE:=EXT4 filesystem support
+ DEPENDS := \
+ +kmod-lib-crc16 \
+ +kmod-crypto-hash
KCONFIG:= \
CONFIG_EXT4_FS \
+ CONFIG_EXT4_ENCRYPTION=n \
CONFIG_JBD2
FILES:= \
$(LINUX_DIR)/fs/ext4/ext4.ko \
$(LINUX_DIR)/fs/jbd2/jbd2.ko \
$(LINUX_DIR)/fs/mbcache.ko
AUTOLOAD:=$(call AutoLoad,30,mbcache jbd2 ext4,1)
- $(call AddDepends/crc16, +!LINUX_3_3:kmod-crypto-hash)
endef
define KernelPackage/fs-ext4/description
$(eval $(call KernelPackage,fs-ext4))
+define KernelPackage/fs-f2fs
+ SUBMENU:=$(FS_MENU)
+ TITLE:=F2FS filesystem support
+ KCONFIG:= \
+ CONFIG_F2FS_FS \
+ CONFIG_F2FS_STAT_FS=y \
+ CONFIG_F2FS_FS_XATTR=y \
+ CONFIG_F2FS_FS_POSIX_ACL=n \
+ CONFIG_F2FS_FS_SECURITY=n \
+ CONFIG_F2FS_CHECK_FS=n
+ FILES:=$(LINUX_DIR)/fs/f2fs/f2fs.ko
+ AUTOLOAD:=$(call AutoLoad,30,f2fs,1)
+endef
+
+define KernelPackage/fs-f2fs/description
+ Kernel module for F2FS filesystem support
+endef
+
+$(eval $(call KernelPackage,fs-f2fs))
+
+
define KernelPackage/fuse
SUBMENU:=$(FS_MENU)
TITLE:=FUSE (Filesystem in Userspace) support
CONFIG_NFS_FS \
CONFIG_NFS_USE_LEGACY_DNS=n \
CONFIG_NFS_USE_NEW_IDMAPPER=n
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.6.0)),1)
FILES:= \
$(LINUX_DIR)/fs/nfs/nfs.ko \
$(LINUX_DIR)/fs/nfs/nfsv3.ko
-else
- FILES:= \
- $(LINUX_DIR)/fs/nfs/nfs.ko
-endif
AUTOLOAD:=$(call AutoLoad,40,nfs nfsv3)
endef
TITLE:=Common NFS filesystem modules
KCONFIG:= \
CONFIG_LOCKD \
- CONFIG_SUNRPC
+ CONFIG_SUNRPC \
+ CONFIG_GRACE_PERIOD
FILES:= \
$(LINUX_DIR)/fs/lockd/lockd.ko \
- $(LINUX_DIR)/net/sunrpc/sunrpc.ko
- AUTOLOAD:=$(call AutoLoad,30,sunrpc lockd)
+ $(LINUX_DIR)/net/sunrpc/sunrpc.ko \
+ $(LINUX_DIR)/fs/nfs_common/grace.ko
+ AUTOLOAD:=$(call AutoLoad,30,grace sunrpc lockd)
endef
$(eval $(call KernelPackage,fs-nfs-common))
SUBMENU:=$(FS_MENU)
TITLE:=XFS filesystem support
KCONFIG:=CONFIG_XFS_FS
- DEPENDS:= +kmod-fs-exportfs +kmod-lib-crc32c @!avr32
+ DEPENDS:= +kmod-fs-exportfs +kmod-lib-crc32c
FILES:=$(LINUX_DIR)/fs/xfs/xfs.ko
AUTOLOAD:=$(call AutoLoad,30,xfs,1)
endef
define KernelPackage/hwmon-adt7410
TITLE:=ADT7410 monitoring support
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.10.0)),1)
KCONFIG:= \
CONFIG_SENSORS_ADT7X10 \
CONFIG_SENSORS_ADT7410
$(LINUX_DIR)/drivers/hwmon/adt7x10.ko \
$(LINUX_DIR)/drivers/hwmon/adt7410.ko
AUTOLOAD:=$(call AutoLoad,60,adt7x10 adt7410)
-else
- KCONFIG:=CONFIG_SENSORS_ADT7410
- FILES:=$(LINUX_DIR)/drivers/hwmon/adt7410.ko
- AUTOLOAD:=$(call AutoLoad,60,adt7410)
-endif
- $(call AddDepends/hwmon,+kmod-i2c-core @!(LINUX_3_3||LINUX_3_6))
+ $(call AddDepends/hwmon,+kmod-i2c-core)
endef
define KernelPackage/hwmon-adt7410/description
$(eval $(call KernelPackage,hwmon-gpiofan))
+define KernelPackage/hwmon-pwmfan
+ TITLE:=Generic PWM FAN support
+ KCONFIG:=CONFIG_SENSORS_PWM_FAN
+ FILES:=$(LINUX_DIR)/drivers/hwmon/pwm-fan.ko
+ AUTOLOAD:=$(call AutoLoad,60,pwm-fan)
+ $(call AddDepends/hwmon,)
+endef
+
+define KernelPackage/hwmon-pwmfan/description
+ Kernel module for PWM controlled FANs
+endef
+
+$(eval $(call KernelPackage,hwmon-pwmfan))
+
+
define KernelPackage/hwmon-k10temp
TITLE:=AMD Family 10h+ temperature sensor
KCONFIG:=CONFIG_SENSORS_K10TEMP
FILES:=$(LINUX_DIR)/drivers/hwmon/k10temp.ko
AUTOLOAD:=$(call AutoLoad,60,k10temp)
- $(call AddDepends/hwmon,@PCI_SUPPORT @(x86||x86_64))
+ $(call AddDepends/hwmon,@PCI_SUPPORT @TARGET_x86)
endef
define KernelPackage/hwmon-k10temp/description
CONFIG_I2C:drivers/i2c/i2c-core \
CONFIG_I2C_CHARDEV:drivers/i2c/i2c-dev
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.12.0)),1)
- ifeq ($(CONFIG_OF),y)
- I2C_CORE_MODULES+=CONFIG_OF_I2C:drivers/of/of_i2c
- endif
+ifeq ($(CONFIG_OF),y)
+ I2C_CORE_MODULES+=CONFIG_OF_I2C:drivers/of/of_i2c@lt3.12
endif
define KernelPackage/i2c-core
$(eval $(call KernelPackage,i2c-mux))
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.6.0)),1)
I2C_MUX_GPIO_MODULES:= \
CONFIG_I2C_MUX_GPIO:drivers/i2c/muxes/i2c-mux-gpio
-else
-I2C_MUX_GPIO_MODULES:= \
- CONFIG_I2C_MUX_GPIO:drivers/i2c/muxes/gpio-i2cmux
-endif
define KernelPackage/i2c-mux-gpio
$(call i2c_defaults,$(I2C_MUX_GPIO_MODULES),51)
$(eval $(call KernelPackage,i2c-mux-gpio))
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.6.0)),1)
-I2C_MUX_PREFIX:=i2c-mux-
-endif
-
I2C_MUX_PCA954x_MODULES:= \
- CONFIG_I2C_MUX_PCA954x:drivers/i2c/muxes/$(I2C_MUX_PREFIX)pca954x
+ CONFIG_I2C_MUX_PCA954x:drivers/i2c/muxes/i2c-mux-pca954x
define KernelPackage/i2c-mux-pca954x
$(call i2c_defaults,$(I2C_MUX_PCA954x_MODULES),51)
I2C_MUX_PCA9541_MODULES:= \
- CONFIG_I2C_MUX_PCA9541:drivers/i2c/muxes/$(I2C_MUX_PREFIX)pca9541
+ CONFIG_I2C_MUX_PCA9541:drivers/i2c/muxes/i2c-mux-pca9541
define KernelPackage/i2c-mux-pca9541
$(call i2c_defaults,$(I2C_MUX_PCA9541_MODULES),51)
define KernelPackage/hid
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=HID Devices
- KCONFIG:=CONFIG_HID CONFIG_HIDRAW=y
+ DEPENDS:=+kmod-input-core +kmod-input-evdev
+ KCONFIG:=CONFIG_HID CONFIG_HIDRAW=y CONFIG_HID_BATTERY_STRENGTH=y
FILES:=$(LINUX_DIR)/drivers/hid/hid.ko
AUTOLOAD:=$(call AutoLoad,61,hid)
- $(call AddDepends/input,+kmod-input-evdev)
endef
define KernelPackage/hid/description
define KernelPackage/hid-generic
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=Generic HID device support
+ DEPENDS:=+kmod-hid
KCONFIG:=CONFIG_HID_GENERIC
FILES:=$(LINUX_DIR)/drivers/hid/hid-generic.ko
AUTOLOAD:=$(call AutoProbe,hid-generic)
- $(call AddDepends/hid)
endef
define KernelPackage/hid/description
define KernelPackage/input-evdev
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=Input event device
+ DEPENDS:=+kmod-input-core
KCONFIG:=CONFIG_INPUT_EVDEV
FILES:=$(LINUX_DIR)/drivers/input/evdev.ko
AUTOLOAD:=$(call AutoLoad,60,evdev)
- $(call AddDepends/input)
endef
define KernelPackage/input-evdev/description
define KernelPackage/input-gpio-keys
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=GPIO key support
- DEPENDS:= @GPIO_SUPPORT
+ DEPENDS:= @GPIO_SUPPORT +kmod-input-core
KCONFIG:= \
CONFIG_KEYBOARD_GPIO \
CONFIG_INPUT_KEYBOARD=y
FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys.ko
AUTOLOAD:=$(call AutoProbe,gpio_keys)
- $(call AddDepends/input)
endef
define KernelPackage/input-gpio-keys/description
This driver implements support for buttons connected
to GPIO pins of various CPUs (and some other chips).
+
+ See also gpio-button-hotplug which is an alternative, lower overhead
+ implementation that generates uevents instead of kernel input events.
endef
$(eval $(call KernelPackage,input-gpio-keys))
CONFIG_INPUT_KEYBOARD=y
FILES:=$(LINUX_DIR)/drivers/input/keyboard/gpio_keys_polled.ko
AUTOLOAD:=$(call AutoProbe,gpio_keys_polled,1)
- $(call AddDepends/input)
endef
define KernelPackage/input-gpio-keys-polled/description
Kernel module for support polled GPIO keys input device
+
+ See also gpio-button-hotplug which is an alternative, lower overhead
+ implementation that generates uevents instead of kernel input events.
endef
$(eval $(call KernelPackage,input-gpio-keys-polled))
define KernelPackage/input-gpio-encoder
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=GPIO rotay encoder
+ DEPENDS:=@GPIO_SUPPORT +kmod-input-core
KCONFIG:=CONFIG_INPUT_GPIO_ROTARY_ENCODER
FILES:=$(LINUX_DIR)/drivers/input/misc/rotary_encoder.ko
AUTOLOAD:=$(call AutoProbe,rotary_encoder)
- $(call AddDepends/input,@GPIO_SUPPORT)
endef
define KernelPackage/gpio-encoder/description
define KernelPackage/input-joydev
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=Joystick device support
+ DEPENDS:=+kmod-input-core
KCONFIG:=CONFIG_INPUT_JOYDEV
FILES:=$(LINUX_DIR)/drivers/input/joydev.ko
AUTOLOAD:=$(call AutoProbe,joydev)
- $(call AddDepends/input)
endef
define KernelPackage/input-joydev/description
define KernelPackage/input-polldev
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=Polled Input device support
+ DEPENDS:=+kmod-input-core
KCONFIG:=CONFIG_INPUT_POLLDEV
FILES:=$(LINUX_DIR)/drivers/input/input-polldev.ko
- $(call AddDepends/input)
endef
define KernelPackage/input-polldev/description
define KernelPackage/input-matrixkmap
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=Input matrix devices support
+ DEPENDS:=+kmod-input-core
KCONFIG:=CONFIG_INPUT_MATRIXKMAP
- DEPENDS:=@!LINUX_3_3
FILES:=$(LINUX_DIR)/drivers/input/matrix-keymap.ko
AUTOLOAD:=$(call AutoProbe,matrix-keymap)
- $(call AddDepends/input)
endef
define KernelPackage/input-matrix/description
define KernelPackage/acpi-button
SUBMENU:=$(INPUT_MODULES_MENU)
TITLE:=ACPI Button Support
- DEPENDS:=@(TARGET_x86_generic||TARGET_x86_kvm_guest||TARGET_x86_xen_domu) +kmod-input-evdev
+ DEPENDS:=@(TARGET_x86_generic||TARGET_x86_kvm_guest||TARGET_x86_xen_domu||TARGET_x86_64) +kmod-input-evdev
KCONFIG:=CONFIG_ACPI_BUTTON
FILES:=$(LINUX_DIR)/drivers/acpi/button.ko
AUTOLOAD:=$(call AutoLoad,06,button)
endef
$(eval $(call KernelPackage,keyboard-imx))
+
+
+define KernelPackage/input-uinput
+ SUBMENU:=$(INPUT_MODULES_MENU)
+ TITLE:=user input module
+ DEPENDS:=+kmod-input-core
+ KCONFIG:= \
+ CONFIG_INPUT_MISC=y \
+ CONFIG_INPUT_UINPUT
+ FILES:=$(LINUX_DIR)/drivers/input/misc/uinput.ko
+ AUTOLOAD:=$(call AutoProbe,uinput)
+endef
+
+define KernelPackage/input-uinput/description
+ user input modules needed for bluez
+endef
+
+$(eval $(call KernelPackage,input-uinput))
$(eval $(call KernelPackage,leds-gpio))
+LED_TRIGGER_DIR=$(LINUX_DIR)/drivers/leds/trigger
define KernelPackage/ledtrig-heartbeat
SUBMENU:=$(LEDS_MENU)
TITLE:=LED Heartbeat Trigger
KCONFIG:=CONFIG_LEDS_TRIGGER_HEARTBEAT
- FILES:=$(LINUX_DIR)/drivers/leds/$(if $(call kernel_patchver_ge,3.10),trigger/)ledtrig-heartbeat.ko
+ FILES:=$(LED_TRIGGER_DIR)/ledtrig-heartbeat.ko
AUTOLOAD:=$(call AutoLoad,50,ledtrig-heartbeat)
endef
SUBMENU:=$(LEDS_MENU)
TITLE:=LED GPIO Trigger
KCONFIG:=CONFIG_LEDS_TRIGGER_GPIO
- FILES:=$(LINUX_DIR)/drivers/leds/$(if $(call kernel_patchver_ge,3.10),trigger/)ledtrig-gpio.ko
+ FILES:=$(LED_TRIGGER_DIR)/ledtrig-gpio.ko
AUTOLOAD:=$(call AutoLoad,50,ledtrig-gpio)
endef
SUBMENU:=$(LEDS_MENU)
TITLE:=LED Default ON Trigger
KCONFIG:=CONFIG_LEDS_TRIGGER_DEFAULT_ON
- FILES:=$(LINUX_DIR)/drivers/leds/$(if $(call kernel_patchver_ge,3.10),trigger/)ledtrig-default-on.ko
+ FILES:=$(LED_TRIGGER_DIR)/ledtrig-default-on.ko
AUTOLOAD:=$(call AutoLoad,50,ledtrig-default-on,1)
endef
SUBMENU:=$(LEDS_MENU)
TITLE:=LED Timer Trigger
KCONFIG:=CONFIG_LEDS_TRIGGER_TIMER
- FILES:=$(LINUX_DIR)/drivers/leds/$(if $(call kernel_patchver_ge,3.10),trigger/)ledtrig-timer.ko
+ FILES:=$(LED_TRIGGER_DIR)/ledtrig-timer.ko
AUTOLOAD:=$(call AutoLoad,50,ledtrig-timer,1)
endef
SUBMENU:=$(LEDS_MENU)
TITLE:=LED Transient Trigger
KCONFIG:=CONFIG_LEDS_TRIGGER_TRANSIENT
- FILES:=$(LINUX_DIR)/drivers/leds/$(if $(call kernel_patchver_ge,3.10),trigger/)ledtrig-transient.ko
+ FILES:=$(LED_TRIGGER_DIR)/ledtrig-transient.ko
AUTOLOAD:=$(call AutoLoad,50,ledtrig-transient,1)
endef
define KernelPackage/ledtrig-oneshot
SUBMENU:=$(LEDS_MENU)
TITLE:=LED One-Shot Trigger
- DEPENDS:=@!LINUX_3_3
KCONFIG:=CONFIG_LEDS_TRIGGER_ONESHOT
- FILES:=$(LINUX_DIR)/drivers/leds/$(if $(call kernel_patchver_ge,3.10),trigger/)ledtrig-oneshot.ko
+ FILES:=$(LED_TRIGGER_DIR)/ledtrig-oneshot.ko
AUTOLOAD:=$(call AutoLoad,50,ledtrig-oneshot)
endef
$(eval $(call KernelPackage,ledtrig-oneshot))
+define KernelPackage/leds-pca963x
+ SUBMENU:=$(LEDS_MENU)
+ TITLE:=PCA963x LED support
+ DEPENDS:=+kmod-i2c-core
+ KCONFIG:=CONFIG_LEDS_PCA963X
+ FILES:=$(LINUX_DIR)/drivers/leds/leds-pca963x.ko
+ AUTOLOAD:=$(call AutoLoad,60,leds-pca963x,1)
+endef
+
+define KernelPackage/leds-pca963x/description
+ Driver for the NXP PCA963x I2C LED controllers.
+endef
+
+$(eval $(call KernelPackage,leds-pca963x))
+
+
define KernelPackage/leds-tlc59116
SUBMENU:=$(LEDS_MENU)
TITLE:=TLC59116 LED support
- DEPENDS:=@TARGET_mvebu kmod-i2c-core
+ DEPENDS:=@TARGET_mvebu +kmod-i2c-core +kmod-regmap
KCONFIG:=CONFIG_LEDS_TLC59116
FILES:=$(LINUX_DIR)/drivers/leds/leds-tlc59116.ko
AUTOLOAD:=$(call AutoLoad,60,leds-tlc59116,1)
TITLE:=CRC16 support
KCONFIG:=CONFIG_CRC16
FILES:=$(LINUX_DIR)/lib/crc16.ko
- AUTOLOAD:=$(call AutoProbe,crc16)
+ AUTOLOAD:=$(call AutoLoad,20,crc16,1)
endef
define KernelPackage/lib-crc16/description
$(eval $(call KernelPackage,lib-lzo))
+define KernelPackage/lib-lz4
+ SUBMENU:=$(LIB_MENU)
+ TITLE:=LZ4 support
+ KCONFIG:= \
+ CONFIG_LZ4_COMPRESS \
+ CONFIG_LZ4_DECOMPRESS
+ FILES:= \
+ $(LINUX_DIR)/lib/lz4/lz4_compress.ko \
+ $(LINUX_DIR)/lib/lz4/lz4_decompress.ko
+ AUTOLOAD:=$(call AutoProbe,lz4_compress lz4_decompress)
+endef
+
+define KernelPackage/lib-lz4/description
+ Kernel module for LZ4 compression/decompression support
+endef
+
+$(eval $(call KernelPackage,lib-lz4))
+
+
define KernelPackage/lib-raid6
SUBMENU:=$(LIB_MENU)
TITLE:=RAID6 algorithm support
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Agere ET131x Gigabit Ethernet driver
URL:=http://sourceforge.net/projects/et131x
- FILES:=$(LINUX_DIR)/drivers/staging/et131x/et131x.$(LINUX_KMOD_SUFFIX)
+ FILES:= \
+ $(LINUX_DIR)/drivers/net/ethernet/agere/et131x.ko
KCONFIG:= \
CONFIG_ET131X \
CONFIG_ET131X_DEBUG=n
$(eval $(call KernelPackage,gw16083))
+define KernelPackage/phy-broadcom
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Broadcom Ethernet PHY driver
+ KCONFIG:=CONFIG_BROADCOM_PHY
+ DEPENDS:=+kmod-libphy
+ FILES:=$(LINUX_DIR)/drivers/net/phy/broadcom.ko
+ AUTOLOAD:=$(call AutoLoad,18,broadcom)
+endef
+
+define KernelPackage/phy-broadcom/description
+ Currently supports the BCM5411, BCM5421, BCM5461, BCM5464, BCM5481,
+ BCM5482 and BCM57780 PHYs.
+endef
+
+$(eval $(call KernelPackage,phy-broadcom))
+
+
define KernelPackage/swconfig
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=switch configuration API
$(eval $(call KernelPackage,ne2k-pci))
+
+define KernelPackage/e100
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Intel(R) PRO/100+ cards kernel support
+ DEPENDS:=@PCI_SUPPORT +kmod-mii
+ KCONFIG:=CONFIG_E100
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e100.ko
+ AUTOLOAD:=$(call AutoProbe,e100)
+endef
+
+define KernelPackage/e100/description
+ Kernel modules for Intel(R) PRO/100+ Ethernet adapters
+endef
+
+define KernelPackage/e100/install
+ $(INSTALL_DIR) $(1)/lib/firmware/e100
+ $(foreach file,d101m_ucode.bin d101s_ucode.bin d102e_ucode.bin, \
+ $(TARGET_CROSS)objcopy -Iihex -Obinary $(LINUX_DIR)/firmware/e100/$(file).ihex $(1)/lib/firmware/e100/$(file); \
+ )
+endef
+
+$(eval $(call KernelPackage,e100))
+
+
+define KernelPackage/e1000
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Intel(R) PRO/1000 PCI cards kernel support
+ DEPENDS:=@PCI_SUPPORT
+ KCONFIG:=CONFIG_E1000 \
+ CONFIG_E1000_DISABLE_PACKET_SPLIT=n \
+ CONFIG_E1000_NAPI=y
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e1000/e1000.ko
+ AUTOLOAD:=$(call AutoLoad,35,e1000)
+endef
+
+define KernelPackage/e1000/description
+ Kernel modules for Intel(R) PRO/1000 PCI Ethernet adapters.
+endef
+
+$(eval $(call KernelPackage,e1000))
+
+
+define KernelPackage/e1000e
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Intel(R) PRO/1000 PCIe cards kernel support
+ DEPENDS:=@PCIE_SUPPORT +kmod-ptp
+ KCONFIG:=CONFIG_E1000E
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/e1000e/e1000e.ko
+ AUTOLOAD:=$(call AutoProbe,e1000e)
+endef
+
+define KernelPackage/e1000e/description
+ Kernel modules for Intel(R) PRO/1000 PCIe Ethernet adapters.
+endef
+
+$(eval $(call KernelPackage,e1000e))
+
+
define KernelPackage/igb
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) 82575/82576 PCI-Express Gigabit Ethernet support
$(eval $(call KernelPackage,igb))
+define KernelPackage/b44
+ TITLE:=Broadcom 44xx driver
+ KCONFIG:=CONFIG_B44
+ DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx_mips74k +!TARGET_brcm47xx:kmod-ssb +kmod-mii +kmod-libphy
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/b44.ko
+ AUTOLOAD:=$(call AutoLoad,19,b44,1)
+endef
+
+define KernelPackage/b44/description
+ Kernel modules for Broadcom 44xx Ethernet adapters.
+endef
+
+$(eval $(call KernelPackage,b44))
+
+
define KernelPackage/3c59x
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
define KernelPackage/tg3
TITLE:=Broadcom Tigon3 Gigabit Ethernet
KCONFIG:=CONFIG_TIGON3
- DEPENDS:=+!TARGET_brcm47xx:kmod-libphy +!LINUX_3_3:kmod-hwmon-core +(!LINUX_3_3&&!LINUX_3_6):kmod-ptp
+ DEPENDS:=+!TARGET_brcm47xx:kmod-libphy +kmod-hwmon-core +kmod-ptp
SUBMENU:=$(NETWORK_DEVICES_MENU)
FILES:=$(LINUX_DIR)/drivers/net/ethernet/broadcom/tg3.ko
AUTOLOAD:=$(call AutoLoad,19,tg3,1)
endef
$(eval $(call KernelPackage,vmxnet3))
+
+
+define KernelPackage/spi-ks8995
+ SUBMENU:=$(NETWORK_DEVICES_MENU)
+ TITLE:=Micrel/Kendin KS8995 Ethernet switch control
+ FILES:=$(LINUX_DIR)/drivers/net/phy/spi_ks8995.ko
+ KCONFIG:=CONFIG_MICREL_KS8995MA \
+ CONFIG_SPI=y \
+ CONFIG_SPI_MASTER=y
+ AUTOLOAD:=$(call AutoLoad,50,spi_ks8995)
+endef
+
+define KernelPackage/spi-ks8995/description
+ Kernel module for Micrel/Kendin KS8995 ethernet switch
+endef
+
+$(eval $(call KernelPackage,spi-ks8995))
define KernelPackage/ipt-filter/description
Netfilter (IPv4) kernel modules for packet content inspection
Includes:
- - layer7
- string
endef
$(eval $(call KernelPackage,ipt-ipsec))
+IPSET_MODULES:= \
+ ipset/ip_set \
+ ipset/ip_set_bitmap_ip \
+ ipset/ip_set_bitmap_ipmac \
+ ipset/ip_set_bitmap_port \
+ ipset/ip_set_hash_ip \
+ ipset/ip_set_hash_ipmark \
+ ipset/ip_set_hash_ipport \
+ ipset/ip_set_hash_ipportip \
+ ipset/ip_set_hash_ipportnet \
+ ipset/ip_set_hash_mac \
+ ipset/ip_set_hash_netportnet \
+ ipset/ip_set_hash_net \
+ ipset/ip_set_hash_netnet \
+ ipset/ip_set_hash_netport \
+ ipset/ip_set_hash_netiface \
+ ipset/ip_set_list_set \
+ xt_set
+
+define KernelPackage/ipt-ipset
+ SUBMENU:=Netfilter Extensions
+ TITLE:=IPset netfilter modules
+ DEPENDS+= +kmod-ipt-core +kmod-nfnetlink
+ KCONFIG:= \
+ CONFIG_IP_SET \
+ CONFIG_IP_SET_MAX=256 \
+ CONFIG_NETFILTER_XT_SET \
+ CONFIG_IP_SET_BITMAP_IP \
+ CONFIG_IP_SET_BITMAP_IPMAC \
+ CONFIG_IP_SET_BITMAP_PORT \
+ CONFIG_IP_SET_HASH_IP \
+ CONFIG_IP_SET_HASH_IPMARK \
+ CONFIG_IP_SET_HASH_IPPORT \
+ CONFIG_IP_SET_HASH_IPPORTIP \
+ CONFIG_IP_SET_HASH_IPPORTNET \
+ CONFIG_IP_SET_HASH_MAC \
+ CONFIG_IP_SET_HASH_NET \
+ CONFIG_IP_SET_HASH_NETNET \
+ CONFIG_IP_SET_HASH_NETIFACE \
+ CONFIG_IP_SET_HASH_NETPORT \
+ CONFIG_IP_SET_HASH_NETPORTNET \
+ CONFIG_IP_SET_LIST_SET \
+ CONFIG_NET_EMATCH_IPSET=n
+ FILES:=$(foreach mod,$(IPSET_MODULES),$(LINUX_DIR)/net/netfilter/$(mod).ko)
+ AUTOLOAD:=$(call AutoLoad,49,$(notdir $(IPSET_MODULES)))
+endef
+$(eval $(call KernelPackage,ipt-ipset))
+
define KernelPackage/ipt-nat
TITLE:=Basic NAT targets
$(eval $(call KernelPackage,nf-nathelper-extra))
-define KernelPackage/ipt-queue
- TITLE:=Module for user-space packet queueing
- KCONFIG:=$(KCONFIG_IPT_QUEUE)
- DEPENDS:=@!LINUX_3_6
- FILES:=$(foreach mod,$(IPT_QUEUE-m),$(LINUX_DIR)/net/$(mod).ko)
- AUTOLOAD:=$(call AutoProbe,$(notdir $(IPT_QUEUE-m)))
- $(call AddDepends/ipt)
-endef
-
-define KernelPackage/ipt-queue/description
- Netfilter (IPv4) module for user-space packet queueing
- Includes:
- - QUEUE
-endef
-
-$(eval $(call KernelPackage,ipt-queue))
-
-
define KernelPackage/ipt-ulog
TITLE:=Module for user-space packet logging
KCONFIG:=$(KCONFIG_IPT_ULOG)
CONFIG_NETFILTER_XT_MATCH_SOCKET \
CONFIG_NETFILTER_XT_TARGET_TPROXY
FILES:= \
- $(if $(call kernel_patchver_lt,3.12),$(LINUX_DIR)/net/netfilter/nf_tproxy_core.ko) \
$(foreach mod,$(IPT_TPROXY-m),$(LINUX_DIR)/net/$(mod).ko)
AUTOLOAD:=$(call AutoProbe,$(notdir nf_tproxy_core $(IPT_TPROXY-m)))
$(call AddDepends/ipt)
define KernelPackage/nf-conntrack-netlink
TITLE:=Connection tracking netlink interface
FILES:=$(LINUX_DIR)/net/netfilter/nf_conntrack_netlink.ko
- KCONFIG:=CONFIG_NF_CT_NETLINK
+ KCONFIG:=CONFIG_NF_CT_NETLINK CONFIG_NF_CONNTRACK_EVENTS=y
AUTOLOAD:=$(call AutoProbe,nf_conntrack_netlink)
$(call AddDepends/nfnetlink,+kmod-ipt-conntrack)
endef
$(eval $(call KernelPackage,8021q))
+
+define KernelPackage/udptunnel4
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=IPv4 UDP tunneling support
+ KCONFIG:=CONFIG_NET_UDP_TUNNEL
+ FILES:=$(LINUX_DIR)/net/ipv4/udp_tunnel.ko
+ AUTOLOAD:=$(call AutoLoad,32,udp_tunnel)
+endef
+
+
+$(eval $(call KernelPackage,udptunnel4))
+
+define KernelPackage/udptunnel6
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=IPv6 UDP tunneling support
+ KCONFIG:=CONFIG_NET_UDP_TUNNEL
+ FILES:=$(LINUX_DIR)/net/ipv6/ip6_udp_tunnel.ko
+ AUTOLOAD:=$(call AutoLoad,32,ip6_udp_tunnel)
+endef
+
+$(eval $(call KernelPackage,udptunnel6))
+
+
define KernelPackage/vxlan
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Native VXLAN Kernel support
- DEPENDS:=+kmod-iptunnel
+ DEPENDS:= \
+ +kmod-iptunnel \
+ +kmod-udptunnel4 \
+ +IPV6:kmod-udptunnel6
KCONFIG:=CONFIG_VXLAN
FILES:=$(LINUX_DIR)/drivers/net/vxlan.ko
AUTOLOAD:=$(call AutoLoad,13,vxlan)
IPSEC-m:= \
- $(if $(CONFIG_LINUX_3_3),,xfrm/xfrm_algo) \
+ xfrm/xfrm_algo \
xfrm/xfrm_ipcomp \
xfrm/xfrm_user \
key/af_key \
$(eval $(call KernelPackage,iptunnel))
+define KernelPackage/ipvti
+ SUBMENU:=$(NETWORK_SUPPORT_MENU)
+ TITLE:=IP VTI (Virtual Tunnel Interface)
+ DEPENDS:=+kmod-iptunnel +kmod-iptunnel4 +kmod-ipsec4
+ KCONFIG:=CONFIG_NET_IPVTI
+ FILES:=$(LINUX_DIR)/net/ipv4/ip_vti.ko
+ AUTOLOAD:=$(call AutoLoad,33,ip_vti)
+endef
+
+define KernelPackage/ipvti/description
+ Kernel modules for IP VTI (Virtual Tunnel Interface)
+endef
+
+$(eval $(call KernelPackage,ipvti))
+
+
define KernelPackage/iptunnel4
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=IPv4 tunneling
define KernelPackage/gre6
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=GRE support over IPV6
- DEPENDS:=+kmod-ipv6 +kmod-iptunnel +kmod-ip6-tunnel @!LINUX_3_3 @!LINUX_3_6
+ DEPENDS:=+kmod-ipv6 +kmod-iptunnel +kmod-ip6-tunnel
KCONFIG:=CONFIG_IPV6_GRE
FILES:=$(LINUX_DIR)/net/ipv6/ip6_gre.ko
AUTOLOAD:=$(call AutoLoad,39,ip6_gre)
CONFIG_NET_SCH_TBF \
CONFIG_NET_SCH_SFQ \
CONFIG_NET_SCH_TEQL \
+ CONFIG_NET_SCH_FQ \
+ CONFIG_NET_SCH_PIE \
CONFIG_NET_CLS_BASIC \
CONFIG_NET_ACT_POLICE \
CONFIG_NET_ACT_IPT \
define KernelPackage/ax25
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=AX25 support
+ DEPENDS:=+kmod-lib-crc16
KCONFIG:= \
+ CONFIG_HAMRADIO=y \
CONFIG_AX25 \
CONFIG_MKISS
FILES:= \
$(LINUX_DIR)/net/ax25/ax25.ko \
$(LINUX_DIR)/drivers/net/hamradio/mkiss.ko
AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
- $(call AddDepends/crc16)
endef
define KernelPackage/ax25/description
$(eval $(call KernelPackage,ax25))
-define KernelPackage/mp-alg
- SUBMENU:=$(NETWORK_SUPPORT_MENU)
- TITLE:=ECMP caching algorithms
- KCONFIG:= \
- CONFIG_IP_ROUTE_MULTIPATH_RR \
- CONFIG_IP_ROUTE_MULTIPATH_RANDOM \
- CONFIG_IP_ROUTE_MULTIPATH_WRANDOM \
- CONFIG_IP_ROUTE_MULTIPATH_DRR
- FILES:= \
- $(LINUX_DIR)/net/ipv4/multipath_rr.ko \
- $(LINUX_DIR)/net/ipv4/multipath_random.ko \
- $(LINUX_DIR)/net/ipv4/multipath_wrandom.ko \
- $(LINUX_DIR)/net/ipv4/multipath_drr.ko
- AUTOLOAD:=$(call AutoLoad,35,multipath_rr multipath_random multipath_wrandom multipath_drr)
-endef
-
-define KernelPackage/mp-alg/description
- Kernel modules that provide several different algorithms for multipath
- route selection from the route cache. The iproute "mpath" argument allows
- specifying which algorithm to use for routes.
- quagga (at least <=0.99.6) requires a multipath patch to support this
- cached mp route feature.
-endef
-
-$(eval $(call KernelPackage,mp-alg))
-
-
define KernelPackage/pktgen
SUBMENU:=$(NETWORK_SUPPORT_MENU)
DEPENDS:=@!TARGET_uml
define KernelPackage/l2tp
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Layer Two Tunneling Protocol (L2TP)
- DEPENDS:=+IPV6:kmod-ipv6
+ DEPENDS:= \
+ +IPV6:kmod-ipv6 \
+ +kmod-udptunnel4 \
+ +IPV6:kmod-udptunnel6
KCONFIG:=CONFIG_L2TP \
CONFIG_L2TP_V3=y \
CONFIG_L2TP_DEBUGFS=n
define KernelPackage/l2tp-ip
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=L2TP IP encapsulation for L2TPv3
- DEPENDS:=+kmod-l2tp
+ DEPENDS:=+kmod-l2tp +IPV6:kmod-ipv6
KCONFIG:=CONFIG_L2TP_IP
- FILES:=$(LINUX_DIR)/net/l2tp/l2tp_ip.ko
- AUTOLOAD:=$(call AutoLoad,33,l2tp_ip)
+ FILES:= \
+ $(LINUX_DIR)/net/l2tp/l2tp_ip.ko \
+ $(if $(CONFIG_IPV6),$(LINUX_DIR)/net/l2tp/l2tp_ip6.ko)
+ AUTOLOAD:=$(call AutoLoad,33,l2tp_ip $(if $(CONFIG_IPV6),l2tp_ip6))
endef
define KernelPackage/l2tp-ip/description
#
-# Copyright (C) 2006-2012 OpenWrt.org
+# Copyright (C) 2006-2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
WATCHDOG_DIR:=watchdog
-define KernelPackage/6lowpan-iphc
- USBMENU:=$(OTHER_MENU)
- TITLE:=6lowpan shared code
- DEPENDS:=@!LINUX_3_3 @!LINUX_3_8 @!LINUX_3_10 @!LINUX_3_13
- KCONFIG:=CONFIG_6LOWPAN_IPHC
- HIDDEN:=1
- FILES:=$(LINUX_DIR)/net/ieee802154/6lowpan_iphc.ko
- AUTOLOAD:=$(call Autoprobe,6lowpan_iphc)
+define KernelPackage/6lowpan
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=6LoWPAN shared code
+ KCONFIG:= \
+ CONFIG_6LOWPAN \
+ CONFIG_6LOWPAN_NHC=n
+ FILES:=$(LINUX_DIR)/net/6lowpan/6lowpan.ko
+ AUTOLOAD:=$(call AutoProbe,6lowpan)
endef
-define KernelPackage/6lowpan-iphc/description
+define KernelPackage/6lowpan/description
Shared 6lowpan code for IEEE 802.15.4 and Bluetooth.
endef
-$(eval $(call KernelPackage,6lowpan-iphc))
+$(eval $(call KernelPackage,6lowpan))
+
define KernelPackage/bluetooth
SUBMENU:=$(OTHER_MENU)
TITLE:=Bluetooth support
- DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-crypto-hash +(!LINUX_3_3&&!LINUX_3_8&&!LINUX_3_10&&!LINUX_3_13):kmod-6lowpan-iphc
+ DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-crypto-hash +kmod-crypto-ecb +kmod-lib-crc16 +kmod-hid +!LINUX_3_18:kmod-crypto-cmac
KCONFIG:= \
CONFIG_BLUEZ \
CONFIG_BLUEZ_L2CAP \
CONFIG_BLUEZ_HCIUSB \
CONFIG_BLUEZ_HIDP \
CONFIG_BT \
+ CONFIG_BT_BREDR=y \
+ CONFIG_BT_DEBUGFS=n \
CONFIG_BT_L2CAP=y \
+ CONFIG_BT_LE=y \
CONFIG_BT_SCO=y \
CONFIG_BT_RFCOMM \
CONFIG_BT_BNEP \
CONFIG_BT_HCIBTUSB \
+ CONFIG_BT_HCIBTUSB_BCM=n \
CONFIG_BT_HCIUSB \
CONFIG_BT_HCIUART \
+ CONFIG_BT_HCIUART_BCM=n \
+ CONFIG_BT_HCIUART_INTEL=n \
CONFIG_BT_HCIUART_H4 \
CONFIG_BT_HIDP \
CONFIG_HID_SUPPORT=y
- $(call AddDepends/crc16)
- $(call AddDepends/hid)
$(call AddDepends/rfkill)
FILES:= \
$(LINUX_DIR)/net/bluetooth/bluetooth.ko \
$(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
$(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
$(LINUX_DIR)/drivers/bluetooth/btusb.ko
+ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,4.1.0)),1)
+ FILES+= \
+ $(LINUX_DIR)/drivers/bluetooth/btintel.ko
+endif
AUTOLOAD:=$(call AutoProbe,bluetooth rfcomm bnep hidp hci_uart btusb)
endef
$(eval $(call KernelPackage,bluetooth))
+define KernelPackage/bluetooth_6lowpan
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Bluetooth 6LoWPAN support
+ DEPENDS:=+kmod-6lowpan +kmod-bluetooth
+ KCONFIG:=CONFIG_BT_6LOWPAN
+ FILES:=$(LINUX_DIR)/net/bluetooth/bluetooth_6lowpan.ko
+ AUTOLOAD:=$(call AutoProbe,bluetooth_6lowpan)
+endef
+
+define KernelPackage/bluetooth_6lowpan/description
+ Kernel support for 6LoWPAN over Bluetooth Low Energy devices
+endef
+
+$(eval $(call KernelPackage,bluetooth_6lowpan))
+
+
define KernelPackage/bluetooth-hci-h4p
SUBMENU:=$(OTHER_MENU)
TITLE:=HCI driver with H4 Nokia extensions
define KernelPackage/iio-core
SUBMENU:=$(OTHER_MENU)
- DEPENDS:=@!LINUX_3_3 @!LINUX_3_6
TITLE:=Industrial IO core
KCONFIG:= \
CONFIG_IIO \
KCONFIG:= \
CONFIG_AD799X_RING_BUFFER=y \
CONFIG_AD799X
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.16.0)),1)
FILES:=$(LINUX_DIR)/drivers/iio/adc/ad799x.ko
-else
- FILES:=$(LINUX_DIR)/drivers/staging/iio/adc/ad799x.ko
-endif
AUTOLOAD:=$(call AutoLoad,56,ad799x)
endef
define KernelPackage/lp
SUBMENU:=$(OTHER_MENU)
TITLE:=Parallel port and line printer support
- DEPENDS:=@BROKEN
KCONFIG:= \
CONFIG_PARPORT \
CONFIG_PRINTER \
$(LINUX_DIR)/drivers/parport/parport.ko \
$(LINUX_DIR)/drivers/char/lp.ko \
$(LINUX_DIR)/drivers/char/ppdev.ko
- AUTOLOAD:=$(call AutoLoad,50,parport lp)
+ AUTOLOAD:=$(call AutoLoad,50,parport lp ppdev)
endef
$(eval $(call KernelPackage,lp))
$(eval $(call KernelPackage,softdog))
+define KernelPackage/ssb
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Silicon Sonics Backplane glue code
+ DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_brcm63xx
+ KCONFIG:=\
+ CONFIG_SSB \
+ CONFIG_SSB_B43_PCI_BRIDGE=y \
+ CONFIG_SSB_DRIVER_MIPS=n \
+ CONFIG_SSB_DRIVER_PCICORE=y \
+ CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y \
+ CONFIG_SSB_PCIHOST=y \
+ CONFIG_SSB_PCIHOST_POSSIBLE=y \
+ CONFIG_SSB_POSSIBLE=y \
+ CONFIG_SSB_SPROM=y \
+ CONFIG_SSB_SILENT=y
+ FILES:=$(LINUX_DIR)/drivers/ssb/ssb.ko
+ AUTOLOAD:=$(call AutoLoad,18,ssb,1)
+endef
+
+define KernelPackage/ssb/description
+ Silicon Sonics Backplane glue code.
+endef
+
+$(eval $(call KernelPackage,ssb))
+
+
+define KernelPackage/bcma
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=BCMA support
+ DEPENDS:=@PCI_SUPPORT @!TARGET_brcm47xx @!TARGET_bcm53xx
+ KCONFIG:=\
+ CONFIG_BCMA \
+ CONFIG_BCMA_POSSIBLE=y \
+ CONFIG_BCMA_BLOCKIO=y \
+ CONFIG_BCMA_HOST_PCI_POSSIBLE=y \
+ CONFIG_BCMA_HOST_PCI=y \
+ CONFIG_BCMA_HOST_SOC=n \
+ CONFIG_BCMA_DRIVER_MIPS=n \
+ CONFIG_BCMA_DRIVER_PCI_HOSTMODE=n \
+ CONFIG_BCMA_DRIVER_GMAC_CMN=n \
+ CONFIG_BCMA_DEBUG=n
+ FILES:=$(LINUX_DIR)/drivers/bcma/bcma.ko
+ AUTOLOAD:=$(call AutoLoad,29,bcma)
+endef
+
+define KernelPackage/bcma/description
+ Bus driver for Broadcom specific Advanced Microcontroller Bus Architecture
+endef
+
+$(eval $(call KernelPackage,bcma))
+
+
define KernelPackage/wdt-omap
SUBMENU:=$(OTHER_MENU)
TITLE:=OMAP Watchdog timer
DEPENDS:=@(TARGET_omap24xx||TARGET_omap35xx)
KCONFIG:=CONFIG_OMAP_WATCHDOG
FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/omap_wdt.ko
- AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko)
+ AUTOLOAD:=$(call AutoLoad,50,omap_wdt.ko,1)
endef
define KernelPackage/wdt-omap/description
DEPENDS:=@TARGET_orion||TARGET_kirkwood||TARGET_mvebu
KCONFIG:=CONFIG_ORION_WATCHDOG
FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/orion_wdt.ko
- AUTOLOAD:=$(call AutoLoad,50,orion_wdt)
+ AUTOLOAD:=$(call AutoLoad,50,orion_wdt,1)
endef
define KernelPackage/wdt-orion/description
DEPENDS:=@(TARGET_mpc85xx||TARGET_ppc40x||TARGET_ppc44x)
KCONFIG:=CONFIG_BOOKE_WDT
FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/booke_wdt.ko
- AUTOLOAD:=$(call AutoLoad,50,booke_wdt)
+ AUTOLOAD:=$(call AutoLoad,50,booke_wdt,1)
endef
define KernelPackage/booke-wdt/description
$(eval $(call KernelPackage,booke-wdt))
-define KernelPackage/pwm
- SUBMENU:=$(OTHER_MENU)
- TITLE:=PWM generic API
- KCONFIG:=CONFIG_GENERIC_PWM
- FILES:=$(LINUX_DIR)/drivers/pwm/pwm.ko
-endef
-
-define KernelPackage/pwm/description
- Kernel module that implement a generic PWM API
-endef
-
-$(eval $(call KernelPackage,pwm))
-
-
define KernelPackage/rtc-ds1307
SUBMENU:=$(OTHER_MENU)
TITLE:=Dallas/Maxim DS1307 (and compatible) RTC support
- $(call AddDepends/rtc)
- DEPENDS+=+kmod-i2c-core
+ DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
KCONFIG:=CONFIG_RTC_DRV_DS1307
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1307.ko
AUTOLOAD:=$(call AutoProbe,rtc-ds1307)
define KernelPackage/rtc-ds1672
SUBMENU:=$(OTHER_MENU)
TITLE:=Dallas/Maxim DS1672 RTC support
- $(call AddDepends/rtc)
- DEPENDS+=+kmod-i2c-core
+ DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
KCONFIG:=CONFIG_RTC_DRV_DS1672
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-ds1672.ko
AUTOLOAD:=$(call AutoProbe,rtc-ds1672)
define KernelPackage/rtc-isl1208
SUBMENU:=$(OTHER_MENU)
TITLE:=Intersil ISL1208 RTC support
- $(call AddDepends/rtc)
- DEPENDS+=+kmod-i2c-core
+ DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
KCONFIG:=CONFIG_RTC_DRV_ISL1208
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-isl1208.ko
AUTOLOAD:=$(call AutoProbe,rtc-isl1208)
define KernelPackage/rtc-marvell
SUBMENU:=$(OTHER_MENU)
TITLE:=Marvell SoC built-in RTC support
- $(call AddDepends/rtc)
- DEPENDS+=@TARGET_kirkwood||TARGET_orion||TARGET_mvebu
+ DEPENDS:=@RTC_SUPPORT @TARGET_kirkwood||TARGET_orion||TARGET_mvebu
KCONFIG:=CONFIG_RTC_DRV_MV
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-mv.ko
AUTOLOAD:=$(call AutoProbe,rtc-mv)
$(eval $(call KernelPackage,rtc-marvell))
+
+define KernelPackage/rtc-armada38x
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Marvell Armada 38x SoC built-in RTC support
+ DEPENDS:=@RTC_SUPPORT @TARGET_mvebu
+ KCONFIG:=CONFIG_RTC_DRV_ARMADA38X
+ FILES:=$(LINUX_DIR)/drivers/rtc/rtc-armada38x.ko
+ AUTOLOAD:=$(call AutoProbe,rtc-armada38x)
+endef
+
+define KernelPackage/rtc-armada38x/description
+ Kernel module for Marvell Armada 38x SoC built-in RTC.
+endef
+
+$(eval $(call KernelPackage,rtc-armada38x))
+
+
define KernelPackage/rtc-pcf8563
SUBMENU:=$(OTHER_MENU)
TITLE:=Philips PCF8563/Epson RTC8564 RTC support
- $(call AddDepends/rtc,+kmod-i2c-core)
+ DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
KCONFIG:=CONFIG_RTC_DRV_PCF8563
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
AUTOLOAD:=$(call AutoProbe,rtc-pcf8563)
define KernelPackage/rtc-pcf2123
SUBMENU:=$(OTHER_MENU)
TITLE:=Philips PCF2123 RTC support
- $(call AddDepends/rtc)
+ DEPENDS:=@RTC_SUPPORT
KCONFIG:=CONFIG_RTC_DRV_PCF2123
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf2123.ko
AUTOLOAD:=$(call AutoProbe,rtc-pcf2123)
define KernelPackage/rtc-pt7c4338
SUBMENU:=$(OTHER_MENU)
TITLE:=Pericom PT7C4338 RTC support
- $(call AddDepends/rtc,+kmod-i2c-core)
+ DEPENDS:=@RTC_SUPPORT +kmod-i2c-core
KCONFIG:=CONFIG_RTC_DRV_PT7C4338
FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pt7c4338.ko
AUTOLOAD:=$(call AutoProbe,rtc-pt7c4338)
SUBMENU:=$(OTHER_MENU)
TITLE:=MTD subsystem tests
KCONFIG:=CONFIG_MTD_TESTS
- DEPENDS:=+kmod-nand
FILES:=\
$(LINUX_DIR)/drivers/mtd/tests/mtd_nandecctest.ko \
$(LINUX_DIR)/drivers/mtd/tests/mtd_oobtest.ko \
$(eval $(call KernelPackage,mtdtests))
-define KernelPackage/nand
- SUBMENU:=$(OTHER_MENU)
- TITLE:=NAND flash support
- KCONFIG:=CONFIG_MTD_NAND \
- CONFIG_MTD_NAND_IDS \
- CONFIG_MTD_NAND_ECC
- FILES:= \
- $(LINUX_DIR)/drivers/mtd/nand/nand_ids.ko \
- $(LINUX_DIR)/drivers/mtd/nand/nand_ecc.ko \
- $(LINUX_DIR)/drivers/mtd/nand/nand.ko
- AUTOLOAD:=$(call AutoLoad,20,nand_ids nand_ecc nand)
-endef
-
-define KernelPackage/nand/description
- Kernel module for NAND support
-endef
-
-$(eval $(call KernelPackage,nand))
-
-
-define KernelPackage/nandsim
- SUBMENU:=$(OTHER_MENU)
- TITLE:=NAND simulator
- DEPENDS:=+kmod-nand
- KCONFIG:=CONFIG_MTD_NAND_NANDSIM
- FILES:=$(LINUX_DIR)/drivers/mtd/nand/nandsim.ko
-endef
-
-define KernelPackage/nandsim/description
- Kernel module for NAND flash simulation.
-endef
-
-$(eval $(call KernelPackage,nandsim))
-
define KernelPackage/serial-8250
SUBMENU:=$(OTHER_MENU)
TITLE:=8250 UARTs
CONFIG_SERIAL_8250_SHARE_IRQ=y \
CONFIG_SERIAL_8250_DETECT_IRQ=n \
CONFIG_SERIAL_8250_RSA=n
- FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250$(if $(call kernel_patchver_ge,3.7),$(if $(call kernel_patchver_le,3.8),_core)).ko
+ FILES:=$(LINUX_DIR)/drivers/tty/serial/8250/8250.ko
endef
define KernelPackage/serial-8250/description
TITLE:=Generic register map support
DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
KCONFIG:=CONFIG_REGMAP \
+ CONFIG_REGMAP_MMIO \
CONFIG_REGMAP_SPI \
CONFIG_REGMAP_I2C \
CONFIG_SPI=y
FILES:= \
$(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
+ $(LINUX_DIR)/drivers/base/regmap/regmap-mmio.ko \
$(if $(CONFIG_SPI),$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko)
- AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-spi)
+ AUTOLOAD:=$(call AutoLoad,21,regmap-core regmap-i2c regmap-mmio regmap-spi)
endef
define KernelPackage/regmap/description
define KernelPackage/zram
SUBMENU:=$(OTHER_MENU)
TITLE:=ZRAM
- DEPENDS:=@!LINUX_3_3 +kmod-lib-lzo
+ DEPENDS:=+kmod-lib-lzo +kmod-lib-lz4
KCONFIG:= \
CONFIG_ZSMALLOC \
CONFIG_ZRAM \
CONFIG_ZRAM_DEBUG=n \
CONFIG_PGTABLE_MAPPING=n \
+ CONFIG_ZSMALLOC_STAT=n \
CONFIG_ZRAM_LZ4_COMPRESS=y
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.14.0)),1)
- FILES:=\
+ FILES:= \
$(LINUX_DIR)/mm/zsmalloc.ko \
$(LINUX_DIR)/drivers/block/zram/zram.ko
-else
- FILES:= \
- $(LINUX_DIR)/drivers/staging/zsmalloc/zsmalloc.ko \
- $(LINUX_DIR)/drivers/staging/zram/zram.ko
-endif
AUTOLOAD:=$(call AutoLoad,20,zsmalloc zram)
endef
define KernelPackage/gpio-beeper
SUBMENU:=$(OTHER_MENU)
TITLE:=GPIO beeper support
+ DEPENDS:=+kmod-input-core
KCONFIG:= \
CONFIG_INPUT_MISC=y \
CONFIG_INPUT_GPIO_BEEPER
FILES:= \
$(LINUX_DIR)/drivers/input/misc/gpio-beeper.ko
AUTOLOAD:=$(call AutoLoad,50,gpio-beeper)
- $(call AddDepends/input)
endef
define KernelPackage/gpio-beeper/description
endef
$(eval $(call KernelPackage,gpio-beeper))
+
+
+define KernelPackage/echo
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Line Echo Canceller
+ KCONFIG:=CONFIG_ECHO
+ FILES:=$(LINUX_DIR)/drivers/misc/echo/echo.ko
+ AUTOLOAD:=$(call AutoLoad,50,echo)
+endef
+
+define KernelPackage/echo/description
+ This driver provides line echo cancelling support for mISDN and
+ DAHDI drivers
+endef
+
+$(eval $(call KernelPackage,echo))
snd-timer \
snd-pcm \
snd-mixer-oss \
- snd-pcm-oss
+ snd-pcm-oss \
+ snd-compress
SOUNDCORE_FILES ?= \
$(LINUX_DIR)/sound/soundcore.ko \
$(LINUX_DIR)/sound/core/snd-timer.ko \
$(LINUX_DIR)/sound/core/snd-pcm.ko \
$(LINUX_DIR)/sound/core/oss/snd-mixer-oss.ko \
- $(LINUX_DIR)/sound/core/oss/snd-pcm-oss.ko
-
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.3.0)),1)
-SOUNDCORE_LOAD += \
- snd-compress
-
-SOUNDCORE_FILES += \
+ $(LINUX_DIR)/sound/core/oss/snd-pcm-oss.ko \
$(LINUX_DIR)/sound/core/snd-compress.ko
-endif
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.12.0)),1)
SOUNDCORE_LOAD += \
$(if $(CONFIG_SND_DMAENGINE_PCM),snd-pcm-dmaengine)
SOUNDCORE_FILES += \
$(if $(CONFIG_SND_DMAENGINE_PCM),$(LINUX_DIR)/sound/core/snd-pcm-dmaengine.ko)
-endif
-
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.14.0)),1)
-SOUNDCORE_LOAD += \
- snd-page-alloc
-
-SOUNDCORE_FILES += \
- $(LINUX_DIR)/sound/core/snd-page-alloc.ko
-endif
define KernelPackage/sound-core
SUBMENU:=$(SOUND_MENU)
TITLE:=Sound support
- DEPENDS:=@AUDIO_SUPPORT
+ DEPENDS:=@AUDIO_SUPPORT +kmod-input-core
KCONFIG:= \
CONFIG_SOUND \
CONFIG_SND \
CONFIG_SND_COMPRESS_OFFLOAD
FILES:=$(SOUNDCORE_FILES)
AUTOLOAD:=$(call AutoLoad,30,$(SOUNDCORE_LOAD))
- $(call AddDepends/input)
endef
define KernelPackage/sound-core/uml
$(eval $(call KernelPackage,sound-i8x0))
-define KernelPackage/sound-cs5535audio
- TITLE:=CS5535 PCI Controller
- DEPENDS:=+kmod-ac97
- KCONFIG:=CONFIG_SND_CS5535AUDIO
- FILES:=$(LINUX_DIR)/sound/pci/cs5535audio/snd-cs5535audio.ko
- AUTOLOAD:=$(call AutoLoad,36,snd-cs5535audio)
- $(call AddDepends/sound)
-endef
-
-define KernelPackage/sound-cs5535audio/description
- Support for the integrated AC97 sound device on olpc
-endef
-
-$(eval $(call KernelPackage,sound-cs5535audio))
-
-
define KernelPackage/sound-soc-core
TITLE:=SoC sound support
DEPENDS:=+kmod-regmap +kmod-ac97
KCONFIG:=CONFIG_SND_SOC_AC97_CODEC
FILES:=$(LINUX_DIR)/sound/soc/codecs/snd-soc-ac97.ko
AUTOLOAD:=$(call AutoLoad,57,snd-soc-ac97)
- DEPENDS:=+kmod-ac97 +kmod-sound-soc-core +TARGET_ep93xx:kmod-sound-soc-ep93xx-ac97
+ DEPENDS:=+kmod-ac97 +kmod-sound-soc-core
$(call AddDepends/sound)
endef
define KernelPackage/sound-soc-imx
TITLE:=IMX SoC support
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.12.0)),1)
- KCONFIG:=\
- CONFIG_SND_IMX_SOC \
- CONFIG_SND_SOC_IMX_AUDMUX \
- CONFIG_SND_SOC_FSL_SSI \
- CONFIG_SND_SOC_IMX_PCM
- FILES:= \
- $(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-audmux.ko \
- $(LINUX_DIR)/sound/soc/fsl/snd-soc-fsl-ssi.ko \
- $(LINUX_DIR)/sound/soc/fsl/snd-soc-imx-pcm.ko
- AUTOLOAD:=$(call AutoLoad,56,snd-soc-imx-audmux snd-soc-fsl-ssi snd-soc-imx-pcm)
-else
KCONFIG:=\
CONFIG_SND_IMX_SOC \
CONFIG_SND_SOC_IMX_AUDMUX \
$(LINUX_DIR)/sound/soc/fsl/snd-soc-fsl-ssi.ko \
$(LINUX_DIR)/sound/soc/fsl/imx-pcm-dma.ko
AUTOLOAD:=$(call AutoLoad,56,snd-soc-imx-audmux snd-soc-fsl-ssi snd-soc-imx-pcm)
-endif
DEPENDS:=@TARGET_imx6 +kmod-sound-soc-core
$(call AddDepends/sound)
endef
define KernelPackage/pcspkr
- DEPENDS:=@TARGET_x86
+ DEPENDS:=@TARGET_x86 +kmod-input-core
TITLE:=PC speaker support
KCONFIG:= \
CONFIG_INPUT_PCSPKR \
$(LINUX_DIR)/drivers/input/misc/pcspkr.ko \
$(LINUX_DIR)/sound/drivers/pcsp/snd-pcsp.ko
AUTOLOAD:=$(call AutoLoad,50,pcspkr snd-pcsp)
- $(call AddDepends/input)
$(call AddDepends/sound)
endef
TITLE:=Support for USB
DEPENDS:=@USB_SUPPORT
KCONFIG:=CONFIG_USB CONFIG_XPS_USB_HCD_XILINX=n CONFIG_USB_FHCI_HCD=n
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.16.0)),1)
FILES:= \
$(LINUX_DIR)/drivers/usb/core/usbcore.ko \
$(LINUX_DIR)/drivers/usb/common/usb-common.ko
-else
- FILES:= \
- $(LINUX_DIR)/drivers/usb/core/usbcore.ko \
- $(LINUX_DIR)/drivers/usb/usb-common.ko
-endif
AUTOLOAD:=$(call AutoLoad,20,usb-common usbcore,1)
$(call AddDepends/nls)
endef
TITLE:=Support for USB NOP transceiver
KCONFIG:=CONFIG_NOP_USB_XCEIV
HIDDEN:=1
-ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/phy/phy-generic.ko),)
FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-generic.ko
AUTOLOAD:=$(call AutoLoad,43,phy-generic)
-else
-ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/phy/phy-nop.ko),)
- FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-nop.ko
- AUTOLOAD:=$(call AutoLoad,43,phy-nop)
-else
- FILES:=$(LINUX_DIR)/drivers/usb/otg/nop-usb-xceiv.ko
- AUTOLOAD:=$(call AutoLoad,43,nop-usb-xceiv)
-endif
-endif
$(call AddDepends/usb)
endef
TITLE:=Support for OMAP2 USB PHY
KCONFIG:= \
CONFIG_OMAP_USB2 \
- CONFIG_OMAP_CONTROL_USB
+ CONFIG_OMAP_CONTROL_PHY
DEPENDS:=@TARGET_omap
FILES:= \
$(LINUX_DIR)/drivers/phy/phy-omap-usb2.ko \
- $(LINUX_DIR)/drivers/usb/phy/phy-omap-control.ko
+ $(LINUX_DIR)/drivers/phy/phy-omap-control.ko
AUTOLOAD:=$(call AutoLoad,45,phy-omap-control phy-omap-usb2)
$(call AddDepends/usb)
endef
define KernelPackage/usb-gadget
TITLE:=USB Gadget support
KCONFIG:=CONFIG_USB_GADGET
- FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc-core.ko
+ FILES:=\
+ $(LINUX_DIR)/drivers/usb/gadget/udc/udc-core.ko
AUTOLOAD:=$(call AutoLoad,45,udc-core)
DEPENDS:=@USB_GADGET_SUPPORT
$(call AddDepends/usb)
define KernelPackage/usb-lib-composite
TITLE:=USB lib composite
KCONFIG:=CONFIG_USB_LIBCOMPOSITE
- DEPENDS:=+kmod-usb-gadget +kmod-fs-configfs @!LINUX_3_3 @!LINUX_3_6
+ DEPENDS:=+kmod-usb-gadget +kmod-fs-configfs
FILES:=$(LINUX_DIR)/drivers/usb/gadget/libcomposite.ko
AUTOLOAD:=$(call AutoLoad,50,libcomposite)
$(call AddDepends/usb)
CONFIG_USB_ETH \
CONFIG_USB_ETH_RNDIS=y \
CONFIG_USB_ETH_EEM=n
- DEPENDS:=+kmod-usb-gadget +(!LINUX_3_3&&!LINUX_3_6):kmod-usb-lib-composite
-ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko),)
+ DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
FILES:= \
- $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko \
- $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm.ko \
- $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm_subset.ko \
- $(LINUX_DIR)/drivers/usb/gadget/usb_f_rndis.ko \
- $(LINUX_DIR)/drivers/usb/gadget/g_ether.ko
- ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko),)
- FILES+=$(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko
- endif
+ $(LINUX_DIR)/drivers/usb/gadget/function/u_ether.ko \
+ $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm.ko \
+ $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm_subset.ko \
+ $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_rndis.ko \
+ $(LINUX_DIR)/drivers/usb/gadget/legacy/g_ether.ko
AUTOLOAD:=$(call AutoLoad,52,usb_f_ecm g_ether)
-else
- FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_ether.ko
- AUTOLOAD:=$(call AutoLoad,52,g_ether)
-endif
$(call AddDepends/usb)
endef
define KernelPackage/usb-serial-gadget
TITLE:=USB Serial Gadget support
KCONFIG:=CONFIG_USB_G_SERIAL
- DEPENDS:=+kmod-usb-gadget +(!LINUX_3_3&&!LINUX_3_6):kmod-usb-lib-composite
-ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko),)
+ DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite
FILES:= \
- $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko \
- $(LINUX_DIR)/drivers/usb/gadget/usb_f_acm.ko \
- $(LINUX_DIR)/drivers/usb/gadget/usb_f_obex.ko \
- $(LINUX_DIR)/drivers/usb/gadget/usb_f_serial.ko \
- $(LINUX_DIR)/drivers/usb/gadget/g_serial.ko
+ $(LINUX_DIR)/drivers/usb/gadget/function/u_serial.ko \
+ $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_acm.ko \
+ $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_obex.ko \
+ $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_serial.ko \
+ $(LINUX_DIR)/drivers/usb/gadget/legacy/g_serial.ko
AUTOLOAD:=$(call AutoLoad,52,usb_f_acm g_serial)
-else
- FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_serial.ko
- AUTOLOAD:=$(call AutoLoad,52,g_serial)
-endif
$(call AddDepends/usb)
endef
define KernelPackage/usb-ohci
TITLE:=Support for OHCI controllers
- DEPENDS:=+TARGET_brcm47xx:kmod-usb-brcm47xx
+ DEPENDS:= \
+ +TARGET_bcm53xx:kmod-usb-bcma \
+ +TARGET_brcm47xx:kmod-usb-bcma \
+ +TARGET_brcm47xx:kmod-usb-ssb
KCONFIG:= \
CONFIG_USB_OHCI \
CONFIG_USB_OHCI_HCD \
CONFIG_USB_OCTEON_OHCI=y \
CONFIG_USB_OHCI_HCD_OMAP3=y \
CONFIG_USB_OHCI_HCD_PLATFORM=y
- FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.11.0)),1)
- FILES+=$(LINUX_DIR)/drivers/usb/host/ohci-platform.ko
-endif
- AUTOLOAD:=$(call AutoLoad,50,ohci-hcd ohci-platform,1)
+ FILES:= \
+ $(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko \
+ $(LINUX_DIR)/drivers/usb/host/ohci-platform.ko
+ ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ohci-at91.ko),)
+ FILES+=$(LINUX_DIR)/drivers/usb/host/ohci-at91.ko
+ endif
+ AUTOLOAD:=$(call AutoLoad,50,ohci-hcd ohci-platform ohci-at91,1)
$(call AddDepends/usb)
endef
$(eval $(call KernelPackage,usb-ohci,1))
+define KernelPackage/usb-ohci-pci
+ TITLE:=Support for PCI OHCI controllers
+ DEPENDS:=@PCI_SUPPORT +kmod-usb-ohci
+ KCONFIG:=CONFIG_USB_OHCI_HCD_PCI
+ FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-pci.ko
+ AUTOLOAD:=$(call AutoLoad,51,ohci-pci,1)
+ $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb-ohci-pci/description
+ Kernel support for PCI OHCI controllers
+endef
+
+$(eval $(call KernelPackage,usb-ohci-pci))
+
+
define KernelPackage/usb2-fsl
TITLE:=Support for Freescale USB2 controllers
DEPENDS:=@TARGET_mpc85xx
define KernelPackage/usb2-omap
TITLE:=Support for USB2 for OMAP
DEPENDS:=@TARGET_omap +kmod-usb-phy-nop +kmod-usb-phy-am335x +kmod-usb2
- KCONFIG:=CONFIG_USB_EHCI_HCD_OMAP
+ KCONFIG:=\
+ CONFIG_MFD_OMAP_USB_HOST=y \
+ CONFIG_USB_EHCI_HCD_OMAP
FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-omap.ko
AUTOLOAD:=$(call AutoLoad,39,ehci-omap)
$(call AddDepends/usb)
$(eval $(call KernelPackage,usb2-omap))
+define KernelPackage/usb-bcma
+ TITLE:=Support for BCMA USB controllers
+ DEPENDS:=@USB_SUPPORT @TARGET_brcm47xx||TARGET_bcm53xx
+ HIDDEN:=1
+ KCONFIG:=CONFIG_USB_HCD_BCMA
+ FILES:= \
+ $(if $(CONFIG_USB_HCD_BCMA),$(LINUX_DIR)/drivers/usb/host/bcma-hcd.ko)
+ AUTOLOAD:=$(call AutoLoad,19,$(if $(CONFIG_USB_HCD_BCMA),bcma-hcd),1)
+ $(call AddDepends/usb)
+endef
+$(eval $(call KernelPackage,usb-bcma))
+
+define KernelPackage/usb-ssb
+ TITLE:=Support for SSB USB controllers
+ DEPENDS:=@USB_SUPPORT @TARGET_brcm47xx
+ HIDDEN:=1
+ KCONFIG:=CONFIG_USB_HCD_SSB
+ FILES:= \
+ $(if $(CONFIG_USB_HCD_SSB),$(LINUX_DIR)/drivers/usb/host/ssb-hcd.ko)
+ AUTOLOAD:=$(call AutoLoad,19,$(if $(CONFIG_USB_HCD_SSB),ssb-hcd),1)
+ $(call AddDepends/usb)
+endef
+$(eval $(call KernelPackage,usb-ssb))
define KernelPackage/usb2
TITLE:=Support for USB2 controllers
DEPENDS:=\
- +TARGET_brcm47xx:kmod-usb-brcm47xx \
+ +TARGET_brcm47xx:kmod-usb-bcma \
+ +TARGET_brcm47xx:kmod-usb-ssb \
+ +TARGET_bcm53xx:kmod-usb-bcma \
+TARGET_mpc85xx:kmod-usb2-fsl
KCONFIG:=\
CONFIG_USB_EHCI_HCD \
CONFIG_USB_EHCI_MXC=y \
CONFIG_USB_OCTEON_EHCI=y \
CONFIG_USB_EHCI_HCD_ORION=y \
- CONFIG_USB_EHCI_HCD_PLATFORM=y
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.8.0)),1)
+ CONFIG_USB_EHCI_HCD_PLATFORM=y \
+ CONFIG_USB_EHCI_HCD_AT91=y
FILES:= \
$(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko \
$(LINUX_DIR)/drivers/usb/host/ehci-platform.ko
ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-orion.ko),)
FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-orion.ko
endif
- AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform ehci-orion,1)
-else
- FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko
- AUTOLOAD:=$(call AutoLoad,40,ehci-hcd,1)
-endif
+ ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-atmel.ko),)
+ FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-atmel.ko
+ endif
+ AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform ehci-orion ehci-atmel,1)
$(call AddDepends/usb)
endef
define KernelPackage/usb2-pci
TITLE:=Support for PCI USB2 controllers
- DEPENDS:=@PCI_SUPPORT @(!LINUX_3_3&&!LINUX_3_6) +kmod-usb2
+ DEPENDS:=@PCI_SUPPORT +kmod-usb2
KCONFIG:=CONFIG_USB_EHCI_PCI
FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-pci.ko
AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1)
define KernelPackage/usb-dwc2
TITLE:=DWC2 USB controller driver
- DEPENDS:=@(!LINUX_3_3&&!LINUX_3_6&&!LINUX_3_8&&!LINUX_3_9)
+ DEPENDS:=+(TARGET_brcm2708||TARGET_at91||TARGET_brcm63xx||TARGET_mxs||TARGET_imx6):kmod-usb-gadget
KCONFIG:= \
CONFIG_USB_DWC2 \
+ CONFIG_USB_DWC2_PCI \
+ CONFIG_USB_DWC2_PLATFORM \
CONFIG_USB_DWC2_DEBUG=n \
CONFIG_USB_DWC2_VERBOSE=n \
CONFIG_USB_DWC2_TRACK_MISSED_SOFS=n
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.14.0)),1)
FILES:= \
$(LINUX_DIR)/drivers/usb/dwc2/dwc2.ko \
$(LINUX_DIR)/drivers/usb/dwc2/dwc2_platform.ko
-else
- FILES:= \
- $(LINUX_DIR)/drivers/staging/dwc2/dwc2.ko \
- $(LINUX_DIR)/drivers/staging/dwc2/dwc2_platform.ko
-endif
AUTOLOAD:=$(call AutoLoad,54,dwc2 dwc2_platform,1)
$(call AddDepends/usb)
endef
$(eval $(call KernelPackage,usb2-oxnas))
+define KernelPackage/usb-dwc3
+ TITLE:=DWC3 USB controller driver
+ KCONFIG:= \
+ CONFIG_USB_DWC3 \
+ CONFIG_USB_DWC3_HOST=y \
+ CONFIG_USB_DWC3_GADGET=n \
+ CONFIG_USB_DWC3_DUAL_ROLE=n \
+ CONFIG_USB_DWC3_DEBUG=n \
+ CONFIG_USB_DWC3_VERBOSE=n
+ FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3.ko
+ AUTOLOAD:=$(call AutoLoad,54,dwc3,1)
+ $(call AddDepends/usb)
+endef
+
+define KernelPackage/usb-dwc3/description
+ This driver provides support for the Dual Role SuperSpeed
+ USB Controller based on the Synopsys DesignWare USB3 IP Core
+endef
+
+$(eval $(call KernelPackage,usb-dwc3))
+
+
define KernelPackage/usb-acm
TITLE:=Support for modems/isdn controllers
KCONFIG:=CONFIG_USB_ACM
CONFIG_SND_USB_AUDIO
$(call AddDepends/usb)
$(call AddDepends/sound)
-# For Linux 2.6.35+
-ifneq ($(wildcard $(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko),)
FILES:= \
$(LINUX_DIR)/sound/usb/snd-usbmidi-lib.ko \
$(LINUX_DIR)/sound/usb/snd-usb-audio.ko
AUTOLOAD:=$(call AutoProbe,snd-usbmidi-lib snd-usb-audio)
-else
- FILES:= \
- $(LINUX_DIR)/sound/usb/snd-usb-lib.ko \
- $(LINUX_DIR)/sound/usb/snd-usb-audio.ko
- AUTOLOAD:=$(call AutoProbe,snd-usb-lib snd-usb-audio)
-endif
endef
define KernelPackage/usb-audio/description
$(eval $(call KernelPackage,usb-serial-ftdi))
+define KernelPackage/usb-serial-garmin
+ TITLE:=Support for Garmin GPS devices
+ KCONFIG:=CONFIG_USB_SERIAL_GARMIN
+ FILES:=$(LINUX_DIR)/drivers/usb/serial/garmin_gps.ko
+ AUTOLOAD:=$(call AutoProbe,garmin_gps)
+ $(call AddDepends/usb-serial)
+endef
+
+define KernelPackage/usb-serial-garmin/description
+ Should work with most Garmin GPS devices which have a native USB port.
+endef
+
+$(eval $(call KernelPackage,usb-serial-garmin))
+
+
+define KernelPackage/usb-serial-simple
+ TITLE:=USB Serial Simple (Motorola phone)
+ KCONFIG:=CONFIG_USB_SERIAL_SIMPLE
+ FILES:=$(LINUX_DIR)/drivers/usb/serial/usb-serial-simple.ko
+ AUTOLOAD:=$(call AutoProbe,usb-serial-simple)
+ $(call AddDepends/usb-serial)
+endef
+
+define KernelPackage/usb-serial-simple/description
+ Kernel support for "very simple devices".
+
+Specifically, it supports:
+ - Suunto ANT+ USB device.
+ - Medtronic CareLink USB device (3.18)
+ - Fundamental Software dongle.
+ - Google USB serial devices (3.19)
+ - HP4x calculators
+ - a number of Motorola phones
+ - Novatel Wireless GPS receivers (3.18)
+ - Siemens USB/MPI adapter.
+ - ViVOtech ViVOpay USB device.
+ - Infineon Modem Flashloader USB interface
+ - ZIO Motherboard USB serial interface
+endef
+
+$(eval $(call KernelPackage,usb-serial-simple))
+
+
define KernelPackage/usb-serial-ti-usb
TITLE:=Support for TI USB 3410/5052
KCONFIG:=CONFIG_USB_SERIAL_TI
$(eval $(call KernelPackage,usb-serial-sierrawireless))
-define KernelPackage/usb-serial-motorola-phone
- TITLE:=Support for Motorola usb phone
- KCONFIG:=CONFIG_USB_SERIAL_MOTOROLA
- FILES:=$(LINUX_DIR)/drivers/usb/serial/moto_modem.ko
- AUTOLOAD:=$(call AutoProbe,moto_modem)
- $(call AddDepends/usb-serial)
-endef
-
-define KernelPackage/usb-serial-motorola-phone/description
- Kernel support for Motorola usb phone
-endef
-
-$(eval $(call KernelPackage,usb-serial-motorola-phone))
-
-
define KernelPackage/usb-serial-visor
TITLE:=Support for Handspring Visor devices
KCONFIG:=CONFIG_USB_SERIAL_VISOR
define KernelPackage/usb-net
TITLE:=Kernel modules for USB-to-Ethernet convertors
DEPENDS:=+kmod-mii
- KCONFIG:=CONFIG_USB_USBNET
+ KCONFIG:=CONFIG_USB_USBNET \
+ CONFIG_USB_NET_DRIVERS
AUTOLOAD:=$(call AutoProbe,usbnet)
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko
$(call AddDepends/usb)
define KernelPackage/usb-net-asix
TITLE:=Kernel module for USB-to-Ethernet Asix convertors
- DEPENDS:=+!LINUX_3_3:kmod-libphy
+ DEPENDS:=+kmod-libphy
KCONFIG:=CONFIG_USB_NET_AX8817X
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko
AUTOLOAD:=$(call AutoProbe,asix)
$(eval $(call KernelPackage,usb-net-asix))
+define KernelPackage/usb-net-asix-ax88179
+ TITLE:=Kernel module for USB-to-Gigabit-Ethernet Asix convertors
+ DEPENDS:=+kmod-libphy
+ KCONFIG:=CONFIG_USB_NET_AX88179_178A
+ FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/ax88179_178a.ko
+ AUTOLOAD:=$(call AutoProbe,ax88179_178a)
+ $(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-net-asix-ax88179/description
+ Kernel module for USB-to-Ethernet ASIX AX88179 based USB 3.0/2.0
+ to Gigabit Ethernet adapters.
+endef
+
+$(eval $(call KernelPackage,usb-net-asix-ax88179))
+
+
define KernelPackage/usb-net-hso
TITLE:=Kernel module for Option USB High Speed Mobile Devices
KCONFIG:=CONFIG_USB_HSO
KCONFIG:=CONFIG_USB_NET_SMSC95XX
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko
AUTOLOAD:=$(call AutoProbe,smsc95xx)
- $(call AddDepends/usb-net, +(!LINUX_3_3&&!LINUX_3_6):kmod-lib-crc16)
+ $(call AddDepends/usb-net, +kmod-lib-crc16)
endef
define KernelPackage/usb-net-smsc95xx/description
$(eval $(call KernelPackage,usb-net-qmi-wwan))
+define KernelPackage/usb-net-rtl8150
+ TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
+ KCONFIG:=CONFIG_USB_RTL8150
+ FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/rtl8150.ko
+ AUTOLOAD:=$(call AutoProbe,rtl8150)
+ $(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-net-rtl8150/description
+ Kernel module for USB-to-Ethernet Realtek 8150 convertors
+endef
+
+$(eval $(call KernelPackage,usb-net-rtl8150))
+
+
+define KernelPackage/usb-net-rtl8152
+ TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
+ KCONFIG:=CONFIG_USB_RTL8152
+ FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/r8152.ko
+ AUTOLOAD:=$(call AutoProbe,r8152)
+ $(call AddDepends/usb-net)
+endef
+
+define KernelPackage/usb-net-rtl8152/description
+ Kernel module for USB-to-Ethernet Realtek 8152 USB2.0/3.0 convertors
+endef
+
+$(eval $(call KernelPackage,usb-net-rtl8152))
+
+
define KernelPackage/usb-net-rndis
TITLE:=Support for RNDIS connections
KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
KCONFIG:=CONFIG_USB_NET_HUAWEI_CDC_NCM
FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/huawei_cdc_ncm.ko
AUTOLOAD:=$(call AutoProbe,huawei_cdc_ncm)
- $(call AddDepends/usb-net,+kmod-usb-wdm @!LINUX_3_3 @!LINUX_3_8 @!LINUX_3_10)
+ $(call AddDepends/usb-net,+kmod-usb-net-cdc-ncm +kmod-usb-wdm)
endef
define KernelPackage/usb-net-huawei-cdc-ncm/description
define KernelPackage/usb-hid
TITLE:=Support for USB Human Input Devices
KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
+ DEPENDS:=+kmod-hid +kmod-hid-generic +kmod-input-evdev
FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
AUTOLOAD:=$(call AutoProbe,usbhid)
$(call AddDepends/usb)
- $(call AddDepends/hid,+kmod-hid-generic)
- $(call AddDepends/input,+kmod-input-evdev)
endef
define KernelPackage/usb-hid/description
define KernelPackage/usb-yealink
TITLE:=USB Yealink VOIP phone
+ DEPENDS:=+kmod-input-evdev
KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
AUTOLOAD:=$(call AutoProbe,yealink)
$(call AddDepends/usb)
- $(call AddDepends/input,+kmod-input-evdev)
endef
define KernelPackage/usb-yealink/description
define KernelPackage/usb-cm109
TITLE:=Support for CM109 device
+ DEPENDS:=+kmod-input-evdev
KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko
AUTOLOAD:=$(call AutoProbe,cm109)
$(call AddDepends/usb)
- $(call AddDepends/input,+kmod-input-evdev)
endef
define KernelPackage/usb-cm109/description
KCONFIG:= \
CONFIG_USBIP_CORE \
CONFIG_USBIP_DEBUG=n
- FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip-core.ko
+ FILES:=$(LINUX_DIR)/drivers/usb/usbip/usbip-core.ko
AUTOLOAD:=$(call AutoProbe,usbip-core)
$(call AddDepends/usb)
endef
TITLE := USB-over-IP client driver
DEPENDS := +kmod-usbip
KCONFIG := CONFIG_USBIP_VHCI_HCD
- FILES := $(LINUX_DIR)/drivers/staging/usbip/vhci-hcd.$(LINUX_KMOD_SUFFIX)
+ FILES :=$(LINUX_DIR)/drivers/usb/usbip/vhci-hcd.ko
AUTOLOAD := $(call AutoProbe,vhci-hcd)
$(call AddDepends/usb)
endef
TITLE := USB-over-IP host driver
DEPENDS := +kmod-usbip
KCONFIG := CONFIG_USBIP_HOST
- FILES := $(LINUX_DIR)/drivers/staging/usbip/usbip-host.ko
+ FILES :=$(LINUX_DIR)/drivers/usb/usbip/usbip-host.ko
AUTOLOAD := $(call AutoProbe,usbip-host)
$(call AddDepends/usb)
endef
$(eval $(call KernelPackage,usbip-server))
-define KernelPackage/usb-chipidea
+define KernelPackage/usb-chipidea-imx
TITLE:=Support for ChipIdea controllers
- DEPENDS:=+kmod-usb2 +USB_GADGET_SUPPORT:kmod-usb-gadget
+ DEPENDS:=@TARGET_imx6||TARGET_mxs +kmod-usb2 +USB_GADGET_SUPPORT:kmod-usb-gadget
KCONFIG:=\
CONFIG_USB_CHIPIDEA \
CONFIG_USB_CHIPIDEA_HOST=y \
CONFIG_USB_CHIPIDEA_UDC=y \
CONFIG_USB_CHIPIDEA_DEBUG=y
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.11.0)),1)
- FILES:=\
- $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
- $(if $(CONFIG_OF_DEVICE),$(LINUX_DIR)/drivers/usb/chipidea/ci13xxx_imx.ko) \
- $(if $(CONFIG_OF_DEVICE),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx$(if $(call kernel_patchver_le,3.9),6q).ko)
- AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF_DEVICE),ci13xxx_imx usbmisc_imx$(if $(call kernel_patchver_le,3.9),6q)),1)
-else
FILES:=\
$(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \
$(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc_imx.ko) \
$(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx.ko)
AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF),ci_hdrc_imx usbmisc_imx),1)
-endif
$(call AddDepends/usb)
endef
-
-define KernelPackage/usb-chipidea/description
+
+define KernelPackage/usb-chipidea-imx/description
Kernel support for USB ChipIdea controllers
endef
-$(eval $(call KernelPackage,usb-chipidea,1))
+$(eval $(call KernelPackage,usb-chipidea-imx,1))
define KernelPackage/usb-mxs-phy
$(eval $(call KernelPackage,usbmon))
-XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,xhci-hcd xhci-pci xhci-plat))
+XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,xhci-hcd xhci-pci xhci-plat-hcd))
XHCI_AUTOLOAD := $(patsubst $(LINUX_DIR)/drivers/usb/host/%.ko,%,$(XHCI_FILES))
define KernelPackage/usb3
TITLE:=Support for USB3 controllers
- DEPENDS:=+TARGET_omap:kmod-usb-phy-omap-usb3
+ DEPENDS:= \
+ +TARGET_bcm53xx:kmod-usb-bcma \
+ +TARGET_omap:kmod-usb-phy-omap-usb3
KCONFIG:= \
CONFIG_USB_XHCI_HCD \
CONFIG_USB_XHCI_PCI \
CONFIG_USB_XHCI_PLATFORM \
+ CONFIG_USB_XHCI_MVEBU=y \
CONFIG_USB_XHCI_HCD_DEBUGGING=n
FILES:= \
$(XHCI_FILES)
VIDEO_MENU:=Video Support
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.7.0)),1)
V4L2_DIR=v4l2-core
V4L2_USB_DIR=usb
-else
-V4L2_DIR=video
-V4L2_USB_DIR=video
-endif
-
define KernelPackage/fb
SUBMENU:=$(VIDEO_MENU)
TITLE:=Framebuffer support
DEPENDS:=@DISPLAY_SUPPORT
KCONFIG:=CONFIG_FB
- FILES:=$(LINUX_DIR)/drivers/video/fb.ko
+ FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb.ko
AUTOLOAD:=$(call AutoLoad,06,fb)
endef
TITLE:=Framebuffer software rectangle filling support
DEPENDS:=+kmod-fb
KCONFIG:=CONFIG_FB_CFB_FILLRECT
- FILES:=$(LINUX_DIR)/drivers/video/cfbfillrect.ko
+ FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/cfbfillrect.ko
AUTOLOAD:=$(call AutoLoad,07,cfbfillrect)
endef
TITLE:=Framebuffer software copy area support
DEPENDS:=+kmod-fb
KCONFIG:=CONFIG_FB_CFB_COPYAREA
- FILES:=$(LINUX_DIR)/drivers/video/cfbcopyarea.ko
+ FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/cfbcopyarea.ko
AUTOLOAD:=$(call AutoLoad,07,cfbcopyarea)
endef
TITLE:=Framebuffer software image blit support
DEPENDS:=+kmod-fb
KCONFIG:=CONFIG_FB_CFB_IMAGEBLIT
- FILES:=$(LINUX_DIR)/drivers/video/cfbimgblt.ko
+ FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/cfbimgblt.ko
AUTOLOAD:=$(call AutoLoad,07,cfbimgblt)
endef
CONFIG_V4L_PCI_DRIVERS=y \
CONFIG_V4L_PLATFORM_DRIVERS=y \
CONFIG_V4L_ISA_PARPORT_DRIVERS=y
-ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.6.0)),1)
FILES:= \
$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-common.ko \
$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/videodev.ko
AUTOLOAD:=$(call AutoLoad,60, videodev v4l2-common)
-else
- FILES:= \
- $(if $(CONFIG_COMPAT),$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-compat-ioctl32.ko) \
- $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-common.ko \
- $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/videodev.ko
- AUTOLOAD:=$(call AutoLoad,60, $(if $(CONFIG_COMPAT),v4l2-compat-ioctl32) videodev v4l2-common)
-endif
endef
define KernelPackage/video-core/description
$(eval $(call KernelPackage,video-cpia2))
-define KernelPackage/video-sn9c102
- TITLE:=SN9C102 Camera Chip support
- DEPENDS:=@USB_SUPPORT +kmod-usb-core
- KCONFIG:=CONFIG_USB_SN9C102
- FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/sn9c102/sn9c102.ko
- AUTOLOAD:=$(call AutoProbe,gspca_sn9c20x)
- $(call AddDepends/camera)
-endef
-
-define KernelPackage/video-sn9c102/description
- Kernel modules for supporting SN9C102 camera chips
-endef
-
-$(eval $(call KernelPackage,video-sn9c102))
-
-
define KernelPackage/video-pwc
TITLE:=Philips USB webcam support
DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-video-videobuf2
define KernelPackage/video-uvc
TITLE:=USB Video Class (UVC) support
- DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-video-videobuf2
+ DEPENDS:=@USB_SUPPORT +kmod-usb-core +kmod-video-videobuf2 +kmod-input-core
KCONFIG:= CONFIG_USB_VIDEO_CLASS
FILES:=$(LINUX_DIR)/drivers/media/$(V4L2_USB_DIR)/uvc/uvcvideo.ko
AUTOLOAD:=$(call AutoProbe,uvcvideo)
$(call AddDepends/camera)
- $(call AddDepends/input)
endef
define KernelPackage/video-uvc/description
CONFIG_FB_SYS_IMAGEBLIT \
CONFIG_FIRMWARE_EDID=n
FILES:= \
- $(LINUX_DIR)/drivers/video/xen-fbfront.ko \
- $(LINUX_DIR)/drivers/video/syscopyarea.ko \
- $(LINUX_DIR)/drivers/video/sysfillrect.ko \
- $(LINUX_DIR)/drivers/video/fb_sys_fops.ko \
- $(LINUX_DIR)/drivers/video/sysimgblt.ko
+ $(LINUX_DIR)/drivers/video/fbdev/xen-fbfront.ko \
+ $(LINUX_DIR)/drivers/video/fbdev/core/syscopyarea.ko \
+ $(LINUX_DIR)/drivers/video/fbdev/core/sysfillrect.ko \
+ $(LINUX_DIR)/drivers/video/fbdev/core/fb_sys_fops.ko \
+ $(LINUX_DIR)/drivers/video/fbdev/core/sysimgblt.ko
AUTOLOAD:=$(call AutoLoad,07, \
fb \
syscopyarea \
endef
$(eval $(call KernelPackage,w1-slave-ds2760))
+
+
+define KernelPackage/w1-slave-ds2413
+ TITLE:=DS2413 2 Ch. Addressable Switch
+ KCONFIG:= \
+ CONFIG_W1_SLAVE_DS2413
+ FILES:=$(W1_SLAVES_DIR)/w1_ds2413.ko
+ AUTOLOAD:=$(call AutoProbe,w1_ds2413)
+ $(call AddDepends/w1)
+endef
+
+define KernelPackage/w1-slave-ds2413/description
+ Kernel module for 1-wire DS2413 Dual Channel Addressable Switch support
+endef
+
+$(eval $(call KernelPackage,w1-slave-ds2413))
SECTION:=base
CATEGORY:=Base system
TITLE:=om watchdog
- URL:=http://openwrt.org/
+ URL:=http://librecmc.org/
endef
define Package/om-watchdog/description
"om2pv2"|"om2p-lc")
service_start /sbin/om-watchdog 26
;;
- "om5p")
+ "om5p"|"om5p-an")
service_start /sbin/om-watchdog 11
;;
"mr600v2")
$(MAKE) $(KERNEL_MAKEOPTS) SUBDIRS="$(PKG_BUILD_DIR)" modules
endef
+define KernelPackage/trelay/conffiles
+/etc/config/trelay
+endef
+
define KernelPackage/trelay/install
$(INSTALL_DIR) $(1)/etc/hotplug.d/net $(1)/etc/init.d $(1)/etc/config
$(INSTALL_DATA) ./files/trelay.hotplug $(1)/etc/hotplug.d/net/50-trelay
/*
* Custom GPIO-based W1 driver
*
- * Copyright (C) 2007 Gabor Juhos <juhosg at openwrt.org>
+ * Copyright (C) 2007 Gabor Juhos <juhosg at librecmc.org>
* Copyright (C) 2008 Bifferos <bifferos at yahoo.co.uk>
*
* This program is free software; you can redistribute it and/or modify
pdata.pin = params[BUS_PARAM_PIN];
pdata.is_open_drain = params[BUS_PARAM_OD] ? 1 : 0;
pdata.enable_external_pullup = NULL;
+ pdata.ext_pullup_enable_pin = -EINVAL;
err = platform_device_add_data(pdev, &pdata, sizeof(pdata));
if (err)
CPU_TYPE=34kc
SUBTARGETS:=generic luci nand mikrotik
-KERNEL_PATCHVER:=3.18
+KERNEL_PATCHVER:=4.1
include $(INCLUDE_DIR)/target.mk