Radix cross Linux

The main Radix cross Linux repository contains the build scripts of packages, which have the most complete and common functionality for desktop machines

383 Commits   1 Branch   1 Tag
Index: radix-1.9/net/libsignal-protocol-c/2.3.3/Makefile
===================================================================
--- radix-1.9/net/libsignal-protocol-c/2.3.3/Makefile	(nonexistent)
+++ radix-1.9/net/libsignal-protocol-c/2.3.3/Makefile	(revision 62)
@@ -0,0 +1,233 @@
+
+COMPONENT_TARGETS  = $(HARDWARE_INTEL_PC32)
+COMPONENT_TARGETS += $(HARDWARE_INTEL_PC64)
+COMPONENT_TARGETS += $(HARDWARE_EBOX_3350DX2)
+COMPONENT_TARGETS += $(HARDWARE_CB1X)
+COMPONENT_TARGETS += $(HARDWARE_CB2X)
+COMPONENT_TARGETS += $(HARDWARE_CB3X)
+COMPONENT_TARGETS += $(HARDWARE_ORANGE_PP2E)
+COMPONENT_TARGETS += $(HARDWARE_NANOPI_NEO)
+COMPONENT_TARGETS += $(HARDWARE_ORANGE_PP)
+COMPONENT_TARGETS += $(HARDWARE_ORANGE_PL2)
+COMPONENT_TARGETS += $(HARDWARE_ORANGE_PI5)
+COMPONENT_TARGETS += $(HARDWARE_WECHIP_TX6)
+COMPONENT_TARGETS += $(HARDWARE_FFRK3288)
+COMPONENT_TARGETS += $(HARDWARE_POIN2)
+COMPONENT_TARGETS += $(HARDWARE_RK3328_CC)
+COMPONENT_TARGETS += $(HARDWARE_KHADAS_EDGE)
+COMPONENT_TARGETS += $(HARDWARE_LEEZ_P710)
+COMPONENT_TARGETS += $(HARDWARE_M201)
+COMPONENT_TARGETS += $(HARDWARE_MXV)
+COMPONENT_TARGETS += $(HARDWARE_P201)
+COMPONENT_TARGETS += $(HARDWARE_NEXBOX_A95X)
+COMPONENT_TARGETS += $(HARDWARE_ODROID_C2)
+COMPONENT_TARGETS += $(HARDWARE_P212)
+COMPONENT_TARGETS += $(HARDWARE_KHADAS_VIM)
+COMPONENT_TARGETS += $(HARDWARE_Q201)
+COMPONENT_TARGETS += $(HARDWARE_ENYBOX_X2)
+COMPONENT_TARGETS += $(HARDWARE_KHADAS_VIM2)
+COMPONENT_TARGETS += $(HARDWARE_NIT6Q)
+COMPONENT_TARGETS += $(HARDWARE_OKMX6DL_C)
+COMPONENT_TARGETS += $(HARDWARE_OKMX6Q_C)
+COMPONENT_TARGETS += $(HARDWARE_BONE_BLACK)
+COMPONENT_TARGETS += $(HARDWARE_OMAP5UEVM)
+COMPONENT_TARGETS += $(HARDWARE_DRA7XXEVM)
+COMPONENT_TARGETS += $(HARDWARE_CI20)
+COMPONENT_TARGETS += $(HARDWARE_BAIKAL_T1)
+COMPONENT_TARGETS += $(HARDWARE_BAIKAL_M1)
+COMPONENT_TARGETS += $(HARDWARE_S824L)
+COMPONENT_TARGETS += $(HARDWARE_VESNIN)
+COMPONENT_TARGETS += $(HARDWARE_S824L_LSB)
+COMPONENT_TARGETS += $(HARDWARE_VESNIN_LSB)
+COMPONENT_TARGETS += $(HARDWARE_TL2WK2)
+COMPONENT_TARGETS += $(HARDWARE_TL2SV2)
+COMPONENT_TARGETS += $(HARDWARE_TL2WK2_LSB)
+COMPONENT_TARGETS += $(HARDWARE_TL2SV2_LSB)
+COMPONENT_TARGETS += $(HARDWARE_SIFIVE_U740)
+
+
+NEED_ABS_PATH      = true
+COMPONENT_IS_3PP   = true
+
+
+include ../../../build-system/constants.mk
+
+
+SOURCE_REQUIRES    = sources/packages/n/libsignal-protocol-c
+
+ifeq ($(__USE_BUILT_GCC_LIBS__),yes)
+REQUIRES           = dev/gcc/12.2.0
+else
+REQUIRES           = libs/glibc/2.37
+endif
+
+# ======= __END_OF_REQUIRES__ =======
+
+
+version            = 2.3.3
+tar_xz_archive     = $(SRC_PACKAGE_PATH)/packages/n/libsignal-protocol-c/libsignal-protocol-c-$(version).tar.xz
+SRC_ARCHIVE        = $(tar_xz_archive)
+SRC_DIR            = $(TARGET_BUILD_DIR)/libsignal-protocol-c-$(version)
+src_dir_name       = libsignal-protocol-c-$(version)
+src_done           = $(TARGET_BUILD_DIR)/.source_done
+
+PATCHES = PATCHES
+
+build_dir          = $(TARGET_BUILD_DIR)/build
+build_target       = $(TARGET_BUILD_DIR)/.build_done
+install_target     = $(TARGET_BUILD_DIR)/.install_done
+
+
+####### Targets
+
+PKG_GROUP = net
+
+#
+# *PKG_NAME & *PKG_VERSION shouldn't be a reference to value.
+#
+SIGNALPC_PKG_NAME                = libsignal-protocol-c
+SIGNALPC_PKG_VERSION             = 2.3.3
+SIGNALPC_PKG_ARCH                = $(PKGARCH)
+SIGNALPC_PKG_DISTRO_NAME         = $(DISTRO_NAME)
+SIGNALPC_PKG_DISTRO_VERSION      = $(DISTRO_VERSION)
+SIGNALPC_PKG_GROUP               = $(PKG_GROUP)
+###                               |---handy-ruler-------------------------------|
+SIGNALPC_PKG_SHORT_DESCRIPTION   = Signal Protocol C Library
+SIGNALPC_PKG_URL                 = $(BUG_URL)
+SIGNALPC_PKG_LICENSE             = GPLv3
+SIGNALPC_PKG_DESCRIPTION_FILE    = $(TARGET_BUILD_DIR)/$(SIGNALPC_PKG_NAME)-pkg-description
+SIGNALPC_PKG_DESCRIPTION_FILE_IN = $(SIGNALPC_PKG_NAME)-pkg-description.in
+SIGNALPC_PKG_INSTALL_SCRIPT      = $(SIGNALPC_PKG_NAME)-pkg-install.sh
+
+SIGNALPC_PKG     = $(CURDIR)/$(TARGET_BUILD_DIR)/$(SIGNALPC_PKG_NAME)-package
+
+pkg_basename     = $(SIGNALPC_PKG_NAME)-$(SIGNALPC_PKG_VERSION)-$(SIGNALPC_PKG_ARCH)-$(SIGNALPC_PKG_DISTRO_NAME)-$(SIGNALPC_PKG_DISTRO_VERSION)
+
+pkg_archive      = $(TARGET_BUILD_DIR)/$(PKG_GROUP)/$(pkg_basename).$(pkg_arch_suffix)
+pkg_certificate  = $(call cert-name,$(pkg_archive))
+pkg_signature    = $(call sign-name,$(pkg_archive))
+pkg_description  = $(call desc-name,$(pkg_archive))
+products         = $(call pkg-files,$(pkg_archive))
+
+BUILD_TARGETS    = $(build_target)
+BUILD_TARGETS   += $(install_target)
+
+PRODUCT_TARGETS  = $(products)
+
+ROOTFS_TARGETS   = $(pkg_archive)
+
+
+include ../../../build-system/core.mk
+
+
+env_sysroot = DESTDIR=$(SIGNALPC_PKG)
+
+
+TARGET_BIN_RPATH = /lib$(LIBSUFFIX):/usr/lib$(LIBSUFFIX)
+TARGET_LIB_RPATH = /lib$(LIBSUFFIX):/usr/lib$(LIBSUFFIX):/usr/lib/../lib$(LIBSUFFIX)
+
+CFLAGS += -Wno-unused-but-set-variable
+
+configure_switches  = -DCMAKE_BUILD_TYPE='Release'
+
+configure_switches += -DCMAKE_C_COMPILER='$(CROSS_PREFIX)gcc'
+configure_switches += -DCMAKE_CXX_COMPILER='$(CROSS_PREFIX)g++'
+configure_switches += -DCMAKE_LINKER='$(CROSS_PREFIX)ld'
+configure_switches += -DCMAKE_AR='$(CROSS_PREFIX)ar'
+configure_switches += -DCMAKE_NM='$(CROSS_PREFIX)nm'
+configure_switches += -DCMAKE_RANLIB='$(CROSS_PREFIX)ranlib'
+configure_switches += -DCMAKE_OBJCOPY='$(CROSS_PREFIX)objcopy'
+configure_switches += -DCMAKE_OBJDUMP='$(CROSS_PREFIX)objdump'
+configure_switches += -DCMAKE_STRIP='$(CROSS_PREFIX)strip'
+
+configure_switches += -DCMAKE_C_FLAGS:STRING='--sysroot=$(TARGET_DEST_DIR) $(CFLAGS) $(ARCH_FLAGS) $(ARCH_DEFS) $(HW_FLAGS)'
+configure_switches += -DCMAKE_CXX_FLAGS:STRING='--sysroot=$(TARGET_DEST_DIR) $(CFLAGS) $(ARCH_FLAGS) $(ARCH_DEFS) $(HW_FLAGS)'
+
+configure_switches += -DCMAKE_EXE_LINKER_FLAGS='--sysroot=$(TARGET_DEST_DIR) -Wl,-rpath,$(TARGET_BIN_RPATH) -L$(TARGET_DEST_DIR)/lib$(LIBSUFFIX) -L$(TARGET_DEST_DIR)/usr/lib$(LIBSUFFIX) -lstdc++'
+configure_switches += -DCMAKE_MODULE_LINKER_FLAGS='--sysroot=$(TARGET_DEST_DIR) -Wl,-rpath,$(TARGET_LIB_RPATH) -L$(TARGET_DEST_DIR)/lib$(LIBSUFFIX) -L$(TARGET_DEST_DIR)/usr/lib$(LIBSUFFIX) -lstdc++'
+configure_switches += -DCMAKE_SHARED_LINKER_FLAGS='--sysroot=$(TARGET_DEST_DIR) -Wl,-rpath,$(TARGET_LIB_RPATH) -L$(TARGET_DEST_DIR)/lib$(LIBSUFFIX) -L$(TARGET_DEST_DIR)/usr/lib$(LIBSUFFIX) -lstdc++'
+
+ifeq ($(TOOLCHAIN),$(TOOLCHAIN_JZ47XX_GLIBC))
+configure_switches += -DCMAKE_C_FLAGS_RELEASE='-O2 -DNDEBUG'
+configure_switches += -DCMAKE_CXX_FLAGS_RELEASE='-O2 -DNDEBUG'
+configure_switches += -DCMAKE_ASM_FLAGS_RELEASE='-O2 -DNDEBUG'
+endif
+
+configure_switches += -DCMAKE_INSTALL_PREFIX=/usr
+
+configure_switches += -DLIB_SUFFIX=''
+
+configure_switches += -DBUILD_SHARED_LIBS=ON
+
+
+####### Dependencies
+
+$(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP)
+	$(UNPACK_SRC_ARCHIVE)
+	$(APPLY_PATCHES)
+	@touch $@
+
+$(build_target): $(src_done)
+	@mkdir -p $(build_dir)
+	@( cd $(build_dir) ; \
+	   $(BUILD_ENVIRONMENT) cmake $(configure_switches) ../$(src_dir_name) ; \
+	 )
+	@( cd $(build_dir) ; \
+	   $(BUILD_ENVIRONMENT) $(MAKE) ; \
+	 )
+	@touch $@
+
+$(install_target): $(build_target)
+	@mkdir -p $(SIGNALPC_PKG)
+	@cd $(build_dir) && $(BUILD_ENVIRONMENT) $(MAKE) -j1 install $(env_sysroot)
+	@rm -rf $(SIGNALPC_PKG)/usr/share/man
+	@mkdir -p $(SIGNALPC_PKG)/usr/doc/$(src_dir_name)
+	@cp -a $(SRC_DIR)/LICENSE \
+	       $(SIGNALPC_PKG)/usr/doc/$(src_dir_name)
+	@mkdir -p $(SIGNALPC_PKG)/usr/share/doc/$(src_dir_name)
+	@( cd $(SRC_DIR) ; \
+	   cp -a LICENSE README.md \
+	         $(SIGNALPC_PKG)/usr/share/doc/$(src_dir_name) \
+	 )
+	@( cd $(SRC_DIR) ; \
+	   if [ -r ChangeLog -a -s ChangeLog ]; then \
+	     DOCSDIR=`echo $(SIGNALPC_PKG)/usr/share/doc/$(src_dir_name)` ; \
+	     cat ChangeLog | head -n 1000 > $$DOCSDIR/ChangeLog ; \
+	     touch -r ChangeLog $$DOCSDIR/ChangeLog ; \
+	   fi \
+	 )
+	# ======= Install the same to $(TARGET_DEST_DIR) =======
+	$(call install-into-devenv, $(SIGNALPC_PKG))
+	# ======= tune pkg-config *.pc search path to the target destination for development =======
+	@( cd $(TARGET_DEST_DIR)/usr/lib$(LIBSUFFIX)/pkgconfig ; \
+	   sed -i "s,/usr,$(TARGET_DEST_DIR)/usr,g" libsignal-protocol-c.pc ; \
+	 )
+	# ======= Strip binaries =======
+	@( cd $(SIGNALPC_PKG) ; \
+	   find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs $(STRIP) --strip-unneeded 2> /dev/null ; \
+	 )
+	@touch $@
+
+$(SIGNALPC_PKG_DESCRIPTION_FILE): $(SIGNALPC_PKG_DESCRIPTION_FILE_IN)
+	@cat $< | $(SED) -e "s/@VERSION@/$(version)/g" > $@
+
+$(pkg_certificate) : $(pkg_archive) ;
+$(pkg_signature)   : $(pkg_archive) ;
+$(pkg_description) : $(pkg_archive) ;
+
+$(pkg_archive): $(install_target) $(SIGNALPC_PKG_DESCRIPTION_FILE) $(SIGNALPC_PKG_INSTALL_SCRIPT)
+	@cp $(SIGNALPC_PKG_DESCRIPTION_FILE) $(SIGNALPC_PKG)/.DESCRIPTION
+	@cp $(SIGNALPC_PKG_INSTALL_SCRIPT) $(SIGNALPC_PKG)/.INSTALL
+	@$(BUILD_PKG_REQUIRES) $(SIGNALPC_PKG)/.REQUIRES
+	@echo "pkgname=$(SIGNALPC_PKG_NAME)"                            >  $(SIGNALPC_PKG)/.PKGINFO ; \
+	 echo "pkgver=$(SIGNALPC_PKG_VERSION)"                          >> $(SIGNALPC_PKG)/.PKGINFO ; \
+	 echo "arch=$(SIGNALPC_PKG_ARCH)"                               >> $(SIGNALPC_PKG)/.PKGINFO ; \
+	 echo "distroname=$(SIGNALPC_PKG_DISTRO_NAME)"                  >> $(SIGNALPC_PKG)/.PKGINFO ; \
+	 echo "distrover=$(SIGNALPC_PKG_DISTRO_VERSION)"                >> $(SIGNALPC_PKG)/.PKGINFO ; \
+	 echo "group=$(SIGNALPC_PKG_GROUP)"                             >> $(SIGNALPC_PKG)/.PKGINFO ; \
+	 echo "short_description=\"$(SIGNALPC_PKG_SHORT_DESCRIPTION)\"" >> $(SIGNALPC_PKG)/.PKGINFO ; \
+	 echo "url=$(SIGNALPC_PKG_URL)"                                 >> $(SIGNALPC_PKG)/.PKGINFO ; \
+	 echo "license=$(SIGNALPC_PKG_LICENSE)"                         >> $(SIGNALPC_PKG)/.PKGINFO
+	@$(PSEUDO) sh -c "cd $(SIGNALPC_PKG) && \
+	                  chown -R root:root . && \
+	                  $(MAKE_PACKAGE) -J --linkadd=yes $(GNUPG_OPTIONS) -m -d .. ."
Index: radix-1.9/net/libsignal-protocol-c/2.3.3/PATCHES
===================================================================
Index: radix-1.9/net/libsignal-protocol-c/2.3.3/libsignal-protocol-c-pkg-description.in
===================================================================
--- radix-1.9/net/libsignal-protocol-c/2.3.3/libsignal-protocol-c-pkg-description.in	(nonexistent)
+++ radix-1.9/net/libsignal-protocol-c/2.3.3/libsignal-protocol-c-pkg-description.in	(revision 62)
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.  Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in.  You must
+# make exactly 11 lines for the formatting to be correct.  It's also
+# customary to leave one space after the ':'.
+
+                    |-----handy-ruler------------------------------------------------------|
+libsignal-protocol-c: libsignal-protocol-c @VERSION@ (Signal Protocol C Library)
+libsignal-protocol-c:
+libsignal-protocol-c: This is a ratcheting forward secrecy protocol that works in
+libsignal-protocol-c: synchronous and asynchronous messaging environments.
+libsignal-protocol-c:
+libsignal-protocol-c:
+libsignal-protocol-c: Homepage: https://github.com/signalapp/libsignal-protocol-c
+libsignal-protocol-c:
+libsignal-protocol-c:
+libsignal-protocol-c:
+libsignal-protocol-c:
Index: radix-1.9/net/libsignal-protocol-c/2.3.3/libsignal-protocol-c-pkg-install.sh
===================================================================
--- radix-1.9/net/libsignal-protocol-c/2.3.3/libsignal-protocol-c-pkg-install.sh	(nonexistent)
+++ radix-1.9/net/libsignal-protocol-c/2.3.3/libsignal-protocol-c-pkg-install.sh	(revision 62)
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+# arg 1:  the new package version
+pre_install() {
+  /bin/true
+}
+
+# arg 1:  the new package version
+post_install() {
+  /bin/true
+}
+
+# arg 1:  the new package version
+# arg 2:  the old package version
+pre_update() {
+  /bin/true
+}
+
+# arg 1:  the new package version
+# arg 2:  the old package version
+post_update() {
+  post_install
+}
+
+# arg 1:  the old package version
+pre_remove() {
+  /bin/true
+}
+
+# arg 1:  the old package version
+post_remove() {
+  /bin/true
+}
+
+
+operation=$1
+shift
+
+$operation $*

