Import buildroot 2016.02.01

This commit is contained in:
2016-02-24 22:35:39 +01:00
parent a6ee09dea4
commit 828befcf3c
7393 changed files with 390887 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,36 @@
menu "Host utilities"
source "package/aespipe/Config.in.host"
source "package/checkpolicy/Config.in.host"
source "package/cramfs/Config.in.host"
source "package/dfu-util/Config.in.host"
source "package/dos2unix/Config.in.host"
source "package/dosfstools/Config.in.host"
source "package/dtc/Config.in.host"
source "package/e2fsprogs/Config.in.host"
source "package/e2tools/Config.in.host"
source "package/faketime/Config.in.host"
source "package/genext2fs/Config.in.host"
source "package/genimage/Config.in.host"
source "package/genpart/Config.in.host"
source "package/gptfdisk/Config.in.host"
source "package/imx-usb-loader/Config.in.host"
source "package/jq/Config.in.host"
source "package/lpc3250loader/Config.in.host"
source "package/mke2img/Config.in.host"
source "package/mtd/Config.in.host"
source "package/mtools/Config.in.host"
source "package/omap-u-boot-utils/Config.in.host"
source "package/openocd/Config.in.host"
source "package/parted/Config.in.host"
source "package/patchelf/Config.in.host"
source "package/pwgen/Config.in.host"
source "package/qemu/Config.in.host"
source "package/sam-ba/Config.in.host"
source "package/squashfs/Config.in.host"
source "package/sunxi-tools/Config.in.host"
source "package/uboot-tools/Config.in.host"
source "package/util-linux/Config.in.host"
source "package/vboot-utils/Config.in.host"
endmenu

View File

@@ -0,0 +1,402 @@
ifndef MAKE
MAKE := make
endif
ifndef HOSTMAKE
HOSTMAKE = $(MAKE)
endif
HOSTMAKE := $(shell which $(HOSTMAKE) || type -p $(HOSTMAKE) || echo make)
# If BR2_JLEVEL is 0, scale the maximum concurrency with the number of
# CPUs. An additional job is used in order to keep processors busy
# while waiting on I/O.
# If the number of processors is not available, assume one.
ifeq ($(BR2_JLEVEL),0)
PARALLEL_JOBS := $(shell echo \
$$((1 + `getconf _NPROCESSORS_ONLN 2>/dev/null || echo 1`)))
else
PARALLEL_JOBS := $(BR2_JLEVEL)
endif
MAKE1 := $(HOSTMAKE) -j1
override MAKE = $(HOSTMAKE) \
$(if $(findstring j,$(filter-out --%,$(MAKEFLAGS))),,-j$(PARALLEL_JOBS))
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
TARGET_VENDOR = $(call qstrip,$(BR2_TOOLCHAIN_BUILDROOT_VENDOR))
else
TARGET_VENDOR = buildroot
endif
# Sanity checks
ifeq ($(TARGET_VENDOR),)
$(error BR2_TOOLCHAIN_BUILDROOT_VENDOR is not allowed to be empty)
endif
ifeq ($(TARGET_VENDOR),unknown)
$(error BR2_TOOLCHAIN_BUILDROOT_VENDOR cannot be 'unknown'. \
It might be confused with the native toolchain)
endif
# Compute GNU_TARGET_NAME
GNU_TARGET_NAME = $(ARCH)-$(TARGET_VENDOR)-$(TARGET_OS)-$(LIBC)$(ABI)
# FLAT binary format needs uclinux
ifeq ($(BR2_BINFMT_FLAT),y)
TARGET_OS = uclinux
else
TARGET_OS = linux
endif
ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
LIBC = uclibc
else ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
LIBC = musl
else
LIBC = gnu
endif
# The ABI suffix is a bit special on ARM, as it needs to be
# -uclibcgnueabi for uClibc EABI, and -gnueabi for glibc EABI.
# This means that the LIBC and ABI aren't strictly orthogonal,
# which explains why we need the test on LIBC below.
ifeq ($(BR2_arm)$(BR2_armeb),y)
ifeq ($(LIBC),uclibc)
ABI = gnueabi
else
ABI = eabi
endif
ifeq ($(BR2_ARM_EABIHF),y)
ABI := $(ABI)hf
endif
endif
# For FSL PowerPC there's SPE
ifeq ($(BR2_powerpc_SPE),y)
ABI = spe
# MPC8540s are e500v1 with single precision FP
ifeq ($(BR2_powerpc_8540),y)
TARGET_ABI += -mabi=spe -mfloat-gprs=single -Wa,-me500
endif
ifeq ($(BR2_powerpc_8548),y)
TARGET_ABI += -mabi=spe -mfloat-gprs=double -Wa,-me500x2
endif
ifeq ($(BR2_powerpc_e500mc),y)
TARGET_ABI += -mabi=spe -mfloat-gprs=double -Wa,-me500mc
endif
endif
# Use longcalls option for Xtensa globally.
# The 'longcalls' option allows calls across a greater range of addresses,
# and is required for some packages. While this option can degrade both
# code size and performance, the linker can usually optimize away the
# overhead when a call ends up within a certain range.
#
# Use auto-litpools for Xtensa globally.
# Collecting literals into separate section can be advantageous if that
# section is placed into DTCM at link time. This is applicable for code
# running on bare metal, but makes no sense under linux, where userspace
# is isolated from the physical memory details. OTOH placing literals into
# separate section breaks build of huge source files, because l32r
# instruction can only access literals in 256 KBytes range.
#
ifeq ($(BR2_xtensa),y)
TARGET_ABI += -mlongcalls -mauto-litpools
endif
ifeq ($(BR2_arc)$(BR2_ARC_ATOMIC_EXT),yy)
TARGET_ABI += -matomic
endif
STAGING_SUBDIR = usr/$(GNU_TARGET_NAME)/sysroot
STAGING_DIR = $(HOST_DIR)/$(STAGING_SUBDIR)
ifeq ($(BR2_OPTIMIZE_0),y)
TARGET_OPTIMIZATION = -O0
endif
ifeq ($(BR2_OPTIMIZE_1),y)
TARGET_OPTIMIZATION = -O1
endif
ifeq ($(BR2_OPTIMIZE_2),y)
TARGET_OPTIMIZATION = -O2
endif
ifeq ($(BR2_OPTIMIZE_3),y)
TARGET_OPTIMIZATION = -O3
endif
ifeq ($(BR2_OPTIMIZE_S),y)
TARGET_OPTIMIZATION = -Os
endif
ifeq ($(BR2_DEBUG_1),y)
TARGET_DEBUGGING = -g1
endif
ifeq ($(BR2_DEBUG_2),y)
TARGET_DEBUGGING = -g2
endif
ifeq ($(BR2_DEBUG_3),y)
TARGET_DEBUGGING = -g3
endif
TARGET_CPPFLAGS += -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
TARGET_CFLAGS = $(TARGET_CPPFLAGS) $(TARGET_ABI) $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING)
TARGET_CXXFLAGS = $(TARGET_CFLAGS)
TARGET_LDFLAGS = $(call qstrip,$(BR2_TARGET_LDFLAGS))
ifeq ($(BR2_BINFMT_FLAT),y)
TARGET_CFLAGS += $(if $($(PKG)_FLAT_STACKSIZE),-Wl$(comma)-elf2flt=-s$($(PKG)_FLAT_STACKSIZE),\
-Wl$(comma)-elf2flt)
TARGET_CXXFLAGS += $(if $($(PKG)_FLAT_STACKSIZE),-Wl$(comma)-elf2flt=-s$($(PKG)_FLAT_STACKSIZE),\
-Wl$(comma)-elf2flt)
TARGET_LDFLAGS += $(if $($(PKG)_FLAT_STACKSIZE),-elf2flt=-s$($(PKG)_FLAT_STACKSIZE),-elf2flt)
endif
ifeq ($(BR2_BINFMT_FLAT_SHARED),y)
TARGET_LDFLAGS += -mid-shared-library -mshared-library-id=0
TARGET_CFLAGS += -mid-shared-library -mshared-library-id=0
TARGET_CXXFLAGS += -mid-shared-library -mshared-library-id=0
endif
ifeq ($(BR2_BINFMT_FLAT_SEP_DATA),y)
TARGET_LDFLAGS += -msep-data
TARGET_CFLAGS += -msep-data
TARGET_CXXFLAGS += -msep-data
endif
ifeq ($(BR2_SSP_REGULAR),y)
TARGET_CFLAGS += -fstack-protector
TARGET_CXXFLAGS += -fstack-protector
else ifeq ($(BR2_SSP_STRONG),y)
TARGET_CFLAGS += -fstack-protector-strong
TARGET_CXXFLAGS += -fstack-protector-strong
else ifeq ($(BR2_SSP_ALL),y)
TARGET_CFLAGS += -fstack-protector-all
TARGET_CXXFLAGS += -fstack-protector-all
endif
ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
TARGET_CROSS = $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-
else
TARGET_CROSS = $(HOST_DIR)/usr/bin/$(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX))-
endif
# Define TARGET_xx variables for all common binutils/gcc
TARGET_AR = $(TARGET_CROSS)ar
TARGET_AS = $(TARGET_CROSS)as
TARGET_CC = $(TARGET_CROSS)gcc
TARGET_CPP = $(TARGET_CROSS)cpp
TARGET_CXX = $(TARGET_CROSS)g++
TARGET_FC = $(TARGET_CROSS)gfortran
TARGET_LD = $(TARGET_CROSS)ld
TARGET_NM = $(TARGET_CROSS)nm
TARGET_RANLIB = $(TARGET_CROSS)ranlib
TARGET_READELF = $(TARGET_CROSS)readelf
TARGET_OBJCOPY = $(TARGET_CROSS)objcopy
TARGET_OBJDUMP = $(TARGET_CROSS)objdump
ifeq ($(BR2_STRIP_strip),y)
STRIP_STRIP_DEBUG := --strip-debug
STRIP_STRIP_UNNEEDED := --strip-unneeded
STRIP_STRIP_ALL := --strip-all
TARGET_STRIP = $(TARGET_CROSS)strip
STRIPCMD = $(TARGET_CROSS)strip --remove-section=.comment --remove-section=.note
KSTRIPCMD = $(STRIPCMD) $(STRIP_STRIP_UNNEEDED)
endif
ifeq ($(BR2_STRIP_sstrip),y)
STRIP_STRIP_DEBUG :=
STRIP_STRIP_UNNEEDED :=
STRIP_STRIP_ALL :=
TARGET_STRIP = $(HOST_DIR)/usr/bin/$(GNU_TARGET_NAME)-sstrip
STRIPCMD = $(TARGET_STRIP)
KSTRIPCMD = $(TARGET_CROSS)strip --remove-section=.comment --remove-section=.note --strip-unneeded
endif
ifeq ($(BR2_STRIP_none),y)
TARGET_STRIP = true
STRIPCMD = $(TARGET_STRIP)
KSTRIPCMD = $(TARGET_STRIP)
endif
INSTALL := $(shell which install || type -p install)
FLEX := $(shell which flex || type -p flex)
BISON := $(shell which bison || type -p bison)
SED := $(shell which sed || type -p sed) -i -e
UNZIP := $(shell which unzip || type -p unzip) -q
APPLY_PATCHES = support/scripts/apply-patches.sh $(if $(QUIET),-s)
HOST_CPPFLAGS = -I$(HOST_DIR)/usr/include
HOST_CFLAGS ?= -O2
HOST_CFLAGS += $(HOST_CPPFLAGS)
HOST_CXXFLAGS += $(HOST_CFLAGS)
HOST_LDFLAGS += -L$(HOST_DIR)/lib -L$(HOST_DIR)/usr/lib -Wl,-rpath,$(HOST_DIR)/usr/lib
# host-intltool should be executed with the system perl, so we save
# the path to the system perl, before a host-perl built by Buildroot
# might get installed into $(HOST_DIR)/usr/bin and therefore appears
# in our PATH. This system perl will be used as INTLTOOL_PERL.
export PERL=$(shell which perl)
# host-intltool needs libxml-parser-perl, which Buildroot installs in
# $(HOST_DIR)/usr/lib/perl, so we must make sure that the system perl
# finds this perl module by exporting the proper value for PERL5LIB.
export PERL5LIB=$(HOST_DIR)/usr/lib/perl
TARGET_CONFIGURE_OPTS = \
PATH=$(BR_PATH) \
AR="$(TARGET_AR)" \
AS="$(TARGET_AS)" \
LD="$(TARGET_LD)" \
NM="$(TARGET_NM)" \
CC="$(TARGET_CC)" \
GCC="$(TARGET_CC)" \
CPP="$(TARGET_CPP)" \
CXX="$(TARGET_CXX)" \
FC="$(TARGET_FC)" \
RANLIB="$(TARGET_RANLIB)" \
READELF="$(TARGET_READELF)" \
STRIP="$(TARGET_STRIP)" \
OBJCOPY="$(TARGET_OBJCOPY)" \
OBJDUMP="$(TARGET_OBJDUMP)" \
AR_FOR_BUILD="$(HOSTAR)" \
AS_FOR_BUILD="$(HOSTAS)" \
CC_FOR_BUILD="$(HOSTCC)" \
GCC_FOR_BUILD="$(HOSTCC)" \
CXX_FOR_BUILD="$(HOSTCXX)" \
LD_FOR_BUILD="$(HOSTLD)" \
CPPFLAGS_FOR_BUILD="$(HOST_CPPFLAGS)" \
CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
CXXFLAGS_FOR_BUILD="$(HOST_CXXFLAGS)" \
LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" \
FCFLAGS_FOR_BUILD="$(HOST_FCFLAGS)" \
DEFAULT_ASSEMBLER="$(TARGET_AS)" \
DEFAULT_LINKER="$(TARGET_LD)" \
CPPFLAGS="$(TARGET_CPPFLAGS)" \
CFLAGS="$(TARGET_CFLAGS)" \
CXXFLAGS="$(TARGET_CXXFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
FCFLAGS="$(TARGET_FCFLAGS)" \
PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
STAGING_DIR="$(STAGING_DIR)" \
INTLTOOL_PERL=$(PERL)
TARGET_MAKE_ENV = PATH=$(BR_PATH)
HOST_CONFIGURE_OPTS = \
PATH=$(BR_PATH) \
AR="$(HOSTAR)" \
AS="$(HOSTAS)" \
LD="$(HOSTLD)" \
NM="$(HOSTNM)" \
CC="$(HOSTCC)" \
GCC="$(HOSTCC)" \
CXX="$(HOSTCXX)" \
CPP="$(HOSTCPP)" \
OBJCOPY="$(HOSTOBJCOPY)" \
RANLIB="$(HOSTRANLIB)" \
CPPFLAGS="$(HOST_CPPFLAGS)" \
CFLAGS="$(HOST_CFLAGS)" \
CXXFLAGS="$(HOST_CXXFLAGS)" \
LDFLAGS="$(HOST_LDFLAGS)" \
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \
PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
PKG_CONFIG_SYSROOT_DIR="/" \
PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig:$(HOST_DIR)/usr/share/pkgconfig" \
INTLTOOL_PERL=$(PERL)
HOST_MAKE_ENV = \
PATH=$(BR_PATH) \
PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
PKG_CONFIG_SYSROOT_DIR="/" \
PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig"
# This is extra environment we can not export ourselves (eg. because some
# packages use that variable internally, eg. uboot), so we have to
# explicitly pass it to user-supplied external hooks (eg. post-build,
# post-images)
EXTRA_ENV = \
PATH=$(BR_PATH) \
BR2_DL_DIR=$(BR2_DL_DIR) \
BUILD_DIR=$(BUILD_DIR) \
BR2_EXTERNAL=$(BR2_EXTERNAL)
################################################################################
# settings we need to pass to configure
# does unaligned access trap?
BR2_AC_CV_TRAP_CHECK = ac_cv_lbl_unaligned_fail=yes
ifeq ($(BR2_i386),y)
BR2_AC_CV_TRAP_CHECK = ac_cv_lbl_unaligned_fail=no
endif
ifeq ($(BR2_x86_64),y)
BR2_AC_CV_TRAP_CHECK = ac_cv_lbl_unaligned_fail=no
endif
ifeq ($(BR2_m68k),y)
BR2_AC_CV_TRAP_CHECK = ac_cv_lbl_unaligned_fail=no
endif
ifeq ($(BR2_powerpc)$(BR2_powerpc64)$(BR2_powerpc64le),y)
BR2_AC_CV_TRAP_CHECK = ac_cv_lbl_unaligned_fail=no
endif
ifeq ($(BR2_ENDIAN),"BIG")
BR2_AC_CV_C_BIGENDIAN = ac_cv_c_bigendian=yes
else
BR2_AC_CV_C_BIGENDIAN = ac_cv_c_bigendian=no
endif
# AM_GNU_GETTEXT misdetects musl gettext support.
# musl currently implements api level 1 and 2 (basic + ngettext)
# http://www.openwall.com/lists/musl/2015/04/16/3
ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
BR2_GT_CV_FUNC_GNUGETTEXT_LIBC = \
gt_cv_func_gnugettext1_libc=yes \
gt_cv_func_gnugettext2_libc=yes
endif
TARGET_CONFIGURE_ARGS = \
$(BR2_AC_CV_TRAP_CHECK) \
ac_cv_func_mmap_fixed_mapped=yes \
ac_cv_func_memcmp_working=yes \
ac_cv_have_decl_malloc=yes \
gl_cv_func_malloc_0_nonnull=yes \
ac_cv_func_malloc_0_nonnull=yes \
ac_cv_func_calloc_0_nonnull=yes \
ac_cv_func_realloc_0_nonnull=yes \
lt_cv_sys_lib_search_path_spec="" \
$(BR2_AC_CV_C_BIGENDIAN) \
$(BR2_GT_CV_FUNC_GNUGETTEXT_LIBC)
################################################################################
ifeq ($(BR2_ENABLE_LOCALE),y)
DISABLE_NLS :=
else
DISABLE_NLS :=--disable-nls
endif
ifneq ($(BR2_INSTALL_LIBSTDCPP),y)
TARGET_CONFIGURE_OPTS += CXX=false
endif
ifeq ($(BR2_STATIC_LIBS),y)
SHARED_STATIC_LIBS_OPTS = --enable-static --disable-shared
TARGET_CFLAGS += -static
TARGET_CXXFLAGS += -static
TARGET_LDFLAGS += -static
else ifeq ($(BR2_SHARED_LIBS),y)
SHARED_STATIC_LIBS_OPTS = --disable-static --enable-shared
else ifeq ($(BR2_SHARED_STATIC_LIBS),y)
SHARED_STATIC_LIBS_OPTS = --enable-static --enable-shared
endif
ifeq ($(BR2_COMPILER_PARANOID_UNSAFE_PATH),y)
export BR_COMPILER_PARANOID_UNSAFE_PATH=enabled
endif
include package/pkg-download.mk
include package/pkg-autotools.mk
include package/pkg-cmake.mk
include package/pkg-luarocks.mk
include package/pkg-perl.mk
include package/pkg-python.mk
include package/pkg-virtual.mk
include package/pkg-generic.mk
include package/pkg-kconfig.mk
include package/pkg-rebar.mk
include package/pkg-kernel-module.mk

View File

@@ -0,0 +1,13 @@
config BR2_PACKAGE_A10DISP
bool "a10disp"
depends on BR2_arm
depends on BR2_LINUX_KERNEL
help
Program to change the display mode of Allwinner ARM SOCs running
the linux-sunxi kernel (and not the mainline kernel.)
http://github.com/hglm/a10disp
comment "a10disp needs a Linux kernel to be built"
depends on BR2_arm
depends on !BR2_LINUX_KERNEL

View File

@@ -0,0 +1,22 @@
################################################################################
#
# a10disp
#
################################################################################
A10DISP_VERSION = v0.6.1
A10DISP_SITE = $(call github,hglm,a10disp,$(A10DISP_VERSION))
A10DISP_LICENSE = MIT
A10DISP_DEPENDENCIES = linux
define A10DISP_BUILD_CMDS
cp -f $(LINUX_DIR)/include/video/sunxi_disp_ioctl.h $(@D)/
$(TARGET_CC) $(TARGET_CFLAGS) $(@D)/a10disp.c -o $(@D)/a10disp
endef
define A10DISP_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 0755 $(@D)/a10disp $(TARGET_DIR)/usr/bin/a10disp
endef
$(eval $(generic-package))

View File

@@ -0,0 +1,29 @@
Support installation of .a file when doing static linking
When doing static linking (i.e ENABLE_SHARED != yes), the acl build
logic wasn't installing any library at all, not even the .a file which
is needed for static linking. This patch fixes that.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/include/buildmacros
===================================================================
--- a/include/buildmacros
+++ b/include/buildmacros
@@ -97,7 +97,15 @@
INSTALL_LTLIB_STATIC = \
cd $(TOPDIR)/$(LIBNAME)/.libs; \
- ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR);
+ ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
+ ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).la $(PKG_DEVLIB_DIR); \
+ ../$(INSTALL) -m 644 $(LIBNAME).la $(PKG_DEVLIB_DIR)/$(LIBNAME).la ; \
+ ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
+ ../$(INSTALL) -T so_base $(LIBNAME).la $(PKG_LIB_DIR); \
+ if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \
+ ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \
+ ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \
+ fi
INSTALL_MAN = \
@for d in $(MAN_PAGES); do \

View File

@@ -0,0 +1,10 @@
config BR2_PACKAGE_ACL
bool "acl"
select BR2_PACKAGE_ATTR
help
POSIX Access Control Lists, which are used to define more
fine-grained discretionary access rights for files and
directories.
This package also provides libacl.
http://savannah.nongnu.org/projects/acl

View File

@@ -0,0 +1,2 @@
# Locally calculated after checking pgp signature
sha256 179074bb0580c06c4b4137be4c5a92a701583277967acdb5546043c7874e0d23 acl-2.2.52.src.tar.gz

View File

@@ -0,0 +1,40 @@
################################################################################
#
# acl
#
################################################################################
ACL_VERSION = 2.2.52
ACL_SOURCE = acl-$(ACL_VERSION).src.tar.gz
ACL_SITE = http://download.savannah.gnu.org/releases/acl
ACL_INSTALL_STAGING = YES
ACL_DEPENDENCIES = attr
ACL_CONF_OPTS = --enable-gettext=no
ACL_LICENSE = GPLv2+ (programs), LGPLv2.1+ (libraries)
ACL_LICENSE_FILES = doc/COPYING doc/COPYING.LGPL
# While the configuration system uses autoconf, the Makefiles are
# hand-written and do not use automake. Therefore, we have to hack
# around their deficiencies by passing installation paths.
ACL_INSTALL_STAGING_OPTS = \
prefix=$(STAGING_DIR)/usr \
exec_prefix=$(STAGING_DIR)/usr \
PKG_DEVLIB_DIR=$(STAGING_DIR)/usr/lib \
install-dev install-lib
ACL_INSTALL_TARGET_OPTS = \
prefix=$(TARGET_DIR)/usr \
exec_prefix=$(TARGET_DIR)/usr \
install install-lib
# The libdir variable in libacl.la is empty, so let's fix it. This is
# probably due to acl not using automake, and not doing fully the
# right thing with libtool.
define ACL_FIX_LIBTOOL_LA_LIBDIR
$(SED) "s,libdir=.*,libdir='$(STAGING_DIR)'," \
$(STAGING_DIR)/usr/lib/libacl.la
endef
ACL_POST_INSTALL_STAGING_HOOKS += ACL_FIX_LIBTOOL_LA_LIBDIR
$(eval $(autotools-package))

View File

@@ -0,0 +1,20 @@
Partially roll back upstream commit 4711119089e1ad08dad206f4fded68f1972fdeed
since released versions of uClibc don't support isfdtype().
Signed-off-by: Gustavo Zaarias <gustavo@zacarias.com.ar>
diff -Nura acpid-2.0.22.orig/sock.c acpid-2.0.22/sock.c
--- acpid-2.0.22.orig/sock.c 2014-04-22 18:04:19.706841764 -0300
+++ acpid-2.0.22/sock.c 2014-04-22 18:05:08.285479625 -0300
@@ -53,7 +53,10 @@
int
is_socket(int fd)
{
- return (isfdtype(fd, S_IFSOCK) == 1);
+ int v;
+ socklen_t l = sizeof(int);
+
+ return (getsockopt(fd, SOL_SOCKET, SO_TYPE, (char *)&v, &l) == 0);
}
/* accept a new client connection */

View File

@@ -0,0 +1,40 @@
Add missing MSG_CMSG_CLOEXEC
Unpatched uClibc toolchains, even using the latest 0.9.33.2, do not
have the MSG_CMSG_CLOEXEC definition. Even though the Buildroot
internal toolchain backend has a uClibc patch to provide it, it
doesn't apply to external toolchains. This patch provides the
definition of MSG_CMSG_CLOEXEC.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: b/libnetlink.h
===================================================================
--- a/libnetlink.h
+++ b/libnetlink.h
@@ -7,6 +7,10 @@
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
+#ifndef MSG_CMSG_CLOEXEC
+#define MSG_CMSG_CLOEXEC 0x40000000
+#endif
+
struct rtnl_handle
{
int fd;
Index: b/kacpimon/libnetlink.h
===================================================================
--- a/kacpimon/libnetlink.h
+++ b/kacpimon/libnetlink.h
@@ -7,6 +7,10 @@
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
+#ifndef MSG_CMSG_CLOEXEC
+#define MSG_CMSG_CLOEXEC 0x40000000
+#endif
+
struct rtnl_handle
{
int fd;

View File

@@ -0,0 +1,184 @@
From a3dac1c3cee169e52c7d644dd565235a1cd833e3 Mon Sep 17 00:00:00 2001
From: Brendan Heading <brendanheading@gmail.com>
Date: Wed, 22 Jul 2015 23:10:11 +0100
Subject: [PATCH] support for non-glibc libcs
Added a TEMP_FAILURE_RETRY macro. This is a glibcism provided by
glibc and uclibc, but missing from musl (& possibly other libcs).
Upstream-status: submitted (see https://sourceforge.net/p/acpid2/tickets/7/)
---
acpi_listen.c | 2 ++
acpid.c | 1 +
event.c | 2 ++
input_layer.c | 1 +
kacpimon/libnetlink.h | 2 ++
libc_compat.h | 40 ++++++++++++++++++++++++++++++++++++++++
libnetlink.c | 2 ++
netlink.c | 1 +
proc.c | 1 +
ud_socket.c | 1 +
10 files changed, 53 insertions(+)
create mode 100644 libc_compat.h
diff --git a/acpi_listen.c b/acpi_listen.c
index d0bc175..839e4f9 100644
--- a/acpi_listen.c
+++ b/acpi_listen.c
@@ -39,6 +39,8 @@
#include "acpid.h"
#include "ud_socket.h"
+#include "libc_compat.h"
+
static int handle_cmdline(int *argc, char ***argv);
static char *read_line(int fd);
diff --git a/acpid.c b/acpid.c
index 23f1e58..8555c82 100644
--- a/acpid.c
+++ b/acpid.c
@@ -41,6 +41,7 @@
#include "input_layer.h"
#include "inotify_handler.h"
#include "netlink.h"
+#include "libc_compat.h"
static int handle_cmdline(int *argc, char ***argv);
static void close_fds(void);
diff --git a/event.c b/event.c
index 324078f..3b069a2 100644
--- a/event.c
+++ b/event.c
@@ -39,6 +39,8 @@
#include "log.h"
#include "sock.h"
#include "ud_socket.h"
+#include "libc_compat.h"
+
#include "event.h"
/*
* What is a rule? It's polymorphic, pretty much.
diff --git a/input_layer.c b/input_layer.c
index 9aa19c6..cbf8085 100644
--- a/input_layer.c
+++ b/input_layer.c
@@ -42,6 +42,7 @@
#include "log.h"
#include "connection_list.h"
#include "event.h"
+#include "libc_compat.h"
#include "input_layer.h"
diff --git a/kacpimon/libnetlink.h b/kacpimon/libnetlink.h
index 6185cbc..0c61896 100644
--- a/kacpimon/libnetlink.h
+++ b/kacpimon/libnetlink.h
@@ -7,6 +7,8 @@
#include <linux/netlink.h>
#include <linux/rtnetlink.h>
+#include "libc_compat.h"
+
struct rtnl_handle
{
int fd;
diff --git a/libc_compat.h b/libc_compat.h
new file mode 100644
index 0000000..39f2336
--- /dev/null
+++ b/libc_compat.h
@@ -0,0 +1,40 @@
+/*
+ * libc_compat.h - implement defs/macros missing from some libcs
+ *
+ * Copyright (C) 1999-2000 Andrew Henroid
+ * Copyright (C) 2001 Sun Microsystems
+ * Portions Copyright (C) 2004 Tim Hockin (thockin@hockin.org)
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+#ifndef LIBC_COMPAT_H__
+#define LIBC_COMPAT_H__
+
+/* Evaluate EXPRESSION, and repeat as long as it returns -1 with `errno'
+ set to EINTR. This macro is present on glibc/uclibc but may not be in other cases. */
+
+#ifndef ____GLIBC__
+#ifndef TEMP_FAILURE_RETRY
+#define TEMP_FAILURE_RETRY(expression) \
+ (__extension__ \
+ ({ long int __result; \
+ do __result = (long int) (expression); \
+ while (__result == -1L && errno == EINTR); \
+ __result; }))
+#endif
+#endif /* __GLIBC__ */
+
+#endif /* LIBC_COMPAT_H__ */
diff --git a/libnetlink.c b/libnetlink.c
index e61d417..cc7aedc 100644
--- a/libnetlink.c
+++ b/libnetlink.c
@@ -24,6 +24,8 @@
#include <time.h>
#include <sys/uio.h>
+#include "libc_compat.h"
+
#include "libnetlink.h"
void rtnl_close(struct rtnl_handle *rth)
diff --git a/netlink.c b/netlink.c
index c64e878..27e3536 100644
--- a/netlink.c
+++ b/netlink.c
@@ -41,6 +41,7 @@
#include "libnetlink.h"
#include "genetlink.h"
#include "acpi_genetlink.h"
+#include "libc_compat.h"
#include "acpi_ids.h"
#include "connection_list.h"
diff --git a/proc.c b/proc.c
index 5bb8fa2..f96b913 100644
--- a/proc.c
+++ b/proc.c
@@ -31,6 +31,7 @@
#include "log.h"
#include "event.h"
#include "connection_list.h"
+#include "libc_compat.h"
#include "proc.h"
diff --git a/ud_socket.c b/ud_socket.c
index 2790686..1790917 100644
--- a/ud_socket.c
+++ b/ud_socket.c
@@ -21,6 +21,7 @@
#include "acpid.h"
#include "log.h"
#include "ud_socket.h"
+#include "libc_compat.h"
int
ud_create_socket(const char *name, mode_t socketmode)
--
2.4.3

View File

@@ -0,0 +1,10 @@
config BR2_PACKAGE_ACPID
bool "acpid"
depends on BR2_x86_64 || BR2_i386
help
Advanced Configuration and Power Interface event daemon.
Acpid is designed to notify user-space programs of ACPI events,
and allows you to configure specific actions for specific events.
http://sourceforge.net/projects/acpid2/

View File

@@ -0,0 +1,22 @@
#!/bin/sh
case "$1" in
start)
printf "Starting acpid: "
start-stop-daemon -S -q -m -b -p /var/run/acpid.pid --exec /usr/sbin/acpid -- -n
[ $? = 0 ] && echo "OK" || echo "FAIL"
;;
stop)
printf "Stopping acpid: "
start-stop-daemon -K -q -p /var/run/acpid.pid
[ $? = 0 ] && echo "OK" || echo "FAIL"
;;
restart)
"$0" stop
sleep 1
"$0" start
;;
*)
echo "Usage: $0 {start|stop|restart}"
;;
esac

View File

@@ -0,0 +1,2 @@
# Locally computed:
sha256 3d11454f4283c8f771d8dbd5eb6b5f2bbd9d94d9f77d68bab89e35d98b67ab31 acpid-2.0.22.tar.xz

View File

@@ -0,0 +1,26 @@
################################################################################
#
# acpid
#
################################################################################
ACPID_VERSION = 2.0.22
ACPID_SOURCE = acpid-$(ACPID_VERSION).tar.xz
ACPID_SITE = http://downloads.sourceforge.net/project/acpid2
ACPID_LICENSE = GPLv2+
ACPID_LICENSE_FILES = COPYING
define ACPID_INSTALL_INIT_SYSV
$(INSTALL) -D -m 0755 package/acpid/S02acpid \
$(TARGET_DIR)/etc/init.d/S02acpid
endef
define ACPID_SET_EVENTS
mkdir -p $(TARGET_DIR)/etc/acpi/events
printf "event=button[ /]power\naction=/sbin/poweroff\n" \
>$(TARGET_DIR)/etc/acpi/events/powerbtn
endef
ACPID_POST_INSTALL_TARGET_HOOKS += ACPID_SET_EVENTS
$(eval $(autotools-package))

View File

@@ -0,0 +1,19 @@
config BR2_PACKAGE_ACSCCID
bool "acsccid"
depends on BR2_TOOLCHAIN_HAS_THREADS # pcsc-lite, libusb
depends on BR2_USE_MMU # pcsc-lite
depends on !BR2_STATIC_LIBS # pcsc-lite
select BR2_PACKAGE_PCSC_LITE
# Even though there is a --disable-libusb option, it has in
# fact no effect, and acsccid really requires libusb.
select BR2_PACKAGE_LIBUSB
help
acsccid is a PC/SC driver for Linux/Mac OS X and it supports
ACS CCID smart card readers.
http://acsccid.sourceforge.net/
comment "acsccid needs a toolchain w/ threads, dynamic library"
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HAS_THREADS || \
BR2_STATIC_LIBS

View File

@@ -0,0 +1,3 @@
# From https://sourceforge.net/projects/acsccid/files/acsccid/1.1.1/
sha1 ae340256bbba36032a903c9f89883297a31ca340 acsccid-1.1.1.tar.bz2
md5 26dc34141188e64fa2b3545032060357 acsccid-1.1.1.tar.bz2

View File

@@ -0,0 +1,15 @@
################################################################################
#
# acsccid
#
################################################################################
ACSCCID_VERSION = 1.1.1
ACSCCID_SOURCE = acsccid-$(ACSCCID_VERSION).tar.bz2
ACSCCID_SITE = http://downloads.sourceforge.net/acsccid
ACSCCID_LICENSE = LGPLv2.1+
ACSCCID_LICENSE_FILES = COPYING
ACSCCID_INSTALL_STAGING = YES
ACSCCID_DEPENDENCIES = pcsc-lite host-flex host-pkgconf libusb
$(eval $(autotools-package))

View File

@@ -0,0 +1,5 @@
config BR2_PACKAGE_ADWAITA_ICON_THEME
bool "adwaita icon theme"
depends on BR2_PACKAGE_LIBGTK2 || BR2_PACKAGE_LIBGTK3
help
Adwaita icon theme