Property changes on: radix-1.9/net/libsignal-protocol-c/2.3.3/libsignal-protocol-c-pkg-install.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: radix-1.9/net/libsignal-protocol-c/2.3.3
===================================================================
--- radix-1.9/net/libsignal-protocol-c/2.3.3	(nonexistent)
+++ radix-1.9/net/libsignal-protocol-c/2.3.3	(revision 62)

Property changes on: radix-1.9/net/libsignal-protocol-c/2.3.3
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,74 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.rk358x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: radix-1.9/net/webrtc-audio-processing/0.3.1/Makefile
===================================================================
--- radix-1.9/net/webrtc-audio-processing/0.3.1/Makefile	(nonexistent)
+++ radix-1.9/net/webrtc-audio-processing/0.3.1/Makefile	(revision 62)
@@ -0,0 +1,258 @@
+
+COMPONENT_TARGETS  = $(HARDWARE_INTEL_PC32)
+COMPONENT_TARGETS += $(HARDWARE_INTEL_PC64)
+COMPONENT_TARGETS += $(HARDWARE_EBOX_3350DX2)
+COMPONENT_TARGETS += $(HARDWARE_CB1X)
+COMPONENT_TARGETS += $(HARDWARE_CB2X)
+COMPONENT_TARGETS += $(HARDWARE_CB3X)
+COMPONENT_TARGETS += $(HARDWARE_ORANGE_PP2E)
+COMPONENT_TARGETS += $(HARDWARE_NANOPI_NEO)
+COMPONENT_TARGETS += $(HARDWARE_ORANGE_PP)
+COMPONENT_TARGETS += $(HARDWARE_ORANGE_PL2)
+COMPONENT_TARGETS += $(HARDWARE_ORANGE_PI5)
+COMPONENT_TARGETS += $(HARDWARE_WECHIP_TX6)
+COMPONENT_TARGETS += $(HARDWARE_FFRK3288)
+COMPONENT_TARGETS += $(HARDWARE_POIN2)
+COMPONENT_TARGETS += $(HARDWARE_RK3328_CC)
+COMPONENT_TARGETS += $(HARDWARE_KHADAS_EDGE)
+COMPONENT_TARGETS += $(HARDWARE_LEEZ_P710)
+COMPONENT_TARGETS += $(HARDWARE_M201)
+COMPONENT_TARGETS += $(HARDWARE_MXV)
+COMPONENT_TARGETS += $(HARDWARE_P201)
+COMPONENT_TARGETS += $(HARDWARE_NEXBOX_A95X)
+COMPONENT_TARGETS += $(HARDWARE_ODROID_C2)
+COMPONENT_TARGETS += $(HARDWARE_P212)
+COMPONENT_TARGETS += $(HARDWARE_KHADAS_VIM)
+COMPONENT_TARGETS += $(HARDWARE_Q201)
+COMPONENT_TARGETS += $(HARDWARE_ENYBOX_X2)
+COMPONENT_TARGETS += $(HARDWARE_KHADAS_VIM2)
+COMPONENT_TARGETS += $(HARDWARE_NIT6Q)
+COMPONENT_TARGETS += $(HARDWARE_OKMX6DL_C)
+COMPONENT_TARGETS += $(HARDWARE_OKMX6Q_C)
+COMPONENT_TARGETS += $(HARDWARE_BONE_BLACK)
+COMPONENT_TARGETS += $(HARDWARE_OMAP5UEVM)
+COMPONENT_TARGETS += $(HARDWARE_DRA7XXEVM)
+COMPONENT_TARGETS += $(HARDWARE_CI20)
+COMPONENT_TARGETS += $(HARDWARE_BAIKAL_T1)
+COMPONENT_TARGETS += $(HARDWARE_BAIKAL_M1)
+COMPONENT_TARGETS += $(HARDWARE_S824L)
+COMPONENT_TARGETS += $(HARDWARE_VESNIN)
+COMPONENT_TARGETS += $(HARDWARE_S824L_LSB)
+COMPONENT_TARGETS += $(HARDWARE_VESNIN_LSB)
+COMPONENT_TARGETS += $(HARDWARE_TL2WK2)
+COMPONENT_TARGETS += $(HARDWARE_TL2SV2)
+COMPONENT_TARGETS += $(HARDWARE_TL2WK2_LSB)
+COMPONENT_TARGETS += $(HARDWARE_TL2SV2_LSB)
+COMPONENT_TARGETS += $(HARDWARE_SIFIVE_U740)
+
+
+NEED_ABS_PATH      = true
+COMPONENT_IS_3PP   = true
+
+
+include ../../../build-system/constants.mk
+
+
+SOURCE_REQUIRES    = sources/packages/n/webrtc-audio-processing
+
+REQUIRES           = secure/libcap/2.48
+REQUIRES          += net/iproute2/5.9.0
+REQUIRES          += net/krb5/1.19.1
+
+# ======= __END_OF_REQUIRES__ =======
+
+
+version            = 0.3.1
+tar_xz_archive     = $(SRC_PACKAGE_PATH)/packages/n/webrtc-audio-processing/webrtc-audio-processing-$(version).tar.xz
+SRC_ARCHIVE        = $(tar_xz_archive)
+SRC_DIR            = $(TARGET_BUILD_DIR)/webrtc-audio-processing-$(version)
+src_dir_name       = webrtc-audio-processing-$(version)
+src_done           = $(TARGET_BUILD_DIR)/.source_done
+
+conf_dir           = $(CURDIR)/conf
+
+
+PATCHES = PATCHES
+
+build_target       = $(TARGET_BUILD_DIR)/.build_done
+install_target     = $(TARGET_BUILD_DIR)/.install_done
+
+
+####### Targets
+
+PKG_GROUP = net
+
+#
+# *PKG_NAME & *PKG_VERSION shouldn't be a reference to value.
+#
+WEBRTC_PKG_NAME                = webrtc-audio-processing
+WEBRTC_PKG_VERSION             = 0.3.1
+WEBRTC_PKG_ARCH                = $(PKGARCH)
+WEBRTC_PKG_DISTRO_NAME         = $(DISTRO_NAME)
+WEBRTC_PKG_DISTRO_VERSION      = $(DISTRO_VERSION)
+WEBRTC_PKG_GROUP               = $(PKG_GROUP)
+###                             |---handy-ruler-------------------------------|
+WEBRTC_PKG_SHORT_DESCRIPTION   = WebRTC Audio Processing
+WEBRTC_PKG_URL                 = $(BUG_URL)
+WEBRTC_PKG_LICENSE             = custom
+WEBRTC_PKG_DESCRIPTION_FILE    = $(TARGET_BUILD_DIR)/$(WEBRTC_PKG_NAME)-pkg-description
+WEBRTC_PKG_DESCRIPTION_FILE_IN = $(WEBRTC_PKG_NAME)-pkg-description.in
+WEBRTC_PKG_INSTALL_SCRIPT      = $(WEBRTC_PKG_NAME)-pkg-install.sh
+
+WEBRTC_PKG       = $(CURDIR)/$(TARGET_BUILD_DIR)/$(WEBRTC_PKG_NAME)-package
+
+pkg_basename     = $(WEBRTC_PKG_NAME)-$(WEBRTC_PKG_VERSION)-$(WEBRTC_PKG_ARCH)-$(WEBRTC_PKG_DISTRO_NAME)-$(WEBRTC_PKG_DISTRO_VERSION)
+
+pkg_archive      = $(TARGET_BUILD_DIR)/$(PKG_GROUP)/$(pkg_basename).$(pkg_arch_suffix)
+pkg_certificate  = $(call cert-name,$(pkg_archive))
+pkg_signature    = $(call sign-name,$(pkg_archive))
+pkg_description  = $(call desc-name,$(pkg_archive))
+products         = $(call pkg-files,$(pkg_archive))
+
+BUILD_TARGETS    = $(build_target)
+BUILD_TARGETS   += $(install_target)
+
+PRODUCT_TARGETS  = $(products)
+
+ROOTFS_TARGETS   = $(pkg_archive)
+
+
+include ../../../build-system/core.mk
+
+
+env_sysroot  = DESTDIR=$(WEBRTC_PKG)
+
+
+extra_configure_switches  = --libdir=/usr/lib$(LIBSUFFIX)
+extra_configure_switches += --docdir=/usr/share/doc/$(src_dir_name)
+extra_configure_switches += --infodir=/usr/share/info
+extra_configure_switches += --mandir=/usr/share/man
+extra_configure_switches += --disable-dependency-tracking
+
+extra_configure_switches += --sysconfdir=/etc
+extra_configure_switches += --localstatedir=/var
+
+ifeq ($(__ENABLE_STATIC__),yes)
+extra_configure_switches += --enable-static=yes
+else
+extra_configure_switches += --enable-static=no
+endif
+extra_configure_switches += --enable-shared=yes
+
+
+TARGET_LIB_RPATH = /lib$(LIBSUFFIX):/usr/lib$(LIBSUFFIX):/usr/lib/../lib$(LIBSUFFIX)
+
+
+####### Dependencies
+
+$(src_done): $(SRC_ARCHIVE) $(PATCHES_DEP)
+	$(UNPACK_SRC_ARCHIVE)
+	$(APPLY_PATCHES)
+	@cp -a $(CONFIG_GUESS) $(CONFIG_SUB) $(SRC_DIR)
+	@touch $@
+
+$(build_target): $(src_done)
+	@cd $(SRC_DIR) && $(BUILD_ENVIRONMENT) ./configure \
+	  --prefix=/usr               \
+	  --build=$(BUILD)            \
+	  --host=$(TARGET)            \
+	  $(extra_configure_switches)
+	@cd $(SRC_DIR) && $(BUILD_ENVIRONMENT) $(MAKE)
+	@touch $@
+
+$(install_target): $(build_target)
+	@mkdir -p $(WEBRTC_PKG)
+	@cd $(SRC_DIR) && $(BUILD_ENVIRONMENT) $(MAKE) -j1 install $(env_sysroot)
+	# ======= Install Documentation =======
+	@if [ -d $(WEBRTC_PKG)/usr/share/man ]; then \
+	  ( cd $(WEBRTC_PKG)/usr/share/man ; \
+	    for manpagedir in `find . -type d -name "man*"` ; do \
+	      ( cd $$manpagedir ; \
+	        for eachpage in `find . -type l -maxdepth 1` ; do \
+	          ln -s `readlink $$eachpage`.gz $$eachpage.gz ; \
+	          rm $$eachpage ; \
+	        done ; \
+	        gzip -9 *.? ; \
+	      ) \
+	    done \
+	  ) \
+	 fi
+	@mkdir -p $(WEBRTC_PKG)/usr/doc/$(src_dir_name)
+	@cat $(SRC_DIR)/AUTHORS | tr -d '\r' \
+	     > $(WEBRTC_PKG)/usr/doc/$(src_dir_name)/AUTHORS
+	@cp -a $(SRC_DIR)/COPYING \
+	       $(WEBRTC_PKG)/usr/doc/$(src_dir_name)
+	@mkdir -p $(WEBRTC_PKG)/usr/share/doc/$(src_dir_name)
+	@cat $(SRC_DIR)/AUTHORS | tr -d '\r' \
+	     > $(WEBRTC_PKG)/usr/share/doc/$(src_dir_name)/AUTHORS
+	@( cd $(SRC_DIR) ; \
+	   cp -a COPYING INSTALL NEWS README* UPDATING.md \
+	         $(WEBRTC_PKG)/usr/share/doc/$(src_dir_name) ; \
+	 )
+	@( cd $(SRC_DIR) ; \
+	   if [ -r ChangeLog -a -s ChangeLog ]; then \
+	     DOCSDIR=`echo $(WEBRTC_PKG)/usr/share/doc/$(src_dir_name)` ; \
+	     cat ChangeLog | head -n 1000 > $$DOCSDIR/ChangeLog ; \
+	     touch -r ChangeLog $$DOCSDIR/ChangeLog ; \
+	   fi \
+	 )
+	# ======= remove toolchain path from target libtool *.la files =======
+	@( cd $(WEBRTC_PKG)/usr/lib$(LIBSUFFIX) ; \
+	   sed -i "s,$(TARGET_DEST_DIR),,g" libwebrtc_audio_processing.la ; \
+	 )
+	# ======= Install the same to $(TARGET_DEST_DIR) =======
+	$(call install-into-devenv, $(WEBRTC_PKG))
+	# ======= tune libtool *.la search path to the target destination for development =======
+	@( cd $(TARGET_DEST_DIR)/usr/lib$(LIBSUFFIX) ; \
+	   sed -i "s,/usr,$(TARGET_DEST_DIR)/usr,g"   libwebrtc_audio_processing.la ; \
+	   sed -i "s,L/lib,L$(TARGET_DEST_DIR)/lib,g" libwebrtc_audio_processing.la ; \
+	 )
+	# ======= tune pkg-config *.pc search path to the target destination for development =======
+	@( cd $(TARGET_DEST_DIR)/usr/lib$(LIBSUFFIX)/pkgconfig ; \
+	   sed -i "s,/usr,$(TARGET_DEST_DIR)/usr,g" webrtc-audio-processing.pc   ; \
+	 )
+	# ======= Strip binaries =======
+	@( cd $(WEBRTC_PKG) ; \
+	   find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs $(STRIP) --strip-unneeded 2> /dev/null ; \
+	 )
+ifeq ($(__ENABLE_STATIC__),yes)
+	@( cd $(WEBRTC_PKG) ; \
+	   find . | xargs file | grep "current ar archive" | cut -f 1 -d : | xargs $(STRIP) -g 2> /dev/null ; \
+	 )
+endif
+ifneq ($(PATCHELF),)
+	# ======= Set RPATH/RUNPATH for target shared objects =======
+	@( cd $(WEBRTC_PKG)/usr/lib$(LIBSUFFIX) ; \
+	   for file in `find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs echo` ; do \
+	     rpath=`$(PATCHELF) --print-rpath $$file 2> /dev/null` ; \
+	     if echo "$$rpath" | grep -q "$(TARGET_DEST_DIR)" ; then \
+	       $(PATCHELF) --set-rpath $(TARGET_LIB_RPATH) $$file 1> /dev/null 2> /dev/null ; \
+	     fi ; \
+	   done ; \
+	 )
+endif
+	@touch $@
+
+$(WEBRTC_PKG_DESCRIPTION_FILE): $(WEBRTC_PKG_DESCRIPTION_FILE_IN)
+	@cat $< | $(SED) -e "s/@VERSION@/$(version)/g" > $@
+
+$(pkg_certificate) : $(pkg_archive) ;
+$(pkg_signature)   : $(pkg_archive) ;
+$(pkg_description) : $(pkg_archive) ;
+
+$(pkg_archive): $(install_target) $(WEBRTC_PKG_DESCRIPTION_FILE) $(WEBRTC_PKG_INSTALL_SCRIPT)
+	@cp $(WEBRTC_PKG_DESCRIPTION_FILE) $(WEBRTC_PKG)/.DESCRIPTION
+	@cp $(WEBRTC_PKG_INSTALL_SCRIPT) $(WEBRTC_PKG)/.INSTALL
+	@$(BUILD_PKG_REQUIRES) $(WEBRTC_PKG)/.REQUIRES
+	@echo "pkgname=$(WEBRTC_PKG_NAME)"                            >  $(WEBRTC_PKG)/.PKGINFO ; \
+	 echo "pkgver=$(WEBRTC_PKG_VERSION)"                          >> $(WEBRTC_PKG)/.PKGINFO ; \
+	 echo "arch=$(WEBRTC_PKG_ARCH)"                               >> $(WEBRTC_PKG)/.PKGINFO ; \
+	 echo "distroname=$(WEBRTC_PKG_DISTRO_NAME)"                  >> $(WEBRTC_PKG)/.PKGINFO ; \
+	 echo "distrover=$(WEBRTC_PKG_DISTRO_VERSION)"                >> $(WEBRTC_PKG)/.PKGINFO ; \
+	 echo "group=$(WEBRTC_PKG_GROUP)"                             >> $(WEBRTC_PKG)/.PKGINFO ; \
+	 echo "short_description=\"$(WEBRTC_PKG_SHORT_DESCRIPTION)\"" >> $(WEBRTC_PKG)/.PKGINFO ; \
+	 echo "url=$(WEBRTC_PKG_URL)"                                 >> $(WEBRTC_PKG)/.PKGINFO ; \
+	 echo "license=$(WEBRTC_PKG_LICENSE)"                         >> $(WEBRTC_PKG)/.PKGINFO
+	@$(PSEUDO) sh -c "cd $(WEBRTC_PKG) && \
+	                  chown -R root:root . && \
+	                  $(MAKE_PACKAGE) -J --linkadd=yes $(GNUPG_OPTIONS) -m -d .. ."
Index: radix-1.9/net/webrtc-audio-processing/0.3.1/PATCHES
===================================================================
--- radix-1.9/net/webrtc-audio-processing/0.3.1/PATCHES	(nonexistent)
+++ radix-1.9/net/webrtc-audio-processing/0.3.1/PATCHES	(revision 62)
@@ -0,0 +1,3 @@
+
+../../../sources/packages/n/webrtc-audio-processing/patches/webrtc-audio-processing-0.3.1-cross.patch      -p0
+../../../sources/packages/n/webrtc-audio-processing/patches/webrtc-audio-processing-0.3.1-big-endian.patch -p0
Index: radix-1.9/net/webrtc-audio-processing/0.3.1/webrtc-audio-processing-pkg-description.in
===================================================================
--- radix-1.9/net/webrtc-audio-processing/0.3.1/webrtc-audio-processing-pkg-description.in	(nonexistent)
+++ radix-1.9/net/webrtc-audio-processing/0.3.1/webrtc-audio-processing-pkg-description.in	(revision 62)
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.  Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in.  You must
+# make exactly 11 lines for the formatting to be correct.  It's also
+# customary to leave one space after the ':'.
+
+                       |-----handy-ruler------------------------------------------------------|
+webrtc-audio-processing: webrtc-audio-processing @VERSION@ (WebRTC Audio Processing)
+webrtc-audio-processing:
+webrtc-audio-processing: This is meant to be a more Linux packaging friendly copy of the
+webrtc-audio-processing: AudioProcessing module from the  WebRTC  project. The ideal case
+webrtc-audio-processing: is that we make no changes to the code to make tracking upstream
+webrtc-audio-processing: code easy.
+webrtc-audio-processing:
+webrtc-audio-processing: This package currently only includes the AudioProcessing bits.
+webrtc-audio-processing:
+webrtc-audio-processing:
+webrtc-audio-processing:
Index: radix-1.9/net/webrtc-audio-processing/0.3.1/webrtc-audio-processing-pkg-install.sh
===================================================================
--- radix-1.9/net/webrtc-audio-processing/0.3.1/webrtc-audio-processing-pkg-install.sh	(nonexistent)
+++ radix-1.9/net/webrtc-audio-processing/0.3.1/webrtc-audio-processing-pkg-install.sh	(revision 62)
@@ -0,0 +1,53 @@
+#!/bin/sh
+
+# Preserve new files
+install_file() {
+  NEW="$1"
+  OLD="`dirname $NEW`/`basename $NEW .new`"
+  # If there's no file by that name, mv it over:
+  if [ ! -r $OLD ]; then
+    mv $NEW $OLD
+  elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy
+    rm $NEW
+  fi
+  # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+
+# arg 1:  the new package version
+pre_install() {
+  /bin/true
+}
+
+# arg 1:  the new package version
+post_install() {
+  /bin/true
+}
+
+# arg 1:  the new package version
+# arg 2:  the old package version
+pre_update() {
+  /bin/true
+}
+
+# arg 1:  the new package version
+# arg 2:  the old package version
+post_update() {
+  post_install
+}
+
+# arg 1:  the old package version
+pre_remove() {
+  /bin/true
+}
+
+# arg 1:  the old package version
+post_remove() {
+  /bin/true
+}
+
+
+operation=$1
+shift
+
+$operation $*

Property changes on: radix-1.9/net/webrtc-audio-processing/0.3.1/webrtc-audio-processing-pkg-install.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: radix-1.9/net/webrtc-audio-processing/0.3.1
===================================================================
--- radix-1.9/net/webrtc-audio-processing/0.3.1	(nonexistent)
+++ radix-1.9/net/webrtc-audio-processing/0.3.1	(revision 62)

Property changes on: radix-1.9/net/webrtc-audio-processing/0.3.1
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,74 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.rk358x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: radix-1.9/products/base/Makefile
===================================================================
--- radix-1.9/products/base/Makefile	(revision 61)
+++ radix-1.9/products/base/Makefile	(revision 62)
@@ -1159,6 +1159,9 @@
 REQUIRES += net/libnice/0.1.21-x86_32
 endif
 
+REQUIRES += net/libsignal-protocol-c/2.3.3
+REQUIRES += net/webrtc-audio-processing/0.3.1
+
 REQUIRES += net/nss-pam-ldapd/0.9.11
 ifneq ($(filter $(TOOLCHAIN),$(TOOLCHAIN_POWER8_GLIBC) $(TOOLCHAIN_POWER9_GLIBC)),)
 REQUIRES += net/nss-pam-ldapd/0.9.11-ppc32
Index: radix-1.9/sources/packages/n/libsignal-protocol-c/Makefile
===================================================================
--- radix-1.9/sources/packages/n/libsignal-protocol-c/Makefile	(nonexistent)
+++ radix-1.9/sources/packages/n/libsignal-protocol-c/Makefile	(revision 62)
@@ -0,0 +1,47 @@
+
+COMPONENT_TARGETS = $(HARDWARE_NOARCH)
+
+
+include ../../../../build-system/constants.mk
+
+
+url         = $(DOWNLOAD_SERVER)/sources/packages/n/libsignal-protocol-c
+
+versions    = 2.3.3
+pkgname     = libsignal-protocol-c
+suffix      = tar.xz
+
+tarballs    = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s       = $(addsuffix .sha1sum, $(tarballs))
+
+
+BUILD_TARGETS = $(tarballs) $(sha1s)
+
+
+include ../../../../build-system/core.mk
+
+
+.PHONY: download_clean
+
+
+$(tarballs):
+	@echo -e "\n======= Downloading source tarballs =======" ; \
+	 for tarball in $(tarballs) ; do \
+	   echo "$(url)/$$tarball" | xargs -n 1 -P 100 wget $(WGET_OPTIONS) - & \
+	 done ; wait
+
+$(sha1s): $(tarballs)
+	@for sha in $@ ; do \
+	   echo -e "\n======= Downloading '$$sha' signature =======\n" ; \
+	   echo "$(url)/$$sha" | xargs -n 1 -P 100 wget $(WGET_OPTIONS) - & wait %1 ; \
+	   touch $$sha ; \
+	   echo -e "\n======= Check the '$$sha' sha1sum =======\n" ; \
+	   sha1sum --check $$sha ; ret="$$?" ; \
+	   if [ "$$ret" == "1" ]; then \
+	     echo -e "\n======= ERROR: Bad '$$sha' sha1sum =======\n" ; \
+	     exit 1 ; \
+	   fi ; \
+	 done
+
+download_clean:
+	@rm -f $(tarballs) $(sha1s)
Index: radix-1.9/sources/packages/n/libsignal-protocol-c
===================================================================
--- radix-1.9/sources/packages/n/libsignal-protocol-c	(nonexistent)
+++ radix-1.9/sources/packages/n/libsignal-protocol-c	(revision 62)

Property changes on: radix-1.9/sources/packages/n/libsignal-protocol-c
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,74 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.rk358x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/Makefile
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/Makefile	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/Makefile	(revision 62)
@@ -0,0 +1,58 @@
+
+COMPONENT_TARGETS = $(HARDWARE_NOARCH)
+
+
+include ../../../../build-system/constants.mk
+
+
+url         = $(DOWNLOAD_SERVER)/sources/packages/n/webrtc-audio-processing
+
+versions    = 0.3.1
+pkgname     = webrtc-audio-processing
+suffix      = tar.xz
+
+tarballs    = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s       = $(addsuffix .sha1sum, $(tarballs))
+
+patches     = $(CURDIR)/patches/webrtc-audio-processing-0.3.1-cross.patch
+patches    += $(CURDIR)/patches/webrtc-audio-processing-0.3.1-big-endian.patch
+
+.NOTPARALLEL: $(patches)
+
+
+BUILD_TARGETS = $(tarballs) $(sha1s) $(patches)
+
+
+include ../../../../build-system/core.mk
+
+
+.PHONY: download_clean
+
+
+$(tarballs):
+	@echo -e "\n======= Downloading source tarballs =======" ; \
+	 for tarball in $(tarballs) ; do \
+	   echo "$(url)/$$tarball" | xargs -n 1 -P 100 wget $(WGET_OPTIONS) - & \
+	 done ; wait
+
+$(sha1s): $(tarballs)
+	@for sha in $@ ; do \
+	   echo -e "\n======= Downloading '$$sha' signature =======\n" ; \
+	   echo "$(url)/$$sha" | xargs -n 1 -P 100 wget $(WGET_OPTIONS) - & wait %1 ; \
+	   touch $$sha ; \
+	   echo -e "\n======= Check the '$$sha' sha1sum =======\n" ; \
+	   sha1sum --check $$sha ; ret="$$?" ; \
+	   if [ "$$ret" == "1" ]; then \
+	     echo -e "\n======= ERROR: Bad '$$sha' sha1sum =======\n" ; \
+	     exit 1 ; \
+	   fi ; \
+	 done
+
+$(patches): $(sha1s)
+	@echo -e "\n======= Create Patches =======\n" ; \
+	 ( cd create-0.3.1-cross-patch      ; ./create.patch.sh ) ; \
+	 ( cd create-0.3.1-big-endian-patch ; ./create.patch.sh ) ; \
+	 echo -e "\n"
+
+download_clean:
+	@rm -f $(tarballs) $(sha1s) $(patches)
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/create.patch.sh
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/create.patch.sh	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/create.patch.sh	(revision 62)
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+VERSION=0.3.1
+
+tar --files-from=file.list -xJvf ../webrtc-audio-processing-$VERSION.tar.xz
+mv webrtc-audio-processing-$VERSION webrtc-audio-processing-$VERSION-orig
+
+cp -rf ./webrtc-audio-processing-$VERSION-new ./webrtc-audio-processing-$VERSION
+
+diff --unified -Nr  webrtc-audio-processing-$VERSION-orig  webrtc-audio-processing-$VERSION > webrtc-audio-processing-$VERSION-big-endian.patch
+
+mv webrtc-audio-processing-$VERSION-big-endian.patch ../patches
+
+rm -rf ./webrtc-audio-processing-$VERSION
+rm -rf ./webrtc-audio-processing-$VERSION-orig

Property changes on: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/create.patch.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/file.list
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/file.list	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/file.list	(revision 62)
@@ -0,0 +1,2 @@
+webrtc-audio-processing-0.3.1/webrtc/common_audio/wav_file.cc
+webrtc-audio-processing-0.3.1/webrtc/common_audio/wav_header.cc
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/webrtc-audio-processing-0.3.1-new/webrtc/common_audio/wav_file.cc
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/webrtc-audio-processing-0.3.1-new/webrtc/common_audio/wav_file.cc	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/webrtc-audio-processing-0.3.1-new/webrtc/common_audio/wav_file.cc	(revision 62)
@@ -0,0 +1,192 @@
+/*
+ *  Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
+ *
+ *  Use of this source code is governed by a BSD-style license
+ *  that can be found in the LICENSE file in the root of the source
+ *  tree. An additional intellectual property rights grant can be found
+ *  in the file PATENTS.  All contributing project authors may
+ *  be found in the AUTHORS file in the root of the source tree.
+ */
+
+#include "webrtc/common_audio/wav_file.h"
+
+#include <algorithm>
+#include <cstdio>
+#include <limits>
+
+#include "webrtc/base/checks.h"
+#include "webrtc/base/safe_conversions.h"
+#include "webrtc/common_audio/include/audio_util.h"
+#include "webrtc/common_audio/wav_header.h"
+
+namespace webrtc {
+
+// We write 16-bit PCM WAV files.
+static const WavFormat kWavFormat = kWavFormatPcm;
+static const int kBytesPerSample = 2;
+
+// Doesn't take ownership of the file handle and won't close it.
+class ReadableWavFile : public ReadableWav {
+ public:
+  explicit ReadableWavFile(FILE* file) : file_(file) {}
+  virtual size_t Read(void* buf, size_t num_bytes) {
+    return fread(buf, 1, num_bytes, file_);
+  }
+
+ private:
+  FILE* file_;
+};
+
+std::string WavFile::FormatAsString() const {
+  std::ostringstream s;
+  s << "Sample rate: " << sample_rate() << " Hz, Channels: " << num_channels()
+    << ", Duration: "
+    << (1.f * num_samples()) / (num_channels() * sample_rate()) << " s";
+  return s.str();
+}
+
+WavReader::WavReader(const std::string& filename)
+    : file_handle_(fopen(filename.c_str(), "rb")) {
+  RTC_CHECK(file_handle_) << "Could not open wav file for reading.";
+
+  ReadableWavFile readable(file_handle_);
+  WavFormat format;
+  int bytes_per_sample;
+  RTC_CHECK(ReadWavHeader(&readable, &num_channels_, &sample_rate_, &format,
+                          &bytes_per_sample, &num_samples_));
+  num_samples_remaining_ = num_samples_;
+  RTC_CHECK_EQ(kWavFormat, format);
+  RTC_CHECK_EQ(kBytesPerSample, bytes_per_sample);
+}
+
+WavReader::~WavReader() {
+  Close();
+}
+
+size_t WavReader::ReadSamples(size_t num_samples, int16_t* samples) {
+  // There could be metadata after the audio; ensure we don't read it.
+  num_samples = std::min(rtc::checked_cast<uint32_t>(num_samples),
+                         num_samples_remaining_);
+  const size_t read =
+      fread(samples, sizeof(*samples), num_samples, file_handle_);
+  // If we didn't read what was requested, ensure we've reached the EOF.
+  RTC_CHECK(read == num_samples || feof(file_handle_));
+  RTC_CHECK_LE(read, num_samples_remaining_);
+  num_samples_remaining_ -= rtc::checked_cast<uint32_t>(read);
+#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
+  //convert to big-endian
+  for(size_t idx = 0; idx < num_samples; idx++) {
+    samples[idx] = (samples[idx]<<8) | (samples[idx]>>8);
+  }
+#endif
+  return read;
+}
+
+size_t WavReader::ReadSamples(size_t num_samples, float* samples) {
+  static const size_t kChunksize = 4096 / sizeof(uint16_t);
+  size_t read = 0;
+  for (size_t i = 0; i < num_samples; i += kChunksize) {
+    int16_t isamples[kChunksize];
+    size_t chunk = std::min(kChunksize, num_samples - i);
+    chunk = ReadSamples(chunk, isamples);
+    for (size_t j = 0; j < chunk; ++j)
+      samples[i + j] = isamples[j];
+    read += chunk;
+  }
+  return read;
+}
+
+void WavReader::Close() {
+  RTC_CHECK_EQ(0, fclose(file_handle_));
+  file_handle_ = NULL;
+}
+
+WavWriter::WavWriter(const std::string& filename, int sample_rate,
+                     int num_channels)
+    : sample_rate_(sample_rate),
+      num_channels_(num_channels),
+      num_samples_(0),
+      file_handle_(fopen(filename.c_str(), "wb")) {
+  RTC_CHECK(file_handle_) << "Could not open wav file for writing.";
+  RTC_CHECK(CheckWavParameters(num_channels_, sample_rate_, kWavFormat,
+                               kBytesPerSample, num_samples_));
+
+  // Write a blank placeholder header, since we need to know the total number
+  // of samples before we can fill in the real data.
+  static const uint8_t blank_header[kWavHeaderSize] = {0};
+  RTC_CHECK_EQ(1u, fwrite(blank_header, kWavHeaderSize, 1, file_handle_));
+}
+
+WavWriter::~WavWriter() {
+  Close();
+}
+
+void WavWriter::WriteSamples(const int16_t* samples, size_t num_samples) {
+#ifndef WEBRTC_ARCH_LITTLE_ENDIAN
+  int16_t * le_samples = new int16_t[num_samples];
+  for(size_t idx = 0; idx < num_samples; idx++) {
+    le_samples[idx] = (samples[idx]<<8) | (samples[idx]>>8);
+  }
+  const size_t written =
+      fwrite(le_samples, sizeof(*le_samples), num_samples, file_handle_);
+  delete []le_samples;
+#else
+  const size_t written =
+      fwrite(samples, sizeof(*samples), num_samples, file_handle_);
+#endif
+  RTC_CHECK_EQ(num_samples, written);
+  num_samples_ += static_cast<uint32_t>(written);
+  RTC_CHECK(written <= std::numeric_limits<uint32_t>::max() ||
+            num_samples_ >= written);  // detect uint32_t overflow
+}
+
+void WavWriter::WriteSamples(const float* samples, size_t num_samples) {
+  static const size_t kChunksize = 4096 / sizeof(uint16_t);
+  for (size_t i = 0; i < num_samples; i += kChunksize) {
+    int16_t isamples[kChunksize];
+    const size_t chunk = std::min(kChunksize, num_samples - i);
+    FloatS16ToS16(samples + i, chunk, isamples);
+    WriteSamples(isamples, chunk);
+  }
+}
+
+void WavWriter::Close() {
+  RTC_CHECK_EQ(0, fseek(file_handle_, 0, SEEK_SET));
+  uint8_t header[kWavHeaderSize];
+  WriteWavHeader(header, num_channels_, sample_rate_, kWavFormat,
+                 kBytesPerSample, num_samples_);
+  RTC_CHECK_EQ(1u, fwrite(header, kWavHeaderSize, 1, file_handle_));
+  RTC_CHECK_EQ(0, fclose(file_handle_));
+  file_handle_ = NULL;
+}
+
+}  // namespace webrtc
+
+rtc_WavWriter* rtc_WavOpen(const char* filename,
+                           int sample_rate,
+                           int num_channels) {
+  return reinterpret_cast<rtc_WavWriter*>(
+      new webrtc::WavWriter(filename, sample_rate, num_channels));
+}
+
+void rtc_WavClose(rtc_WavWriter* wf) {
+  delete reinterpret_cast<webrtc::WavWriter*>(wf);
+}
+
+void rtc_WavWriteSamples(rtc_WavWriter* wf,
+                         const float* samples,
+                         size_t num_samples) {
+  reinterpret_cast<webrtc::WavWriter*>(wf)->WriteSamples(samples, num_samples);
+}
+
+int rtc_WavSampleRate(const rtc_WavWriter* wf) {
+  return reinterpret_cast<const webrtc::WavWriter*>(wf)->sample_rate();
+}
+
+int rtc_WavNumChannels(const rtc_WavWriter* wf) {
+  return reinterpret_cast<const webrtc::WavWriter*>(wf)->num_channels();
+}
+
+uint32_t rtc_WavNumSamples(const rtc_WavWriter* wf) {
+  return reinterpret_cast<const webrtc::WavWriter*>(wf)->num_samples();
+}
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/webrtc-audio-processing-0.3.1-new/webrtc/common_audio/wav_header.cc
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/webrtc-audio-processing-0.3.1-new/webrtc/common_audio/wav_header.cc	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-big-endian-patch/webrtc-audio-processing-0.3.1-new/webrtc/common_audio/wav_header.cc	(revision 62)
@@ -0,0 +1,274 @@
+/*
+ *  Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
+ *
+ *  Use of this source code is governed by a BSD-style license
+ *  that can be found in the LICENSE file in the root of the source
+ *  tree. An additional intellectual property rights grant can be found
+ *  in the file PATENTS.  All contributing project authors may
+ *  be found in the AUTHORS file in the root of the source tree.
+ */
+
+// Based on the WAV file format documentation at
+// https://ccrma.stanford.edu/courses/422/projects/WaveFormat/ and
+// http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html
+
+#include "webrtc/common_audio/wav_header.h"
+
+#include <algorithm>
+#include <cstring>
+#include <limits>
+#include <string>
+
+#include "webrtc/base/checks.h"
+#include "webrtc/common_audio/include/audio_util.h"
+
+namespace webrtc {
+namespace {
+
+struct ChunkHeader {
+  uint32_t ID;
+  uint32_t Size;
+};
+static_assert(sizeof(ChunkHeader) == 8, "ChunkHeader size");
+
+// We can't nest this definition in WavHeader, because VS2013 gives an error
+// on sizeof(WavHeader::fmt): "error C2070: 'unknown': illegal sizeof operand".
+struct FmtSubchunk {
+  ChunkHeader header;
+  uint16_t AudioFormat;
+  uint16_t NumChannels;
+  uint32_t SampleRate;
+  uint32_t ByteRate;
+  uint16_t BlockAlign;
+  uint16_t BitsPerSample;
+};
+static_assert(sizeof(FmtSubchunk) == 24, "FmtSubchunk size");
+const uint32_t kFmtSubchunkSize = sizeof(FmtSubchunk) - sizeof(ChunkHeader);
+
+struct WavHeader {
+  struct {
+    ChunkHeader header;
+    uint32_t Format;
+  } riff;
+  FmtSubchunk fmt;
+  struct {
+    ChunkHeader header;
+  } data;
+};
+static_assert(sizeof(WavHeader) == kWavHeaderSize, "no padding in header");
+
+}  // namespace
+
+bool CheckWavParameters(int num_channels,
+                        int sample_rate,
+                        WavFormat format,
+                        int bytes_per_sample,
+                        uint32_t num_samples) {
+  // num_channels, sample_rate, and bytes_per_sample must be positive, must fit
+  // in their respective fields, and their product must fit in the 32-bit
+  // ByteRate field.
+  if (num_channels <= 0 || sample_rate <= 0 || bytes_per_sample <= 0)
+    return false;
+  if (static_cast<uint64_t>(sample_rate) > std::numeric_limits<uint32_t>::max())
+    return false;
+  if (static_cast<uint64_t>(num_channels) >
+      std::numeric_limits<uint16_t>::max())
+    return false;
+  if (static_cast<uint64_t>(bytes_per_sample) * 8 >
+      std::numeric_limits<uint16_t>::max())
+    return false;
+  if (static_cast<uint64_t>(sample_rate) * num_channels * bytes_per_sample >
+      std::numeric_limits<uint32_t>::max())
+    return false;
+
+  // format and bytes_per_sample must agree.
+  switch (format) {
+    case kWavFormatPcm:
+      // Other values may be OK, but for now we're conservative:
+      if (bytes_per_sample != 1 && bytes_per_sample != 2)
+        return false;
+      break;
+    case kWavFormatALaw:
+    case kWavFormatMuLaw:
+      if (bytes_per_sample != 1)
+        return false;
+      break;
+    default:
+      return false;
+  }
+
+  // The number of bytes in the file, not counting the first ChunkHeader, must
+  // be less than 2^32; otherwise, the ChunkSize field overflows.
+  const uint32_t max_samples =
+      (std::numeric_limits<uint32_t>::max()
+       - (kWavHeaderSize - sizeof(ChunkHeader))) /
+      bytes_per_sample;
+  if (num_samples > max_samples)
+    return false;
+
+  // Each channel must have the same number of samples.
+  if (num_samples % num_channels != 0)
+    return false;
+
+  return true;
+}
+
+#ifdef WEBRTC_ARCH_LITTLE_ENDIAN
+static inline void WriteLE16(uint16_t* f, uint16_t x) { *f = x; }
+static inline void WriteLE32(uint32_t* f, uint32_t x) { *f = x; }
+static inline void WriteFourCC(uint32_t* f, char a, char b, char c, char d) {
+  *f = static_cast<uint32_t>(a)
+      | static_cast<uint32_t>(b) << 8
+      | static_cast<uint32_t>(c) << 16
+      | static_cast<uint32_t>(d) << 24;
+}
+
+static inline uint16_t ReadLE16(uint16_t x) { return x; }
+static inline uint32_t ReadLE32(uint32_t x) { return x; }
+static inline std::string ReadFourCC(uint32_t x) {
+  return std::string(reinterpret_cast<char*>(&x), 4);
+}
+#else
+static inline void WriteLE16(uint16_t* f, uint16_t x) {
+  *f = ((x << 8) & 0xff00)  | ( ( x >> 8) & 0x00ff);
+}
+
+static inline void WriteLE32(uint32_t* f, uint32_t x) {
+    *f = ( (x & 0x000000ff) << 24 )
+      | ((x & 0x0000ff00) << 8)
+      | ((x & 0x00ff0000) >> 8)
+      | ((x & 0xff000000) >> 24 );
+}
+
+static inline void WriteFourCC(uint32_t* f, char a, char b, char c, char d) {
+    *f = (static_cast<uint32_t>(a) << 24 )
+      |  (static_cast<uint32_t>(b) << 16)
+      |  (static_cast<uint32_t>(c) << 8)
+      |  (static_cast<uint32_t>(d) );
+}
+
+static inline uint16_t ReadLE16(uint16_t x) {
+  return  (( x & 0x00ff) << 8 )| ((x & 0xff00)>>8);
+}
+
+static inline uint32_t ReadLE32(uint32_t x) {
+  return   ( (x & 0x000000ff) << 24 )
+         | ( (x & 0x0000ff00) << 8 )
+         | ( (x & 0x00ff0000) >> 8)
+         | ( (x & 0xff000000) >> 24 );
+}
+
+static inline std::string ReadFourCC(uint32_t x) {
+  x = ReadLE32(x);
+  return std::string(reinterpret_cast<char*>(&x), 4);
+}
+#endif
+
+static inline uint32_t RiffChunkSize(uint32_t bytes_in_payload) {
+  return bytes_in_payload + kWavHeaderSize - sizeof(ChunkHeader);
+}
+
+static inline uint32_t ByteRate(int num_channels, int sample_rate,
+                                int bytes_per_sample) {
+  return static_cast<uint32_t>(num_channels) * sample_rate * bytes_per_sample;
+}
+
+static inline uint16_t BlockAlign(int num_channels, int bytes_per_sample) {
+  return num_channels * bytes_per_sample;
+}
+
+void WriteWavHeader(uint8_t* buf,
+                    int num_channels,
+                    int sample_rate,
+                    WavFormat format,
+                    int bytes_per_sample,
+                    uint32_t num_samples) {
+  RTC_CHECK(CheckWavParameters(num_channels, sample_rate, format,
+                               bytes_per_sample, num_samples));
+
+  WavHeader header;
+  const uint32_t bytes_in_payload = bytes_per_sample * num_samples;
+
+  WriteFourCC(&header.riff.header.ID, 'R', 'I', 'F', 'F');
+  WriteLE32(&header.riff.header.Size, RiffChunkSize(bytes_in_payload));
+  WriteFourCC(&header.riff.Format, 'W', 'A', 'V', 'E');
+
+  WriteFourCC(&header.fmt.header.ID, 'f', 'm', 't', ' ');
+  WriteLE32(&header.fmt.header.Size, kFmtSubchunkSize);
+  WriteLE16(&header.fmt.AudioFormat, format);
+  WriteLE16(&header.fmt.NumChannels, num_channels);
+  WriteLE32(&header.fmt.SampleRate, sample_rate);
+  WriteLE32(&header.fmt.ByteRate, ByteRate(num_channels, sample_rate,
+                                           bytes_per_sample));
+  WriteLE16(&header.fmt.BlockAlign, BlockAlign(num_channels, bytes_per_sample));
+  WriteLE16(&header.fmt.BitsPerSample, 8 * bytes_per_sample);
+
+  WriteFourCC(&header.data.header.ID, 'd', 'a', 't', 'a');
+  WriteLE32(&header.data.header.Size, bytes_in_payload);
+
+  // Do an extra copy rather than writing everything to buf directly, since buf
+  // might not be correctly aligned.
+  memcpy(buf, &header, kWavHeaderSize);
+}
+
+bool ReadWavHeader(ReadableWav* readable,
+                   int* num_channels,
+                   int* sample_rate,
+                   WavFormat* format,
+                   int* bytes_per_sample,
+                   uint32_t* num_samples) {
+  WavHeader header;
+  if (readable->Read(&header, kWavHeaderSize - sizeof(header.data)) !=
+      kWavHeaderSize - sizeof(header.data))
+    return false;
+
+  const uint32_t fmt_size = ReadLE32(header.fmt.header.Size);
+  if (fmt_size != kFmtSubchunkSize) {
+    // There is an optional two-byte extension field permitted to be present
+    // with PCM, but which must be zero.
+    int16_t ext_size;
+    if (kFmtSubchunkSize + sizeof(ext_size) != fmt_size)
+      return false;
+    if (readable->Read(&ext_size, sizeof(ext_size)) != sizeof(ext_size))
+      return false;
+    if (ext_size != 0)
+      return false;
+  }
+  if (readable->Read(&header.data, sizeof(header.data)) != sizeof(header.data))
+    return false;
+
+  // Parse needed fields.
+  *format = static_cast<WavFormat>(ReadLE16(header.fmt.AudioFormat));
+  *num_channels = ReadLE16(header.fmt.NumChannels);
+  *sample_rate = ReadLE32(header.fmt.SampleRate);
+  *bytes_per_sample = ReadLE16(header.fmt.BitsPerSample) / 8;
+  const uint32_t bytes_in_payload = ReadLE32(header.data.header.Size);
+  if (*bytes_per_sample <= 0)
+    return false;
+  *num_samples = bytes_in_payload / *bytes_per_sample;
+
+  // Sanity check remaining fields.
+  if (ReadFourCC(header.riff.header.ID) != "RIFF")
+    return false;
+  if (ReadFourCC(header.riff.Format) != "WAVE")
+    return false;
+  if (ReadFourCC(header.fmt.header.ID) != "fmt ")
+    return false;
+  if (ReadFourCC(header.data.header.ID) != "data")
+    return false;
+
+  if (ReadLE32(header.riff.header.Size) < RiffChunkSize(bytes_in_payload))
+    return false;
+  if (ReadLE32(header.fmt.ByteRate) !=
+      ByteRate(*num_channels, *sample_rate, *bytes_per_sample))
+    return false;
+  if (ReadLE16(header.fmt.BlockAlign) !=
+      BlockAlign(*num_channels, *bytes_per_sample))
+    return false;
+
+  return CheckWavParameters(*num_channels, *sample_rate, *format,
+                            *bytes_per_sample, *num_samples);
+}
+
+
+}  // namespace webrtc
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/create.patch.sh
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/create.patch.sh	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/create.patch.sh	(revision 62)
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+VERSION=0.3.1
+
+tar --files-from=file.list -xJvf ../webrtc-audio-processing-$VERSION.tar.xz
+mv webrtc-audio-processing-$VERSION webrtc-audio-processing-$VERSION-orig
+
+cp -rf ./webrtc-audio-processing-$VERSION-new ./webrtc-audio-processing-$VERSION
+
+diff --unified -Nr  webrtc-audio-processing-$VERSION-orig  webrtc-audio-processing-$VERSION > webrtc-audio-processing-$VERSION-cross.patch
+
+mv webrtc-audio-processing-$VERSION-cross.patch ../patches
+
+rm -rf ./webrtc-audio-processing-$VERSION
+rm -rf ./webrtc-audio-processing-$VERSION-orig

Property changes on: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/create.patch.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/file.list
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/file.list	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/file.list	(revision 62)
@@ -0,0 +1 @@
+webrtc-audio-processing-0.3.1/webrtc/typedefs.h
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/webrtc-audio-processing-0.3.1-new/webrtc/typedefs.h
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/webrtc-audio-processing-0.3.1-new/webrtc/typedefs.h	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/create-0.3.1-cross-patch/webrtc-audio-processing-0.3.1-new/webrtc/typedefs.h	(revision 62)
@@ -0,0 +1,123 @@
+/*
+ *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
+ *
+ *  Use of this source code is governed by a BSD-style license
+ *  that can be found in the LICENSE file in the root of the source
+ *  tree. An additional intellectual property rights grant can be found
+ *  in the file PATENTS.  All contributing project authors may
+ *  be found in the AUTHORS file in the root of the source tree.
+ */
+
+// This file contains platform-specific typedefs and defines.
+// Much of it is derived from Chromium's build/build_config.h.
+
+#ifndef WEBRTC_TYPEDEFS_H_
+#define WEBRTC_TYPEDEFS_H_
+
+// Processor architecture detection.  For more info on what's defined, see:
+//   http://msdn.microsoft.com/en-us/library/b0084kay.aspx
+//   http://www.agner.org/optimize/calling_conventions.pdf
+//   or with gcc, run: "echo | gcc -E -dM -"
+#if defined(_M_X64) || defined(__x86_64__)
+#define WEBRTC_ARCH_X86_FAMILY
+#define WEBRTC_ARCH_X86_64
+#define WEBRTC_ARCH_64_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+
+#elif defined(__riscv_xlen) && __riscv_xlen == 64
+#define WEBRTC_ARCH_64_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif defined(__riscv_xlen) && __riscv_xlen == 32
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif defined(__powerpc64__) && __BIG_ENDIAN__ == 1
+#define WEBRTC_ARCH_64_BITS
+#define WEBRTC_ARCH_BIG_ENDIAN
+#elif defined(__powerpc64__) && __LITTLE_ENDIAN__ == 1
+#define WEBRTC_ARCH_64_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif defined(__aarch64__)
+#define WEBRTC_ARCH_64_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif defined(_M_IX86) || defined(__i386__)
+#define WEBRTC_ARCH_X86_FAMILY
+#define WEBRTC_ARCH_X86
+#define WEBRTC_ARCH_32_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif defined(__ARMEL__)
+// TODO(ajm): We'd prefer to control platform defines here, but this is
+// currently provided by the Android makefiles. Commented to avoid duplicate
+// definition warnings.
+//#define WEBRTC_ARCH_ARM
+// TODO(ajm): Chromium uses the following two defines. Should we switch?
+//#define WEBRTC_ARCH_ARM_FAMILY
+//#define WEBRTC_ARCH_ARMEL
+#define WEBRTC_ARCH_32_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif defined(__MIPSEL__)
+#define WEBRTC_ARCH_32_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif defined(__pnacl__)
+#define WEBRTC_ARCH_32_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#else
+#error Please add support for your architecture in typedefs.h
+#endif
+
+#if !(defined(WEBRTC_ARCH_LITTLE_ENDIAN) ^ defined(WEBRTC_ARCH_BIG_ENDIAN))
+#error Define either WEBRTC_ARCH_LITTLE_ENDIAN or WEBRTC_ARCH_BIG_ENDIAN
+#endif
+
+// TODO(zhongwei.yao): WEBRTC_CPU_DETECTION is only used in one place; we should
+// probably just remove it.
+#if (defined(WEBRTC_ARCH_X86_FAMILY) && !defined(__SSE2__)) || \
+    defined(WEBRTC_DETECT_NEON)
+#define WEBRTC_CPU_DETECTION
+#endif
+
+// TODO(pbos): Use webrtc/base/basictypes.h instead to include fixed-size ints.
+#include <stdint.h>
+
+// Annotate a function indicating the caller must examine the return value.
+// Use like:
+//   int foo() WARN_UNUSED_RESULT;
+// TODO(ajm): Hack to avoid multiple definitions until the base/ of webrtc and
+// libjingle are merged.
+#if !defined(WARN_UNUSED_RESULT)
+#if defined(__GNUC__)
+#define WARN_UNUSED_RESULT __attribute__((warn_unused_result))
+#else
+#define WARN_UNUSED_RESULT
+#endif
+#endif  // WARN_UNUSED_RESULT
+
+// Put after a variable that might not be used, to prevent compiler warnings:
+//   int result ATTRIBUTE_UNUSED = DoSomething();
+//   assert(result == 17);
+#ifndef ATTRIBUTE_UNUSED
+#if defined(__GNUC__) || defined(__clang__)
+#define ATTRIBUTE_UNUSED __attribute__((unused))
+#else
+#define ATTRIBUTE_UNUSED
+#endif
+#endif
+
+// Macro to be used for switch-case fallthrough (required for enabling
+// -Wimplicit-fallthrough warning on Clang).
+#ifndef FALLTHROUGH
+#if defined(__clang__)
+#define FALLTHROUGH() [[clang::fallthrough]]
+#else
+#define FALLTHROUGH() do { } while (0)
+#endif
+#endif
+
+// Annotate a function that will not return control flow to the caller.
+#if defined(_MSC_VER)
+#define NO_RETURN __declspec(noreturn)
+#elif defined(__GNUC__)
+#define NO_RETURN __attribute__((noreturn))
+#else
+#define NO_RETURN
+#endif
+
+#endif  // WEBRTC_TYPEDEFS_H_
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/patches/README
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/patches/README	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/patches/README	(revision 62)
@@ -0,0 +1,6 @@
+
+/* begin *
+
+   TODO: Leave some comment here.
+
+ * end */
Index: radix-1.9/sources/packages/n/webrtc-audio-processing/patches
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing/patches	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing/patches	(revision 62)

Property changes on: radix-1.9/sources/packages/n/webrtc-audio-processing/patches
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,74 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.rk358x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~
Index: radix-1.9/sources/packages/n/webrtc-audio-processing
===================================================================
--- radix-1.9/sources/packages/n/webrtc-audio-processing	(nonexistent)
+++ radix-1.9/sources/packages/n/webrtc-audio-processing	(revision 62)

Property changes on: radix-1.9/sources/packages/n/webrtc-audio-processing
___________________________________________________________________
Added: svn:ignore
## -0,0 +1,74 ##
+
+# install dir
+dist
+
+# Target build dirs
+.a1x-newlib
+.a2x-newlib
+.at91sam7s-newlib
+
+.build-machine
+
+.a1x-glibc
+.a2x-glibc
+.h3-glibc
+.h5-glibc
+.i586-glibc
+.i686-glibc
+.imx6-glibc
+.jz47xx-glibc
+.makefile
+.am335x-glibc
+.omap543x-glibc
+.p5600-glibc
+.power8-glibc
+.power8le-glibc
+.power9-glibc
+.power9le-glibc
+.m1000-glibc
+.riscv64-glibc
+.rk328x-glibc
+.rk33xx-glibc
+.rk339x-glibc
+.rk358x-glibc
+.s8xx-glibc
+.s9xx-glibc
+.x86_64-glibc
+
+# Hidden files (each file)
+.makefile
+.dist
+.rootfs
+
+# src & hw requires
+.src_requires
+.src_requires_depend
+.requires
+.requires_depend
+
+# Tarballs
+*.gz
+*.bz2
+*.lz
+*.xz
+*.tgz
+*.txz
+
+# Signatures
+*.asc
+*.sig
+*.sign
+*.sha1sum
+
+# Patches
+*.patch
+
+# Descriptions
+*.dsc
+*.txt
+
+# Default linux config files
+*.defconfig
+
+# backup copies
+*~