View File

@@ -0,0 +1,2 @@
# From http://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/3.18/adwaita-icon-theme-3.18.0.sha256sum
sha256 5e9ce726001fdd8ee93c394fdc3cdb9e1603bbed5b7c62df453ccf521ec50e58 adwaita-icon-theme-3.18.0.tar.xz

View File

@@ -0,0 +1,15 @@
################################################################################
#
# adwaita-icon-theme
#
################################################################################
ADWAITA_ICON_THEME_VERSION_MAJOR = 3.18
ADWAITA_ICON_THEME_VERSION = $(ADWAITA_ICON_THEME_VERSION_MAJOR).0
ADWAITA_ICON_THEME_SITE = http://ftp.gnome.org/pub/gnome/sources/adwaita-icon-theme/$(ADWAITA_ICON_THEME_VERSION_MAJOR)
ADWAITA_ICON_THEME_SOURCE = adwaita-icon-theme-$(ADWAITA_ICON_THEME_VERSION).tar.xz
ADWAITA_ICON_THEME_LICENSE = LGPLv3 or CC-BY-SA-3.0
ADWAITA_ICON_THEME_LICENSE_FILES = COPYING COPYING_LGPL COPYING_CCBYSA3
ADWAITA_ICON_THEME_DEPENDENCIES = host-intltool host-libgtk3
$(eval $(autotools-package))

View File

@@ -0,0 +1,10 @@
config BR2_PACKAGE_AESPIPE
bool "aespipe"
depends on BR2_USE_MMU # fork()
help
aespipe program is AES encrypting or decrypting pipe. It reads from
standard input and writes to standard output. It can be used to
create and restore encrypted tar or cpio archives. It can be used to
encrypt and decrypt loop-AES compatible encrypted disk images.
http://koti.tnnet.fi/jari.ruusu/linux/

View File

@@ -0,0 +1,10 @@
config BR2_PACKAGE_HOST_AESPIPE
bool "host aespipe"
help
aespipe program is AES encrypting or decrypting pipe. It
reads from standard input and writes to standard output. It
can be used to create and restore encrypted tar or cpio
archives. It can be used to encrypt and decrypt loop-AES
compatible encrypted disk images.
http://koti.tnnet.fi/jari.ruusu/linux/

View File

@@ -0,0 +1,2 @@
# Locally computed:
sha256 260190beea911190a839e711f610ec3454a9b13985d35479775b7e26ad4c845e aespipe-v2.4c.tar.bz2

View File

@@ -0,0 +1,13 @@
################################################################################
#
# aespipe
#
################################################################################
AESPIPE_VERSION = 2.4c
AESPIPE_SOURCE = aespipe-v$(AESPIPE_VERSION).tar.bz2
AESPIPE_SITE = http://loop-aes.sourceforge.net/aespipe
AESPIPE_LICENSE = GPL
$(eval $(autotools-package))
$(eval $(host-autotools-package))

View File

@@ -0,0 +1,22 @@
config BR2_PACKAGE_AGENTPP
bool "agent++"
select BR2_PACKAGE_SNMPPP
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS # snmp++
depends on !BR2_STATIC_LIBS # snmp++
help
AGENT++ is a set of C++ classes which provides a complete protocol
engine and dispatch table for the development of SNMP agents.
AGENT++ is a multilingual API which supports SNMPv1, SNMPv2c, and
SNMPv3. It provides various C++ classes implementing prototypes for
scalar and table SNMP managed objects that can be customized by
derivation. Additional classes support the development of proxy
agents as well as sending notifications.
SNMPv3 support is enabled if SNMP++ enables it.
http://www.agentpp.com/agentpp3_5/agentpp3_5.html
comment "agent++ needs a toolchain w/ threads, C++, dynamic library"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
BR2_STATIC_LIBS

View File

@@ -0,0 +1,2 @@
# Locally computed:
sha256 d473b98d5f08e572b474c375c11ff1c4c5323824eb721c3979b6c5258b72949d agent++-4.0.4.tar.gz

View File

@@ -0,0 +1,19 @@
################################################################################
#
# agentpp
#
################################################################################
AGENTPP_VERSION = 4.0.4
AGENTPP_SOURCE = agent++-$(AGENTPP_VERSION).tar.gz
AGENTPP_SITE = http://www.agentpp.com/download
AGENTPP_LICENSE = Apache-2.0
AGENTPP_LICENSE_FILES = LICENSE-2_0.txt
AGENTPP_INSTALL_STAGING = YES
AGENTPP_DEPENDENCIES = host-pkgconf snmppp
AGENTPP_CONF_OPTS += \
--disable-proxy \
--disable-forwarder \
--disable-rpath
$(eval $(autotools-package))

View File

@@ -0,0 +1,73 @@
aiccu.h, common.c, common.h: fixes for deprecated GNUTLS functions and types
Signed-off-by: Michael Rommel <rommel@layer-7.net>
diff -purN aiccu_20070115.orig/common/aiccu.h aiccu_20070115/common/aiccu.h
--- aiccu_20070115.orig/common/aiccu.h 2007-01-15 13:01:43.000000000 +0100
+++ aiccu_20070115/common/aiccu.h 2013-08-31 23:50:53.651936146 +0200
@@ -111,7 +111,7 @@ struct AICCU_conf
#endif
#ifdef AICCU_GNUTLS
- gnutls_certificate_credentials tls_cred; /* GNUTLS credentials */
+ gnutls_certificate_credentials_t tls_cred; /* GNUTLS credentials */
#endif
bool daemonize; /* Daemonize? */
diff -purN aiccu_20070115.orig/common/common.c aiccu_20070115/common/common.c
--- aiccu_20070115.orig/common/common.c 2006-12-21 15:08:50.000000000 +0100
+++ aiccu_20070115/common/common.c 2013-09-01 01:21:36.031396740 +0200
@@ -271,9 +271,8 @@ TLSSOCKET sock_alloc(void);
TLSSOCKET sock_alloc(void)
{
#ifdef AICCU_GNUTLS
- /* Allow connections to servers that have OpenPGP keys as well */
- const int cert_type_priority[3] = { GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0 };
int ret;
+ const char *err;
#endif /* AICCU_GNUTLS*/
TLSSOCKET sock;
@@ -297,11 +296,16 @@ TLSSOCKET sock_alloc(void)
}
/* Use default priorities */
- gnutls_set_default_priority(sock->session);
- /* XXX: Return value is not documented in GNUTLS documentation! */
-
- gnutls_certificate_type_set_priority(sock->session, cert_type_priority);
- /* XXX: Return value is not documented in GNUTLS documentation! */
+ ret = gnutls_priority_set_direct(sock->session, "NORMAL", &err);
+ if (ret < 0)
+ {
+ if (ret == GNUTLS_E_INVALID_REQUEST)
+ {
+ dolog( LOG_ERR, "TLS set priority failed, syntax error at: %s\n", err);
+ }
+ free(sock);
+ return NULL;
+ }
/* Configure the x509 credentials for the current session */
gnutls_credentials_set(sock->session, GNUTLS_CRD_CERTIFICATE, g_aiccu->tls_cred);
@@ -474,7 +478,7 @@ bool sock_gotls(TLSSOCKET sock)
}
/* Set the transport */
- gnutls_transport_set_ptr(sock->session, (gnutls_transport_ptr)sock->socket);
+ gnutls_transport_set_ptr(sock->session, (gnutls_transport_ptr_t) sock->socket);
/* Perform the TLS handshake */
ret = gnutls_handshake(sock->session);
diff -purN aiccu_20070115.orig/common/common.h aiccu_20070115/common/common.h
--- aiccu_20070115.orig/common/common.h 2007-01-11 15:50:51.000000000 +0100
+++ aiccu_20070115/common/common.h 2013-08-31 23:26:13.683659455 +0200
@@ -381,7 +381,7 @@ struct tlssocket
SOCKET socket;
#ifdef AICCU_GNUTLS
bool tls_active; /* TLS active? */
- gnutls_session session; /* The GnuTLS sesision */
+ gnutls_session_t session; /* The GnuTLS sesision */
#endif
};

View File

@@ -0,0 +1,15 @@
Makefile: change LDFLAGS order on the compile line for --static
Signed-off-by: Michael Rommel <rommel@layer-7.net>
--- aiccu_20070115.orig/unix-console/Makefile 2007-01-15 12:04:27.000000000 +0100
+++ aiccu_20070115/unix-console/Makefile 2013-09-29 22:54:42.742963861 +0200
@@ -144,7 +144,7 @@ endif
all: aiccu
aiccu: $(OBJS) ${SRCS} ${INCS}
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS)
+ $(CC) $(CFLAGS) -o $@ $(OBJS) $(LDFLAGS)
ifeq ($(shell echo $(CFLAGS) | grep -c "DEBUG"),0)
ifeq ($(shell echo "$(RPM_OPT_FLAGS)" | wc -c),1)
strip $@

View File

@@ -0,0 +1,18 @@
aiccu: fix undefined reference to clock_* functions
Since glibc 2.17 the clock_* suite functions are available directly in
the main C library. For previous versions we still need -lrt to link.
Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
--- aiccu/unix-console/Makefile.orig 2014-01-14 10:17:20.204602513 +0000
+++ aiccu/unix-console/Makefile 2014-01-14 10:17:31.435777359 +0000
@@ -42,7 +42,7 @@ CFLAGS += -D AICCU_CONSOLE
# Currently defaultly builds only on Linux, but other platforms might easily also support it
ifeq ($(shell uname | grep -c "Linux"),1)
CFLAGS += -D AICCU_GNUTLS
-LDFLAGS += -lgnutls
+LDFLAGS += -lgnutls -lrt
endif
# Linux

View File

@@ -0,0 +1,23 @@
musl does not allow using <netinet/*> together with <linux/*> headers.
Since there are both netinet/if_ether.h and linux/if_ether.h providing
the same definitions, use linux/if_ether.h whenever other linux/*
headers are included.
Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
--- aiccu/common/common.h
+++ aiccu/common/common.h
@@ -91,11 +91,12 @@
#include <sys/select.h>
#include <net/if.h>
- #include <netinet/if_ether.h>
#ifdef linux
#include <netpacket/packet.h>
+ #include <linux/if_ether.h>
#include <linux/if_tun.h>
#else
+ #include <netinet/if_ether.h>
#ifdef _DFBSD
#include <net/tun/if_tun.h>
#else

View File

@@ -0,0 +1,33 @@
res_ninit is available in glibc but not in uclibc or musl.
Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
--- aiccu/common/resolver.c
+++ aiccu/common/resolver.c
@@ -26,7 +26,7 @@
int getrrs(const char *label, int rrtype, void gotrec(unsigned int num, int type, const char *record))
{
-#ifdef _LINUX
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
struct __res_state res;
#endif
unsigned char answer[8192];
@@ -38,7 +38,7 @@ int getrrs(const char *label, int rrtype
uint16_t type = 0, class = 0;
uint32_t ttl = 0;
-#ifdef _LINUX
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
memset(&res, 0, sizeof(res));
res.options = RES_DEBUG;
res_ninit(&res);
@@ -47,7 +47,7 @@ int getrrs(const char *label, int rrtype
#endif
memset(answer, 0, sizeof(answer));
-#ifdef _LINUX
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
ret = res_nquery(&res, label, C_IN, rrtype, answer, sizeof(answer));
#else
ret = res_query(label, C_IN, rrtype, answer, sizeof(answer));

View File

@@ -0,0 +1,26 @@
config BR2_PACKAGE_AICCU
bool "aiccu"
depends on BR2_USE_WCHAR
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU # fork()
# Triggers the _gp link issue
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
select BR2_PACKAGE_GNUTLS
help
SixXS Automatic IPv6 Connectivity Client Utility
AICCU (Automatic IPv6 Connectivity Client Utility) makes it
easy for users to get IPv6 connectivity. After having
requested an account, tunnel and optionally a subnet, AICCU
can be used to automatically configure the tunnel. AICCU
supports TIC (Tunnel Information & Control protocol), which it
uses for retrieving the tunnel configuration information,
AYIYA, which allows tunnels to be created even behind
firewalls and NAT's.
http://www.sixxs.net/tools/aiccu/
comment "aiccu needs a toolchain w/ wchar, threads"
depends on BR2_USE_MMU
depends on !(BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS)
depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII

View File

@@ -0,0 +1,2 @@
# From https://www.sixxs.net/archive/sixxs/aiccu/unix/
md5 c9bcc83644ed788e22a7c3f3d4021350 aiccu_20070115.tar.gz

View File

@@ -0,0 +1,40 @@
################################################################################
#
# aiccu
#
################################################################################
AICCU_VERSION = 20070115
AICCU_SOURCE = aiccu_$(AICCU_VERSION).tar.gz
AICCU_SITE = http://www.sixxs.net/archive/sixxs/aiccu/unix
AICCU_LICENSE = SixXS License, concise redistribution license
AICCU_LICENSE_FILES = doc/LICENSE
AICCU_DEPENDENCIES = gnutls
AICCU_LFDLAGS = $(TARGET_LDFLAGS)
# aiccu forgets to link with gnutls' dependencies breaking the build when
# linking statically
ifeq ($(BR2_STATIC_LIBS),y)
AICCU_LDFLAGS += `$(PKG_CONFIG_HOST_BINARY) --libs gnutls`
endif
# dummy RPM_OPT_FLAGS to disable stripping
define AICCU_BUILD_CMDS
$(TARGET_CONFIGURE_OPTS) LDFLAGS="$(AICCU_LDFLAGS)" $(MAKE) \
CC="$(TARGET_CC)" RPM_OPT_FLAGS=1 -C $(@D)/unix-console all
endef
define AICCU_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 0755 $(@D)/unix-console/aiccu \
$(TARGET_DIR)/usr/sbin/aiccu
$(INSTALL) -D -m 0644 $(@D)/doc/aiccu.conf \
$(TARGET_DIR)/etc/aiccu.conf
endef
define AICCU_INSTALL_INIT_SYSV
$(INSTALL) -D -m 0755 $(@D)/doc/aiccu.init \
$(TARGET_DIR)/etc/init.d/S50aiccu
endef
$(eval $(generic-package))

View File

@@ -0,0 +1,39 @@
From 98149c7664e99cc8ce9c9b1abf2fa90d9cd68e0d Mon Sep 17 00:00:00 2001
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
Date: Wed, 5 Nov 2014 09:38:12 -0300
Subject: [PATCH] Makefile: use pkg-config to find libpcre, it's more
cross-compile friendly
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
Status: Upstream http://trac.aircrack-ng.org/ticket/1526
diff --git a/common.mak b/common.mak
index 6e5694b..d875708 100644
--- a/common.mak
+++ b/common.mak
@@ -39,7 +39,7 @@ PCRE = true
endif
ifeq ($(PCRE), true)
-COMMON_CFLAGS += $(shell pcre-config --cflags) -DHAVE_PCRE
+COMMON_CFLAGS += $(shell $(PKG_CONFIG) --cflags libpcre) -DHAVE_PCRE
endif
ifeq ($(OSNAME), cygwin)
diff --git a/src/Makefile b/src/Makefile
index f9217f9..14350b6 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -16,7 +16,7 @@ BINFILES = aircrack-ng$(EXE) airdecap-ng$(EXE) packetforge-ng$(EXE) \
LIBPCRE =
ifeq ($(PCRE), true)
- LIBPCRE = $(shell pcre-config --libs)
+ LIBPCRE = $(shell $(PKG_CONFIG) --libs libpcre)
endif
ifneq ($(OSNAME), cygwin) #There is yet no libpcap support for windows, so we skip the crawler
--
2.0.4

View File

@@ -0,0 +1,33 @@
From 1abf7a6aad3d7931de2c01b578f62986b75de2f5 Mon Sep 17 00:00:00 2001
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
Date: Tue, 11 Nov 2014 16:23:42 -0300
Subject: [PATCH] Optionally use LIBPCAP for required libpcap libraries
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
Status: Reported http://trac.aircrack-ng.org/ticket/1528
diff --git a/src/Makefile b/src/Makefile
index 14350b6..7bd4271 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -23,6 +23,7 @@ ifneq ($(OSNAME), cygwin) #There is yet no libpcap support for windows, so we sk
HAVE_PCAP = $(shell ld -lpcap 2> /dev/null && echo yes)
ifeq ($(HAVE_PCAP), yes) #cannot link with -lpcap, skip crawler
BINFILES += besside-ng-crawler$(EXE)
+ LIBPCAP = -lpcap
endif
endif
@@ -168,7 +169,7 @@ besside-ng$(EXE): $(OBJS_BS) $(LIBOSD)
$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_BS) -o $(@) $(LIBS) $(LIBSSL) -lz $(LIBPCRE)
besside-ng-crawler$(EXE): $(OBJS_BC)
- $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_BC) -o $(@) -lpcap
+ $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_BC) -o $(@) $(LIBPCAP)
makeivs-ng$(EXE): $(OBJS_MI)
$(CC) $(CFLAGS) $(LDFLAGS) $(OBJS_MI) -o $(@) $(LDFLAGS)
--
2.0.4

View File

@@ -0,0 +1,27 @@
From 42de9f800056601443ac12edbba7bd5802740db2 Mon Sep 17 00:00:00 2001
From: Thomas d'Otreppe <tdotreppe@aircrack-ng.org>
Date: Wed, 8 Apr 2015 01:25:07 +0000
Subject: [PATCH] Wesside-ng: Use termios instead of sys/termios.
git-svn-id: http://svn.aircrack-ng.org/trunk@2533 28c6078b-6c39-48e3-add9-af49d547ecab
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
src/wesside-ng.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/wesside-ng.c b/src/wesside-ng.c
index 711d8b7..f44438a 100644
--- a/src/wesside-ng.c
+++ b/src/wesside-ng.c
@@ -33,7 +33,7 @@
#include <sys/types.h>
#include <sys/socket.h>
-#include <sys/termios.h>
+#include <termios.h>
#include <sys/ioctl.h>
#include <sys/stat.h>
#include <sys/wait.h>
--
2.4.3

View File

@@ -0,0 +1,53 @@
From da6e87670ad4639371da056f9e36201a9236dfa2 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@openwide.fr>
Date: Wed, 29 Jul 2015 19:38:46 +0200
Subject: [PATCH] fix musl build
aircrack-ng doesn't build with a musl toolchain due to
cdefs.h internal glibc header being used in internal
ethernet.h [1].
[1] http://wiki.musl-libc.org/wiki/FAQ
Signed-off-by: Romain Naour <romain.naour@openwide.fr>
---
src/include/ethernet.h | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/src/include/ethernet.h b/src/include/ethernet.h
index 72d5e81..e9d9236 100644
--- a/src/include/ethernet.h
+++ b/src/include/ethernet.h
@@ -389,18 +389,20 @@ void ether_vlan_mtap(struct bpf_if *, struct mbuf *,
#else /* _KERNEL */
-#include <sys/cdefs.h>
-
/*
* Ethernet address conversion/parsing routines.
*/
-__BEGIN_DECLS
-struct ether_addr *ether_aton(const char *);
-int ether_hostton(const char *, struct ether_addr *);
-int ether_line(const char *, struct ether_addr *, char *);
-char *ether_ntoa(const struct ether_addr *);
-int ether_ntohost(char *, const struct ether_addr *);
-__END_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
+ struct ether_addr *ether_aton(const char *);
+ int ether_hostton(const char *, struct ether_addr *);
+ int ether_line(const char *, struct ether_addr *, char *);
+ char *ether_ntoa(const struct ether_addr *);
+ int ether_ntohost(char *, const struct ether_addr *);
+#ifdef __cplusplus
+}
+#endif
#endif /* !_KERNEL */
--
2.4.3

View File

@@ -0,0 +1,17 @@
config BR2_PACKAGE_AIRCRACK_NG
bool "aircrack-ng"
depends on BR2_USE_MMU # uses fork()
# libnl has issues when linking statically
# they need fixing in libnl itself
select BR2_PACKAGE_LIBNL if !BR2_STATIC_LIBS
select BR2_PACKAGE_OPENSSL
select BR2_PACKAGE_ZLIB
depends on BR2_TOOLCHAIN_HAS_THREADS
help
A set of tools for auditing wireless networks
http://www.aircrack-ng.org/
comment "aircrack-ng needs a toolchain w/ threads"
depends on BR2_USE_MMU
depends on !BR2_TOOLCHAIN_HAS_THREADS

View File

@@ -0,0 +1,3 @@
# From http://www.aircrack-ng.org/downloads.html
sha1 b5ff7d0fffb72095311bbe8824ab98aaac62db8f aircrack-ng-1.2-rc1.tar.gz
md5 c2f8648c92f7e46051c86c618d4fb0d5 aircrack-ng-1.2-rc1.tar.gz

View File

@@ -0,0 +1,60 @@
################################################################################
#
# aircrack-ng
#
################################################################################
AIRCRACK_NG_VERSION = 1.2-rc1
AIRCRACK_NG_SITE = http://download.aircrack-ng.org
AIRCRACK_NG_LICENSE = GPLv2+
AIRCRACK_NG_LICENSE_FILES = LICENSE
AIRCRACK_NG_DEPENDENCIES = openssl zlib host-pkgconf
# Enable buddy-ng, easside-ng, tkiptun-ng, wesside-ng
AIRCRACK_NG_MAKE_OPTS = unstable=true
# Account for libpthread in static
AIRCRACK_NG_LDFLAGS = $(TARGET_LDFLAGS) \
$(if $(BR2_STATIC_LIBS),-lpthread -lz)
# libnl support has issues when building static
ifeq ($(BR2_STATIC_LIBS),y)
AIRCRACK_NG_MAKE_OPTS += libnl=false
else
AIRCRACK_NG_MAKE_OPTS += libnl=true
AIRCRACK_NG_DEPENDENCIES += libnl
endif
ifeq ($(BR2_PACKAGE_LIBPCAP),y)
AIRCRACK_NG_DEPENDENCIES += libpcap
AIRCRACK_NG_MAKE_OPTS += HAVE_PCAP=yes \
$(if $(BR2_STATIC_LIBS),LIBPCAP="-lpcap `$(STAGING_DIR)/usr/bin/pcap-config --static --additional-libs`")
else
AIRCRACK_NG_MAKE_OPTS += HAVE_PCAP=no
endif
ifeq ($(BR2_PACKAGE_PCRE),y)
AIRCRACK_NG_DEPENDENCIES += pcre
AIRCRACK_NG_MAKE_OPTS += pcre=true
else
AIRCRACK_NG_MAKE_OPTS += pcre=false
endif
# Duplicate -lpthread, because it is also needed by sqlite
ifeq ($(BR2_PACKAGE_SQLITE),y)
AIRCRACK_NG_DEPENDENCIES += sqlite
AIRCRACK_NG_MAKE_OPTS += sqlite=true LIBSQL="-lsqlite3 $(if $(BR2_STATIC_LIBS),-lpthread)"
else
AIRCRACK_NG_MAKE_OPTS += sqlite=false
endif
define AIRCRACK_NG_BUILD_CMDS
$(TARGET_CONFIGURE_OPTS) LDFLAGS="$(AIRCRACK_NG_LDFLAGS)" \
$(MAKE) -C $(@D) $(AIRCRACK_NG_MAKE_OPTS)
endef
define AIRCRACK_NG_INSTALL_TARGET_CMDS
$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) \
prefix=/usr $(AIRCRACK_NG_MAKE_OPTS) install
endef
$(eval $(generic-package))

View File

@@ -0,0 +1,29 @@
Subject: [PATCH] topology: Add missing include sys/stat.h
Necessary for proper definitions of S_IRUSR & co. Otherwise it
results in compile errors with old glibc:
parser.c: In function 'snd_tplg_build_file':
parser.c:262: error: 'S_IRUSR' undeclared (first use in this function)
parser.c:262: error: (Each undeclared identifier is reported only once
parser.c:262: error: for each function it appears in.)
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
Status: upstream
diff --git a/src/topology/parser.c b/src/topology/parser.c
index 80a0ae0..18bb9c7 100644
--- a/src/topology/parser.c
+++ b/src/topology/parser.c
@@ -16,6 +16,7 @@
Liam Girdwood <liam.r.girdwood@linux.intel.com>
*/
+#include <sys/stat.h>
#include "list.h"
#include "tplg_local.h"
--
1.7.11.7

View File

@@ -0,0 +1,45 @@
Don't use fork() on noMMU platforms
[Gustavo: update patch for 1.0.28]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Index: alsa-lib-1.0.26/configure.ac
===================================================================
--- alsa-lib-1.0.26.orig/configure.ac 2012-09-06 10:55:14.000000000 +0200
+++ alsa-lib-1.0.26/configure.ac 2013-03-09 16:22:08.000000000 +0100
@@ -66,6 +66,8 @@
AM_CONDITIONAL(ALSA_HSEARCH_R, [test "x$HAVE_HSEARCH_R" != xyes])
AC_CHECK_FUNCS([uselocale])
+AC_CHECK_FUNC([fork])
+
SAVE_LIBRARY_VERSION
AC_SUBST(LIBTOOL_VERSION_INFO)
Index: alsa-lib-1.0.26/src/pcm/pcm_direct.c
===================================================================
--- alsa-lib-1.0.26.orig/src/pcm/pcm_direct.c 2012-09-06 10:55:14.000000000 +0200
+++ alsa-lib-1.0.26/src/pcm/pcm_direct.c 2013-03-09 16:22:51.000000000 +0100
@@ -424,13 +424,21 @@
close(dmix->server_fd);
return ret;
}
-
+
+#ifdef HAVE_FORK
ret = fork();
+#else
+ ret = vfork();
+#endif
if (ret < 0) {
close(dmix->server_fd);
return ret;
} else if (ret == 0) {
+#ifdef HAVE_FORK
ret = fork();
+#else
+ ret = vfork();
+#endif
if (ret == 0)
server_job(dmix);
_exit(EXIT_SUCCESS);

View File

@@ -0,0 +1,57 @@
alsa-lib: provide dummy definitions of RTLD_* if necessary
The FLAT GNU toolchain (e.g. blackfin) doesn't include the dlfcn.h header
file, so we need to guard that include. Additionally, provide dummy
definitions for parameters RTLD_GLOBAL / RTLD_NOW which are normally
provided by dlfcn.h.
Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
[Thomas: don't add separate dlmisc.h, move dummy defs to global.h]
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
diff --git a/include/global.h b/include/global.h
--- a/include/global.h
+++ b/include/global.h
@@ -97,6 +97,16 @@ extern struct snd_dlsym_link *snd_dlsym_
/** \brief Returns the version of a dynamic symbol as a string. */
#define SND_DLSYM_VERSION(version) __STRING(version)
+/* RTLD_NOW and RTLD_GLOBAL (used for 'mode' in snd_dlopen) are not defined
+ * on all arches (e.g. blackfin), so provide a dummy definition here. */
+#ifndef RTLD_NOW
+#define RTLD_NOW 0
+#endif
+
+#ifndef RTLD_GLOBAL
+#define RTLD_GLOBAL 0
+#endif
+
void *snd_dlopen(const char *file, int mode);
void *snd_dlsym(void *handle, const char *name, const char *version);
int snd_dlclose(void *handle);
diff --git a/modules/mixer/simple/sbasedl.c b/modules/mixer/simple/sbasedl.c
--- a/modules/mixer/simple/sbasedl.c
+++ b/modules/mixer/simple/sbasedl.c
@@ -27,7 +27,9 @@
#include <fcntl.h>
#include <sys/ioctl.h>
#include <math.h>
+#ifdef HAVE_LIBDL
#include <dlfcn.h>
+#endif
#include "config.h"
#include "asoundlib.h"
#include "mixer_abst.h"
diff --git a/src/mixer/simple_abst.c b/src/mixer/simple_abst.c
--- a/src/mixer/simple_abst.c
+++ b/src/mixer/simple_abst.c
@@ -34,7 +34,9 @@
#include <fcntl.h>
#include <sys/ioctl.h>
#include <math.h>
+#ifdef HAVE_LIBDL
#include <dlfcn.h>
+#endif
#include "config.h"
#include "asoundlib.h"
#include "mixer_simple.h"

View File

@@ -0,0 +1,35 @@
alsa-lib: conditionally enable libdl in AM_PATH_ALSA m4 macro
The AM_PATH_ALSA macro in utils/alsa.m4 unconditionally uses -ldl. This
breaks compilation of alsa-utils (and probably other packages using this
macro) for targets that do not support dynamic loading, such as for
Blackfin FLAT binaries.
This patch updates the macro to check if dlopen is available, and use that
result to conditionally add -ldl to the list of libraries.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
---
diff --git a/utils/alsa.m4 b/utils/alsa.m4
--- a/utils/alsa.m4
+++ b/utils/alsa.m4
@@ -44,6 +44,8 @@ if test "$alsa_inc_prefix" != "" ; then
fi
AC_MSG_RESULT($ALSA_CFLAGS)
+AC_CHECK_LIB(c, dlopen, LIBDL="", [AC_CHECK_LIB(dl, dlopen, LIBDL="-ldl")])
+
dnl add any special lib dirs
AC_MSG_CHECKING(for ALSA LDFLAGS)
if test "$alsa_prefix" != "" ; then
@@ -52,7 +54,7 @@ if test "$alsa_prefix" != "" ; then
fi
dnl add the alsa library
-ALSA_LIBS="$ALSA_LIBS -lasound -lm -ldl -lpthread"
+ALSA_LIBS="$ALSA_LIBS -lasound -lm $LIBDL -lpthread"
LIBS="$ALSA_LIBS $LIBS"
AC_MSG_RESULT($ALSA_LIBS)

View File

@@ -0,0 +1,33 @@
Fix musl-related build errors in packages depending on alsa, in our case
this fixes openal.
Downloaded from
http://git.alpinelinux.org/cgit/aports/tree/main/alsa-lib/alsa-lib_pcm_h.patch
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
--- alsa-lib-1.0.25/include/pcm.h
+++ alsa-lib-1.0.25.patched/include/pcm.h
@@ -33,6 +33,7 @@
extern "C" {
#endif
+#include <stdint.h>
/**
* \defgroup PCM PCM Interface
* See the \ref pcm page for more details.
@@ -941,10 +942,10 @@
int snd_pcm_format_physical_width(snd_pcm_format_t format); /* in bits */
snd_pcm_format_t snd_pcm_build_linear_format(int width, int pwidth, int unsignd, int big_endian);
ssize_t snd_pcm_format_size(snd_pcm_format_t format, size_t samples);
-u_int8_t snd_pcm_format_silence(snd_pcm_format_t format);
-u_int16_t snd_pcm_format_silence_16(snd_pcm_format_t format);
-u_int32_t snd_pcm_format_silence_32(snd_pcm_format_t format);
-u_int64_t snd_pcm_format_silence_64(snd_pcm_format_t format);
+uint8_t snd_pcm_format_silence(snd_pcm_format_t format);
+uint16_t snd_pcm_format_silence_16(snd_pcm_format_t format);
+uint32_t snd_pcm_format_silence_32(snd_pcm_format_t format);
+uint64_t snd_pcm_format_silence_64(snd_pcm_format_t format);
int snd_pcm_format_set_silence(snd_pcm_format_t format, void *buf, unsigned int samples);
snd_pcm_sframes_t snd_pcm_bytes_to_frames(snd_pcm_t *pcm, ssize_t bytes);

View File

@@ -0,0 +1,78 @@
comment "alsa-lib needs a toolchain w/ threads"
depends on !BR2_TOOLCHAIN_HAS_THREADS
menuconfig BR2_PACKAGE_ALSA_LIB
bool "alsa-lib"
# Temporary until
# https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4913
# is fixed
select BR2_PACKAGE_ALSA_LIB_PCM
# Even though some parts of alsa-lib use threads only when
# available, some PCM plugins use them unconditionally. Since
# the usage of alsa-lib on no-thread systems is pretty
# unlikely, just require thread support globally for alsa-lib.
depends on BR2_TOOLCHAIN_HAS_THREADS
help
The Advanced Linux Sound Architecture (ALSA) provides audio and MIDI
functionality to the Linux operating system.
http://www.alsa-project.org/
if BR2_PACKAGE_ALSA_LIB
config BR2_PACKAGE_ALSA_LIB_PYTHON
bool "Python support for alsa-lib"
depends on BR2_PACKAGE_PYTHON
help
Add python support for alsa-lib.
Python will be built and libpython will be installed
in the target directory
http://www.alsa-project.org/
config BR2_PACKAGE_ALSA_LIB_DEVDIR
string "directory with ALSA device files"
default "/dev/snd"
config BR2_PACKAGE_ALSA_LIB_PCM_PLUGINS
string "built PCM plugins"
default "all" if BR2_USE_MMU
default "copy linear route mulaw alaw adpcm rate plug multi file null empty share meter hooks lfloat ladspa dmix dshare dsnoop asym iec958 softvol extplug ioplug mmap_emul" if !BR2_USE_MMU
config BR2_PACKAGE_ALSA_LIB_CTL_PLUGINS
string "built control plugins"
default "all"
config BR2_PACKAGE_ALSA_LIB_ALOAD
bool "aload"
default y
config BR2_PACKAGE_ALSA_LIB_MIXER
bool "mixer"
default y
config BR2_PACKAGE_ALSA_LIB_PCM
bool "pcm"
default y
config BR2_PACKAGE_ALSA_LIB_RAWMIDI
bool "rawmidi"
default y
config BR2_PACKAGE_ALSA_LIB_HWDEP
bool "hwdep"
default y
config BR2_PACKAGE_ALSA_LIB_SEQ
bool "seq"
default y
config BR2_PACKAGE_ALSA_LIB_ALISP
bool "alisp"
depends on BR2_USE_MMU
default y
config BR2_PACKAGE_ALSA_LIB_OLD_SYMBOLS
bool "old-symbols"
default y
endif

View File

@@ -0,0 +1,2 @@
# Locally calculated
sha256 dfde65d11e82b68f82e562ab6228c1fb7c78854345d3c57e2c68a9dd3dae1f15 alsa-lib-1.1.0.tar.bz2

View File

@@ -0,0 +1,79 @@
################################################################################
#
# alsa-lib
#
################################################################################
ALSA_LIB_VERSION = 1.1.0
ALSA_LIB_SOURCE = alsa-lib-$(ALSA_LIB_VERSION).tar.bz2
ALSA_LIB_SITE = ftp://ftp.alsa-project.org/pub/lib
ALSA_LIB_LICENSE = LGPLv2.1+
ALSA_LIB_LICENSE_FILES = COPYING
ALSA_LIB_INSTALL_STAGING = YES
ALSA_LIB_CFLAGS = $(TARGET_CFLAGS)
ALSA_LIB_AUTORECONF = YES
ALSA_LIB_CONF_OPTS = \
--with-alsa-devdir=$(call qstrip,$(BR2_PACKAGE_ALSA_LIB_DEVDIR)) \
--with-pcm-plugins="$(call qstrip,$(BR2_PACKAGE_ALSA_LIB_PCM_PLUGINS))" \
--with-ctl-plugins="$(call qstrip,$(BR2_PACKAGE_ALSA_LIB_CTL_PLUGINS))" \
--without-versioned
# Can't build with static & shared at the same time (1.0.25+)
ifeq ($(BR2_STATIC_LIBS),y)
ALSA_LIB_CONF_OPTS += \
--enable-shared=no \
--without-libdl
else
ALSA_LIB_CONF_OPTS += --enable-static=no
endif
ifneq ($(BR2_PACKAGE_ALSA_LIB_ALOAD),y)
ALSA_LIB_CONF_OPTS += --disable-aload
endif
ifneq ($(BR2_PACKAGE_ALSA_LIB_MIXER),y)
ALSA_LIB_CONF_OPTS += --disable-mixer
endif
ifneq ($(BR2_PACKAGE_ALSA_LIB_PCM),y)
ALSA_LIB_CONF_OPTS += --disable-pcm
endif
ifneq ($(BR2_PACKAGE_ALSA_LIB_RAWMIDI),y)
ALSA_LIB_CONF_OPTS += --disable-rawmidi
endif
ifneq ($(BR2_PACKAGE_ALSA_LIB_HWDEP),y)
ALSA_LIB_CONF_OPTS += --disable-hwdep
endif
ifneq ($(BR2_PACKAGE_ALSA_LIB_SEQ),y)
ALSA_LIB_CONF_OPTS += --disable-seq
endif
ifneq ($(BR2_PACKAGE_ALSA_LIB_ALISP),y)
ALSA_LIB_CONF_OPTS += --disable-alisp
endif
ifneq ($(BR2_PACKAGE_ALSA_LIB_OLD_SYMBOLS),y)
ALSA_LIB_CONF_OPTS += --disable-old-symbols
endif
ifeq ($(BR2_PACKAGE_ALSA_LIB_PYTHON),y)
ALSA_LIB_CONF_OPTS += \
--with-pythonlibs=-lpython$(PYTHON_VERSION_MAJOR) \
--with-pythonincludes=$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR)
ALSA_LIB_CFLAGS += -I$(STAGING_DIR)/usr/include/python$(PYTHON_VERSION_MAJOR)
ALSA_LIB_DEPENDENCIES = python
else
ALSA_LIB_CONF_OPTS += --disable-python
endif
ifeq ($(BR2_SOFT_FLOAT),y)
ALSA_LIB_CONF_OPTS += --with-softfloat
endif
ifeq ($(BR2_bfin),y)
# blackfin external toolchains don't have versionsort. Fake it using alphasort
# instead
ALSA_LIB_CFLAGS += -Dversionsort=alphasort
endif
ALSA_LIB_CONF_ENV = \
CFLAGS="$(ALSA_LIB_CFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS) -lm"
$(eval $(autotools-package))

View File

@@ -0,0 +1,143 @@
bat: Avoid local signal.h file
Patch backported from upstream:
http://git.alsa-project.org/?p=alsa-utils.git;a=commit;h=3bf8e79c3bfee3ca14277aad3d9c406dfc053bbf
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
From 3bf8e79c3bfee3ca14277aad3d9c406dfc053bbf Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Mon, 9 Nov 2015 14:04:11 +0100
Subject: [PATCH 1/2] bat: Avoid local signal.h file
The local header file named as "signal.h" causes mysterious compile
error when built with an old glibc.
signal.h:27: error: conflicting types for 'sin_generator_init'
./signal.h:27: error: previous declaration of 'sin_generator_init' was here
signal.h:28: error: conflicting types for 'sin_generator_next_sample'
./signal.h:28: error: previous declaration of 'sin_generator_next_sample' was here
....
This turned out to be the conflict of signal.h; namely, pthread.h that
is included before our local signal.h also includes "pthread.h".
Since our local "signal.h" has a higher priority, it gets loaded
instead of the expected pthread's one. Then we load it again, and it
screws up.
Although it's basically a bug of pthread, it's anyway not good to have
a header file conflicting with the standard header file. So, let's
name it more explicitly as specific to BAT, bat-signal.h, for avoiding
such a conflict.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
bat/Makefile.am | 2 +-
bat/alsa.c | 2 +-
bat/bat-signal.h | 30 ++++++++++++++++++++++++++++++
bat/signal.h | 30 ------------------------------
4 files changed, 32 insertions(+), 32 deletions(-)
create mode 100644 bat/bat-signal.h
delete mode 100644 bat/signal.h
diff --git a/bat/Makefile.am b/bat/Makefile.am
index 842ae6b..f0dc5ab 100644
--- a/bat/Makefile.am
+++ b/bat/Makefile.am
@@ -13,7 +13,7 @@ bat_SOURCES = \
noinst_HEADERS = \
common.h \
- signal.h \
+ bat-signal.h \
alsa.h \
convert.h \
analyze.h
diff --git a/bat/alsa.c b/bat/alsa.c
index 582c604..d31a633 100644
--- a/bat/alsa.c
+++ b/bat/alsa.c
@@ -27,7 +27,7 @@
#include "common.h"
#include "alsa.h"
-#include "signal.h"
+#include "bat-signal.h"
struct pcm_container {
snd_pcm_t *handle;
diff --git a/bat/bat-signal.h b/bat/bat-signal.h
new file mode 100644
index 0000000..a295517
--- /dev/null
+++ b/bat/bat-signal.h
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2015 Caleb Crome
+ * Copyright (C) 2013-2015 Intel Corporation
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ */
+
+/*
+ * Here's a generic sine wave generator that will work indefinitely
+ * for any frequency.
+ *
+ * Note: the state & phasor are stored as doubles (and updated as
+ * doubles) because after a million samples the magnitude drifts a
+ * bit. If we really need floats, it can be done with periodic
+ * renormalization of the state_real+state_imag magnitudes.
+ */
+
+int sin_generator_init(struct sin_generator *, float, float, float);
+float sin_generator_next_sample(struct sin_generator *);
+void sin_generator_vfill(struct sin_generator *, float *, int);
+int generate_sine_wave(struct bat *, int, void *);
diff --git a/bat/signal.h b/bat/signal.h
deleted file mode 100644
index a295517..0000000
--- a/bat/signal.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright (C) 2015 Caleb Crome
- * Copyright (C) 2013-2015 Intel Corporation
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- */
-
-/*
- * Here's a generic sine wave generator that will work indefinitely
- * for any frequency.
- *
- * Note: the state & phasor are stored as doubles (and updated as
- * doubles) because after a million samples the magnitude drifts a
- * bit. If we really need floats, it can be done with periodic
- * renormalization of the state_real+state_imag magnitudes.
- */
-
-int sin_generator_init(struct sin_generator *, float, float, float);
-float sin_generator_next_sample(struct sin_generator *);
-void sin_generator_vfill(struct sin_generator *, float *, int);
-int generate_sine_wave(struct bat *, int, void *);
--
2.4.10

View File

@@ -0,0 +1,61 @@
bat: Don't pass incompatible function pointers to pthread_cleanup_push()
Patch backported from upstream:
http://git.alsa-project.org/?p=alsa-utils.git;a=commit;h=ed0cce1b6061aade0077982cb5d22fa68ddffd2f
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
From ed0cce1b6061aade0077982cb5d22fa68ddffd2f Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Mon, 9 Nov 2015 14:09:50 +0100
Subject: [PATCH 2/2] bat: Don't pass incompatible function pointers to
pthread_cleanup_push()
pthread_cleanup_push() takes a function pointer for void (void *).
Although it may work in most cases, we shouldn't pass an incompatible
function pointer there, as some old gcc complains:
alsa.c:560: warning: initialization from incompatible pointer type
alsa.c:562: warning: initialization from incompatible pointer type
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
bat/alsa.c | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/bat/alsa.c b/bat/alsa.c
index d31a633..5eaa25b 100644
--- a/bat/alsa.c
+++ b/bat/alsa.c
@@ -505,6 +505,16 @@ static int read_from_pcm_loop(FILE *fp, int count,
return 0;
}
+static void pcm_cleanup(void *p)
+{
+ snd_pcm_close(p);
+}
+
+static void file_cleanup(void *p)
+{
+ fclose(p);
+}
+
/**
* Record
*/
@@ -557,9 +567,9 @@ void *record_alsa(struct bat *bat)
pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);
pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, NULL);
- pthread_cleanup_push(snd_pcm_close, sndpcm.handle);
+ pthread_cleanup_push(pcm_cleanup, sndpcm.handle);
pthread_cleanup_push(free, sndpcm.buffer);
- pthread_cleanup_push(fclose, fp);
+ pthread_cleanup_push(file_cleanup, fp);
err = write_wav_header(fp, &wav, bat);
if (err != 0) {
--
2.4.10

View File

@@ -0,0 +1,94 @@
comment "alsa-utils needs a toolchain w/ threads, dynamic library"
depends on BR2_USE_MMU # fork
depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
menuconfig BR2_PACKAGE_ALSA_UTILS
bool "alsa-utils"
depends on BR2_USE_MMU # fork
depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
depends on !BR2_STATIC_LIBS # uses dlfcn.h
select BR2_PACKAGE_ALSA_LIB
select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT_IF_LOCALE
help
This package contains the command line utilities for the ALSA
project.
http://www.alsa-project.org/
if BR2_PACKAGE_ALSA_UTILS
config BR2_PACKAGE_ALSA_UTILS_ALSACONF
bool "alsaconf"
config BR2_PACKAGE_ALSA_UTILS_ACONNECT
bool "aconnect"
select BR2_PACKAGE_ALSA_LIB_SEQ
config BR2_PACKAGE_ALSA_UTILS_ALSACTL
bool "alsactl"
default y
config BR2_PACKAGE_ALSA_UTILS_ALSALOOP
bool "alsaloop"
config BR2_PACKAGE_ALSA_UTILS_ALSAMIXER
bool "alsamixer"
select BR2_PACKAGE_NCURSES
select BR2_PACKAGE_NCURSES_TARGET_PANEL
select BR2_PACKAGE_NCURSES_TARGET_FORM
select BR2_PACKAGE_NCURSES_TARGET_MENU
select BR2_PACKAGE_ALSA_LIB_MIXER
depends on BR2_USE_WCHAR
default y
comment "alsamixer needs a toolchain w/ wchar"
depends on !BR2_USE_WCHAR
config BR2_PACKAGE_ALSA_UTILS_ALSAUCM
bool "alsaucm"
config BR2_PACKAGE_ALSA_UTILS_ALSATPLG
bool "alsatplg"
config BR2_PACKAGE_ALSA_UTILS_AMIDI
bool "amidi"
select BR2_PACKAGE_ALSA_LIB_RAWMIDI
select BR2_PACKAGE_ALSA_LIB_SEQ
config BR2_PACKAGE_ALSA_UTILS_AMIXER
bool "amixer"
select BR2_PACKAGE_ALSA_LIB_MIXER
config BR2_PACKAGE_ALSA_UTILS_APLAY
bool "aplay/arecord"
select BR2_PACKAGE_ALSA_LIB_PCM
config BR2_PACKAGE_ALSA_UTILS_APLAYMIDI
bool "aplaymidi"
select BR2_PACKAGE_ALSA_LIB_SEQ
config BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI
bool "arecordmidi"
select BR2_PACKAGE_ALSA_LIB_SEQ
config BR2_PACKAGE_ALSA_UTILS_ASEQDUMP
bool "aseqdump"
select BR2_PACKAGE_ALSA_LIB_SEQ
config BR2_PACKAGE_ALSA_UTILS_ASEQNET
bool "aseqnet"
select BR2_PACKAGE_ALSA_LIB_SEQ
config BR2_PACKAGE_ALSA_UTILS_BAT
bool "bat"
select BR2_PACKAGE_FFTW
config BR2_PACKAGE_ALSA_UTILS_IECSET
bool "iecset"
select BR2_PACKAGE_ALSA_LIB_PCM
config BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST
bool "speaker-test"
select BR2_PACKAGE_ALSA_LIB_PCM
endif

View File

@@ -0,0 +1,2 @@
# Locally calculated
sha256 3b1c3135b76e14532d3dd23fb15759ddd7daf9ffbc183f7a9a0a3a86374748f1 alsa-utils-1.1.0.tar.bz2

View File

@@ -0,0 +1,86 @@
################################################################################
#
# alsa-utils
#
################################################################################
ALSA_UTILS_VERSION = 1.1.0
ALSA_UTILS_SOURCE = alsa-utils-$(ALSA_UTILS_VERSION).tar.bz2
ALSA_UTILS_SITE = ftp://ftp.alsa-project.org/pub/utils
ALSA_UTILS_LICENSE = GPLv2
ALSA_UTILS_LICENSE_FILES = COPYING
ALSA_UTILS_INSTALL_STAGING = YES
ALSA_UTILS_DEPENDENCIES = host-gettext host-pkgconf alsa-lib \
$(if $(BR2_PACKAGE_NCURSES),ncurses) \
$(if $(BR2_PACKAGE_LIBSAMPLERATE),libsamplerate)
# Regenerate aclocal.m4 to pick the patched
# version of alsa.m4 from alsa-lib
ALSA_UTILS_AUTORECONF = YES
ALSA_UTILS_GETTEXTIZE = YES
ALSA_UTILS_CONF_ENV = \
ac_cv_prog_ncurses5_config=$(STAGING_DIR)/usr/bin/$(NCURSES_CONFIG_SCRIPTS)
ALSA_UTILS_CONF_OPTS = \
--disable-xmlto \
--with-curses=$(if $(BR2_PACKAGE_NCURSES_WCHAR),ncursesw,ncurses)
ifeq ($(BR2_NEEDS_GETTEXT_IF_LOCALE),y)
ALSA_UTILS_DEPENDENCIES += gettext
ALSA_UTILS_CONF_ENV += LIBS=-lintl
endif
ifeq ($(BR2_PACKAGE_ALSA_UTILS_ALSALOOP),y)
ALSA_UTILS_CONF_OPTS += --enable-alsaloop
else
ALSA_UTILS_CONF_OPTS += --disable-alsaloop
endif
ifneq ($(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER),y)
ALSA_UTILS_CONF_OPTS += --disable-alsamixer --disable-alsatest
endif
ifeq ($(BR2_PACKAGE_ALSA_UTILS_BAT),y)
ALSA_UTILS_CONF_OPTS += --enable-bat
ALSA_UTILS_DEPENDENCIES += fftw
else
ALSA_UTILS_CONF_OPTS += --disable-bat
endif
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSACONF) += usr/sbin/alsaconf
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSACTL) += usr/sbin/alsactl
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSALOOP) += usr/bin/alsaloop
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSAMIXER) += usr/bin/alsamixer
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSATPLG) += usr/bin/alsatplg
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_AMIDI) += usr/bin/amidi
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_AMIXER) += usr/bin/amixer
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_APLAY) += usr/bin/aplay usr/bin/arecord
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_BAT) += usr/bin/bat
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_IECSET) += usr/bin/iecset
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ACONNECT) += usr/bin/aconnect
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ALSAUCM) += usr/bin/alsaucm
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_APLAYMIDI) += usr/bin/aplaymidi
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI) += usr/bin/arecordmidi
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ASEQDUMP) += usr/bin/aseqdump
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_ASEQNET) += usr/bin/aseqnet
ALSA_UTILS_TARGETS_$(BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST) += usr/bin/speaker-test
define ALSA_UTILS_INSTALL_TARGET_CMDS
mkdir -p $(TARGET_DIR)/var/lib/alsa
for i in $(ALSA_UTILS_TARGETS_y); do \
$(INSTALL) -D -m 755 $(STAGING_DIR)/$$i $(TARGET_DIR)/$$i || exit 1; \
done
if [ -x "$(TARGET_DIR)/usr/bin/speaker-test" ]; then \
mkdir -p $(TARGET_DIR)/usr/share/alsa/speaker-test; \
mkdir -p $(TARGET_DIR)/usr/share/sounds/alsa; \
cp -rdpf $(STAGING_DIR)/usr/share/alsa/speaker-test/* $(TARGET_DIR)/usr/share/alsa/speaker-test/; \
cp -rdpf $(STAGING_DIR)/usr/share/sounds/alsa/* $(TARGET_DIR)/usr/share/sounds/alsa/; \
fi
if [ -x "$(TARGET_DIR)/usr/sbin/alsactl" ]; then \
mkdir -p $(TARGET_DIR)/usr/share/; \
rm -rf $(TARGET_DIR)/usr/share/alsa/; \
cp -rdpf $(STAGING_DIR)/usr/share/alsa/ $(TARGET_DIR)/usr/share/alsa/; \
fi
endef
$(eval $(autotools-package))

View File

@@ -0,0 +1,40 @@
--- a/configure.in
+++ b/configure.in
@@ -11,7 +11,10 @@
AC_PROG_LN_S
dnl Checks for libraries.
-AC_CHECK_LIB(fltk,numericsort,,AC_MSG_ERROR("missing fltk"))
+AC_CHECK_LIB(fltk,numericsort,,
+AC_CHECK_LIB(fltk,fl_numericsort,,
+AC_MSG_ERROR("missing fltk"))
+)
AM_PATH_ALSA(0.9.0)
dnl Checks for header files.
--- a/src/alsamixer.cxx 2007-10-21 12:39:11.000000000 -0400
+++ b/src/alsamixer.cxx 2007-10-21 12:49:10.000000000 -0400
@@ -2081,8 +2081,8 @@ static void
mixer_signal_handler (int signal)
{
if (signal != SIGSEGV)
- mixer_abort (ERR_SIGNAL, sys_siglist[signal], 0);
- else
+ // mixer_abort (ERR_SIGNAL, sys_siglist[signal], 0);
+ //else
{
fprintf (stderr, "\nSegmentation fault.\n");
_exit (11);
--- a/src/alsamixer.cxx 2006-01-16 12:41:54.000000000 -0600
+++ b/src/alsamixer.cxx 2006-01-16 12:45:44.000000000 -0600
@@ -653,8 +653,8 @@
if (vleft >= 0 && vright >= 0) {
if (joined) {
#ifdef ALSAMIXER_GUI
- for (chn = snd_mixer_selem_channel_id_t(0); chn < SND_MIXER_SCHN_LAST;
- snd_mixer_selem_channel_id_t(int(chn)++))
+ for (chn = snd_mixer_selem_channel_id_t(0); chn < SND_MIXER_SCHN_LAST;
+ snd_mixer_selem_channel_id_t(int(chn)+1))
#else
for (chn = 0; chn < SND_MIXER_SCHN_LAST; chn++)
#endif

View File

@@ -0,0 +1,18 @@
config BR2_PACKAGE_ALSAMIXERGUI
depends on BR2_PACKAGE_XORG7
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_USE_MMU # fltk fork()
select BR2_PACKAGE_FLTK
select BR2_PACKAGE_ALSA_LIB
select BR2_PACKAGE_ALSA_LIB_PCM
select BR2_PACKAGE_ALSA_LIB_MIXER
depends on BR2_TOOLCHAIN_HAS_THREADS # alsa-lib
bool "alsamixergui"
help
A nice GUI mixer for Alsa using fltk
http://www.iua.upf.es/~mdeboer/projects/alsamixergui/
comment "alsamixergui needs a toolchain w/ C++, threads"
depends on BR2_PACKAGE_XORG7 && BR2_USE_MMU
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS

View File

@@ -0,0 +1,2 @@
# From http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/a/alsamixergui/alsamixergui_0.9.0rc2-1-9.dsc
md5 af942a41b81ba27e2e4d0a1e1ab0decb alsamixergui_0.9.0rc2-1.orig.tar.gz

View File

@@ -0,0 +1,19 @@
################################################################################
#
# alsamixergui
#
################################################################################
ALSAMIXERGUI_VERSION = 0.9.0rc2-1
ALSAMIXERGUI_SOURCE = alsamixergui_$(ALSAMIXERGUI_VERSION).orig.tar.gz
ALSAMIXERGUI_SITE = http://snapshot.debian.org/archive/debian/20141023T043132Z/pool/main/a/alsamixergui
ALSAMIXERGUI_AUTORECONF = YES
ALSAMIXERGUI_CONF_ENV = \
ac_cv_lib_fltk_numericsort=yes \
ac_cv_lib_fltk_fl_numericsort=yes \
ac_cv_lib_asound_snd_ctl_open=yes
ALSAMIXERGUI_DEPENDENCIES = fltk alsa-lib
$(eval $(autotools-package))

View File

@@ -0,0 +1,23 @@
Makefile: do not force the release build on install
If we did build any of the other targets, and are just interested
in those and not the release one, we still want to use the 'install'
rule, but not build (and install) the release libraries.
So, remove the dependency on the 'release' target from the 'install'
rule.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
diff -durN am335x-pru-package-506e074859891a2b350eb4f5fcb451c4961410ea.orig/pru_sw/app_loader/interface/Makefile am335x-pru-package-506e074859891a2b350eb4f5fcb451c4961410ea/pru_sw/app_loader/interface/Makefile
--- am335x-pru-package-506e074859891a2b350eb4f5fcb451c4961410ea.orig/pru_sw/app_loader/interface/Makefile 2014-08-18 00:24:36.000000000 +0200
+++ am335x-pru-package-506e074859891a2b350eb4f5fcb451c4961410ea/pru_sw/app_loader/interface/Makefile 2014-10-12 11:39:17.144682697 +0200
@@ -38,7 +38,7 @@
all: debug release sodebug sorelease
-install: release
+install:
install -m 0755 -d $(DESTDIR)$(PREFIX)/lib
install -m 0755 -d $(DESTDIR)$(PREFIX)/include
install -m 0644 $(LIBDIR)/* $(DESTDIR)$(PREFIX)/lib

View File

@@ -0,0 +1,7 @@
config BR2_PACKAGE_AM335X_PRU_PACKAGE
bool "am335x-pru-package"
depends on BR2_arm # only relevant for TI am335x
help
TI AM335X PRU program loader
https://github.com/beagleboard/am335x_pru_package

View File

@@ -0,0 +1,74 @@
################################################################################
#
# am335x-pru-package
#
################################################################################
AM335X_PRU_PACKAGE_VERSION = 506e074859891a2b350eb4f5fcb451c4961410ea
AM335X_PRU_PACKAGE_SITE = $(call github,beagleboard,am335x_pru_package,$(AM335X_PRU_PACKAGE_VERSION))
AM335X_PRU_PACKAGE_LICENSE = BSD-3c
AM335X_PRU_PACKAGE_LICENSE_FILES = pru_sw/utils/LICENCE.txt
AM335X_PRU_PACKAGE_DEPENDENCIES = host-am335x-pru-package
AM335X_PRU_PACKAGE_INSTALL_STAGING = YES
# The default 'all' rule builds everything, when we just need the library
ifeq ($(BR2_ENABLE_DEBUG),y)
AM335X_MAKE_TARGET = debug $(if $(BR2_STATIC_LIBS),,sodebug)
else
AM335X_MAKE_TARGET = release $(if $(BR2_STATIC_LIBS),,sorelease)
endif
define AM335X_PRU_PACKAGE_BUILD_CMDS
$(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" \
-C $(@D)/pru_sw/app_loader/interface $(AM335X_MAKE_TARGET)
endef
# 'install' installs whatever was built, and our patch removes the dependency
# on the release build, so we can use it to install whatever we built above.
define AM335X_PRU_PACKAGE_INSTALL_STAGING_CMDS
$(MAKE1) DESTDIR="$(STAGING_DIR)" PREFIX="/usr" \
-C $(@D)/pru_sw/app_loader/interface install
endef
define AM335X_PRU_PACKAGE_INSTALL_TARGET_CMDS
$(MAKE1) DESTDIR="$(TARGET_DIR)" PREFIX="/usr" \
-C $(@D)/pru_sw/app_loader/interface install
endef
# The debug libraries are named differently than the release ones,
# so we must provide a symlink to still be able to link with them.
ifeq ($(BR2_ENABLE_DEBUG),y)
define AM335X_PRU_PACKAGE_LN_DEBUG_STAGING_STATIC
ln -sf libprussdrvd.a $(STAGING_DIR)/usr/lib/libprussdrv.a
endef
AM335X_PRU_PACKAGE_POST_INSTALL_STAGING_HOOKS += AM335X_PRU_PACKAGE_LN_DEBUG_STAGING_STATIC
ifeq ($(BR2_STATIC_LIBS),)
define AM335X_PRU_PACKAGE_LN_DEBUG_STAGING_SHARED
ln -sf libprussdrvd.so $(STAGING_DIR)/usr/lib/libprussdrv.so
endef
AM335X_PRU_PACKAGE_POST_INSTALL_STAGING_HOOKS += AM335X_PRU_PACKAGE_LN_DEBUG_STAGING_SHARED
define AM335X_PRU_PACKAGE_LN_DEBUG_TARGET
ln -sf libprussdrvd.so $(TARGET_DIR)/usr/lib/libprussdrv.so
endef
AM335X_PRU_PACKAGE_POST_INSTALL_TARGET_HOOKS += AM335X_PRU_PACKAGE_LN_DEBUG_TARGET
endif # !STATIC
endif # DEBUG
define HOST_AM335X_PRU_PACKAGE_BUILD_CMDS
cd $(@D)/pru_sw/utils/pasm_source; \
$(HOSTCC) -Wall -D_UNIX_ pasm.c pasmpp.c pasmexp.c pasmop.c \
pasmdot.c pasmstruct.c pasmmacro.c path_utils.c -o ../pasm
endef
define HOST_AM335X_PRU_PACKAGE_INSTALL_CMDS
$(INSTALL) -m 0755 -D $(@D)/pru_sw/utils/pasm $(HOST_DIR)/usr/bin/pasm
endef
$(eval $(generic-package))
$(eval $(host-generic-package))

View File

@@ -0,0 +1,30 @@
Enforce correct -march option
Buildroot uses a normal ARM compiler to build the AM33X CM3 firmware
(which runs on a Cortex-M3 processor), but Buildroot will have a
default -march value that doesn't necessarily match the one needed for
Cortex-M3, leading to build failures (gcc complains that the
-mcpu=cortex-m3 option being passed is not compatible with the
selected -march).
Fix this by explicitly indicating -march=armv7-m.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Updated the patch to the latest version of the Makefile
Signed-off-by: Anders Darander <anders@chargestorm.se>
Index: b/Makefile
===================================================================
--- a/Makefile
+++ b/Makefile
@@ -13,7 +13,7 @@ SRCDIR = src
BINDIR = bin
INCLUDES = $(SRCDIR)/include
-CFLAGS =-mcpu=cortex-m3 -mthumb -nostdlib -Wall -Wundef \
+CFLAGS =-march=armv7-m -mcpu=cortex-m3 -mthumb -nostdlib -Wall -Wundef \
-Werror-implicit-function-declaration -Wstrict-prototypes \
-Wdeclaration-after-statement -fno-delete-null-pointer-checks \
-Wempty-body -fno-strict-overflow -g -I$(INCLUDES) -O2

View File

@@ -0,0 +1,7 @@
config BR2_PACKAGE_AM33X_CM3
bool "am33x-cm3"
depends on BR2_arm # only relevant for TI am335x
help
Cortex-M3 binary blob for suspend-resume on am335x
http://arago-project.org/git/projects/am33x-cm3.git

View File

@@ -0,0 +1,6 @@
#!/bin/sh
# Load the PM CM3 firmware
echo 1 > /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/loading
cat /lib/firmware/am335x-pm-firmware.bin > /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/data
echo 0 > /sys/devices/ocp.2/44d00000.wkup_m3/firmware/am335x-pm-firmware.bin/loading

View File

@@ -0,0 +1,31 @@
################################################################################
#
# am33x-cm3
#
################################################################################
# This should correpsond to v05.00.00.02
AM33X_CM3_VERSION = 11107db2f1e9e58ee75d4fe9cc38423c9a6e4365
AM33X_CM3_SITE = http://arago-project.org/git/projects/am33x-cm3.git
AM33X_CM3_SITE_METHOD = git
AM33X_CM3_LICENSE = TI Publicly Available Software License
AM33X_CM3_LICENSE_FILES = License.txt
# The build command below will use the standard cross-compiler (normally
# build for Cortex-A8, to build the FW for the Cortex-M3.
define AM33X_CM3_BUILD_CMDS
$(MAKE) CC="$(TARGET_CC)" CROSS_COMPILE="$(TARGET_CROSS)" -C $(@D) all
endef
# Not all of the firmware files are used
define AM33X_CM3_INSTALL_TARGET_CMDS
$(INSTALL) -m 0644 -D $(@D)/bin/am335x-pm-firmware.bin \
$(TARGET_DIR)/lib/firmware/am335x-pm-firmware.bin
endef
define AM33X_CM3_INSTALL_INIT_SYSV
$(INSTALL) -m 0755 -D package/am33x-cm3/S93-am335x-pm-firmware-load \
$(TARGET_DIR)/etc/init.d/S93-am335x-pm-firmware-load
endef
$(eval $(generic-package))

View File

@@ -0,0 +1,79 @@
menuconfig BR2_PACKAGE_ANGULARJS
bool "angularjs"
help
AngularJS web application framework.
http://angularjs.org
if BR2_PACKAGE_ANGULARJS
config BR2_ANGULARJS_MODULES
bool "angularjs modules"
help
Select which modules to install. If disabled, all modules
will be installed.
if BR2_ANGULARJS_MODULES
config BR2_ANGULARJS_MODULE_ANIMATE
bool "animate"
help
The ngAnimate module provides support for CSS-based animations
(keyframes and transitions) as well as JavaScript-based animations
via callback hooks. Animations are not enabled by default, however,
by including ngAnimate then the animation hooks are enabled for an
Angular app.
config BR2_ANGULARJS_MODULE_ARIA
bool "aria"
help
The ngAria module provides support for common ARIA attributes that
convey state or semantic information about the application for users
of assistive technologies, such as screen readers.
config BR2_ANGULARJS_MODULE_COOKIES
bool "cookies"
help
The ngCookies module provides a convenient wrapper for reading and
writing browser cookies.
config BR2_ANGULARJS_MODULE_MESSAGE_FORMAT
bool "message-format"
help
The ngMessageFormat module is used recognize MessageFormat extensions
in interpolation expressions.
config BR2_ANGULARJS_MODULE_MESSAGES
bool "messages"
help
The ngMessages module provides enhanced support for displaying
messages within templates (typically within forms or when rendering
message objects that return key/value data).
config BR2_ANGULARJS_MODULE_RESOURCE
bool "resource"
help
The ngResource module provides interaction support with RESTful
services via the $resource service.
config BR2_ANGULARJS_MODULE_ROUTE
bool "route"
help
The ngRoute module provides routing and deeplinking services and
directives for angular apps.
config BR2_ANGULARJS_MODULE_SANITIZE
bool "sanitize"
help
The ngSanitize module provides functionality to sanitize HTML.
config BR2_ANGULARJS_MODULE_TOUCH
bool "touch"
help
The ngTouch module provides touch events and other helpers for
touch-enabled devices. The implementation is based on jQuery Mobile
touch event handling (jquerymobile.com).
endif
endif

View File

@@ -0,0 +1,2 @@
# Locally computed:
sha256 a99e3c22b54178b7646856efd95e825650d32d3125904a28216aeba52e221bad angular-1.4.3.zip

View File

@@ -0,0 +1,39 @@
################################################################################
#
# angularjs
#
################################################################################
ANGULARJS_VERSION = 1.4.3
ANGULARJS_SOURCE = angular-$(ANGULARJS_VERSION).zip
ANGULARJS_SITE = https://code.angularjs.org/$(ANGULARJS_VERSION)
ANGULARJS_LICENSE = MIT
# There's no separate license file in the archive, so use angular.js instead.
ANGULARJS_LICENSE_FILES = angular.js
define ANGULARJS_EXTRACT_CMDS
unzip $(DL_DIR)/$(ANGULARJS_SOURCE) -d $(@D)
mv $(@D)/angular-$(ANGULARJS_VERSION)/* $(@D)
rmdir $(@D)/angular-$(ANGULARJS_VERSION)
endef
ANGULARJS_FILES = angular
ANGULARJS_MODULES = animate aria cookies message-format messages resource \
route sanitize touch
ifeq ($(BR2_ANGULARJS_MODULES),y)
ANGULARJS_FILES += $(foreach mod,$(ANGULARJS_MODULES),\
$(if $(BR2_ANGULARJS_MODULE_$(call UPPERCASE,$(mod))),\
angular-$(mod)))
else
ANGULARJS_FILES += $(foreach mod,$(ANGULARJS_MODULES),angular-$(mod))
endif
define ANGULARJS_INSTALL_TARGET_CMDS
$(foreach f,$(ANGULARJS_FILES),\
$(INSTALL) -m 0644 -D $(@D)/$(f).min.js \
$(TARGET_DIR)/var/www/$(f).js$(sep))
endef
$(eval $(generic-package))

View File

@@ -0,0 +1,63 @@
Fix cross-compilation
Fetched httpd-2.4.x-cross_compile.diff from upstream bugtracker:
https://issues.apache.org/bugzilla/show_bug.cgi?id=51257#c6
which is a bundle of upstream revisions:
http://svn.apache.org/viewvc?view=revision&revision=1327907
http://svn.apache.org/viewvc?view=revision&revision=1328390
http://svn.apache.org/viewvc?view=revision&revision=1328714
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Index: server/Makefile.in
===================================================================
--- a/server/Makefile.in (revision 1328714)
+++ b/server/Makefile.in (working copy)
@@ -22,9 +22,14 @@
include $(top_builddir)/build/rules.mk
include $(top_srcdir)/build/library.mk
+ifdef CC_FOR_BUILD
+gen_test_char: gen_test_char.c
+ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -DCROSS_COMPILE -o $@ $<
+else
gen_test_char_OBJECTS = gen_test_char.lo
gen_test_char: $(gen_test_char_OBJECTS)
$(LINK) $(EXTRA_LDFLAGS) $(gen_test_char_OBJECTS) $(EXTRA_LIBS)
+endif
test_char.h: gen_test_char
./gen_test_char > test_char.h
Index: configure.in
===================================================================
--- a/configure.in (revision 1328714)
+++ b/configure.in (working copy)
@@ -193,6 +193,14 @@
dnl Try to get c99 support for variadic macros
ifdef([AC_PROG_CC_C99], [AC_PROG_CC_C99])
+dnl In case of cross compilation we set CC_FOR_BUILD to cc unless
+dnl we got already CC_FOR_BUILD from environment.
+if test "x${build_alias}" != "x${host_alias}"; then
+ if test "x${CC_FOR_BUILD}" = "x"; then
+ CC_FOR_BUILD=cc
+ fi
+fi
+
if test "x${cache_file}" = "x/dev/null"; then
# Likewise, ensure that CC and CPP are passed through to the pcre
# configure script iff caching is disabled (the autoconf 2.5x default).
Index: acinclude.m4
===================================================================
--- a/acinclude.m4 (revision 1328714)
+++ ab/cinclude.m4 (working copy)
@@ -53,6 +53,8 @@
APACHE_SUBST(CPPFLAGS)
APACHE_SUBST(CFLAGS)
APACHE_SUBST(CXXFLAGS)
+ APACHE_SUBST(CC_FOR_BUILD)
+ APACHE_SUBST(CFLAGS_FOR_BUILD)
APACHE_SUBST(LTFLAGS)
APACHE_SUBST(LDFLAGS)
APACHE_SUBST(LT_LDFLAGS)

View File

@@ -0,0 +1,18 @@
Fix nios2 detection.
Apache treats nios2 as OS/2.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
diff -uNr httpd-2.4.12.org/configure.in httpd-2.4.12/configure.in
--- httpd-2.4.12.org/configure.in 2015-01-22 18:33:07.000000000 +0100
+++ httpd-2.4.12/configure.in 2015-04-02 22:01:32.851102219 +0200
@@ -268,7 +268,7 @@
AC_MSG_NOTICE([])
case $host in
- *os2*)
+ *-os2*)
# Use a custom made libtool replacement
echo "using aplibtool"
LIBTOOL="$abs_srcdir/srclib/apr/build/aplibtool"

View File

@@ -0,0 +1,19 @@
config BR2_PACKAGE_APACHE
bool "apache"
select BR2_PACKAGE_APR_UTIL
select BR2_PACKAGE_PCRE
depends on !BR2_STATIC_LIBS
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU # apr
help
The Apache HTTP Server Project is an effort to develop and maintain an
open-source HTTP server for modern operating systems including UNIX
and Windows NT. The goal of this project is to provide a secure,
efficient and extensible server that provides HTTP services in sync
with the current HTTP standards.
http://httpd.apache.org
comment "apache needs a toolchain w/ dynamic library, threads"
depends on BR2_USE_MMU
depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS

View File

@@ -0,0 +1,2 @@
# From http://www.apache.org/dist/httpd/httpd-2.4.18.tar.bz2.sha1
sha1 271a129f2f04e3aa694e5c2091df9b707bf8ef80 httpd-2.4.18.tar.bz2

View File

@@ -0,0 +1,81 @@
################################################################################
#
# apache
#
################################################################################
APACHE_VERSION = 2.4.18
APACHE_SOURCE = httpd-$(APACHE_VERSION).tar.bz2
APACHE_SITE = http://archive.apache.org/dist/httpd
APACHE_LICENSE = Apache-2.0
APACHE_LICENSE_FILES = LICENSE
# Needed for mod_php
APACHE_INSTALL_STAGING = YES
# We have a patch touching configure.in and Makefile.in,
# so we need to autoreconf:
APACHE_AUTORECONF = YES
APACHE_DEPENDENCIES = apr apr-util pcre
APACHE_CONF_ENV= \
ap_cv_void_ptr_lt_long=no \
PCRE_CONFIG=$(STAGING_DIR)/usr/bin/pcre-config
APACHE_CONF_OPTS = \
--sysconfdir=/etc/apache2 \
--with-apr=$(STAGING_DIR)/usr \
--with-apr-util=$(STAGING_DIR)/usr \
--with-pcre=$(STAGING_DIR)/usr/bin/pcre-config \
--enable-http \
--enable-dbd \
--enable-proxy \
--enable-mime-magic \
--without-suexec-bin \
--enable-mods-shared=all \
--with-mpm=worker \
--disable-lua \
--disable-luajit
ifeq ($(BR2_PACKAGE_LIBXML2),y)
APACHE_DEPENDENCIES += libxml2
# Apache wants the path to the header file, where it can find
# <libxml/parser.h>.
APACHE_CONF_OPTS += \
--enable-xml2enc \
--enable-proxy-html \
--with-libxml2=$(STAGING_DIR)/usr/include/libxml2
else
APACHE_CONF_OPTS += \
--disable-xml2enc \
--disable-proxy-html
endif
ifeq ($(BR2_PACKAGE_OPENSSL),y)
APACHE_DEPENDENCIES += openssl
APACHE_CONF_OPTS += \
--enable-ssl \
--with-ssl=$(STAGING_DIR)/usr
else
APACHE_CONF_OPTS += --disable-ssl
endif
ifeq ($(BR2_PACKAGE_ZLIB),y)
APACHE_DEPENDENCIES += zlib
APACHE_CONF_OPTS += \
--enable-deflate \
--with-z=$(STAGING_DIR)/usr
else
APACHE_CONF_OPTS += --disable-deflate
endif
define APACHE_FIX_STAGING_APACHE_CONFIG
$(SED) 's%/usr/build%$(STAGING_DIR)/usr/build%' $(STAGING_DIR)/usr/bin/apxs
$(SED) 's%^prefix =.*%prefix = $(STAGING_DIR)/usr%' $(STAGING_DIR)/usr/build/config_vars.mk
endef
APACHE_POST_INSTALL_STAGING_HOOKS += APACHE_FIX_STAGING_APACHE_CONFIG
define APACHE_CLEANUP_TARGET
$(RM) -rf $(TARGET_DIR)/usr/manual $(TARGET_DIR)/usr/build
endef
APACHE_POST_INSTALL_TARGET_HOOKS += APACHE_CLEANUP_TARGET
$(eval $(autotools-package))

View File

@@ -0,0 +1,19 @@
comment "apitrace needs a (e)glibc toolchain w/ C++, gcc >= 4.6"
depends on BR2_PACKAGE_XORG7
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_USES_GLIBC \
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
config BR2_PACKAGE_APITRACE
bool "apitrace"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_USES_GLIBC # uses glibc specific __libc_dlsym
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
depends on BR2_PACKAGE_XORG7
select BR2_PACKAGE_XLIB_LIBX11
select BR2_PACKAGE_LIBPNG
help
Trace and replay OpenGL and OpenGL ES APIs calls to/from a
file. You may install apitrace GUI from your distribution to
inspect generated traces.
http://apitrace.github.io/

View File

@@ -0,0 +1,17 @@
################################################################################
#
# apitrace
#
################################################################################
APITRACE_VERSION = 7.0
APITRACE_SITE = $(call github,apitrace,apitrace,$(APITRACE_VERSION))
APITRACE_LICENSE = MIT
APITRACE_LICENSE_FILES = LICENSE
APITRACE_DEPENDENCIES = xlib_libX11 host-python libpng
# Gui was never tested, so we prefer to explicitly disable it
APITRACE_CONF_OPTS += -DENABLE_GUI=false
$(eval $(cmake-package))

View File

@@ -0,0 +1,21 @@
remove check apr
this patch removes the check of apr which fails the build
Signed-off-by: Rico Bachmann <bachmann-ahF9wiJNQgNBDgjK7y7TUQ@public.gmane.org>
---
v1: disable the check for APU_FIND_APR because the check only looks into folders
named apr, and our source-tree is called apr-versionnumber (e.g. apr-1.4.6)
diff -rupN apr-util-1.4.1/configure.in apr-util-1.4.1-fix/configure.in
--- apr-util-1.4.1/configure.in 2009-12-17 20:15:19.000000000 +0100
+++ apr-util-1.4.1-fix/configure.in 2012-04-24 10:10:32.000000000 +0200
@@ -99,7 +99,7 @@ fi
dnl
dnl Find the APR includes directory and (possibly) the source (base) dir.
dnl
-APU_FIND_APR
+dnl APU_FIND_APR
dnl
dnl even though we use apr_rules.mk for building apr-util, we need

View File

@@ -0,0 +1,15 @@
config BR2_PACKAGE_APR_UTIL
bool "apr-util"
select BR2_PACKAGE_APR
select BR2_PACKAGE_EXPAT
# apr really needs shared library support
depends on !BR2_STATIC_LIBS
depends on BR2_USE_MMU # apr
help
The utility library for the apache runtime project
http://apr.apache.org/
comment "apr-util needs a toolchain w/ dynamic library"
depends on BR2_USE_MMU
depends on BR2_STATIC_LIBS

View File

@@ -0,0 +1,2 @@
# From http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz.sha1
sha1 72cc3ac693b52fb831063d5c0de18723bc8e0095 apr-util-1.5.4.tar.gz

View File

@@ -0,0 +1,65 @@
################################################################################
#
# apr-util
#
################################################################################
APR_UTIL_VERSION = 1.5.4
APR_UTIL_SITE = http://archive.apache.org/dist/apr
APR_UTIL_LICENSE = Apache-2.0
APR_UTIL_LICENSE_FILES = LICENSE
APR_UTIL_INSTALL_STAGING = YES
APR_UTIL_DEPENDENCIES = apr expat
APR_UTIL_CONF_OPTS = \
--with-apr=$(STAGING_DIR)/usr/bin/apr-1-config
APR_UTIL_CONFIG_SCRIPTS = apu-1-config
# When iconv is available, then use it to provide charset conversion
# features.
APR_UTIL_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBICONV),libiconv)
ifeq ($(BR2_PACKAGE_BERKELEYDB),y)
APR_UTIL_CONF_OPTS += --with-dbm=db53 --with-berkeley-db="$(STAGING_DIR)/usr"
APR_UTIL_DEPENDENCIES += berkeleydb
else
APR_UTIL_CONF_OPTS += --without-berkeley-db
endif
ifeq ($(BR2_PACKAGE_GDBM),y)
APR_UTIL_CONF_OPTS += --with-gdbm="$(STAGING_DIR)/usr"
APR_UTIL_DEPENDENCIES += gdbm
else
APR_UTIL_CONF_OPTS += --without-gdbm
endif
ifeq ($(BR2_PACKAGE_MYSQL),y)
APR_UTIL_CONF_OPTS += --with-mysql="$(STAGING_DIR)/usr"
APR_UTIL_DEPENDENCIES += mysql
else
APR_UTIL_CONF_OPTS += --without-mysql
endif
ifeq ($(BR2_PACKAGE_SQLITE),y)
APR_UTIL_CONF_OPTS += --with-sqlite3="$(STAGING_DIR)/usr"
APR_UTIL_DEPENDENCIES += sqlite
else
APR_UTIL_CONF_OPTS += --without-sqlite3
endif
ifeq ($(BR2_PACKAGE_OPENSSL),y)
APR_UTIL_CONF_OPTS += --with-crypto --with-openssl="$(STAGING_DIR)/usr"
APR_UTIL_DEPENDENCIES += openssl
else
APR_UTIL_CONF_OPTS += --without-crypto
endif
ifeq ($(BR2_PACKAGE_UNIXODBC),y)
APR_UTIL_CONF_OPTS += --with-odbc="$(STAGING_DIR)/usr"
# avoid using target binary $(STAGING_DIR)/usr/bin/odbc_config
APR_UTIL_CONF_ENV += ac_cv_path_ODBC_CONFIG=""
APR_UTIL_DEPENDENCIES += unixodbc
else
APR_UTIL_CONF_OPTS += --without-odbc
endif
$(eval $(autotools-package))

View File

@@ -0,0 +1,58 @@
Fix cross-compilation
Patch was backported from Apache httpd:
http://svn.apache.org/viewvc?view=revision&revision=1327907
http://svn.apache.org/viewvc?view=revision&revision=1328390
http://svn.apache.org/viewvc?view=revision&revision=1328714
Patch submitted upstream:
https://issues.apache.org/bugzilla/show_bug.cgi?id=57058
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
diff -uNr apr-1.5.1.org/configure.in apr-1.5.1/configure.in
--- apr-1.5.1.org/configure.in 2014-01-25 16:17:29.000000000 +0100
+++ apr-1.5.1/configure.in 2014-10-05 11:20:40.080746760 +0200
@@ -118,6 +118,16 @@
echo "Configuring APR library"
echo "Platform: $host"
+dnl In case of cross compilation we set CC_FOR_BUILD to cc unless
+dnl we got already CC_FOR_BUILD from environment.
+if test "x${build_alias}" != "x${host_alias}"; then
+ if test "x${CC_FOR_BUILD}" = "x"; then
+ CC_FOR_BUILD=cc
+ fi
+fi
+AC_SUBST(CC_FOR_BUILD)
+AC_SUBST(CFLAGS_FOR_BUILD)
+
dnl Some initial steps for configuration. We setup the default directory
dnl and which files are to be configured.
diff -uNr apr-1.5.1.org/Makefile.in apr-1.5.1/Makefile.in
--- apr-1.5.1.org/Makefile.in 2014-03-17 16:10:26.000000000 +0100
+++ apr-1.5.1/Makefile.in 2014-10-05 11:22:53.031070519 +0200
@@ -8,6 +8,8 @@
# APR (Apache Portable Runtime) library Makefile.
#
CPP = @CPP@
+CC_FOR_BUILD = @CC_FOR_BUILD@
+CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
# get substituted into some targets
APR_MAJOR_VERSION=@APR_MAJOR_VERSION@
@@ -134,8 +136,13 @@
OBJECTS_gen_test_char = tools/gen_test_char.lo $(LOCAL_LIBS)
tools/gen_test_char.lo: make_tools_dir
+ifdef CC_FOR_BUILD
+tools/gen_test_char@EXEEXT@: tools/gen_test_char.c $(LOCAL_LIBS)
+ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -DCROSS_COMPILE -o $@ $<
+else
tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char)
$(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS)
+endif
include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@
$(APR_MKDIR) include/private

View File

@@ -0,0 +1,15 @@
config BR2_PACKAGE_APR
bool "apr"
# apr really needs shared library support
depends on !BR2_STATIC_LIBS
depends on BR2_USE_MMU # fork() in apr_proc_fork()
help
The mission of the Apache Portable Runtime (APR) project is to create
and maintain software libraries that provide a predictable and
consistent interface to underlying platform-specific implementations
http://apr.apache.org/
comment "apr needs a toolchain w/ dynamic library"
depends on BR2_USE_MMU
depends on BR2_STATIC_LIBS

View File

@@ -0,0 +1,2 @@
# From http://archive.apache.org/dist/apr/apr-1.5.1.tar.gz.sha1
sha1 9caa83e3f50f3abc9fab7c4a3f2739a12b14c3a3 apr-1.5.1.tar.gz

View File

@@ -0,0 +1,74 @@
################################################################################
#
# apr
#
################################################################################
APR_VERSION = 1.5.1
APR_SITE = http://archive.apache.org/dist/apr
APR_LICENSE = Apache-2.0
APR_LICENSE_FILES = LICENSE
APR_INSTALL_STAGING = YES
# We have a patch touching configure.in and Makefile.in,
# so we need to autoreconf:
APR_AUTORECONF = YES
APR_CONF_ENV = \
CC_FOR_BUILD="$(HOSTCC)" \
CFLAGS_FOR_BUILD="$(HOST_CFLAGS)" \
ac_cv_file__dev_zero=yes \
ac_cv_func_setpgrp_void=yes \
apr_cv_process_shared_works=yes \
apr_cv_mutex_robust_shared=no \
apr_cv_tcp_nodelay_with_cork=yes \
ac_cv_sizeof_struct_iovec=8 \
ac_cv_struct_rlimit=yes \
ac_cv_o_nonblock_inherited=no \
apr_cv_mutex_recursive=yes
APR_CONFIG_SCRIPTS = apr-1-config
# Doesn't even try to guess when cross compiling
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
APR_CONF_ENV += apr_cv_pthreads_lib="-lpthread"
endif
# Fix lfs detection when cross compiling
APR_CONF_ENV += apr_cv_use_lfs64=yes
# Use non-portable atomics when available: 8 bytes atomics are used on
# 64-bits architectures, 4 bytes atomics on 32-bits architectures. We
# have to override ap_cv_atomic_builtins because the test used to
# check for atomic builtins uses AC_TRY_RUN, which doesn't work when
# cross-compiling.
ifeq ($(BR2_ARCH_IS_64):$(BR2_TOOLCHAIN_HAS_SYNC_8),y:y)
APR_CONF_OPTS += --enable-nonportable-atomics
APR_CONF_ENV += ap_cv_atomic_builtins=yes
else ifeq ($(BR2_ARCH_IS_64):$(BR2_TOOLCHAIN_HAS_SYNC_4),:y)
APR_CONF_OPTS += --enable-nonportable-atomics
APR_CONF_ENV += ap_cv_atomic_builtins=yes
else
APR_CONF_OPTS += --disable-nonportable-atomics
endif
ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y)
APR_DEPENDENCIES += util-linux
endif
define APR_CLEANUP_UNNEEDED_FILES
$(RM) -rf $(TARGET_DIR)/usr/build-1/
endef
APR_POST_INSTALL_TARGET_HOOKS += APR_CLEANUP_UNNEEDED_FILES
define APR_FIXUP_RULES_MK
$(SED) 's%apr_builddir=%apr_builddir=$(STAGING_DIR)%' \
$(STAGING_DIR)/usr/build-1/apr_rules.mk
$(SED) 's%apr_builders=%apr_builders=$(STAGING_DIR)%' \
$(STAGING_DIR)/usr/build-1/apr_rules.mk
$(SED) 's%top_builddir=%top_builddir=$(STAGING_DIR)%' \
$(STAGING_DIR)/usr/build-1/apr_rules.mk
endef
APR_POST_INSTALL_STAGING_HOOKS += APR_FIXUP_RULES_MK
$(eval $(autotools-package))

View File

@@ -0,0 +1,79 @@
# --- T2-COPYRIGHT-NOTE-BEGIN ---
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
#
# T2 SDE: package/.../rng-tools/throw-in-funcdef.patch.argp-standalone
# Copyright (C) 2006 The T2 SDE Project
#
# More information can be found in the files COPYING and README.
#
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
# of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
# --- T2-COPYRIGHT-NOTE-END ---
No __THROW in function implementation.
--jsaw
--- argp-standalone-1.4-test2/argp.h.orig 2006-01-06 02:29:59.000000000 +0100
+++ argp-standalone-1.4-test2/argp.h 2006-01-06 02:41:10.000000000 +0100
@@ -560,17 +560,17 @@
# endif
# ifndef ARGP_EI
-# define ARGP_EI extern __inline__
+# define ARGP_EI extern inline
# endif
ARGP_EI void
-__argp_usage (__const struct argp_state *__state) __THROW
+__argp_usage (__const struct argp_state *__state)
{
__argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE);
}
ARGP_EI int
-__option_is_short (__const struct argp_option *__opt) __THROW
+__option_is_short (__const struct argp_option *__opt)
{
if (__opt->flags & OPTION_DOC)
return 0;
@@ -582,7 +582,7 @@
}
ARGP_EI int
-__option_is_end (__const struct argp_option *__opt) __THROW
+__option_is_end (__const struct argp_option *__opt)
{
return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
}
--- argp-standalone-1.4-test2/argp-parse.c.orig 2006-01-06 02:47:48.000000000 +0100
+++ argp-standalone-1.4-test2/argp-parse.c 2006-01-06 02:48:16.000000000 +0100
@@ -1290,13 +1290,13 @@
/* Defined here, in case a user is not inlining the definitions in
* argp.h */
void
-__argp_usage (__const struct argp_state *__state) __THROW
+__argp_usage (__const struct argp_state *__state)
{
__argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE);
}
int
-__option_is_short (__const struct argp_option *__opt) __THROW
+__option_is_short (__const struct argp_option *__opt)
{
if (__opt->flags & OPTION_DOC)
return 0;
@@ -1310,7 +1310,7 @@
}
int
-__option_is_end (__const struct argp_option *__opt) __THROW
+__option_is_end (__const struct argp_option *__opt)
{
return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
}

View File

@@ -0,0 +1,45 @@
Subject: restrict value range passed to isprint function
According to C standards isprint argument shall be representable as an
unsigned char or be equal to EOF, otherwise the behaviour is undefined.
Passing arbitrary ints leads to segfault in nm program from elfutils.
Restrict isprint argument range to values representable by unsigned char.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
---
Index: b/argp.h
===================================================================
--- a/argp.h
+++ b/argp.h
@@ -23,6 +23,7 @@
#include <stdio.h>
#include <ctype.h>
+#include <limits.h>
#define __need_error_t
#include <errno.h>
@@ -577,7 +578,7 @@
else
{
int __key = __opt->key;
- return __key > 0 && isprint (__key);
+ return __key > 0 && __key <= UCHAR_MAX && isprint (__key);
}
}
Index: b/argp-parse.c
===================================================================
--- a/argp-parse.c
+++ b/argp-parse.c
@@ -1292,7 +1292,7 @@
int __key = __opt->key;
/* FIXME: whether or not a particular key implies a short option
* ought not to be locale dependent. */
- return __key > 0 && isprint (__key);
+ return __key > 0 && __key <= UCHAR_MAX && isprint (__key);
}
}

View File

@@ -0,0 +1,80 @@
From b2dfa011a3fdcb7d22764d143517d0fbd1c2a201 Mon Sep 17 00:00:00 2001
From: Emmanuel Dreyfus <manu@netbsd.org>
Date: Wed, 22 Jan 2014 14:47:23 +0100
Subject: [PATCH] Fix build with c99 compilers
BUG: 764655
Change-Id: If5dfdc9c7427bd3d39d8da8f79e33ae2da6a3137
Signed-off-by: Emmanuel Dreyfus <manu@netbsd.org>
Reviewed-on: http://review.gluster.org/6034
Reviewed-by: Harshavardhana <harsha@harshavardhana.net>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
---
diff --git a/argp-fmtstream.c b/argp-fmtstream.c
index 7f79285..494b6b3 100644
--- a/argp-fmtstream.c
+++ b/argp-fmtstream.c
@@ -389,6 +389,7 @@
weak_alias (__argp_fmtstream_printf, argp_fmtstream_printf)
#endif
+#if __STDC_VERSION__ - 199900L < 1
/* Duplicate the inline definitions in argp-fmtstream.h, for compilers
* that don't do inlining. */
size_t
@@ -471,5 +472,6 @@
__argp_fmtstream_update (__fs);
return __fs->point_col >= 0 ? __fs->point_col : 0;
}
+#endif /* __STDC_VERSION__ - 199900L < 1 */
#endif /* !ARGP_FMTSTREAM_USE_LINEWRAP */
diff --git a/argp-fmtstream.h b/argp-fmtstream.h
index e797b11..828f435 100644
--- a/argp-fmtstream.h
+++ b/argp-fmtstream.h
@@ -153,6 +153,7 @@
__const char *__fmt, ...)
PRINTF_STYLE(2,3);
+#if __STDC_VERSION__ - 199900L < 1
extern int __argp_fmtstream_putc (argp_fmtstream_t __fs, int __ch);
extern int argp_fmtstream_putc (argp_fmtstream_t __fs, int __ch);
@@ -163,6 +164,7 @@
__const char *__str, size_t __len);
extern size_t argp_fmtstream_write (argp_fmtstream_t __fs,
__const char *__str, size_t __len);
+#endif /* __STDC_VERSION__ - 199900L < 1 */
/* Access macros for various bits of state. */
#define argp_fmtstream_lmargin(__fs) ((__fs)->lmargin)
@@ -172,6 +174,7 @@
#define __argp_fmtstream_rmargin argp_fmtstream_rmargin
#define __argp_fmtstream_wmargin argp_fmtstream_wmargin
+#if __STDC_VERSION__ - 199900L < 1
/* Set __FS's left margin to LMARGIN and return the old value. */
extern size_t argp_fmtstream_set_lmargin (argp_fmtstream_t __fs,
size_t __lmargin);
@@ -193,6 +196,7 @@
/* Return the column number of the current output point in __FS. */
extern size_t argp_fmtstream_point (argp_fmtstream_t __fs);
extern size_t __argp_fmtstream_point (argp_fmtstream_t __fs);
+#endif /* __STDC_VERSION__ - 199900L < 1 */
/* Internal routines. */
extern void _argp_fmtstream_update (argp_fmtstream_t __fs);
@@ -216,7 +220,11 @@
#endif
#ifndef ARGP_FS_EI
+#if defined(__GNUC__) && !defined(__GNUC_STDC_INLINE__)
#define ARGP_FS_EI extern inline
+#else
+#define ARGP_FS_EI inline
+#endif
#endif
ARGP_FS_EI size_t

View File

@@ -0,0 +1,8 @@
config BR2_PACKAGE_ARGP_STANDALONE
bool "argp-standalone"
# glibc provides its own argp implementation.
depends on !BR2_TOOLCHAIN_USES_GLIBC
help
Glibc hierarchical argument parsing standalone library.
http://www.lysator.liu.se/~nisse/misc/

View File

@@ -0,0 +1,2 @@
# Locally calculated after checking pgp signature
sha256 dec79694da1319acd2238ce95df57f3680fea2482096e483323fddf3d818d8be argp-standalone-1.3.tar.gz

View File

@@ -0,0 +1,25 @@
################################################################################
#
# argp-standalone
#
################################################################################
ARGP_STANDALONE_VERSION = 1.3
ARGP_STANDALONE_SITE = http://www.lysator.liu.se/~nisse/archive
ARGP_STANDALONE_INSTALL_STAGING = YES
ARGP_STANDALONE_LICENSE = LGPLv2+
ARGP_STANDALONE_CONF_ENV = \
CFLAGS="$(TARGET_CFLAGS) -fPIC"
define ARGP_STANDALONE_INSTALL_STAGING_CMDS
$(INSTALL) -D $(@D)/libargp.a $(STAGING_DIR)/usr/lib/libargp.a
$(INSTALL) -D $(@D)/argp.h $(STAGING_DIR)/usr/include/argp.h
endef
define ARGP_STANDALONE_INSTALL_TARGET_CMDS
$(INSTALL) -D $(@D)/libargp.a $(TARGET_DIR)/usr/lib/libargp.a
$(INSTALL) -D $(@D)/argp.h $(TARGET_DIR)/usr/include/argp.h
endef
$(eval $(autotools-package))

View File

@@ -0,0 +1,14 @@
config BR2_PACKAGE_ARGUS
bool "argus"
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU # fork()
select BR2_PACKAGE_LIBPCAP
select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC
help
A Real Time Flow Monitor-based audit engine.
http://qosient.com/argus/
comment "argus needs a toolchain w/ threads"
depends on !BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_USE_MMU

View File

@@ -0,0 +1,2 @@
# From http://qosient.com/argus/src/argus-3.0.8.tar.gz.md5
md5 84daae71a502e4f6d088c279de3aa36b argus-3.0.8.tar.gz

View File

@@ -0,0 +1,22 @@
################################################################################
#
# argus
#
################################################################################
ARGUS_VERSION = 3.0.8
ARGUS_SITE = http://qosient.com/argus/src
ARGUS_DEPENDENCIES = libpcap
ARGUS_CONF_ENV = arg_cv_sys_errlist=yes
# Code is really v2+ though COPYING is v3 so ship README to avoid confusion
ARGUS_LICENSE = GPLv2+
ARGUS_LICENSE_FILES = README
ifeq ($(BR2_PACKAGE_LIBTIRPC),y)
ARGUS_DEPENDENCIES += libtirpc host-pkgconf
ARGUS_CONF_ENV += \
CFLAGS="$(TARGET_CFLAGS) `$(PKG_CONFIG_HOST_BINARY) --cflags libtirpc`" \
LIBS="`$(PKG_CONFIG_HOST_BINARY) --libs libtirpc`"
endif
$(eval $(autotools-package))

View File

@@ -0,0 +1,22 @@
comment "armadillo needs a toolchain w/ C++"
depends on !BR2_INSTALL_LIBSTDCPP
depends on !(BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el)
depends on !BR2_powerpc
depends on !BR2_bfin
comment "armadillo needs an (e)glibc toolchain w/ C++"
depends on BR2_powerpc
depends on !BR2_INSTALL_LIBSTDCPP || BR2_TOOLCHAIN_USES_UCLIBC
config BR2_PACKAGE_ARMADILLO
bool "armadillo"
depends on BR2_INSTALL_LIBSTDCPP
depends on !(BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el) # clapack
depends on !BR2_powerpc || BR2_TOOLCHAIN_USES_GLIBC # clapack
depends on !BR2_bfin # clapack
select BR2_PACKAGE_CLAPACK
help
Armadillo: An Open Source C++ Linear Algebra Library for
Fast Prototyping and Computationally Intensive Experiments.
http://arma.sourceforge.net/

View File

@@ -0,0 +1,5 @@
# From http://sourceforge.net/projects/arma/files/?source=navbar
md5 a39f27197d24b3d25437fab6bb1d118f armadillo-6.500.4.tar.gz
sha1 68166e67521a720c72917d196b0807bc6cab8b2e armadillo-6.500.4.tar.gz
# Locally computed:
sha256 813de85fa61ba5077ed871d801ba7070d369e7e9742002e4c11474c75ff6d1c6 armadillo-6.500.4.tar.gz

View File

@@ -0,0 +1,14 @@
################################################################################
#
# armadillo
#
################################################################################
ARMADILLO_VERSION = 6.500.4
ARMADILLO_SITE = http://downloads.sourceforge.net/project/arma
ARMADILLO_DEPENDENCIES = clapack
ARMADILLO_INSTALL_STAGING = YES
ARMADILLO_LICENSE = MPLv2.0
ARMADILLO_LICENSE_FILES = LICENSE.txt
$(eval $(cmake-package))

View File

@@ -0,0 +1,32 @@
From 948a96d710f377fb0ed8d78c7fb85b299c80ef13 Mon Sep 17 00:00:00 2001
From: Gustavo Zacarias <gustavo@zacarias.com.ar>
Date: Sat, 8 Nov 2014 10:12:54 -0300
Subject: [PATCH] arptables: disable dlfcn.h include
The relevant code is disabled in libarptc_incl.c so it's not required
and breaks the ability to build it in a pure-static toolchain.
Status: sent upstream.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
arptables.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arptables.c b/arptables.c
index 64ac3aa..fe270bc 100644
--- a/arptables.c
+++ b/arptables.c
@@ -35,7 +35,9 @@
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
+#if 0
#include <dlfcn.h>
+#endif
#include <ctype.h>
#include <stdarg.h>
#include <limits.h>
--
2.0.4

View File

@@ -0,0 +1,134 @@
From 24957c135eaacd718f3c788285de33d64316b32e Mon Sep 17 00:00:00 2001
From: Felix Janda <felix.janda@posteo.de>
Date: Sat, 16 May 2015 10:31:24 +0200
Subject: [PATCH 1/2] src: Use stdint types
Backport of upstream commit 047f37b1d5d865084a435fd7594b8c5c332ccb8d
Please note that the backported patch does not include two changes
to arptables.h from the upstream - these modified lines added in commit
dbbe9f7de36aa3c7dd61dc89092c03f7902e474e which was committed after
the 0.0.4 release.
Upstream-status: backport
Signed-off-by: Felix Janda <felix.janda@posteo.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Brendan Heading <brendanheading@gmail.com>
---
arptables.c | 8 ++++----
include/arptables.h | 3 ++-
include/libarptc/libarptc.h | 7 ++++---
libarptc/libarptc.c | 4 ++--
libarptc/libarptc_incl.c | 2 +-
5 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/arptables.c b/arptables.c
index 5535ab2..6d1377f 100644
--- a/arptables.c
+++ b/arptables.c
@@ -230,7 +230,7 @@ extern void dump_entries(const arptc_handle_t handle);
/etc/protocols */
struct pprot {
char *name;
- u_int8_t num;
+ uint8_t num;
};
/* Primitive headers... */
@@ -925,7 +925,7 @@ mask_to_dotted(const struct in_addr *mask)
{
int i;
static char buf[20];
- u_int32_t maskaddr, bits;
+ uint32_t maskaddr, bits;
maskaddr = ntohl(mask->s_addr);
@@ -967,7 +967,7 @@ string_to_number(const char *s, unsigned int min, unsigned int max,
}
static void
-set_option(unsigned int *options, unsigned int option, u_int16_t *invflg,
+set_option(unsigned int *options, unsigned int option, uint16_t *invflg,
int invert)
{
if (*options & option)
@@ -1107,7 +1107,7 @@ register_target(struct arptables_target *me)
}
static void
-print_num(u_int64_t number, unsigned int format)
+print_num(uint64_t number, unsigned int format)
{
if (format & FMT_KILOMEGAGIGA) {
if (number > 99999) {
diff --git a/include/arptables.h b/include/arptables.h
index 820b664..e6a6ba6 100644
--- a/include/arptables.h
+++ b/include/arptables.h
@@ -1,6 +1,7 @@
#ifndef _ARPTABLES_USER_H
#define _ARPTABLES_USER_H
+#include <stdint.h>
#include "arptables_common.h"
#include "libarptc/libarptc.h"
@@ -126,7 +127,7 @@ extern char *mask_to_dotted(const struct in_addr *mask);
extern void parse_hostnetworkmask(const char *name, struct in_addr **addrpp,
struct in_addr *maskp, unsigned int *naddrs);
-extern u_int16_t parse_protocol(const char *s);
+extern uint16_t parse_protocol(const char *s);
extern int do_command(int argc, char *argv[], char **table,
arptc_handle_t *handle);
diff --git a/include/libarptc/libarptc.h b/include/libarptc/libarptc.h
index e4f1175..76fbfab 100644
--- a/include/libarptc/libarptc.h
+++ b/include/libarptc/libarptc.h
@@ -6,9 +6,10 @@
#include <linux/netfilter_arp/arp_tables.h>
#ifndef ARPT_MIN_ALIGN
-/* arpt_entry has pointers and u_int64_t's in it, so if you align to
- it, you'll also align to any crazy matches and targets someone
- might write */
+/* arpt_entry has pointers and uint64_t's in it, so if you align to
+ * it, you'll also align to any crazy matches and targets someone
+ * might write.
+ */
#define ARPT_MIN_ALIGN (__alignof__(struct arpt_entry))
#endif
diff --git a/libarptc/libarptc.c b/libarptc/libarptc.c
index 2dcaaef..701bae0 100644
--- a/libarptc/libarptc.c
+++ b/libarptc/libarptc.c
@@ -256,8 +256,8 @@ unconditional(const struct arpt_arp *arp)
{
unsigned int i;
- for (i = 0; i < sizeof(*arp)/sizeof(u_int32_t); i++)
- if (((u_int32_t *)arp)[i])
+ for (i = 0; i < sizeof(*arp) / sizeof(uint32_t); i++)
+ if (((uint32_t *)arp)[i])
return 0;
return 1;
diff --git a/libarptc/libarptc_incl.c b/libarptc/libarptc_incl.c
index 2fa3d43..b41fcb2 100644
--- a/libarptc/libarptc_incl.c
+++ b/libarptc/libarptc_incl.c
@@ -1706,7 +1706,7 @@ TC_COMMIT(TC_HANDLE_T *handle)
/* Kernel will think that pointer should be 64-bits, and get
padding. So we accomodate here (assumption: alignment of
`counters' is on 64-bit boundary). */
- u_int64_t *kernptr = (u_int64_t *)&newcounters->counters;
+ uint64_t *kernptr = (uint64_t *)&newcounters->counters;
if ((unsigned long)&newcounters->counters % 8 != 0) {
fprintf(stderr,
"counters alignment incorrect! Mail rusty!\n");
--
2.4.3

Some files were not shown because too many files have changed in this diff Show More